@seamapi/react 1.48.0 → 1.49.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.
Files changed (123) hide show
  1. package/README.md +1 -1
  2. package/dist/elements.js +4653 -4626
  3. package/dist/elements.js.map +1 -1
  4. package/dist/index.css +587 -2
  5. package/dist/index.css.map +1 -1
  6. package/dist/index.min.css +1 -1
  7. package/dist/index.min.css.map +1 -1
  8. package/lib/dates.d.ts +9 -0
  9. package/lib/dates.js +15 -0
  10. package/lib/dates.js.map +1 -1
  11. package/lib/icons/ArrowRight.d.ts +2 -0
  12. package/lib/icons/ArrowRight.js +7 -0
  13. package/lib/icons/ArrowRight.js.map +1 -0
  14. package/lib/icons/ChevronWide.d.ts +2 -0
  15. package/lib/icons/ChevronWide.js +5 -0
  16. package/lib/icons/ChevronWide.js.map +1 -0
  17. package/lib/icons/Copy.js +2 -4
  18. package/lib/icons/Copy.js.map +1 -1
  19. package/lib/icons/TemperatureAdd.d.ts +2 -0
  20. package/lib/icons/TemperatureAdd.js +7 -0
  21. package/lib/icons/TemperatureAdd.js.map +1 -0
  22. package/lib/icons/TemperatureSubtract.d.ts +2 -0
  23. package/lib/icons/TemperatureSubtract.js +7 -0
  24. package/lib/icons/TemperatureSubtract.js.map +1 -0
  25. package/lib/seam/SeamProvider.d.ts +2 -2
  26. package/lib/seam/SeamProvider.js.map +1 -1
  27. package/lib/seam/access-codes/use-generate-access-code-code.d.ts +6 -0
  28. package/lib/seam/access-codes/use-generate-access-code-code.js +13 -0
  29. package/lib/seam/access-codes/use-generate-access-code-code.js.map +1 -0
  30. package/lib/seam/components/AccessCodeDetails/AccessCodeDetails.js +9 -2
  31. package/lib/seam/components/AccessCodeDetails/AccessCodeDetails.js.map +1 -1
  32. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.d.ts +6 -0
  33. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.js +41 -0
  34. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.js.map +1 -0
  35. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDetails.d.ts +7 -0
  36. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDetails.js +32 -0
  37. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDetails.js.map +1 -0
  38. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.d.ts +4 -0
  39. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.js +29 -0
  40. package/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.js.map +1 -0
  41. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.js +2 -2
  42. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.js.map +1 -1
  43. package/lib/seam/components/ClimateSettingScheduleTable/{ClimateSettingScheduleDetails.d.ts → ClimateSettingScheduleRowDetails.d.ts} +1 -1
  44. package/lib/seam/components/ClimateSettingScheduleTable/{ClimateSettingScheduleDetails.js → ClimateSettingScheduleRowDetails.js} +2 -2
  45. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRowDetails.js.map +1 -0
  46. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.d.ts +3 -1
  47. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.js +20 -3
  48. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.js.map +1 -1
  49. package/lib/seam/use-seam-client.js +2 -2
  50. package/lib/seam/use-seam-client.js.map +1 -1
  51. package/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.js +1 -1
  52. package/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.js.map +1 -1
  53. package/lib/ui/Menu/Menu.js +5 -5
  54. package/lib/ui/Menu/Menu.js.map +1 -1
  55. package/lib/ui/Switch/Switch.d.ts +8 -0
  56. package/lib/ui/Switch/Switch.js +15 -0
  57. package/lib/ui/Switch/Switch.js.map +1 -0
  58. package/lib/ui/TextField/TextField.js +1 -3
  59. package/lib/ui/TextField/TextField.js.map +1 -1
  60. package/lib/ui/clipboard.js +1 -1
  61. package/lib/ui/clipboard.js.map +1 -1
  62. package/lib/ui/layout/AccordionRow.d.ts +7 -0
  63. package/lib/ui/layout/AccordionRow.js +8 -0
  64. package/lib/ui/layout/AccordionRow.js.map +1 -0
  65. package/lib/ui/layout/DetailRow.d.ts +6 -0
  66. package/lib/ui/layout/DetailRow.js +5 -0
  67. package/lib/ui/layout/DetailRow.js.map +1 -0
  68. package/lib/ui/layout/DetailSection.d.ts +7 -0
  69. package/lib/ui/layout/DetailSection.js +6 -0
  70. package/lib/ui/layout/DetailSection.js.map +1 -0
  71. package/lib/ui/layout/DetailSectionGroup.d.ts +2 -0
  72. package/lib/ui/layout/DetailSectionGroup.js +5 -0
  73. package/lib/ui/layout/DetailSectionGroup.js.map +1 -0
  74. package/lib/ui/thermostat/TemperatureControl.d.ts +11 -0
  75. package/lib/ui/thermostat/TemperatureControl.js +42 -0
  76. package/lib/ui/thermostat/TemperatureControl.js.map +1 -0
  77. package/lib/ui/use-current-time.d.ts +2 -0
  78. package/lib/ui/use-current-time.js +12 -0
  79. package/lib/ui/use-current-time.js.map +1 -0
  80. package/lib/version.d.ts +1 -1
  81. package/lib/version.js +1 -1
  82. package/package.json +7 -7
  83. package/src/lib/dates.ts +17 -0
  84. package/src/lib/element.tsx +6 -4
  85. package/src/lib/icons/ArrowRight.tsx +36 -0
  86. package/src/lib/icons/ChevronWide.tsx +21 -0
  87. package/src/lib/icons/Copy.tsx +6 -21
  88. package/src/lib/icons/TemperatureAdd.tsx +38 -0
  89. package/src/lib/icons/TemperatureSubtract.tsx +35 -0
  90. package/src/lib/seam/SeamProvider.tsx +2 -3
  91. package/src/lib/seam/access-codes/use-generate-access-code-code.ts +38 -0
  92. package/src/lib/seam/components/AccessCodeDetails/AccessCodeDetails.tsx +23 -2
  93. package/src/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleCard.tsx +101 -0
  94. package/src/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDetails.element.ts +13 -0
  95. package/src/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDetails.tsx +103 -0
  96. package/src/lib/seam/components/ClimateSettingScheduleDetails/ClimateSettingScheduleDeviceBar.tsx +60 -0
  97. package/src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleRow.tsx +2 -2
  98. package/src/lib/seam/components/ClimateSettingScheduleTable/{ClimateSettingScheduleDetails.tsx → ClimateSettingScheduleRowDetails.tsx} +1 -1
  99. package/src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.element.ts +2 -0
  100. package/src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleTable.tsx +37 -2
  101. package/src/lib/seam/use-seam-client.ts +2 -2
  102. package/src/lib/ui/AccessCodeForm/AccessCodeFormDatePicker.tsx +2 -2
  103. package/src/lib/ui/Menu/Menu.tsx +5 -6
  104. package/src/lib/ui/Switch/Switch.tsx +38 -0
  105. package/src/lib/ui/TextField/TextField.tsx +1 -3
  106. package/src/lib/ui/clipboard.ts +1 -1
  107. package/src/lib/ui/layout/AccordionRow.tsx +36 -0
  108. package/src/lib/ui/layout/DetailRow.tsx +17 -0
  109. package/src/lib/ui/layout/DetailSection.tsx +25 -0
  110. package/src/lib/ui/layout/DetailSectionGroup.tsx +7 -0
  111. package/src/lib/ui/thermostat/TemperatureControl.tsx +121 -0
  112. package/src/lib/ui/use-current-time.ts +16 -0
  113. package/src/lib/version.ts +1 -1
  114. package/src/styles/_access-code-details.scss +42 -1
  115. package/src/styles/_climate-setting-schedule-details.scss +44 -0
  116. package/src/styles/_colors.scss +4 -0
  117. package/src/styles/_layout.scss +146 -0
  118. package/src/styles/_main.scss +4 -0
  119. package/src/styles/_seam-table.scss +8 -0
  120. package/src/styles/_switch.scss +53 -0
  121. package/src/styles/_thermostat.scss +387 -2
  122. package/src/styles/_tooltip.scss +3 -0
  123. package/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleDetails.js.map +0 -1
@@ -33,6 +33,152 @@
33
33
  }
34
34
  }
35
35
 
36
+ @mixin detail-section {
37
+ .seam-detail-sections {
38
+ display: flex;
39
+ flex-direction: column;
40
+ gap: 32px;
41
+ }
42
+
43
+ .seam-detail-section {
44
+ width: 100%;
45
+ }
46
+
47
+ .seam-detail-label-wrap {
48
+ width: 100%;
49
+ display: flex;
50
+ justify-content: flex-start;
51
+ align-items: center;
52
+ flex-direction: row;
53
+ gap: 4px;
54
+ margin-bottom: 8px;
55
+ }
56
+
57
+ .seam-detail-label {
58
+ color: colors.$text-gray-1;
59
+ font-size: 16px;
60
+ font-weight: 400;
61
+ line-height: 134%;
62
+ }
63
+
64
+ .seam-detail-group {
65
+ border-radius: 8px;
66
+ border: 1px solid colors.$text-gray-3;
67
+ overflow: hidden;
68
+ }
69
+ }
70
+
71
+ @mixin detail-row-common {
72
+ .seam-detail-row,
73
+ .seam-accordion-row {
74
+ background-color: colors.$white;
75
+
76
+ &:not(:last-of-type) {
77
+ border-bottom: 1px solid colors.$divider-stroke-light;
78
+ }
79
+ }
80
+
81
+ .seam-detail-row,
82
+ .seam-accordion-row-trigger {
83
+ display: flex;
84
+ justify-content: space-between;
85
+ align-items: center;
86
+ flex-direction: row;
87
+ min-height: 64px;
88
+ padding: 8px 16px;
89
+ }
90
+
91
+ .seam-row-label {
92
+ font-size: 16px;
93
+ font-weight: 600;
94
+ line-height: 118%;
95
+ }
96
+ }
97
+
98
+ @mixin detail-row {
99
+ .seam-detail-row-right-area-content {
100
+ display: flex;
101
+ justify-content: center;
102
+ align-items: center;
103
+ flex-direction: row;
104
+ gap: 8px;
105
+ }
106
+ }
107
+
108
+ @mixin accordion-row {
109
+ .seam-accordion-row {
110
+ overflow: hidden;
111
+
112
+ .seam-accordion-row-trigger {
113
+ appearance: none;
114
+ width: 100%;
115
+ background-color: colors.$white;
116
+ font-size: 16px;
117
+ border: none;
118
+ box-shadow: none;
119
+ cursor: pointer;
120
+ font-family: inherit;
121
+ }
122
+
123
+ .seam-accordion-row-content {
124
+ display: flex;
125
+ justify-content: center;
126
+ align-items: flex-start;
127
+ flex-direction: column;
128
+ max-height: 0;
129
+ opacity: 0;
130
+ transition: all 0.3s ease-in-out;
131
+ }
132
+
133
+ &[aria-expanded='true'] {
134
+ .seam-accordion-row-content {
135
+ max-height: 64px;
136
+ opacity: 1;
137
+ }
138
+
139
+ .seam-accordion-icon-wrap {
140
+ transform: rotate(180deg);
141
+ }
142
+
143
+ .seam-row-trigger-right-content {
144
+ transform: scale(0.95);
145
+ opacity: 0;
146
+ }
147
+ }
148
+
149
+ .seam-accordion-row-inner-content {
150
+ height: 64px;
151
+ padding: 0 16px;
152
+ overflow: hidden;
153
+ }
154
+
155
+ .seam-row-inner-wrap {
156
+ display: flex;
157
+ justify-content: center;
158
+ align-items: center;
159
+ flex-direction: row;
160
+ gap: 16px;
161
+ }
162
+
163
+ .seam-row-trigger-right-content {
164
+ transition: 0.2s ease-in-out;
165
+ }
166
+
167
+ .seam-accordion-icon-wrap {
168
+ width: 24px;
169
+ height: 24px;
170
+ display: flex;
171
+ justify-content: center;
172
+ align-items: center;
173
+ transition: transform 0.2s ease-in-out;
174
+ }
175
+ }
176
+ }
177
+
36
178
  @mixin all {
37
179
  @include header;
180
+ @include detail-section;
181
+ @include detail-row-common;
182
+ @include detail-row;
183
+ @include accordion-row;
38
184
  }
@@ -20,6 +20,8 @@
20
20
  @use './thermostat';
21
21
  @use './tooltip';
22
22
  @use './seam-table';
23
+ @use './climate-setting-schedule-details';
24
+ @use './switch';
23
25
 
24
26
  .seam-components {
25
27
  // Reset
@@ -38,6 +40,7 @@
38
40
  @include checkbox.all;
39
41
  @include radio-field.all;
40
42
  @include tooltip.all;
43
+ @include switch.all;
41
44
 
42
45
  // Components
43
46
  @include device-details.all;
@@ -48,4 +51,5 @@
48
51
  @include supported-device-table.all;
49
52
  @include thermostat.all;
50
53
  @include seam-table.all;
54
+ @include climate-setting-schedule-details.all;
51
55
  }
@@ -99,6 +99,14 @@
99
99
  align-items: center;
100
100
  justify-content: space-between;
101
101
  flex: 1;
102
+
103
+ svg {
104
+ scale: 0.75;
105
+
106
+ * {
107
+ fill: colors.$primary;
108
+ }
109
+ }
102
110
  }
103
111
  }
104
112
  }
@@ -0,0 +1,53 @@
1
+ @use './colors';
2
+
3
+ @mixin all {
4
+ .seam-switch-container {
5
+ display: flex;
6
+ align-items: center;
7
+ gap: 8px;
8
+
9
+ .seam-switch-label {
10
+ font-style: normal;
11
+ font-weight: 400;
12
+ line-height: 118%;
13
+ font-size: 14px;
14
+ color: colors.$text-gray-2-5;
15
+ }
16
+
17
+ .seam-switch {
18
+ position: relative;
19
+ cursor: pointer;
20
+
21
+ .seam-switch-slider::before {
22
+ position: absolute;
23
+ content: '';
24
+ height: 20px;
25
+ width: 20px;
26
+ left: 0;
27
+ bottom: -3px;
28
+ background-color: colors.$bg-aa;
29
+ transition: 0.4s;
30
+ border-radius: 50%;
31
+ filter: drop-shadow(0 1px 4px rgb(0 0 0 / 25%));
32
+ }
33
+
34
+ .seam-switch-slider {
35
+ inset: 0;
36
+ width: 34px;
37
+ height: 14px;
38
+ background-color: #ccc;
39
+ transition: 0.4s;
40
+ border-radius: 20px;
41
+ }
42
+
43
+ &.seam-switch-checked .seam-switch-slider::before {
44
+ transform: translateX(14px);
45
+ background-color: colors.$primary;
46
+ }
47
+
48
+ &.seam-switch-checked .seam-switch-slider {
49
+ background-color: colors.$primary-dim;
50
+ }
51
+ }
52
+ }
53
+ }
@@ -1,12 +1,294 @@
1
1
  @use './colors';
2
2
 
3
- @mixin all {
3
+ @mixin temperature-control-thumb-hover(
4
+ $secondary-color: colors.$thermo-blue-faded
5
+ ) {
6
+ background-color: $secondary-color;
7
+ }
8
+
9
+ @mixin temperature-control-thumb(
10
+ $primary-color: colors.$thermo-blue,
11
+ $secondary-color: colors.$thermo-blue-faded
12
+ ) {
13
+ width: var(--thumb-size);
14
+ height: var(--thumb-size);
15
+ border-radius: 1em;
16
+ background: colors.$white;
17
+ border: 2px solid $primary-color;
18
+ box-shadow: none;
19
+ cursor: grab;
20
+ transition: 0.15s ease-in-out;
21
+
22
+ &:hover {
23
+ @include temperature-control-thumb-hover($secondary-color);
24
+ }
25
+
26
+ &:active {
27
+ cursor: grabbing;
28
+ background-color: $primary-color !important;
29
+ box-shadow: 0 2px 4px 0 rgb(0 0 0 / 15%) !important;
30
+ }
31
+ }
32
+
33
+ @mixin temperature-control-ltr-track($primary-color: colors.$thermo-blue) {
34
+ background:
35
+ linear-gradient($primary-color, $primary-color) 0 / var(--slider-position)
36
+ 100% no-repeat,
37
+ colors.$text-gray-3;
38
+ }
39
+
40
+ @mixin temperature-control-rtl-track($primary-color: colors.$thermo-blue) {
41
+ background:
42
+ linear-gradient($primary-color, $primary-color) 100% /
43
+ calc(var(--slider-position-rtl)) 100% no-repeat,
44
+ colors.$text-gray-3;
45
+ }
46
+
47
+ @mixin temperature-control-track($primary-color: colors.$thermo-blue) {
48
+ height: var(--track-height);
49
+ border-radius: 0.5em;
50
+ border: none;
51
+ box-shadow: none;
52
+ }
53
+
54
+ @mixin temperature-control {
55
+ .seam-temperature-control {
56
+ display: flex;
57
+ justify-content: center;
58
+ align-items: center;
59
+ flex-direction: row;
60
+ gap: 7px;
61
+ }
62
+
63
+ .seam-temperature-range-wrap {
64
+ --thumb-size: 20px;
65
+ --track-height: 4px;
66
+ --temperature-min: 0;
67
+ --temperature-max: 100;
68
+ --temperature-current: 50;
69
+ --temperature-range: calc(var(--temperature-max) - var(--temperature-min));
70
+ --temperature-ratio: calc(
71
+ (var(--temperature-current) - var(--temperature-min)) /
72
+ var(--temperature-range)
73
+ );
74
+ --slider-position: calc(
75
+ 0.5 * var(--thumb-size) + var(--temperature-ratio) *
76
+ (100% - var(--thumb-size))
77
+ );
78
+ --slider-position-rtl: calc(100% - var(--slider-position));
79
+
80
+ display: flex;
81
+ justify-content: center;
82
+ align-items: center;
83
+ position: relative;
84
+ }
85
+
86
+ input[type='range'].seam-temperature-range {
87
+ width: 160px;
88
+ appearance: none;
89
+
90
+ &:focus {
91
+ outline: none;
92
+ }
93
+
94
+ &::-webkit-slider-thumb {
95
+ appearance: none;
96
+ margin-top: calc(var(--track-height) * 0.5 - var(--thumb-size) * 0.5);
97
+ }
98
+
99
+ &::-ms-thumb {
100
+ margin-top: 0;
101
+ box-sizing: border-box;
102
+ }
103
+
104
+ &::-ms-track {
105
+ box-sizing: border-box;
106
+ }
107
+
108
+ &::-ms-fill-upper {
109
+ background: transparent;
110
+ border-color: transparent;
111
+ }
112
+
113
+ &::-ms-fill-lower {
114
+ border-color: transparent;
115
+ height: var(--track-height);
116
+ border-radius: 0.5em 0 0 0.5em;
117
+ margin: 0;
118
+ border: none;
119
+ border-right-width: 0;
120
+ }
121
+
122
+ &[data-variant='heat'] {
123
+ &::-webkit-slider-thumb {
124
+ @include temperature-control-thumb(
125
+ colors.$thermo-orange,
126
+ colors.$thermo-orange-faded
127
+ );
128
+ }
129
+
130
+ &::-moz-range-thumb {
131
+ @include temperature-control-thumb(
132
+ colors.$thermo-orange,
133
+ colors.$thermo-orange-faded
134
+ );
135
+ }
136
+
137
+ &::-ms-thumb {
138
+ @include temperature-control-thumb(
139
+ colors.$thermo-orange,
140
+ colors.$thermo-orange-faded
141
+ );
142
+ }
143
+
144
+ &:focus {
145
+ &::-webkit-slider-thumb {
146
+ @include temperature-control-thumb-hover(colors.$thermo-orange-faded);
147
+ }
148
+
149
+ &::-moz-range-thumb {
150
+ @include temperature-control-thumb-hover(colors.$thermo-orange-faded);
151
+ }
152
+
153
+ &::-ms-thumb {
154
+ @include temperature-control-thumb-hover(colors.$thermo-orange-faded);
155
+ }
156
+ }
157
+
158
+ &::-webkit-slider-runnable-track {
159
+ @include temperature-control-track(colors.$thermo-orange);
160
+ @include temperature-control-ltr-track(colors.$thermo-orange);
161
+ }
162
+
163
+ &::-moz-range-track {
164
+ @include temperature-control-track(colors.$thermo-orange);
165
+ @include temperature-control-ltr-track(colors.$thermo-orange);
166
+ }
167
+
168
+ &::-ms-track {
169
+ @include temperature-control-track(colors.$thermo-orange);
170
+ @include temperature-control-ltr-track(colors.$thermo-orange);
171
+ }
172
+
173
+ &::-ms-fill-lower {
174
+ background: colors.$thermo-orange;
175
+ }
176
+ }
177
+
178
+ &[data-variant='cool'] {
179
+ &::-webkit-slider-thumb {
180
+ @include temperature-control-thumb(
181
+ colors.$thermo-blue,
182
+ colors.$thermo-blue-faded
183
+ );
184
+ }
185
+
186
+ &::-moz-range-thumb {
187
+ @include temperature-control-thumb(
188
+ colors.$thermo-blue,
189
+ colors.$thermo-blue-faded
190
+ );
191
+ }
192
+
193
+ &::-ms-thumb {
194
+ @include temperature-control-thumb(
195
+ colors.$thermo-blue,
196
+ colors.$thermo-blue-faded
197
+ );
198
+ }
199
+
200
+ &:focus {
201
+ &::-webkit-slider-thumb {
202
+ @include temperature-control-thumb-hover(colors.$thermo-blue-faded);
203
+ }
204
+
205
+ &::-moz-range-thumb {
206
+ @include temperature-control-thumb-hover(colors.$thermo-blue-faded);
207
+ }
208
+
209
+ &::-ms-thumb {
210
+ @include temperature-control-thumb-hover(colors.$thermo-blue-faded);
211
+ }
212
+ }
213
+
214
+ &::-webkit-slider-runnable-track {
215
+ @include temperature-control-track(colors.$thermo-blue);
216
+ @include temperature-control-rtl-track(colors.$thermo-blue);
217
+ }
218
+
219
+ &::-moz-range-track {
220
+ @include temperature-control-track(colors.$thermo-blue);
221
+ @include temperature-control-rtl-track(colors.$thermo-blue);
222
+ }
223
+
224
+ &::-ms-track {
225
+ @include temperature-control-track(colors.$thermo-blue);
226
+ @include temperature-control-rtl-track(colors.$thermo-blue);
227
+ }
228
+
229
+ &::-ms-fill-lower {
230
+ background: colors.$thermo-blue;
231
+ }
232
+ }
233
+ }
234
+
235
+ .seam-floating-temperature {
236
+ position: absolute;
237
+ top: -28px;
238
+ left: calc(var(--slider-position) - 10px);
239
+
240
+ .seam-floating-temperature-value {
241
+ color: colors.$black;
242
+ font-size: 16px;
243
+ font-weight: 600;
244
+ line-height: 1;
245
+ }
246
+
247
+ .seam-floating-temperature-unit {
248
+ color: colors.$text-gray-2-5;
249
+ font-size: 14px;
250
+ font-weight: 400;
251
+ line-height: 1;
252
+ }
253
+ }
254
+
255
+ .seam-temperature-stepper-button {
256
+ appearance: none;
257
+ width: 32px;
258
+ height: 32px;
259
+ border-radius: 6px;
260
+ border: 1px solid colors.$text-gray-3;
261
+ background-color: colors.$white;
262
+ display: flex;
263
+ justify-content: center;
264
+ align-items: center;
265
+ box-shadow: none;
266
+ cursor: pointer;
267
+ transition: 0.1s ease-in-out;
268
+
269
+ &:focus {
270
+ outline: none;
271
+ }
272
+
273
+ &:hover,
274
+ &:focus {
275
+ background-color: colors.$bg-a;
276
+ border-color: colors.$text-gray-2;
277
+ }
278
+
279
+ &:active {
280
+ background-color: colors.$bg-c;
281
+ border-color: colors.$text-gray-1;
282
+ }
283
+ }
284
+ }
285
+
286
+ @mixin climate-setting-status {
4
287
  .seam-climate-setting-status {
5
288
  display: flex;
6
289
  align-items: center;
7
290
  gap: 4px;
8
291
  color: colors.$text-gray-1;
9
- font-size: 14px;
10
292
  line-height: 118%;
11
293
  white-space: nowrap;
12
294
  }
@@ -18,4 +300,107 @@
18
300
  justify-content: center;
19
301
  align-items: center;
20
302
  }
303
+
304
+ .seam-climate-setting-schedule-card {
305
+ background: colors.$bg-a;
306
+ border-radius: 16px;
307
+
308
+ .seam-climate-setting-schedule-content {
309
+ display: flex;
310
+ flex-direction: column;
311
+
312
+ .seam-climate-setting-schedule-summary-container {
313
+ padding: 16px;
314
+ display: flex;
315
+ width: 100%;
316
+ gap: 8px;
317
+
318
+ .seam-climate-setting-schedule-icon-block {
319
+ padding: 8px;
320
+ }
321
+
322
+ .seam-climate-setting-schedule-summary {
323
+ display: flex;
324
+ flex-direction: column;
325
+
326
+ .seam-climate-setting-schedule-heading {
327
+ font-weight: 600;
328
+ font-size: 21px;
329
+ line-height: 132%;
330
+ margin-bottom: 8px;
331
+ }
332
+
333
+ .seam-climate-setting-schedule-subheading {
334
+ display: flex;
335
+ align-items: center;
336
+ color: colors.$text-gray-1;
337
+ line-height: 118%;
338
+
339
+ .seam-dot-divider {
340
+ color: colors.$text-gray-3;
341
+ width: 16px;
342
+ display: flex;
343
+ justify-content: center;
344
+ }
345
+ }
346
+ }
347
+ }
348
+
349
+ .seam-climate-setting-schedule-device-bar {
350
+ border-top: 1px solid colors.$bg-c;
351
+ padding: 16px;
352
+ display: flex;
353
+ align-items: center;
354
+ justify-content: space-between;
355
+ cursor: pointer;
356
+
357
+ .seam-device-image {
358
+ width: 30px;
359
+ height: 30px;
360
+ margin-right: 16px;
361
+
362
+ img {
363
+ width: 100%;
364
+ max-height: 100%;
365
+ }
366
+ }
367
+
368
+ .seam-climate-setting-schedule-device-content {
369
+ display: flex;
370
+ align-items: center;
371
+ width: 100%;
372
+ font-weight: 400;
373
+ font-size: 14px;
374
+ line-height: 134%;
375
+
376
+ .seam-climate-setting-schedule-device-details {
377
+ display: flex;
378
+ flex-direction: column;
379
+ gap: 2.5px;
380
+
381
+ .seam-device-name {
382
+ color: colors.$text-gray-1;
383
+ }
384
+
385
+ .seam-device-current-climate-setting {
386
+ line-height: 118%;
387
+ color: colors.$text-gray-2;
388
+ display: flex;
389
+ align-items: center;
390
+ gap: 8px;
391
+ }
392
+ }
393
+ }
394
+ }
395
+ }
396
+
397
+ .seam-climate-setting-schedule-device-chevron {
398
+ transform: rotate(270deg);
399
+ }
400
+ }
401
+ }
402
+
403
+ @mixin all {
404
+ @include temperature-control;
405
+ @include climate-setting-status;
21
406
  }
@@ -21,6 +21,9 @@
21
21
 
22
22
  & .seam-tooltip-button-icon {
23
23
  position: absolute;
24
+ display: flex;
25
+ justify-content: center;
26
+ align-items: center;
24
27
  transition: opacity 0.15s ease-in-out;
25
28
  }
26
29
 
@@ -1 +0,0 @@
1
- {"version":3,"file":"ClimateSettingScheduleDetails.js","sourceRoot":"","sources":["../../../../src/lib/seam/components/ClimateSettingScheduleTable/ClimateSettingScheduleDetails.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGhC,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAE/D,MAAM,UAAU,6BAA6B,CAAC,KAE7C;IACC,MAAM,EAAE,sBAAsB,EAAE,GAAG,KAAK,CAAA;IACxC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,EAAE,SAAS,EAAE,sBAAsB,CAAC,SAAS,EAAE,CAAC,CAAA;IAE7E,OAAO,CACL,eAAK,SAAS,EAAC,cAAc,aAC3B,eAAM,SAAS,EAAC,sCAAsC,YACnD,MAAM,EAAE,UAAU,CAAC,IAAI,GACnB,EACP,KAAC,UAAU,KAAG,EACd,KAAC,QAAQ,IAAC,sBAAsB,EAAE,sBAAsB,GAAI,EAC5D,KAAC,UAAU,KAAG,EACd,KAAC,oBAAoB,IAAC,cAAc,EAAE,sBAAsB,GAAI,IAC5D,CACP,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAEjB;IACC,MAAM,EAAE,sBAAsB,EAAE,GAAG,KAAK,CAAA;IAExC,MAAM,UAAU,GACd,eAAe,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAA;IAErE,IAAI,UAAU,EAAE;QACd,OAAO,CACL,2BACG,CAAC,CAAC,IAAI,OAAG,UAAU,CAAC,sBAAsB,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAC7D,CACR,CAAA;KACF;IAED,OAAO,CACL,2BACG,CAAC,CAAC,MAAM,OAAG,UAAU,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,IAC5D,CACR,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC;QAC3C,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;KACf,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,GAAG;IACR,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;CACb,CAAA"}