@homebridge-plugins/homebridge-govee 11.32.0-beta.2 → 11.32.0-beta.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
@@ -10,6 +10,7 @@ All notable changes to `@homebridge-plugins/homebridge-govee` will be documented
10
10
  - feat(ui): add and remove devices from the config via the my devices tab (#1323)
11
11
  - feat(ui): hide or show a device in homekit from the my devices tab
12
12
  - style(ui): present the device config actions as a settings-style list
13
+ - style(ui): polish the action list - consistent spacing, arrow buttons, bold emphasis
13
14
 
14
15
  ## v11.31.0 (2026-07-24)
15
16
 
@@ -82,31 +82,37 @@
82
82
  </div>
83
83
  <div id="deviceInfo">
84
84
  <form>
85
- <div class="form-group">
85
+ <div class="form-group mb-0">
86
86
  <select class="form-control" id="deviceSelect"></select>
87
87
  </div>
88
88
  </form>
89
- <ul class="list-group mt-2 mb-3 mx-0" id="configActionList" style="display: none;">
89
+ <ul class="list-group mt-4 mb-4 mx-0" id="configActionList" style="display: none;">
90
90
  <li class="list-group-item">
91
91
  <div class="d-flex justify-content-between align-items-center">
92
- <span class="pr-2">Adds all devices to the config.</span>
93
- <button type="button" class="btn btn-primary m-0 ml-3 py-1 min-w-50" id="addAllBtn">Add All</button>
92
+ <span class="pr-2">Adds <strong>all</strong> devices to the config</span>
93
+ <button type="button" class="btn btn-primary m-0 ml-3 py-1 min-w-50" id="addAllBtn" aria-label="Add all devices to the config">
94
+ <i aria-hidden="true" class="fas fa-arrow-right"></i>
95
+ </button>
94
96
  </div>
95
97
  </li>
96
98
  <li class="list-group-item">
97
99
  <div class="d-flex justify-content-between align-items-center">
98
- <span class="pr-2" id="deviceConfigText">Adds this device to the config.</span>
99
- <button type="button" class="btn btn-primary m-0 ml-3 py-1 min-w-50" id="deviceConfigBtn">Add</button>
100
+ <span class="pr-2" id="deviceConfigText">Adds <strong>this</strong> device to the config</span>
101
+ <button type="button" class="btn btn-primary m-0 ml-3 py-1 min-w-50" id="deviceConfigBtn" aria-label="Add this device to the config">
102
+ <i aria-hidden="true" class="fas fa-arrow-right"></i>
103
+ </button>
100
104
  </div>
101
105
  </li>
102
106
  <li class="list-group-item">
103
107
  <div class="d-flex justify-content-between align-items-center">
104
- <span class="pr-2" id="hideDeviceText">Hide this device from HomeKit.</span>
105
- <button type="button" class="btn btn-primary m-0 ml-3 py-1 min-w-50" id="hideDeviceBtn">Hide</button>
108
+ <span class="pr-2" id="hideDeviceText">Hide <strong>this</strong> device from HomeKit</span>
109
+ <button type="button" class="btn btn-primary m-0 ml-3 py-1 min-w-50" id="hideDeviceBtn" aria-label="Hide this device from HomeKit">
110
+ <i aria-hidden="true" class="fas fa-arrow-right"></i>
111
+ </button>
106
112
  </div>
107
113
  </li>
108
114
  </ul>
109
- <table class="table w-100 mt-3" id="deviceTable" style="display: none;">
115
+ <table class="table w-100 mt-0" id="deviceTable" style="display: none;">
110
116
  <thead>
111
117
  <tr class="table-active">
112
118
  <th scope="col" style="width: 40%;">Device Name</th>
@@ -381,13 +387,18 @@
381
387
  return null
382
388
  }
383
389
 
390
+ // The action buttons always show the settings-page arrow; the row text
391
+ // (and the button's aria-label) says what the arrow will do
392
+ const actionArrow = '<i aria-hidden="true" class="fas fa-arrow-right"></i>'
393
+
384
394
  const setHideControl = hidden => {
385
395
  const btn = document.getElementById('hideDeviceBtn')
386
396
  btn.dataset.hidden = hidden ? 'yes' : 'no'
387
- btn.innerHTML = hidden ? 'Show' : 'Hide'
397
+ btn.innerHTML = actionArrow
398
+ btn.setAttribute('aria-label', hidden ? 'Show this device in HomeKit' : 'Hide this device from HomeKit')
388
399
  document.getElementById('hideDeviceText').innerHTML = hidden
389
- ? 'Show this device in HomeKit.'
390
- : 'Hide this device from HomeKit.'
400
+ ? 'Show <strong>this</strong> device in HomeKit'
401
+ : 'Hide <strong>this</strong> device from HomeKit'
391
402
  }
392
403
 
393
404
  const setConfigButton = inConfig => {
@@ -397,10 +408,11 @@
397
408
  btn.dataset.state = inConfig ? 'remove' : 'add'
398
409
  btn.classList.remove('btn-danger')
399
410
  btn.classList.add('btn-primary')
400
- btn.innerHTML = inConfig ? 'Remove' : 'Add'
411
+ btn.innerHTML = actionArrow
412
+ btn.setAttribute('aria-label', inConfig ? 'Remove this device from the config' : 'Add this device to the config')
401
413
  document.getElementById('deviceConfigText').innerHTML = inConfig
402
- ? 'Removes this device from the config.'
403
- : 'Adds this device to the config.'
414
+ ? 'Removes <strong>this</strong> device from the config'
415
+ : 'Adds <strong>this</strong> device to the config'
404
416
  }
405
417
 
406
418
  const addDeviceToConfig = (config, acc) => {
@@ -453,8 +465,9 @@
453
465
  btn.dataset.confirm = 'yes'
454
466
  btn.classList.remove('btn-primary')
455
467
  btn.classList.add('btn-danger')
456
- btn.innerHTML = 'Confirm'
457
- document.getElementById('deviceConfigText').innerHTML = 'This entry has extra settings which will be lost - click again to remove it.'
468
+ btn.innerHTML = actionArrow
469
+ btn.setAttribute('aria-label', 'Confirm removing this device from the config')
470
+ document.getElementById('deviceConfigText').innerHTML = 'This entry has extra settings which will be lost - click again to remove it'
458
471
  removeConfirmTimer = setTimeout(() => setConfigButton(true), 5000)
459
472
  return
460
473
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@homebridge-plugins/homebridge-govee",
3
3
  "alias": "Govee",
4
4
  "type": "module",
5
- "version": "11.32.0-beta.2",
5
+ "version": "11.32.0-beta.3",
6
6
  "description": "Homebridge plugin to integrate Govee devices into HomeKit.",
7
7
  "author": {
8
8
  "name": "bwp91",