@mp-consulting/homebridge-daikin-cloud 1.1.0 → 1.1.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/CHANGELOG.md CHANGED
@@ -4,6 +4,18 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/) and this project adheres to [Semantic Versioning](https://semver.org/).
6
6
 
7
+ ## [1.1.3] - 2026-01-09
8
+
9
+ ### Fixed
10
+ - Dark mode support for plugin settings UI
11
+ - All UI elements now properly adapt to system dark mode preference
12
+ - Rate limit log no longer shows "undefined/undefined" for minute limits in Mobile App mode
13
+
14
+ ## [1.1.1] - 2026-01-09
15
+
16
+ ### Changed
17
+ - Version bump for npm release
18
+
7
19
  ## [1.1.0] - 2026-01-09
8
20
 
9
21
  ### Added
@@ -30,6 +42,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/) and this
30
42
  ### Fixed
31
43
  - Temperature validation to prevent undefined value warnings
32
44
  - Default temperature values when sensors are unavailable
45
+ - WebSocket updates now use correct HomeKit characteristics for HeaterCooler service
33
46
 
34
47
  ## [1.0.3] - 2026-01-09
35
48
 
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,EAAC,MAAM,YAAY,CAAC;AAS1H,OAAO,EAAkB,qBAAqB,EAAE,iBAAiB,EAAyB,MAAM,OAAO,CAAC;AASxG,MAAM,MAAM,2BAA2B,GAAG;IACtC,MAAM,EAAE,iBAAiB,CAAC;CAC7B,CAAC;AAEF,qBAAa,mBAAoB,YAAW,qBAAqB;aAgBzC,GAAG,EAAE,MAAM;aACX,MAAM,EAAE,cAAc;aACtB,GAAG,EAAE,GAAG;IAjB5B,SAAgB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxC,SAAgB,cAAc,EAAE,OAAO,cAAc,CAAC;IAEtD,SAAgB,WAAW,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,EAAE,CAAM;IAEnF,SAAgB,WAAW,EAAE,MAAM,CAAM;IAClC,UAAU,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAErD,SAAgB,mBAAmB,SAAmD;IAC/E,cAAc,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3C,kBAAkB,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACtD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;gBAGzC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG;IA2IrB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC,2BAA2B,CAAC;YAKrE,eAAe;YAgBf,aAAa;YAkDb,aAAa;IAW3B,kBAAkB,CAAC,KAAK,GAAE,MAAsE;IAYhG,OAAO,CAAC,0BAA0B;YAOpB,eAAe;IAc7B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;IACH,OAAO,CAAC,2BAA2B;CAkItC"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,EAAC,MAAM,YAAY,CAAC;AAS1H,OAAO,EAAkB,qBAAqB,EAAE,iBAAiB,EAAyB,MAAM,OAAO,CAAC;AASxG,MAAM,MAAM,2BAA2B,GAAG;IACtC,MAAM,EAAE,iBAAiB,CAAC;CAC7B,CAAC;AAEF,qBAAa,mBAAoB,YAAW,qBAAqB;aAgBzC,GAAG,EAAE,MAAM;aACX,MAAM,EAAE,cAAc;aACtB,GAAG,EAAE,GAAG;IAjB5B,SAAgB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxC,SAAgB,cAAc,EAAE,OAAO,cAAc,CAAC;IAEtD,SAAgB,WAAW,EAAE,iBAAiB,CAAC,2BAA2B,CAAC,EAAE,CAAM;IAEnF,SAAgB,WAAW,EAAE,MAAM,CAAM;IAClC,UAAU,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAErD,SAAgB,mBAAmB,SAAmD;IAC/E,cAAc,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3C,kBAAkB,EAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;IACtD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;gBAGzC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG;IA+IrB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,CAAC,2BAA2B,CAAC;YAKrE,eAAe;YAgBf,aAAa;YAkDb,aAAa;IAW3B,kBAAkB,CAAC,KAAK,GAAE,MAAsE;IAYhG,OAAO,CAAC,0BAA0B;YAOpB,eAAe;IAc7B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;IACH,OAAO,CAAC,2BAA2B;CA+KtC"}
@@ -116,7 +116,11 @@ class DaikinCloudPlatform {
116
116
  if (rateLimitStatus.remainingDay && rateLimitStatus.remainingDay <= constants_1.RATE_LIMIT_WARNING_THRESHOLD) {
117
117
  this.log.warn(`[Rate Limit] Rate limit almost reached, you only have ${rateLimitStatus.remainingDay} calls left today`);
118
118
  }
119
- this.log.debug(`[Rate Limit] Remaining calls today: ${rateLimitStatus.remainingDay}/${rateLimitStatus.limitDay} -- this minute: ${rateLimitStatus.remainingMinute}/${rateLimitStatus.limitMinute}`);
119
+ // Only show minute limits if available (Developer Portal mode)
120
+ const minuteInfo = rateLimitStatus.limitMinute !== undefined
121
+ ? ` -- this minute: ${rateLimitStatus.remainingMinute}/${rateLimitStatus.limitMinute}`
122
+ : '';
123
+ this.log.debug(`[Rate Limit] Remaining calls today: ${rateLimitStatus.remainingDay}/${rateLimitStatus.limitDay}${minuteInfo}`);
120
124
  });
121
125
  this.controller.on('error', (error) => {
122
126
  this.log.error(`[Error] ${error}`);
@@ -283,96 +287,135 @@ class DaikinCloudPlatform {
283
287
  this.log.debug(`[WebSocket] No accessory found for device ${update.deviceId}`);
284
288
  return;
285
289
  }
286
- // Get the Thermostat/HeaterCooler service
287
- const thermostatService = accessory.getService(this.Service.Thermostat)
288
- || accessory.getService(this.Service.HeaterCooler);
289
- if (!thermostatService) {
290
+ // Determine which service type is being used
291
+ const heaterCoolerService = accessory.getService(this.Service.HeaterCooler);
292
+ const thermostatService = accessory.getService(this.Service.Thermostat);
293
+ const service = heaterCoolerService || thermostatService;
294
+ if (!service) {
290
295
  return;
291
296
  }
297
+ const isHeaterCooler = !!heaterCoolerService;
292
298
  // Map WebSocket characteristic names to HomeKit characteristics for updates
293
299
  const characteristicName = update.characteristicName;
294
300
  switch (characteristicName) {
295
301
  case 'onOffMode': {
296
- // Update CurrentHeatingCoolingState
297
- const operationMode = accessory.context.device.getData(update.embeddedId, 'operationMode', undefined).value;
298
302
  const isOn = update.data.value === 'on';
299
- let currentState;
300
- if (!isOn) {
301
- currentState = this.Characteristic.CurrentHeatingCoolingState.OFF;
303
+ if (isHeaterCooler) {
304
+ // HeaterCooler uses Active characteristic
305
+ service.updateCharacteristic(this.Characteristic.Active, isOn ? this.Characteristic.Active.ACTIVE : this.Characteristic.Active.INACTIVE);
306
+ this.log.debug(`[WebSocket] Updated Active to ${isOn ? 'ACTIVE' : 'INACTIVE'}`);
307
+ // Also update CurrentHeaterCoolerState
308
+ if (!isOn) {
309
+ service.updateCharacteristic(this.Characteristic.CurrentHeaterCoolerState, this.Characteristic.CurrentHeaterCoolerState.INACTIVE);
310
+ }
302
311
  }
303
312
  else {
304
- switch (operationMode) {
305
- case 'cooling':
306
- currentState = this.Characteristic.CurrentHeatingCoolingState.COOL;
307
- break;
308
- case 'heating':
309
- currentState = this.Characteristic.CurrentHeatingCoolingState.HEAT;
310
- break;
311
- default:
312
- currentState = this.Characteristic.CurrentHeatingCoolingState.HEAT;
313
+ // Thermostat uses CurrentHeatingCoolingState
314
+ const operationMode = accessory.context.device.getData(update.embeddedId, 'operationMode', undefined).value;
315
+ let currentState;
316
+ if (!isOn) {
317
+ currentState = this.Characteristic.CurrentHeatingCoolingState.OFF;
313
318
  }
319
+ else {
320
+ switch (operationMode) {
321
+ case 'cooling':
322
+ currentState = this.Characteristic.CurrentHeatingCoolingState.COOL;
323
+ break;
324
+ case 'heating':
325
+ currentState = this.Characteristic.CurrentHeatingCoolingState.HEAT;
326
+ break;
327
+ default:
328
+ currentState = this.Characteristic.CurrentHeatingCoolingState.HEAT;
329
+ }
330
+ }
331
+ service.updateCharacteristic(this.Characteristic.CurrentHeatingCoolingState, currentState);
332
+ this.log.debug(`[WebSocket] Updated CurrentHeatingCoolingState to ${currentState}`);
314
333
  }
315
- thermostatService.updateCharacteristic(this.Characteristic.CurrentHeatingCoolingState, currentState);
316
- this.log.debug(`[WebSocket] Updated CurrentHeatingCoolingState to ${currentState}`);
317
334
  break;
318
335
  }
319
336
  case 'operationMode': {
320
- // Update target state
321
337
  const isOn = accessory.context.device.getData(update.embeddedId, 'onOffMode', undefined).value === 'on';
322
338
  if (!isOn) {
323
339
  return; // Don't update target state if device is off
324
340
  }
325
- let targetState;
326
- switch (update.data.value) {
327
- case 'cooling':
328
- targetState = this.Characteristic.TargetHeatingCoolingState.COOL;
329
- break;
330
- case 'heating':
331
- targetState = this.Characteristic.TargetHeatingCoolingState.HEAT;
332
- break;
333
- case 'auto':
334
- targetState = this.Characteristic.TargetHeatingCoolingState.AUTO;
335
- break;
336
- default:
337
- return;
341
+ if (isHeaterCooler) {
342
+ // HeaterCooler uses TargetHeaterCoolerState and CurrentHeaterCoolerState
343
+ let targetState;
344
+ let currentState;
345
+ switch (update.data.value) {
346
+ case 'cooling':
347
+ targetState = this.Characteristic.TargetHeaterCoolerState.COOL;
348
+ currentState = this.Characteristic.CurrentHeaterCoolerState.COOLING;
349
+ break;
350
+ case 'heating':
351
+ targetState = this.Characteristic.TargetHeaterCoolerState.HEAT;
352
+ currentState = this.Characteristic.CurrentHeaterCoolerState.HEATING;
353
+ break;
354
+ case 'auto':
355
+ targetState = this.Characteristic.TargetHeaterCoolerState.AUTO;
356
+ currentState = this.Characteristic.CurrentHeaterCoolerState.IDLE;
357
+ break;
358
+ default:
359
+ return;
360
+ }
361
+ service.updateCharacteristic(this.Characteristic.TargetHeaterCoolerState, targetState);
362
+ service.updateCharacteristic(this.Characteristic.CurrentHeaterCoolerState, currentState);
363
+ this.log.debug(`[WebSocket] Updated TargetHeaterCoolerState to ${targetState}, CurrentHeaterCoolerState to ${currentState}`);
364
+ }
365
+ else {
366
+ // Thermostat uses TargetHeatingCoolingState
367
+ let targetState;
368
+ switch (update.data.value) {
369
+ case 'cooling':
370
+ targetState = this.Characteristic.TargetHeatingCoolingState.COOL;
371
+ break;
372
+ case 'heating':
373
+ targetState = this.Characteristic.TargetHeatingCoolingState.HEAT;
374
+ break;
375
+ case 'auto':
376
+ targetState = this.Characteristic.TargetHeatingCoolingState.AUTO;
377
+ break;
378
+ default:
379
+ return;
380
+ }
381
+ service.updateCharacteristic(this.Characteristic.TargetHeatingCoolingState, targetState);
382
+ this.log.debug(`[WebSocket] Updated TargetHeatingCoolingState to ${targetState}`);
338
383
  }
339
- thermostatService.updateCharacteristic(this.Characteristic.TargetHeatingCoolingState, targetState);
340
- this.log.debug(`[WebSocket] Updated TargetHeatingCoolingState to ${targetState}`);
341
384
  break;
342
385
  }
343
386
  case 'sensoryData': {
344
- // Temperature sensor updates
387
+ // Temperature sensor updates - same for both service types
345
388
  const data = update.data.value;
346
389
  if (data.roomTemperature?.value !== undefined) {
347
- thermostatService.updateCharacteristic(this.Characteristic.CurrentTemperature, data.roomTemperature.value);
390
+ service.updateCharacteristic(this.Characteristic.CurrentTemperature, data.roomTemperature.value);
348
391
  this.log.debug(`[WebSocket] Updated CurrentTemperature to ${data.roomTemperature.value}`);
349
392
  }
350
393
  break;
351
394
  }
352
395
  case 'temperatureControl': {
353
- // Temperature setpoint updates
396
+ // Temperature setpoint updates - same for both service types
354
397
  const data = update.data.value;
355
398
  const heatingTemp = data.operationModes?.heating?.setpoints?.roomTemperature?.value;
356
399
  const coolingTemp = data.operationModes?.cooling?.setpoints?.roomTemperature?.value;
357
400
  if (heatingTemp !== undefined) {
358
- thermostatService.updateCharacteristic(this.Characteristic.HeatingThresholdTemperature, heatingTemp);
401
+ service.updateCharacteristic(this.Characteristic.HeatingThresholdTemperature, heatingTemp);
359
402
  this.log.debug(`[WebSocket] Updated HeatingThresholdTemperature to ${heatingTemp}`);
360
403
  }
361
404
  if (coolingTemp !== undefined) {
362
- thermostatService.updateCharacteristic(this.Characteristic.CoolingThresholdTemperature, coolingTemp);
405
+ service.updateCharacteristic(this.Characteristic.CoolingThresholdTemperature, coolingTemp);
363
406
  this.log.debug(`[WebSocket] Updated CoolingThresholdTemperature to ${coolingTemp}`);
364
407
  }
365
408
  break;
366
409
  }
367
410
  case 'fanControl': {
368
- // Fan speed updates
411
+ // Fan speed updates - same for both service types
369
412
  const data = update.data.value;
370
413
  const fanMode = data.operationModes?.cooling?.fanSpeed?.currentMode?.value;
371
414
  const fanSpeed = data.operationModes?.cooling?.fanSpeed?.modes?.fixed?.value;
372
415
  if (fanMode === 'fixed' && fanSpeed !== undefined) {
373
416
  // Convert fan speed (1-5) to percentage (20-100)
374
417
  const rotationSpeed = fanSpeed * constants_1.FAN_SPEED_TO_PERCENTAGE_MULTIPLIER;
375
- thermostatService.updateCharacteristic(this.Characteristic.RotationSpeed, rotationSpeed);
418
+ service.updateCharacteristic(this.Characteristic.RotationSpeed, rotationSpeed);
376
419
  this.log.debug(`[WebSocket] Updated RotationSpeed to ${rotationSpeed}`);
377
420
  }
378
421
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
@@ -10,12 +10,79 @@
10
10
 
11
11
  --bg-color: #fff;
12
12
  --bg-secondary: #f8f9fa;
13
+ --bg-tertiary: #e9ecef;
13
14
  --text-color: #333;
14
15
  --text-muted: #6c757d;
15
16
  --border-color: #dee2e6;
16
17
  --shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
17
18
  --radius: 8px;
18
19
  --radius-lg: 12px;
20
+
21
+ --input-bg: #fff;
22
+ --card-bg: #fff;
23
+
24
+ /* Alert backgrounds */
25
+ --alert-success-bg: #d4edda;
26
+ --alert-success-text: #155724;
27
+ --alert-danger-bg: #f8d7da;
28
+ --alert-danger-text: #721c24;
29
+ --alert-warning-bg: #fff3cd;
30
+ --alert-warning-text: #856404;
31
+ --alert-info-bg: #d1ecf1;
32
+ --alert-info-text: #0c5460;
33
+
34
+ /* Status badge backgrounds */
35
+ --status-success-bg: #d4edda;
36
+ --status-danger-bg: #f8d7da;
37
+ --status-warning-bg: #fff3cd;
38
+
39
+ /* Overlay */
40
+ --overlay-bg: rgba(255, 255, 255, 0.8);
41
+ --hover-overlay: rgba(0, 0, 0, 0.05);
42
+ }
43
+
44
+ /* Dark mode support */
45
+ @media (prefers-color-scheme: dark) {
46
+ :root {
47
+ --primary-color: #4dabf7;
48
+ --primary-hover: #74c0fc;
49
+ --success-color: #51cf66;
50
+ --success-hover: #69db7c;
51
+ --warning-color: #fcc419;
52
+ --danger-color: #ff6b6b;
53
+ --danger-hover: #fa5252;
54
+ --info-color: #22b8cf;
55
+
56
+ --bg-color: #1a1a1a;
57
+ --bg-secondary: #2d2d2d;
58
+ --bg-tertiary: #3d3d3d;
59
+ --text-color: #e1e1e1;
60
+ --text-muted: #a0a0a0;
61
+ --border-color: #404040;
62
+ --shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
63
+
64
+ --input-bg: #2d2d2d;
65
+ --card-bg: #242424;
66
+
67
+ /* Alert backgrounds - darker variants */
68
+ --alert-success-bg: #1e3a1e;
69
+ --alert-success-text: #a3d9a5;
70
+ --alert-danger-bg: #3d1f1f;
71
+ --alert-danger-text: #f5a5a5;
72
+ --alert-warning-bg: #3d3520;
73
+ --alert-warning-text: #ffd966;
74
+ --alert-info-bg: #1a3a4a;
75
+ --alert-info-text: #7ec8e3;
76
+
77
+ /* Status badge backgrounds */
78
+ --status-success-bg: #1e3a1e;
79
+ --status-danger-bg: #3d1f1f;
80
+ --status-warning-bg: #3d3520;
81
+
82
+ /* Overlay */
83
+ --overlay-bg: rgba(0, 0, 0, 0.8);
84
+ --hover-overlay: rgba(255, 255, 255, 0.05);
85
+ }
19
86
  }
20
87
 
21
88
  * {
@@ -84,18 +151,18 @@ body {
84
151
  }
85
152
 
86
153
  .status-badge.authenticated {
87
- background: #d4edda;
88
- color: #155724;
154
+ background: var(--status-success-bg);
155
+ color: var(--alert-success-text);
89
156
  }
90
157
 
91
158
  .status-badge.not-authenticated {
92
- background: #f8d7da;
93
- color: #721c24;
159
+ background: var(--status-danger-bg);
160
+ color: var(--alert-danger-text);
94
161
  }
95
162
 
96
163
  .status-badge.expired {
97
- background: #fff3cd;
98
- color: #856404;
164
+ background: var(--status-warning-bg);
165
+ color: var(--alert-warning-text);
99
166
  }
100
167
 
101
168
  .status-indicator {
@@ -138,7 +205,7 @@ body {
138
205
 
139
206
  .tab-btn:hover {
140
207
  color: var(--text-color);
141
- background: rgba(0, 0, 0, 0.05);
208
+ background: var(--hover-overlay);
142
209
  }
143
210
 
144
211
  .tab-btn.active {
@@ -323,7 +390,7 @@ body {
323
390
  left: 2px;
324
391
  width: 20px;
325
392
  height: 20px;
326
- background: white;
393
+ background: var(--bg-color);
327
394
  border-radius: 50%;
328
395
  box-shadow: 0 1px 3px rgba(0,0,0,0.2);
329
396
  transition: transform 0.2s;
@@ -383,18 +450,18 @@ body {
383
450
  }
384
451
 
385
452
  .settings-status.saving {
386
- background: #e3f2fd;
387
- color: #1565c0;
453
+ background: var(--alert-info-bg);
454
+ color: var(--alert-info-text);
388
455
  }
389
456
 
390
457
  .settings-status.saved {
391
- background: #e8f5e9;
392
- color: #2e7d32;
458
+ background: var(--alert-success-bg);
459
+ color: var(--alert-success-text);
393
460
  }
394
461
 
395
462
  .settings-status.error {
396
- background: #ffebee;
397
- color: #c62828;
463
+ background: var(--alert-danger-bg);
464
+ color: var(--alert-danger-text);
398
465
  }
399
466
 
400
467
  /* Feature Toggles List */
@@ -497,7 +564,7 @@ body {
497
564
  }
498
565
 
499
566
  .device-item:hover {
500
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
567
+ box-shadow: var(--shadow);
501
568
  }
502
569
 
503
570
  .device-header {
@@ -526,13 +593,13 @@ body {
526
593
  }
527
594
 
528
595
  .device-power.power-on {
529
- background: #d4edda;
530
- color: #155724;
596
+ background: var(--status-success-bg);
597
+ color: var(--alert-success-text);
531
598
  }
532
599
 
533
600
  .device-power.power-off {
534
- background: #e2e3e5;
535
- color: #6c757d;
601
+ background: var(--bg-tertiary);
602
+ color: var(--text-muted);
536
603
  }
537
604
 
538
605
  .device-status {
@@ -545,13 +612,13 @@ body {
545
612
  }
546
613
 
547
614
  .device-status.online {
548
- background: #d4edda;
549
- color: #155724;
615
+ background: var(--status-success-bg);
616
+ color: var(--alert-success-text);
550
617
  }
551
618
 
552
619
  .device-status.offline {
553
- background: #f8d7da;
554
- color: #721c24;
620
+ background: var(--status-danger-bg);
621
+ color: var(--alert-danger-text);
555
622
  }
556
623
 
557
624
  .device-info {
@@ -893,23 +960,23 @@ body {
893
960
  }
894
961
 
895
962
  .alert-info {
896
- background: #d1ecf1;
897
- color: #0c5460;
963
+ background: var(--alert-info-bg);
964
+ color: var(--alert-info-text);
898
965
  }
899
966
 
900
967
  .alert-success {
901
- background: #d4edda;
902
- color: #155724;
968
+ background: var(--alert-success-bg);
969
+ color: var(--alert-success-text);
903
970
  }
904
971
 
905
972
  .alert-warning {
906
- background: #fff3cd;
907
- color: #856404;
973
+ background: var(--alert-warning-bg);
974
+ color: var(--alert-warning-text);
908
975
  }
909
976
 
910
977
  .alert-danger {
911
- background: #f8d7da;
912
- color: #721c24;
978
+ background: var(--alert-danger-bg);
979
+ color: var(--alert-danger-text);
913
980
  }
914
981
 
915
982
  /* States */
@@ -971,7 +1038,7 @@ body {
971
1038
  left: 0;
972
1039
  right: 0;
973
1040
  bottom: 0;
974
- background: rgba(255, 255, 255, 0.8);
1041
+ background: var(--overlay-bg);
975
1042
  display: flex;
976
1043
  align-items: center;
977
1044
  justify-content: center;
@@ -1028,13 +1095,13 @@ body {
1028
1095
 
1029
1096
  .subtab-btn:hover {
1030
1097
  color: var(--text-color);
1031
- background: rgba(255, 255, 255, 0.5);
1098
+ background: var(--hover-overlay);
1032
1099
  }
1033
1100
 
1034
1101
  .subtab-btn.active {
1035
1102
  background: var(--bg-color);
1036
1103
  color: var(--primary-color);
1037
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
1104
+ box-shadow: var(--shadow);
1038
1105
  }
1039
1106
 
1040
1107
  .settings-subtab-content {
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "displayName": "Daikin Cloud",
3
3
  "platformname": "daikincloud",
4
4
  "name": "@mp-consulting/homebridge-daikin-cloud",
5
- "version": "1.1.0",
5
+ "version": "1.1.3",
6
6
  "description": "Integrate with the Daikin Cloud to control your Daikin air conditioning via the cloud",
7
7
  "license": "Apache-2.0",
8
8
  "repository": {
@@ -1,8 +1,8 @@
1
1
  {
2
- "access_token": "eyJ0eXAiOiJhdCtKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.eyJzY29wZSI6Im9wZW5pZCBvbmVjdGE6b25lY3RhLmFwcGxpY2F0aW9uIG9mZmxpbmVfYWNjZXNzIiwiaWF0IjoxNzY3OTc5NDY2LCJleHAiOjE3Njc5ODMwNjYsImF1ZCI6WyJodHRwczovL2lkcC5vbmVjdGEuZGFpa2luZXVyb3BlLmNvbSIsImh0dHBzOi8vYXBpLm9uZWN0YS5kYWlraW5ldXJvcGUuY29tIiwid3NzOi8vd3NhcGkub25lY3RhLmRhaWtpbmV1cm9wZS5jb20iLCJGalM2VDVvWkh2enBaRU5JRHliRlJkdEsiXSwiaXNzIjoiaHR0cHM6Ly9jZGMuZGFpa2luLmV1L29pZGMvb3AvdjEuMC8zX3hSQjNqYVE2MmJWanFYVTFvbWFFc1BEVllDMFR3aTF6ZnExekhQdV81SEZUMHpXa0R2WkpTOTdZdzFsb0puVG0vIiwic3ViIjoiZTQzN2YzNTE4YWFkNDMxNGI0N2IzOTlhMzcyNjc4MDciLCJzaWQiOiJjRFZEZmpBeU1EUTFNRFV6TlRRMFlqQTRNemN6TWpNNU16Y3pNak00TXpNek5UQXlNRGM1TjM1TlRuRnNUWEZHTlRSNFZXVmtOamRwYURkak9XWTRaVzAxWDJOUU5VMXRSVFJqZFRoSFMySk1TM0pzVkZKQlJtbDFSWGhxWkdkYVptRmFaVEJZVG5KRVpVSkRkME5wYjB3dFpWQmxOalphTW5sbmEyWk9XRkZSZmc9PSIsImp0aSI6InN0Mi5zLkF0THRWZVNLaFEuaDBZYmRCbFhIWHZ1Q01qSGt0Y1VPeHhibk5Ib0FxS0JNWkZadVNoNk9jNTJpTlNhQThodzR1dEVteWRtbzA5U0w5dHJEcTdxWVZ5NGxUeDJhbWlvYmpHcHgyMzJvZXFRb1AtV3RYZk5fNV9EdV9NR21HUC1ucVROMUh2QzU0Z1guSHJGNWJLaGY1bXNIS1V6QW1ZWG9YQlo5ZFZub0NtTl9GYlhGdld5RTc4T2Flc1FkWEk4RG5NS2hNdjQ4Y2RGVHVyanJUdHRZQ2FkZGlVTUxyRUVIOVEuc2MzIiwiY2xpZW50X2lkIjoiRmpTNlQ1b1pIdnpwWkVOSUR5YkZSZHRLIiwiYXpwIjoiRmpTNlQ1b1pIdnpwWkVOSUR5YkZSZHRLIn0.ni-C2Y4i_5iLamP3EDfkmoRFuETFFbWFKBj4XrGOpMTOJuxTezdK840HKJZOEIipz98b1GkSbg4Yx7tFBr3ep9OB6uVpdiaN_XFudiqAG-QnIXRnsAZJQYqB8n5c-c-8Hc96g1Xt0N82kHTgeZJw2R9gnPhB9nUIiNCIE2Ix0dRZh9PO-g2CC99mUxeqI4lX3rLprvc88DWAIcku4ZVHbdArk7cDBQNpemUlL6xFiq7hAMbi9Y4FX5JkcW9nJd2bhKBBxgw7Wz4s66PzeHnTRDC__1xDAvdBhUhnFWVr4T34mtigJRLc0y_TC8GuxVecCdg_gQ3MP8iJhyUjtHYlww",
2
+ "access_token": "eyJ0eXAiOiJhdCtKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.eyJzY29wZSI6Im9wZW5pZCBvbmVjdGE6b25lY3RhLmFwcGxpY2F0aW9uIG9mZmxpbmVfYWNjZXNzIiwiaWF0IjoxNzY3OTg2ODQ5LCJleHAiOjE3Njc5OTA0NDksImF1ZCI6WyJodHRwczovL2lkcC5vbmVjdGEuZGFpa2luZXVyb3BlLmNvbSIsImh0dHBzOi8vYXBpLm9uZWN0YS5kYWlraW5ldXJvcGUuY29tIiwid3NzOi8vd3NhcGkub25lY3RhLmRhaWtpbmV1cm9wZS5jb20iLCJGalM2VDVvWkh2enBaRU5JRHliRlJkdEsiXSwiaXNzIjoiaHR0cHM6Ly9jZGMuZGFpa2luLmV1L29pZGMvb3AvdjEuMC8zX3hSQjNqYVE2MmJWanFYVTFvbWFFc1BEVllDMFR3aTF6ZnExekhQdV81SEZUMHpXa0R2WkpTOTdZdzFsb0puVG0vIiwic3ViIjoiZTQzN2YzNTE4YWFkNDMxNGI0N2IzOTlhMzcyNjc4MDciLCJzaWQiOiJjRFZEZmpBeU1EUTFNRFV6TlRRMFlqQTRNemN6TWpNNU16Y3pNak00TXpNek5UQXlNRGM1TjM1TlRuRnNUWEZHTlRSNFZXVmtOamRwYURkak9XWTRaVzAxWDJOUU5VMXRSVFJqZFRoSFMySk1TM0pzVkZKQlJtbDFSWGhxWkdkYVptRmFaVEJZVG5KRVpVSkRkME5wYjB3dFpWQmxOalphTW5sbmEyWk9XRkZSZmc9PSIsImp0aSI6InN0Mi5zLkF0THRlT3BzUmcuRGpJc0lqM3FaOHZQZ1l3dlI5c3VEYkIwU2VXVmlGVl9VQXZJSjd0UmRTZVlwNEszNkQxZDFpalJjTk9iSGRmWUpteFozRTR1ekhtYkMtaERpMGZzQjNQNTJmWWFHZ2NidFdDeFRoQ3dpUVQtYmFkZE9GVGFweGllUHpsaG9PUTEuelNWajhZbDB4aF8zRTAtVVdfUHNNeHROMTUwNFo3aVQtd1d3UlpnV2YyQ1RFTF90SEFhbERmOXVwRzkxZkxXak10WkpNMTFYRWNmZmdBTnREV0pEVlEuc2MzIiwiY2xpZW50X2lkIjoiRmpTNlQ1b1pIdnpwWkVOSUR5YkZSZHRLIiwiYXpwIjoiRmpTNlQ1b1pIdnpwWkVOSUR5YkZSZHRLIn0.eVY2Uywwgz5HQALGPANhg2PXEL7IR17yDae-EdRc7guDbRJkjimSqfJS2t6FwGe-2fByDyZADlsmV-HcKR0YnWJcbLHboQ6a_TZeRsIzx7RecPLK8jh7X3P899SYpFDq4HJzPXCsNq5tkPVc-ZqydMpGXmlD9wypVSU_QgQemfpiPcGbyFk94A0wYsEHO3vvZSzhYOty63-mB7EjEF6UwcCkqnpR0vGyC_gO_GcBwthZY2XA3CHuOU02HWeTRrzlpxke33_xjxN_uZWJnhWGoWXVtSYa-zq9S2YAC-mhevkfaMEsko1mksdX_KqiALCjueU7dRDQgRlwHdjwvQae9Q",
3
3
  "token_type": "Bearer",
4
4
  "expires_in": 3600,
5
- "id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.eyJpc3MiOiJodHRwczovL2NkYy5kYWlraW4uZXUvb2lkYy9vcC92MS4wLzNfeFJCM2phUTYyYlZqcVhVMW9tYUVzUERWWUMwVHdpMXpmcTF6SFB1XzVIRlQweldrRHZaSlM5N1l3MWxvSm5UbS8iLCJleHAiOjE3OTk1MTU0NjYsImlhdCI6MTc2Nzk3OTQ2NiwiYXVkIjpbImh0dHBzOi8vaWRwLm9uZWN0YS5kYWlraW5ldXJvcGUuY29tIiwiaHR0cHM6Ly9hcGkub25lY3RhLmRhaWtpbmV1cm9wZS5jb20iLCJ3c3M6Ly93c2FwaS5vbmVjdGEuZGFpa2luZXVyb3BlLmNvbSIsIkZqUzZUNW9aSHZ6cFpFTklEeWJGUmR0SyJdLCJhdXRoX3RpbWUiOjE3Njc5Nzk0NjUsImF6cCI6IkZqUzZUNW9aSHZ6cFpFTklEeWJGUmR0SyIsInN1YiI6ImU0MzdmMzUxOGFhZDQzMTRiNDdiMzk5YTM3MjY3ODA3IiwiYXRfaGFzaCI6Im5hNU1BRmpnRXVtYWV2UzdaNkhZUEEiLCJzaWQiOiJjRFZEZmpBeU1EUTFNRFV6TlRRMFlqQTRNemN6TWpNNU16Y3pNak00TXpNek5UQXlNRGM1TjM1TlRuRnNUWEZHTlRSNFZXVmtOamRwYURkak9XWTRaVzAxWDJOUU5VMXRSVFJqZFRoSFMySk1TM0pzVkZKQlJtbDFSWGhxWkdkYVptRmFaVEJZVG5KRVpVSkRkME5wYjB3dFpWQmxOalphTW5sbmEyWk9XRkZSZmc9PSJ9.FiUu051fx67yVRfL__AwO8shBhV7SGCPZLh-iJnBXmoRSThXCaoy6AuYStftB4Du2NX72-6A4A6PGQwH0Ssud0QhMLOx0_oouB6bC8dAxJDJTuStHP9IkF8t1K_F9IJYUMQL7V2wy_QLEWuJSgvj2hA-IRT97WJx35oD326KnMCChxD5uE3EIHRz46QJ7mC0nf6eoteryIXB78_y0In4P65Pkn6mh2IPaSGGwwDLoPpOijh3aAx-fhahmeQqW_x_p9wHdFB9h2m16CBb6E2qQnuJdN2OTxMrPZV93ZM4YKFXT5FphxfPsN7k6X2vnKqgGB9Iy5oLCMylo0dqF1MY2Q",
6
- "refresh_token": "st2.s.AtLtcIivWg.-gc1o-1-e460TxC6H6hU7Ljwsi6YuGQl91I2zB_GR1WUZCOhwgv6UTqo69mjUrbrb4B3afw30EWQqcNWC_uReXhPipfr6xsPjRG18eh2P3P1MfZy7VTL9Wf6XvQdh6A7.8BIQ5bOTl2D2SBm9twO9LReX11_QpN1oYw77sxssm-zECCmlLBG2cnvn1cl_FL8tXxksghBc2CgpJUDqe8ReTQ.sc3",
7
- "expires_at": 1767983066
5
+ "id_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik1FVkdRa0l5TXprNE0wRTRNVFkzTnpJM1FUYzBNek16T0RRd05FRkVRVUpCTTBFd1EwRkZRZyJ9.eyJpc3MiOiJodHRwczovL2NkYy5kYWlraW4uZXUvb2lkYy9vcC92MS4wLzNfeFJCM2phUTYyYlZqcVhVMW9tYUVzUERWWUMwVHdpMXpmcTF6SFB1XzVIRlQweldrRHZaSlM5N1l3MWxvSm5UbS8iLCJleHAiOjE3OTk1MjI4NTAsImlhdCI6MTc2Nzk4Njg1MCwiYXVkIjpbImh0dHBzOi8vaWRwLm9uZWN0YS5kYWlraW5ldXJvcGUuY29tIiwiaHR0cHM6Ly9hcGkub25lY3RhLmRhaWtpbmV1cm9wZS5jb20iLCJ3c3M6Ly93c2FwaS5vbmVjdGEuZGFpa2luZXVyb3BlLmNvbSIsIkZqUzZUNW9aSHZ6cFpFTklEeWJGUmR0SyJdLCJhdXRoX3RpbWUiOjE3Njc5ODAxMjgsImF6cCI6IkZqUzZUNW9aSHZ6cFpFTklEeWJGUmR0SyIsInN1YiI6ImU0MzdmMzUxOGFhZDQzMTRiNDdiMzk5YTM3MjY3ODA3IiwiYXRfaGFzaCI6Ik5aVUd5OVRZUDE1NHMzU0tOSl9iQWciLCJzaWQiOiJlREpRZmpBeU1EUTFNRFV6TlRRMFlqQTRNemN6TWpNNU16Y3pNak00TXpNek5UQXlNRGM1TjM1TlRUWkhhbUkyUkZSTVJtSTFkbmxaV1RoMFRFMWpSbUZMVjBOVGVqSTVja1JuYm1ab05rVXRkRFYwYXpGRFh6aGljV2x6T0ZCSVYwWnpZMWhVWm14VE1taERkME5wYjB3dFpWQmxOalphTW5sbmEyWk9XRkZSZmc9PSJ9.LttIyxdsjRGxWRts6f8OF7nv2liLOoRmUfBTFLoMwsliymdXvL5rhoGFm3oAT5rT4Tfx43BuBY_mQyu3dJfBkZnrhcTtpHRCxj0V0NECyC4rawVz7aGebsVKFzAKEiJjXRtGjpwMTASgik12YaB47z1GN_EX54RMzTq8521aRWe00y-4kuiDegi6rTjeQYxc8BFiqfYH05LKkp6dXVq-KG6EGAzHShntoiEELYe5FD0HU-bh_9TtN-htBT_o31y83NrtKQ6pb2btL_Illx1Z9zMGLWfcDnkM3bgflNmx0dJIjmHegUgzB2xHK08-BU1sxIUWonkvCY5KthkAXHvPMg",
6
+ "refresh_token": "st2.s.AtLtK-qdXQ.Qa7WEHiaXsK9oI5AXkKgxHm_vJlP0aVE2iRFSB8TPJpP6oo3cAalepmH72eBBFOV_vDKtHphjTurwRBRLPo45WTSuYQ-54rC4nFtuxS_0EDJ_mxFhpyMDUnoIogKAden.xneq_t8PVyyovfsO0nziOxhG8OGNrDHjH7GWg5K4YqyEeqRqm-zjRUB3ja6T-zbYl6PUhGV_XVmFwiZWiqVVaQ.sc3",
7
+ "expires_at": 1767990450
8
8
  }