@homebridge-plugins/homebridge-ecovacs 7.1.0 → 7.2.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.
- package/CHANGELOG.md +13 -0
- package/lib/homebridge-ui/public/index.html +37 -1
- package/lib/utils/custom-chars.js +34 -33
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to homebridge-ecovacs will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## v7.2.0 (2025-07-13)
|
|
6
|
+
|
|
7
|
+
### Notable Changes
|
|
8
|
+
|
|
9
|
+
- fix custom plugin config modal styles in ui 5
|
|
10
|
+
- fix custom characteristics for hb 2
|
|
11
|
+
|
|
12
|
+
### Other Changes
|
|
13
|
+
|
|
14
|
+
- add `lint` step to build workflow
|
|
15
|
+
- add permissions to workflows
|
|
16
|
+
- improvements to the deprecate workflow
|
|
17
|
+
|
|
5
18
|
## v7.1.0 (2025-07-12)
|
|
6
19
|
|
|
7
20
|
### Notable Changes
|
|
@@ -1,3 +1,39 @@
|
|
|
1
|
+
<style>
|
|
2
|
+
.dark-mode {
|
|
3
|
+
background-color: #242424;
|
|
4
|
+
color: lightgrey;
|
|
5
|
+
|
|
6
|
+
.form-control {
|
|
7
|
+
background-color: #333333 !important;
|
|
8
|
+
border: none !important;
|
|
9
|
+
color: #eeeeee !important;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
thead, tbody, tr {
|
|
13
|
+
border-style: hidden;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
th {
|
|
17
|
+
color: #eeeeee !important;
|
|
18
|
+
font-weight: 500 !important;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
select {
|
|
22
|
+
background-image:
|
|
23
|
+
linear-gradient(45deg, transparent 50%, gray 50%),
|
|
24
|
+
linear-gradient(135deg, gray 50%, transparent 50%),
|
|
25
|
+
linear-gradient(to right, #ccc, #ccc);
|
|
26
|
+
background-position:
|
|
27
|
+
calc(100% - 20px) calc(1em + 2px),
|
|
28
|
+
calc(100% - 15px) calc(1em + 2px),
|
|
29
|
+
calc(100% - 2.5em) 0.5em;
|
|
30
|
+
background-size:
|
|
31
|
+
5px 5px,
|
|
32
|
+
5px 5px,
|
|
33
|
+
1px 1.5em;
|
|
34
|
+
background-repeat: no-repeat;
|
|
35
|
+
}
|
|
36
|
+
</style>
|
|
1
37
|
<p class="text-center">
|
|
2
38
|
<img
|
|
3
39
|
src="https://user-images.githubusercontent.com/43026681/101321841-f0eb5280-385d-11eb-8dd4-f57113f6e078.png"
|
|
@@ -28,7 +64,7 @@
|
|
|
28
64
|
<select class="form-control" id="deviceSelect"></select>
|
|
29
65
|
</div>
|
|
30
66
|
</form>
|
|
31
|
-
<table class="table w-100" id="deviceTable" style="display: none;">
|
|
67
|
+
<table class="table w-100 mt-3" id="deviceTable" style="display: none;">
|
|
32
68
|
<thead>
|
|
33
69
|
<tr class="table-active">
|
|
34
70
|
<th scope="col" style="width: 40%;">Device Name</th>
|
|
@@ -1,50 +1,51 @@
|
|
|
1
|
-
import { inherits } from 'node:util'
|
|
2
|
-
|
|
3
1
|
export default class {
|
|
4
2
|
constructor(api) {
|
|
5
|
-
this.hapChar = api.hap.Characteristic
|
|
6
3
|
this.uuids = {
|
|
7
4
|
maxSpeed: 'E963F001-079E-48FF-8F27-9C2605A29F52',
|
|
8
5
|
predefinedArea: 'E963F002-079E-48FF-8F27-9C2605A29F52',
|
|
9
6
|
trueDetect: 'E963F003-079E-48FF-8F27-9C2605A29F52',
|
|
10
7
|
}
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
8
|
+
const uuids = this.uuids
|
|
9
|
+
|
|
10
|
+
this.MaxSpeed = class extends api.hap.Characteristic {
|
|
11
|
+
constructor() {
|
|
12
|
+
super('Max Speed', uuids.maxSpeed)
|
|
13
|
+
this.setProps({
|
|
14
|
+
format: api.hap.Formats.BOOL,
|
|
15
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.PAIRED_WRITE, api.hap.Perms.NOTIFY],
|
|
16
|
+
})
|
|
17
|
+
this.value = this.getDefaultValue()
|
|
18
|
+
}
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
this.PredefinedArea =
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
21
|
+
this.PredefinedArea = class extends api.hap.Characteristic {
|
|
22
|
+
constructor() {
|
|
23
|
+
super('Predefined Area', uuids.predefinedArea)
|
|
24
|
+
this.setProps({
|
|
25
|
+
format: api.hap.Formats.UINT8,
|
|
26
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.PAIRED_WRITE, api.hap.Perms.NOTIFY],
|
|
27
|
+
minValue: 0,
|
|
28
|
+
maxValue: 15,
|
|
29
|
+
minStep: 1,
|
|
30
|
+
validValues: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
|
|
31
|
+
})
|
|
32
|
+
this.value = this.getDefaultValue()
|
|
33
|
+
}
|
|
32
34
|
}
|
|
33
35
|
|
|
34
|
-
this.TrueDetect =
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
this.TrueDetect = class extends api.hap.Characteristic {
|
|
37
|
+
constructor() {
|
|
38
|
+
super('TrueDetect', uuids.trueDetect)
|
|
39
|
+
this.setProps({
|
|
40
|
+
format: api.hap.Formats.BOOL,
|
|
41
|
+
perms: [api.hap.Perms.PAIRED_READ, api.hap.Perms.PAIRED_WRITE, api.hap.Perms.NOTIFY],
|
|
42
|
+
})
|
|
43
|
+
this.value = this.getDefaultValue()
|
|
44
|
+
}
|
|
41
45
|
}
|
|
42
46
|
|
|
43
|
-
inherits(this.MaxSpeed, this.hapChar)
|
|
44
|
-
inherits(this.PredefinedArea, this.hapChar)
|
|
45
|
-
inherits(this.TrueDetect, this.hapChar)
|
|
46
|
-
this.MaxSpeed.UUID = this.uuids.maxSpeed
|
|
47
47
|
this.PredefinedArea.UUID = this.uuids.predefinedArea
|
|
48
48
|
this.TrueDetect.UUID = this.uuids.trueDetect
|
|
49
|
+
this.MaxSpeed.UUID = this.uuids.maxSpeed
|
|
49
50
|
}
|
|
50
51
|
}
|
package/package.json
CHANGED