@c8y/style 1023.14.76 → 1023.14.92

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 (264) hide show
  1. package/branding-login.less +1 -1
  2. package/helper-scripts/README-variable-imports.md +155 -0
  3. package/helper-scripts/README.md +104 -0
  4. package/helper-scripts/convert-scss-to-less.sh +502 -0
  5. package/helper-scripts/convert-stroke-icons-to-less.js +115 -0
  6. package/helper-scripts/remove-redundant-variable-imports.sh +80 -0
  7. package/helper-scripts/scss-to-less-skip +20 -0
  8. package/{sync-scss-to-less.sh → helper-scripts/sync-scss-to-less.sh} +2 -2
  9. package/helper-scripts/test-compile.sh +71 -0
  10. package/markdown-files/MANUAL-SYNC-FILES.md +56 -0
  11. package/package.json +2 -2
  12. package/styles/_login-app.less +34 -0
  13. package/styles/_login-app.scss +2 -2
  14. package/styles/_mixins.less +47 -0
  15. package/styles/_utilities.less +21 -0
  16. package/styles/_utilities.scss +1 -0
  17. package/styles/animations/_animate.less +18 -13
  18. package/styles/animations/_component-animations.less +18 -16
  19. package/styles/animations/_realtime-animation-list.less +11 -1
  20. package/styles/animations/_spinner-snake.less +17 -2
  21. package/styles/animations/_spinner.less +24 -6
  22. package/styles/base/_normalize.less +14 -0
  23. package/styles/base/_print.less +25 -12
  24. package/styles/base/_scaffolding.less +24 -28
  25. package/styles/base/_type.less +41 -19
  26. package/styles/components/_markdown-content.less +4 -1
  27. package/styles/components/_smartrules.less +14 -8
  28. package/styles/components/_smartrules.scss +6 -2
  29. package/styles/components/application-and-system/_c8y-cookie-banner.less +36 -0
  30. package/styles/components/{specialized → application-and-system}/_c8y-login.less +20 -6
  31. package/styles/components/data-display-and-visualization/_boxed-label.less +45 -0
  32. package/styles/components/data-display-and-visualization/_boxed-label.scss +46 -0
  33. package/styles/components/{specialized → data-display-and-visualization}/_c8y-data-explorer.less +76 -24
  34. package/styles/components/{specialized → data-display-and-visualization}/_c8y-data-explorer.scss +39 -1
  35. package/styles/components/{specialized → data-display-and-visualization}/_c8y-datapoint-pill.less +29 -13
  36. package/styles/components/{specialized → data-display-and-visualization}/_c8y-pulse.less +33 -6
  37. package/styles/components/data-display-and-visualization/_range-display.less +25 -16
  38. package/styles/components/{specialized → data-display-and-visualization}/_smart-list-icon-label.less +19 -5
  39. package/styles/components/{specialized → data-display-and-visualization}/_status.less +16 -2
  40. package/styles/components/{specialized → data-display-and-visualization}/_statusContainer.less +16 -2
  41. package/styles/components/data-display-and-visualization/_timelines-chart.less +2 -0
  42. package/styles/components/data-display-and-visualization/lists/_c8y-data-point-list.less +10 -0
  43. package/styles/components/data-display-and-visualization/lists/_c8y-empty-state.less +26 -12
  44. package/styles/components/data-display-and-visualization/lists/_c8y-list-group.less +88 -42
  45. package/styles/components/data-display-and-visualization/lists/_cards-layout.less +38 -16
  46. package/styles/components/data-display-and-visualization/lists/_list-group.less +46 -28
  47. package/styles/components/data-display-and-visualization/lists/_smart-rules-template-list.less +12 -1
  48. package/styles/components/data-display-and-visualization/lists/{timeline-list.less → _timeline-list.less} +46 -24
  49. package/styles/components/data-display-and-visualization/tables/_data-grid.less +45 -25
  50. package/styles/components/data-display-and-visualization/tables/_resizable-grid.less +18 -1
  51. package/styles/components/data-display-and-visualization/tables/_tables.less +25 -9
  52. package/styles/components/data-input/_c8y-ai-chat.less +1 -0
  53. package/styles/components/{specialized → data-input}/_c8y-countdown-interval.less +15 -13
  54. package/styles/components/{specialized → data-input}/_c8y-range.less +22 -6
  55. package/styles/components/{specialized → data-input}/_dtm-icon-selector.less +17 -2
  56. package/styles/components/{specialized → data-input}/_dtm-icon-selector.scss +1 -2
  57. package/styles/components/{specialized → data-input}/_measurements-time-control.less +34 -6
  58. package/styles/components/{specialized → data-input}/_measurements-time-control.scss +14 -2
  59. package/styles/components/{specialized → data-input}/_search-header.less +22 -6
  60. package/styles/components/data-input/_static-assets-file-picker.less +22 -0
  61. package/styles/components/data-input/assets/_asset-property-list.less +38 -23
  62. package/styles/components/data-input/assets/_asset-table.less +21 -3
  63. package/styles/components/data-input/assets/_c8y-asset-notes.less +13 -1
  64. package/styles/components/data-input/assets/_c8y-asset-selector-miller.less +27 -8
  65. package/styles/components/data-input/assets/_c8y-asset-selector.less +32 -15
  66. package/styles/components/data-input/assets/_c8y-child-assets-selector.less +90 -9
  67. package/styles/components/{specialized → forms}/_c8y-schema-form.less +44 -17
  68. package/styles/components/{specialized → forms}/_c8y-schema-form.scss +15 -3
  69. package/styles/components/{specialized → navigation-and-layout}/_c8y-role-card.less +21 -5
  70. package/styles/components/{specialized → navigation-and-layout}/_c8y-scrollbar.less +24 -7
  71. package/styles/components/{specialized → navigation-and-layout}/_c8y-smart-rest-tab.less +21 -6
  72. package/styles/components/{specialized → navigation-and-layout}/_c8y-stepper.less +15 -1
  73. package/styles/components/{specialized → navigation-and-layout}/_c8y-user-roles.less +45 -28
  74. package/styles/components/{specialized → navigation-and-layout}/_device-software-tab.less +14 -0
  75. package/styles/components/navigation-and-layout/action-bars/_app-switcher.less +27 -5
  76. package/styles/components/navigation-and-layout/action-bars/_c8y-action-bar.less +49 -21
  77. package/styles/components/navigation-and-layout/cards/_card-dashboard.less +25 -4
  78. package/styles/components/navigation-and-layout/cards/_card-flip.less +41 -14
  79. package/styles/components/navigation-and-layout/cards/_card-grid.less +20 -4
  80. package/styles/components/navigation-and-layout/cards/_card.less +90 -75
  81. package/styles/components/navigation-and-layout/cards/_panels.less +38 -20
  82. package/styles/components/navigation-and-layout/navigation/_breadcrumbs.less +22 -49
  83. package/styles/components/navigation-and-layout/navigation/_c8y-nav-stacked.less +26 -14
  84. package/styles/components/navigation-and-layout/navigation/_main-header.less +39 -13
  85. package/styles/components/navigation-and-layout/navigation/_main-header.scss +1 -1
  86. package/styles/components/navigation-and-layout/navigation/_navbar.less +22 -25
  87. package/styles/components/navigation-and-layout/navigation/_navbar.scss +7 -7
  88. package/styles/components/navigation-and-layout/navigation/_navigator.less +71 -69
  89. package/styles/components/navigation-and-layout/navigation/_navs.less +13 -0
  90. package/styles/components/navigation-and-layout/navigation/_pagination.less +24 -5
  91. package/styles/components/navigation-and-layout/navigation/{steps-navbar.less → _steps-navbar.less} +7 -6
  92. package/styles/components/navigation-and-layout/navigation/_tabs.less +18 -14
  93. package/styles/components/navigation-and-layout/navigation/_tabs.scss +2 -2
  94. package/styles/components/{specialized → status-feedback-and-notifications}/_c8y-message-banner.less +14 -0
  95. package/styles/components/{specialized → status-feedback-and-notifications}/_code.less +18 -2
  96. package/styles/core/buttons/_button-groups.less +29 -79
  97. package/styles/core/buttons/_buttons.less +229 -198
  98. package/styles/core/buttons/_buttons.scss +6 -10
  99. package/styles/core/feedback/_alerts.less +52 -41
  100. package/styles/core/feedback/_badges.less +29 -17
  101. package/styles/core/feedback/_close.less +24 -7
  102. package/styles/core/feedback/_labels.less +21 -8
  103. package/styles/core/feedback/_progress-bars.less +24 -7
  104. package/styles/core/feedback/_tag.less +23 -6
  105. package/styles/core/feedback/_tooltip.less +44 -20
  106. package/styles/core/forms/_c8y-switch.less +39 -19
  107. package/styles/core/forms/_c8y-switch.scss +37 -29
  108. package/styles/core/forms/_file-picker.less +79 -61
  109. package/styles/core/forms/_forms.less +130 -133
  110. package/styles/core/forms/_input-groups.less +110 -59
  111. package/styles/core/forms/_input-groups.scss +21 -3
  112. package/styles/core/overlays/_c8y-dashboard-modal.less +25 -29
  113. package/styles/core/overlays/_c8y-wizard.less +38 -15
  114. package/styles/core/overlays/_dropdowns.less +86 -63
  115. package/styles/core/overlays/_modals.less +58 -40
  116. package/styles/core/overlays/_popovers.less +25 -9
  117. package/styles/dashboard/_availability-pie.less +3 -0
  118. package/styles/dashboard/_c8y-dashboard-style.less +61 -34
  119. package/styles/dashboard/_c8y-gauges.less +20 -4
  120. package/styles/dashboard/_dashboard-widgets.less +17 -4
  121. package/styles/dashboard/_info-gauge.less +20 -5
  122. package/styles/dashboard/_quick-links-widget.less +13 -3
  123. package/styles/{welcome-widget.less → dashboard/_welcome-widget.less} +21 -4
  124. package/styles/dashboard/{welcome.less → _welcome.less} +54 -45
  125. package/styles/icons/_c8y-glyphs.less +12 -1
  126. package/styles/icons/_c8y-glyphs.scss +2 -1
  127. package/styles/icons/_c8y-icons.less +214 -199
  128. package/styles/icons/_dlt-c8y-icons-stroke.less +7238 -1834
  129. package/styles/icons/_dlt-c8y-icons.less +14 -0
  130. package/styles/icons/_marker-icons.less +10 -0
  131. package/styles/index.less +160 -134
  132. package/styles/index.scss +53 -29
  133. package/styles/layout/_bottom-drawer.less +21 -7
  134. package/styles/layout/_c8y-help-drawer.less +30 -9
  135. package/styles/layout/_c8y-right-drawer.less +34 -19
  136. package/styles/layout/_c8y-top-drawer.less +43 -28
  137. package/styles/layout/_grid.less +18 -4
  138. package/styles/layout/_group-info.less +14 -2
  139. package/styles/layout/_layouts.less +48 -30
  140. package/styles/layout/_mcontainer.less +26 -12
  141. package/styles/layout/_page-tabs.less +115 -23
  142. package/styles/layout/_split-scroll.less +16 -4
  143. package/styles/layout/_split-view.less +34 -2
  144. package/styles/login-app-use.scss +2 -2
  145. package/styles/login-app.less +4 -4
  146. package/styles/mixins/_buttons.scss +1 -0
  147. package/styles/mixins/{color-mixins.less → _color-mixins.less} +2 -2
  148. package/styles/mixins/{element-queries.less → _element-queries.less} +2 -2
  149. package/styles/mixins/{forms.less → _forms.less} +1 -1
  150. package/styles/mixins/_gradients.less +117 -0
  151. package/styles/mixins/{grid-framework.less → _grid-framework.less} +21 -21
  152. package/styles/mixins/_icon-base.less +29 -0
  153. package/styles/mixins/{nav-vertical-align.less → _nav-vertical-align.less} +6 -2
  154. package/styles/mixins/_nav-vertical-align.scss +5 -2
  155. package/styles/mixins/{progress-bar.less → _progress-bar.less} +1 -1
  156. package/styles/mixins/{shadows-helper.less → _shadows-helper.less} +3 -5
  157. package/styles/mixins/_shadows-helper.scss +1 -4
  158. package/styles/mixins/{vendor-prefixes.less → _vendor-prefixes.less} +7 -22
  159. package/styles/mixins/_vendor-prefixes.scss +1 -17
  160. package/styles/utilities/_borders.less +21 -11
  161. package/styles/{components/specialized → utilities}/_c8y-utils.less +14 -0
  162. package/styles/{components/specialized → utilities}/_c8y-utils.scss +1 -1
  163. package/styles/utilities/_caret.less +18 -4
  164. package/styles/utilities/_container-queries.less +11 -3
  165. package/styles/utilities/_contextual-colors.less +48 -119
  166. package/styles/utilities/_display.less +26 -41
  167. package/styles/utilities/_elevation.less +17 -7
  168. package/styles/utilities/_flex-containers.less +10 -0
  169. package/styles/utilities/_flex-items.less +11 -0
  170. package/styles/utilities/_icon-utils.less +15 -3
  171. package/styles/utilities/_margins-paddings.less +23 -4
  172. package/styles/utilities/_overflows.less +10 -0
  173. package/styles/utilities/_position.less +11 -0
  174. package/styles/utilities/_quickfloats.less +20 -1
  175. package/styles/utilities/_separators.less +11 -0
  176. package/styles/utilities/_shadows.less +5 -49
  177. package/styles/{utilities.less → utilities/_sizing.less} +13 -21
  178. package/styles/utilities/_text-utils.less +35 -24
  179. package/styles/vendor/ace-editor/_ace-editor.less +1 -0
  180. package/styles/vendor/angular/_loading-bar.less +1 -0
  181. package/styles/vendor/angular/_ui-sortable.less +2 -1
  182. package/styles/vendor/angular/_uib-accordion.less +1 -0
  183. package/styles/{angular-ui-select/select.less → vendor/angular/angular-ui-select/_select.less} +2 -10
  184. package/styles/vendor/cdk/_cdk-drag.less +3 -0
  185. package/styles/vendor/cdk/_cdk-tree.less +6 -3
  186. package/styles/vendor/cdk/_cdk-virtual-scroll-window.less +1 -0
  187. package/styles/vendor/datepicker/_bs-datepicker.less +26 -6
  188. package/styles/vendor/datepicker/_uib-datepicker.less +37 -4
  189. package/styles/vendor/leaflet/_c8y-map-internal.less +44 -54
  190. package/styles/vendor/leaflet/_leaflet.less +4 -1
  191. package/styles/vendor/other/_colorpicker.less +3 -2
  192. package/styles/vendor/selectize/_c8y-selectize.less +33 -10
  193. package/variables/_color-defaults.less +29 -10
  194. package/variables/_color-defaults.scss +29 -10
  195. package/variables/_color-vars.less +37 -89
  196. package/variables/_color-vars.scss +19 -77
  197. package/variables/{login-vars.less → _login-vars.less} +3 -5
  198. package/variables/index.less +3 -3
  199. package/variables/tokens/{c8y-design-tokens-dark.less → _c8y-design-tokens-dark.less} +5 -1
  200. package/variables/tokens/{c8y-design-tokens.less → _c8y-design-tokens.less} +5 -1
  201. package/styles/components/specialized/_boxed-label.less +0 -21
  202. package/styles/components/specialized/_boxed-label.scss +0 -36
  203. package/styles/components/specialized/_c8y-cookie-banner.less +0 -22
  204. package/styles/components/specialized/_static-assets-file-picker.less +0 -8
  205. package/styles/dashboard/welcome-widget.less +0 -50
  206. package/styles/mixins/gradients.less +0 -142
  207. package/styles/mixins.less +0 -45
  208. package/styles/steps-navbar.less +0 -97
  209. package/styles/timeline-list.less +0 -210
  210. package/styles/vendor/angular/angular-ui-select/select.less +0 -161
  211. package/styles/welcome.less +0 -128
  212. /package/styles/components/{specialized → application-and-system}/_c8y-cookie-banner.scss +0 -0
  213. /package/styles/components/{specialized → application-and-system}/_c8y-login.scss +0 -0
  214. /package/styles/components/{specialized → data-display-and-visualization}/_c8y-datapoint-pill.scss +0 -0
  215. /package/styles/components/{specialized → data-display-and-visualization}/_c8y-pulse.scss +0 -0
  216. /package/styles/components/{specialized → data-display-and-visualization}/_smart-list-icon-label.scss +0 -0
  217. /package/styles/components/{specialized → data-display-and-visualization}/_status.scss +0 -0
  218. /package/styles/components/{specialized → data-display-and-visualization}/_statusContainer.scss +0 -0
  219. /package/styles/components/{specialized → data-input}/_c8y-countdown-interval.scss +0 -0
  220. /package/styles/components/{specialized → data-input}/_c8y-range.scss +0 -0
  221. /package/styles/components/{specialized → data-input}/_search-header.scss +0 -0
  222. /package/styles/components/{specialized → data-input}/_static-assets-file-picker.scss +0 -0
  223. /package/styles/components/{specialized → navigation-and-layout}/_c8y-role-card.scss +0 -0
  224. /package/styles/components/{specialized → navigation-and-layout}/_c8y-scrollbar.scss +0 -0
  225. /package/styles/components/{specialized → navigation-and-layout}/_c8y-smart-rest-tab.scss +0 -0
  226. /package/styles/components/{specialized → navigation-and-layout}/_c8y-stepper.scss +0 -0
  227. /package/styles/components/{specialized → navigation-and-layout}/_c8y-user-roles.scss +0 -0
  228. /package/styles/components/{specialized → navigation-and-layout}/_device-software-tab.scss +0 -0
  229. /package/styles/components/{specialized → status-feedback-and-notifications}/_c8y-message-banner.scss +0 -0
  230. /package/styles/components/{specialized → status-feedback-and-notifications}/_code.scss +0 -0
  231. /package/styles/mixins/{alert-variant.less → _alert-variant.less} +0 -0
  232. /package/styles/mixins/{animation.less → _animation.less} +0 -0
  233. /package/styles/mixins/{background-variant.less → _background-variant.less} +0 -0
  234. /package/styles/mixins/{border-radius.less → _border-radius.less} +0 -0
  235. /package/styles/mixins/{buttons.less → _buttons.less} +0 -0
  236. /package/styles/mixins/{c8y-scrollbar.less → _c8y-scrollbar.less} +0 -0
  237. /package/styles/mixins/{center-block.less → _center-block.less} +0 -0
  238. /package/styles/mixins/{clearfix.less → _clearfix.less} +0 -0
  239. /package/styles/mixins/{create-grid.less → _create-grid.less} +0 -0
  240. /package/styles/mixins/{grid.less → _grid.less} +0 -0
  241. /package/styles/mixins/{hide-scrollbars.less → _hide-scrollbars.less} +0 -0
  242. /package/styles/mixins/{hide-text.less → _hide-text.less} +0 -0
  243. /package/styles/mixins/{image.less → _image.less} +0 -0
  244. /package/styles/mixins/{labels.less → _labels.less} +0 -0
  245. /package/styles/mixins/{list-group.less → _list-group.less} +0 -0
  246. /package/styles/mixins/{nav-divider.less → _nav-divider.less} +0 -0
  247. /package/styles/mixins/{opacity.less → _opacity.less} +0 -0
  248. /package/styles/mixins/{pagination.less → _pagination.less} +0 -0
  249. /package/styles/mixins/{panels.less → _panels.less} +0 -0
  250. /package/styles/mixins/{reset-filter.less → _reset-filter.less} +0 -0
  251. /package/styles/mixins/{reset-text.less → _reset-text.less} +0 -0
  252. /package/styles/mixins/{resize.less → _resize.less} +0 -0
  253. /package/styles/mixins/{responsive-visibility.less → _responsive-visibility.less} +0 -0
  254. /package/styles/mixins/{size.less → _size.less} +0 -0
  255. /package/styles/mixins/{tab-focus.less → _tab-focus.less} +0 -0
  256. /package/styles/mixins/{table-row.less → _table-row.less} +0 -0
  257. /package/styles/mixins/{tag.less → _tag.less} +0 -0
  258. /package/styles/mixins/{text-emphasis.less → _text-emphasis.less} +0 -0
  259. /package/styles/mixins/{text-overflow.less → _text-overflow.less} +0 -0
  260. /package/variables/{login-vars.scss → _login-vars.scss} +0 -0
  261. /package/variables/{shadows.less → _shadows.less} +0 -0
  262. /package/variables/{shadows.scss → _shadows.scss} +0 -0
  263. /package/variables/tokens/{c8y-design-tokens-dark.scss → _c8y-design-tokens-dark.scss} +0 -0
  264. /package/variables/tokens/{c8y-design-tokens.scss → _c8y-design-tokens.scss} +0 -0
@@ -122,7 +122,45 @@ c8y-chart {
122
122
  }
123
123
  }
124
124
 
125
- // Removed unused deprecated component class - verified 0 usages: .c8y-chart-hover-box
125
+ .c8y-chart-hover-box {
126
+ position: absolute;
127
+ display: inline-block;
128
+ background-color: $popover-background-default;
129
+ padding: $size-10;
130
+ top: 0;
131
+ z-index: 1100;
132
+ pointer-events: none;
133
+ @include shadows-helper.boxShadowHelper(md, right);
134
+ }
135
+
136
+ .c8y-chart-hover-box {
137
+ .dlt-c8y-icon-circle {
138
+ font-size: $size-10;
139
+ }
140
+ }
141
+
142
+ .c8y-chart-hover-box .label {
143
+ padding: 0 5px 0 0;
144
+ color: $popover-label-color;
145
+ margin: 0;
146
+ font-weight: bold;
147
+ font-size: 100%;
148
+ }
149
+
150
+ .c8y-chart-hover-box .value {
151
+ color: $popover-color-default;
152
+ }
153
+
154
+ .c8y-chart-hover-box .value-holder {
155
+ font-size: $font-size-small;
156
+ margin-top: 3px;
157
+ line-height: $size-10;
158
+ }
159
+
160
+ .c8y-chart-hover-box .time-holder {
161
+ color: $component-color-text-muted;
162
+ font-size: $size-10;
163
+ }
126
164
 
127
165
  .c8y-chart .clock {
128
166
  color: $component-form-legend-color;
@@ -1,10 +1,26 @@
1
+
2
+ @import "../../core/buttons/_buttons.less";
3
+
4
+
5
+ /**
6
+ * c8y datapoint pill - Component styles
7
+ *
8
+ * Note: Uses @size-* tokens for spacing where applicable.
9
+ *
10
+ * Intentionally hardcoded values:
11
+ * - Component-specific dimensions: Fixed sizes for component layout
12
+ * - Off-grid spacing: Component-specific positioning
13
+ * - Border widths (1px, 2px, 3px): Standard borders
14
+ * - Font-sizes: Typography
15
+ * - Percentages: Layout
16
+ */
1
17
  .c8y-datapoint-pill, .c8y-alarm-pill, .c8y-event-pill {
2
18
  display: flex;
3
19
  overflow: hidden;
4
20
  align-items: center;
5
- min-height: 24px;
21
+ min-height: @size-24;
6
22
  max-width: 100%;
7
- border-radius: @margin-16;
23
+ border-radius: @size-16;
8
24
  background-color: @component-background-default;
9
25
  box-shadow: none;
10
26
  border: 1px solid @component-color-text-muted;
@@ -13,7 +29,7 @@
13
29
  &__btn {
14
30
  .btn-clean();
15
31
  align-self: stretch;
16
- padding: @margin-4 @margin-4 @margin-4 @margin-base;
32
+ padding: @size-4 @size-4 @size-4 @size-base;
17
33
  border-right: 1px solid @component-color-text-muted;
18
34
  color: @text-muted;
19
35
  line-height: 1;
@@ -22,7 +38,7 @@
22
38
  display: flex;
23
39
  overflow: hidden;
24
40
  align-items: center;
25
- padding: @margin-4 calc(@margin-base + @margin-4) @margin-4 @margin-4;
41
+ padding: @size-4 calc(@size-base + @size-4) @size-4 @size-4;
26
42
  line-height: 1;
27
43
  }
28
44
  }
@@ -30,24 +46,24 @@
30
46
  .c8y-datapoint-pill{
31
47
  &__btn {
32
48
  &, &:not(.btn){
33
- padding: @margin-4;
49
+ padding: @size-4;
34
50
  &:first-child{
35
- border-bottom-left-radius: @margin-16!important;
36
- border-top-left-radius: @margin-16!important;
51
+ border-bottom-left-radius: @size-16!important;
52
+ border-top-left-radius: @size-16!important;
37
53
  }
38
54
  + .c8y-datapoint-pill__btn{
39
55
  border-right: 0;
40
- padding-right: @margin-base;
56
+ padding-right: @size-base;
41
57
  }
42
58
  }
43
59
  }
44
60
  }
45
61
 
46
62
  .c8y-alarm-pill {
47
- border-radius: @margin-4;
63
+ border-radius: @size-4;
48
64
  &__btn {
49
65
  &, &:not(.btn){
50
- padding: @margin-4!important;
66
+ padding: @size-4!important;
51
67
  + .c8y-alarm-pill__btn{
52
68
  border-right: 0;
53
69
  }
@@ -61,7 +77,7 @@
61
77
  &__btn {
62
78
  &, &:not(.btn){
63
79
  border-right: 1px dotted @component-color-text-muted;
64
- padding: @margin-4 !important;
80
+ padding: @size-4 !important;
65
81
  + .c8y-event-pill__btn{
66
82
  border-right: 0;
67
83
  }
@@ -74,12 +90,12 @@
74
90
  &__btn {
75
91
  &, &:not(.btn){
76
92
  font-size: 11px;
77
- padding: 1px @margin-8 1px @margin-4!important;
93
+ padding: 1px @size-8 1px @size-4!important;
78
94
  + .c8y-datapoint-pill__btn,
79
95
  + .c8y-alarm-pill__btn,
80
96
  + .c8y-event-pill__btn {
81
97
  border-right: 0;
82
- padding-right: @margin-base;
98
+ padding-right: @size-base;
83
99
  }
84
100
  }
85
101
  }
@@ -1,11 +1,32 @@
1
+
2
+ @import "../../mixins/_vendor-prefixes.less";
3
+
4
+
5
+ /**
6
+ * c8y pulse - Component styles
7
+ *
8
+ * Note: Uses @size-* tokens for spacing where applicable.
9
+ *
10
+ * Intentionally hardcoded values:
11
+ * - Component-specific dimensions: Fixed sizes for component layout
12
+ * - Off-grid spacing: Component-specific positioning
13
+ * - Border widths (1px, 2px, 3px): Standard borders
14
+ * - Font-sizes: Typography
15
+ * - Percentages: Layout
16
+ */
1
17
  .c8y-pulse {
2
18
  position: relative;
3
19
  display: inline-block !important;
4
20
  margin: 0 5px 0 0 !important;
5
- width: 8px;
21
+ width: @size-8;
6
22
  height: 8px;
7
23
  border-radius: 50%;
8
24
  background: @component-pulse-color;
25
+ &.inactive{
26
+ &::before{
27
+ background: @component-color-disabled;
28
+ }
29
+ }
9
30
  &:before {
10
31
  position: absolute;
11
32
  top: 0;
@@ -17,11 +38,17 @@
17
38
  background-color: @component-pulse-color;
18
39
  content: '';
19
40
  transform: rotateZ(360deg);
20
- animation: c8ypulse 2s infinite;
41
+ }
42
+ &.active{
43
+ border: 1px solid @component-background-default;
44
+ background-color: @component-pulse-color;
45
+ &:before {
46
+ animation: c8ypulse 2s infinite;
47
+ }
21
48
  }
22
49
  &--md{
23
- width: @margin-16;
24
- height: @margin-16;
50
+ width: @size-16;
51
+ height: @size-16;
25
52
  &.active {
26
53
  border: 1px solid @component-background-default;
27
54
  background-color: @component-pulse-color;
@@ -31,8 +58,8 @@
31
58
  }
32
59
  }
33
60
  &--lg{
34
- width: @margin-24;
35
- height: @margin-24;
61
+ width: @size-24;
62
+ height: @size-24;
36
63
  &.active {
37
64
  border: 1px solid @component-background-default;
38
65
  background-color: @component-pulse-color;
@@ -1,7 +1,10 @@
1
+
2
+
1
3
  /**
2
4
  * Range Display - Visual range/gauge display component
3
5
  *
4
- * Note: Uses @size-* tokens for spacing and positioning, @component-* variables for colors.
6
+ * Note: Uses @size-* tokens for spacing and positioning; @component-* variables for colors.
7
+ * File has been optimized with mixins for repeated selector patterns (lines 3-32).
5
8
  *
6
9
  * Intentionally hardcoded values:
7
10
  * - Component-specific dimensions (240px, 300px, 44px, 80px): Fixed component sizes
@@ -15,6 +18,16 @@
15
18
  * - Opacity values: Visual effects
16
19
  * - Transition durations: Animation timing
17
20
  */
21
+ // NOTE: SCSS mixins with @content removed - manually expanded where used
22
+
23
+ // Shared mixin for range min/max base properties
24
+ .range-min-max-base {
25
+ position: absolute;
26
+ top: calc(-1 * @size-4);
27
+ max-width: 100%;
28
+ height: @size-8;
29
+ border-radius: 0;
30
+ }
18
31
 
19
32
  .range-display {
20
33
  position: relative;
@@ -87,31 +100,27 @@
87
100
  font-weight: bold;
88
101
 
89
102
  .range-display--compact:not(.range-display--vertical) &,
90
- .range-display--inline:not(.range-display--vertical) & {
103
+ .range-display--inline:not(.range-display--vertical) & {
91
104
  display: none;
92
105
  }
93
106
  }
94
107
 
95
108
  &__max,
96
109
  &__min {
97
- position: absolute;
98
- top: calc(-1 * @size-4);
99
- max-width: 100%;
100
- height: @size-8;
101
- border-radius: 0;
110
+ .range-min-max-base();
102
111
  }
103
112
 
104
113
  &__max {
105
114
  left: var(--range-r-min);
106
115
  width: calc(var(--range-r-max) - var(--range-r-min));
107
- background-color: var(--input-validation-error, @status-danger);
116
+ background-color: var(--input-validation-error; @status-danger);
108
117
  }
109
118
 
110
119
  &__min {
111
120
  left: var(--range-y-min);
112
121
  width: calc(var(--range-y-max) - var(--range-y-min));
113
122
  border-right: 1px solid @component-background-default;
114
- background-color: var(--input-validation-warning, @status-warning);
123
+ background-color: var(--input-validation-warning; @status-warning);
115
124
  }
116
125
 
117
126
  &__target {
@@ -122,7 +131,7 @@
122
131
  pointer-events: none;
123
132
 
124
133
  .range-display--compact:not(.range-display--vertical) &,
125
- .range-display--inline:not(.range-display--vertical) & {
134
+ .range-display--inline:not(.range-display--vertical) & {
126
135
  display: none;
127
136
  }
128
137
 
@@ -169,7 +178,7 @@
169
178
  z-index: 12;
170
179
  width: var(--measurement-current);
171
180
  height: calc(@size-base * 1.5);
172
- border-top: @size-4 solid var(--brand-light, @brand-primary-light);
181
+ border-top: @size-4 solid var(--brand-light; @brand-primary-light);
173
182
  background-color: transparent;
174
183
  opacity: 1;
175
184
  transition: width 0.15s ease;
@@ -286,15 +295,15 @@
286
295
  }
287
296
 
288
297
  &:first-child::after {
289
- transform: translate(0, @size-5);
298
+ transform: translate(0; @size-5);
290
299
  }
291
300
 
292
301
  &:nth-child(6)::after {
293
- transform: translate(-50%, @size-5);
302
+ transform: translate(-50%; @size-5);
294
303
  }
295
304
 
296
305
  &:last-child::after {
297
- transform: translate(-100%, @size-5);
306
+ transform: translate(-100%; @size-5);
298
307
  }
299
308
  }
300
309
  }
@@ -350,7 +359,7 @@
350
359
  top: calc(100% - var(--range-r-max));
351
360
  left: unset;
352
361
  height: calc(var(--range-r-max) - var(--range-r-min));
353
- background-color: var(--input-validation-error, @status-danger);
362
+ background-color: var(--input-validation-error; @status-danger);
354
363
  }
355
364
 
356
365
  &__min {
@@ -392,7 +401,7 @@
392
401
  width: calc(@size-base * 1.5);
393
402
  height: var(--measurement-current);
394
403
  border-top: unset;
395
- border-left: @size-4 solid var(--brand-light, @brand-primary-light);
404
+ border-left: @size-4 solid var(--brand-light; @brand-primary-light);
396
405
  background-color: transparent;
397
406
  opacity: 1;
398
407
 
@@ -1,3 +1,17 @@
1
+
2
+
3
+ /**
4
+ * smart list icon lauel - Component styles
5
+ *
6
+ * Note: Uses @size-* tokens for spacing where applicable.
7
+ *
8
+ * Intentionally hardcoded values:
9
+ * - Component-specific dimensions: Fixed sizes for component layout
10
+ * - Off-grid spacing: Component-specific positioning
11
+ * - Border widths (1px, 2px, 3px): Standard borders
12
+ * - Font-sizes: Typography
13
+ * - Percentages: Layout
14
+ */
1
15
  .smart-list-icon-label {
2
16
  display: inline-block;
3
17
  -webkit-box-flex: 0;
@@ -20,13 +34,13 @@
20
34
  .card-header-actions,
21
35
  .edit-smart-rule-details {
22
36
  .smart-list-icon-label {
23
- margin: 0 10px 0 0;
37
+ margin: 0 @size-10 0 0;
24
38
 
25
39
  .dot {
26
40
  width: 30px;
27
41
  height: 30px;
28
42
  font-size: 14px;
29
- line-height: 32px;
43
+ line-height: @size-32;
30
44
  }
31
45
  }
32
46
  }
@@ -39,7 +53,7 @@
39
53
  .dot {
40
54
  width: 34px;
41
55
  height: 34px;
42
- font-size: 16px;
56
+ font-size: @size-16;
43
57
  line-height: 36px;
44
58
  }
45
59
  }
@@ -48,12 +62,12 @@
48
62
 
49
63
  .smart-rule-templates-list {
50
64
  .smart-list-icon-label {
51
- margin: 10px 2px;
65
+ margin: @size-10 2px;
52
66
 
53
67
  .dot {
54
68
  width: 34px;
55
69
  height: 34px;
56
- font-size: 16px;
70
+ font-size: @size-16;
57
71
  line-height: 36px;
58
72
  }
59
73
  }
@@ -1,3 +1,17 @@
1
+
2
+
3
+ /**
4
+ * status - Component styles
5
+ *
6
+ * Note: Uses @size-* tokens for spacing where applicable.
7
+ *
8
+ * Intentionally hardcoded values:
9
+ * - Component-specific dimensions: Fixed sizes for component layout
10
+ * - Off-grid spacing: Component-specific positioning
11
+ * - Border widths (1px, 2px, 3px): Standard borders
12
+ * - Font-sizes: Typography
13
+ * - Percentages: Layout
14
+ */
1
15
  .statusOk {
2
16
  color: var(--palette-status-success-dark, var(--c8y-palette-status-success-dark));
3
17
  }
@@ -76,7 +90,7 @@ path.statusNok {
76
90
 
77
91
  .alarm-icons {
78
92
  position: relative;
79
- font-size: 20px;
93
+ font-size: @size-20;
80
94
  width: 28px;
81
95
  .btn-clean.severity {
82
96
  position: absolute !important;
@@ -86,6 +100,6 @@ path.statusNok {
86
100
  }
87
101
  .btn-clean.status {
88
102
  margin-top: 8px;
89
- font-size: 24px;
103
+ font-size: @size-24;
90
104
  }
91
105
  }
@@ -1,3 +1,17 @@
1
+
2
+
3
+ /**
4
+ * statusContainer - Component styles
5
+ *
6
+ * Note: Uses @size-* tokens for spacing where applicable.
7
+ *
8
+ * Intentionally hardcoded values:
9
+ * - Component-specific dimensions: Fixed sizes for component layout
10
+ * - Off-grid spacing: Component-specific positioning
11
+ * - Border widths (1px, 2px, 3px): Standard borders
12
+ * - Font-sizes: Typography
13
+ * - Percentages: Layout
14
+ */
1
15
  .statusContainer {
2
16
  position: relative;
3
17
  display: inline-block;
@@ -5,8 +19,8 @@
5
19
  text-align: center;
6
20
  font-size: 14px;
7
21
  overflow: hidden;
8
- height: 20px;
9
- width: 20px;
22
+ height: @size-20;
23
+ width: @size-20;
10
24
  border-radius: 50%;
11
25
  border: 0;
12
26
  background-image: none;
@@ -1,3 +1,5 @@
1
+ @import "../../mixins/_shadows-helper.less";
2
+
1
3
  /**
2
4
  * Timelines Chart - Timeline visualization chart component
3
5
  *
@@ -1,3 +1,13 @@
1
+
2
+ /**
3
+ * C8Y Data Point List - Data point selection list component
4
+ *
5
+ * Note: Uses @size-* tokens for spacing and @component-padding.
6
+ *
7
+ * Intentionally hardcoded values:
8
+ * - None - all values use design tokens
9
+ */
10
+
1
11
  // Removed unused deprecated component class - verified 0 usages: .c8y-data-point-list
2
12
 
3
13
  c8y-datapoint-selection-list,
@@ -1,3 +1,17 @@
1
+
2
+ /**
3
+ * C8Y Empty State - Empty state component for lists and containers
4
+ *
5
+ * Note: Uses @size-* tokens for spacing; @size-base for calculations, and @component-padding.
6
+ *
7
+ * Intentionally hardcoded values:
8
+ * - Component-specific dimensions (600px, 280px, 45px): Max widths and flex basis
9
+ * - Typography sizes (30px, 90px): Large icon font sizes
10
+ * - Opacity values (0.6): Visual effects
11
+ * - Percentages (100%): Layout
12
+ * - Rem values (8rem, 4rem): Responsive padding using rem units
13
+ */
14
+
1
15
  .c8y-empty-state {
2
16
  margin: 0 auto;
3
17
  max-width: 600px;
@@ -7,7 +21,7 @@
7
21
  > .c8y-icon,
8
22
  > [class^='dlt-c8y-icon-'],
9
23
  > [class*=' dlt-c8y-icon-'] {
10
- margin-bottom: @margin-base;
24
+ margin-bottom: @size-base;
11
25
  color: @component-color-text-muted;
12
26
  font-size: 90px;
13
27
  opacity: 0.6;
@@ -19,16 +33,16 @@
19
33
  }
20
34
  }
21
35
  .btn-link {
22
- .btn-primary();
36
+ &:extend(.btn-primary);
23
37
  }
24
38
 
25
39
  p, .btn{
26
- margin-bottom: @margin-base;
40
+ margin-bottom: @size-base;
27
41
  }
28
42
 
29
43
  .dashboard.dashboard-theme-branded & {
30
44
  .btn-primary {
31
- .btn-default();
45
+ &:extend(.btn-default);
32
46
  }
33
47
  a {
34
48
  color: @component-color-default;
@@ -44,7 +58,7 @@
44
58
  > [class^='dlt-c8y-icon-'],
45
59
  > [class*=' dlt-c8y-icon-'] {
46
60
  flex: 0 0 auto;
47
- margin-right: 5px;
61
+ margin-right: @size-5;
48
62
  color: @component-color-text-muted;
49
63
  font-size: 30px;
50
64
  }
@@ -59,14 +73,14 @@
59
73
  display: flex;
60
74
  flex-flow: row nowrap;
61
75
  margin: 0;
62
- padding: @margin-base;
76
+ padding: @size-base;
63
77
  max-width: 100%;
64
78
  text-align: left !important;
65
79
  > .c8y-icon,
66
80
  > [class^='dlt-c8y-icon-'],
67
81
  > [class*=' dlt-c8y-icon-'] {
68
82
  flex: 0 0 auto;
69
- margin-right: 4px;
83
+ margin-right: @size-4;
70
84
  margin-bottom: 0;
71
85
  font-size: 30px;
72
86
  }
@@ -82,7 +96,7 @@
82
96
  }
83
97
  }
84
98
  .card-block .c8y-empty-state {
85
- padding: @margin-base 0;
99
+ padding: @size-base 0;
86
100
  }
87
101
  }
88
102
 
@@ -97,19 +111,19 @@ td,
97
111
  display: flex;
98
112
  flex-flow: row nowrap;
99
113
  margin-left: 0;
100
- padding: @margin-base;
114
+ padding: @size-base;
101
115
  text-align: left !important;
102
116
  > .c8y-icon,
103
117
  > [class^='dlt-c8y-icon-'],
104
118
  > [class*=' dlt-c8y-icon-'] {
105
119
  flex: 0 0 45px;
106
- margin-right: 5px;
120
+ margin-right: @size-5;
107
121
  margin-bottom: 0;
108
122
  font-size: 30px;
109
123
  }
110
124
  h3 {
111
125
  align-self: center;
112
- margin-right: 5px;
126
+ margin-right: @size-5;
113
127
  font-weight: bold;
114
128
  font-size: inherit;
115
129
  }
@@ -121,7 +135,7 @@ td,
121
135
  }
122
136
  }
123
137
  .card-block .c8y-empty-state {
124
- padding: @margin-base 0;
138
+ padding: @size-base 0;
125
139
  }
126
140
  }
127
141