homebridge-dummy 1.0.0-alpha.7 → 1.0.0-beta.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 (52) hide show
  1. package/CHANGELOG.md +10 -8
  2. package/README.md +11 -11
  3. package/config.schema.json +10 -10
  4. package/dist/accessory/helpers.js +10 -4
  5. package/dist/accessory/helpers.js.map +1 -1
  6. package/dist/accessory/lock.d.ts +1 -1
  7. package/dist/accessory/lock.js +6 -5
  8. package/dist/accessory/lock.js.map +1 -1
  9. package/dist/accessory/{lightbulb.d.ts → onoff/lightbulb.d.ts} +2 -2
  10. package/dist/accessory/{lightbulb.js → onoff/lightbulb.js} +3 -3
  11. package/dist/accessory/onoff/lightbulb.js.map +1 -0
  12. package/dist/accessory/{onoff.d.ts → onoff/onoff.d.ts} +4 -4
  13. package/dist/accessory/{onoff.js → onoff/onoff.js} +9 -9
  14. package/dist/accessory/onoff/onoff.js.map +1 -0
  15. package/dist/accessory/{outlet.d.ts → onoff/outlet.d.ts} +1 -1
  16. package/dist/accessory/{outlet.js → onoff/outlet.js} +1 -1
  17. package/dist/accessory/onoff/outlet.js.map +1 -0
  18. package/dist/accessory/{switch.d.ts → onoff/switch.d.ts} +1 -1
  19. package/dist/accessory/{switch.js → onoff/switch.js} +1 -1
  20. package/dist/accessory/onoff/switch.js.map +1 -0
  21. package/dist/accessory/position/blind.d.ts +5 -0
  22. package/dist/accessory/position/blind.js +8 -0
  23. package/dist/accessory/position/blind.js.map +1 -0
  24. package/dist/accessory/position/door.d.ts +5 -0
  25. package/dist/accessory/position/door.js +8 -0
  26. package/dist/accessory/position/door.js.map +1 -0
  27. package/dist/accessory/{door.d.ts → position/position.d.ts} +5 -6
  28. package/dist/accessory/{door.js → position/position.js} +14 -17
  29. package/dist/accessory/position/position.js.map +1 -0
  30. package/dist/accessory/position/window.d.ts +5 -0
  31. package/dist/accessory/position/window.js +8 -0
  32. package/dist/accessory/position/window.js.map +1 -0
  33. package/dist/accessory/sensor.js +0 -1
  34. package/dist/accessory/sensor.js.map +1 -1
  35. package/dist/homebridge-ui/public/index.html +17 -8
  36. package/dist/i18n/en.d.ts +6 -4
  37. package/dist/i18n/en.js +10 -8
  38. package/dist/i18n/en.js.map +1 -1
  39. package/dist/i18n/i18n.d.ts +6 -4
  40. package/dist/i18n/template.d.ts +6 -4
  41. package/dist/i18n/zz.d.ts +6 -4
  42. package/dist/model/types.d.ts +18 -5
  43. package/dist/model/types.js +12 -0
  44. package/dist/model/types.js.map +1 -1
  45. package/dist/tools/configMigration.js +1 -1
  46. package/dist/tools/configMigration.js.map +1 -1
  47. package/package.json +1 -1
  48. package/dist/accessory/door.js.map +0 -1
  49. package/dist/accessory/lightbulb.js.map +0 -1
  50. package/dist/accessory/onoff.js.map +0 -1
  51. package/dist/accessory/outlet.js.map +0 -1
  52. package/dist/accessory/switch.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,6 +1,12 @@
1
- ### ‼️ BREAKING CHANGES ‼️
1
+ <!-- ⚠️ Plugin has a new owner/maintainer and will undergo significant cleanup and modernization in the near term. If you experience issues you can always downgrade to the last stable version v0.9.0
2
2
 
3
- ### v1.0 is a complete code rewrite and automations using Homebridge Dummy accessories will need to be reconfigured.
3
+ Please report any issues you encounter here: https://github.com/mpatfield/homebridge-dummy/issues -->
4
+
5
+ # ‼️ BREAKING CHANGES ‼️
6
+
7
+ ### If upgrading from v0.9.2, Homebridge Dummy accessories will need to be reconfigured!!
8
+
9
+ ### Please downgrade to v0.9.2 or earlier now if you want to keep your current setup
4
10
 
5
11
  ### Full details [here](https://github.com/mpatfield/homebridge-dummy?tab=readme-ov-file#v10-migration).
6
12
 
@@ -8,16 +14,12 @@
8
14
 
9
15
  All notable changes to homebridge-dummy will be documented in this file.
10
16
 
11
- ⚠️ Plugin has a new owner/maintainer and will undergo significant cleanup and modernization in the near term. If you experience issues you can always downgrade to the last stable version v0.9.0
12
-
13
- Please report any issues you encounter here: https://github.com/mpatfield/homebridge-dummy/issues
14
-
15
- ## 1.0.0-alpha.7 (2025-07-03)
17
+ ## 1.0.0-beta.0 (2025-07-14)
16
18
 
17
19
  ### Added
18
20
  - Drastically improved config UI
19
21
  - resetOnRestart option for stateful accessories to return to defaults on Homebridge restart
20
- - Support for Door, Outlet, and Lock Mechanism
22
+ - Support for Door, Outlet, and Lock Mechanism, Window, and Window Covering
21
23
  - Sensor support (CO2, CO, Contact, Leak, Motion, Occupancy, and Smoke)
22
24
  - Execute arbitraty commands when accessory state changes
23
25
 
package/README.md CHANGED
@@ -84,17 +84,17 @@ Using the Homebridge Config UI is the easiest way to set up this plugin. However
84
84
  {
85
85
  "id": "string",
86
86
  "name": "string",
87
- "type": "Door | Lightbulb | LockMechanism | Outlet | Switch",
87
+ "type": "Door | Lightbulb | LockMechanism | Outlet | Switch | Window | WindoCovering",
88
88
  "timer": {
89
89
  "delay": number,
90
90
  "units": "SECONDS | MINUTES | HOURS",
91
91
  "random": true | false
92
92
  },
93
93
  "sensor": "CarbonDioxideSensor | CarbonMonoxideSensor | ContactSensor | LeakSensor | MotionSensor | OccupancySensor | SmokeSensor",
94
- "defaultOnOff": 1 | 0,
94
+ "defaultOn": true | false,
95
95
  "defaultBrightness": 0-100,
96
- "defaultLockState": 0 | 1,
97
- "defaultPosition": 0 | 100,
96
+ "defaultLockState": "locked" | "unlocked",
97
+ "defaultPosition": "open" | "closed",
98
98
  "onCommand": "string",
99
99
  "offCommand": "string",
100
100
  "lockCommand": "string",
@@ -113,7 +113,7 @@ All fields are optional unless noted with an asterisk (*)
113
113
  - `id`* - A unique identifier for the accessory. Changing this value will create a new accessory.
114
114
 
115
115
  - `name`* - The display name for the accessory in HomeKit
116
- - `type`* - The type of accessory: `Door`, `Lightbulb`, `LockMechanism`, `Outlet`, and `Switch` are supported
116
+ - `type`* - The type of accessory: `Door`, `Lightbulb`, `LockMechanism`, `Outlet`, `Switch`, `Window`, or `WindowCovering`
117
117
 
118
118
  - `timer.delay` — If defined, the switch will automatically toggle after this many seconds/minutes/hours
119
119
  - `timer.units` — The units to use for delay above (`SECONDS`, `MINUTES`, or `HOURS`). *Required if delay is set.
@@ -123,13 +123,13 @@ All fields are optional unless noted with an asterisk (*)
123
123
  - Only works with `Lightbulb`, `Outlet`, and `Switch`
124
124
  - Valid values are `CarbonDioxideSensor`, `CarbonMonoxideSensor`, `ContactSensor`, `LeakSensor`, `MotionSensor`, `OccupancySensor`, or `SmokeSensor`
125
125
 
126
- - `defaultOnOff` — Initial value. Default _ON_ = 1, default _OFF_ = 0
126
+ - `defaultOn` — Initial value. Default _ON_ = true, default _OFF_ = false
127
127
 
128
128
  - `defaultBrightness` — If set, lightbulb will have additional dimmer settings with this default brightness percentage
129
129
 
130
- - `defaultLockState` - The initial value for the lock. UNSECURED (Unlocked) = 0, SECURED (Locked) = 1
130
+ - `defaultLockState` - The initial value for the lock, "locked" or "unlocked"
131
131
 
132
- - `defaultPosition` — Initial position for the door, closed = 0, open = 100
132
+ - `defaultPosition` — Initial position for the door/window/blinds, "open" or "closed"
133
133
 
134
134
  - `onCommand` - Arbitraty command to execute when lightbulb/outlet/switch turns on
135
135
  - `offCommand` - Arbitraty command to execute when lightbulb/outlet/switch turns off
@@ -172,7 +172,7 @@ All fields are optional unless noted with an asterisk (*)
172
172
  "delay": 5,
173
173
  "units": "SECONDS"
174
174
  },
175
- "defaultOnOff": true
175
+ "defaultOn: true
176
176
  }
177
177
  ```
178
178
 
@@ -219,7 +219,7 @@ All fields are optional unless noted with an asterisk (*)
219
219
  "delay": 10,
220
220
  "units": "MINUTES"
221
221
  },
222
- "defaultLockState": 0
222
+ "defaultLockState": "locked"
223
223
  }
224
224
  ```
225
225
 
@@ -245,7 +245,7 @@ All fields are optional unless noted with an asterisk (*)
245
245
  "delay": 20,
246
246
  "units": "SECONDS"
247
247
  },
248
- "defaultPosition": 0
248
+ "defaultPosition": "closed"
249
249
  }
250
250
  ```
251
251
 
@@ -50,8 +50,8 @@
50
50
  "type": {
51
51
  "type": "string",
52
52
  "title": "${config.title.type}",
53
- "enum": ["Door", "Lightbulb", "LockMechanism", "Outlet", "Switch"],
54
- "enumNames": ["${config.enumNames.door}", "${config.enumNames.lightbulb}", "${config.enumNames.lockMechanism}", "${config.enumNames.outlet}", "${config.enumNames.switch}"]
53
+ "enum": ["Door", "Lightbulb", "LockMechanism", "Outlet", "Switch", "Window", "WindowCovering"],
54
+ "enumNames": ["${config.enumNames.door}", "${config.enumNames.lightbulb}", "${config.enumNames.lockMechanism}", "${config.enumNames.outlet}", "${config.enumNames.switch}", "${config.enumNames.window}", "${config.enumNames.windowCovering}"]
55
55
  },
56
56
  "timer": { "$ref": "#/definitions/timer" },
57
57
  "sensor": {
@@ -66,22 +66,22 @@
66
66
  "maximum": 100,
67
67
  "title": "${config.title.defaultBrightness}"
68
68
  },
69
- "defaultOnOff": {
69
+ "defaultOn": {
70
70
  "type": "number",
71
71
  "title": "${config.title.defaultState}",
72
72
  "enum": [1, 0],
73
73
  "enumNames": ["${config.enumNames.on}", "${config.enumNames.off}"]
74
74
  },
75
75
  "defaultLockState": {
76
- "type": "number",
76
+ "type": "string",
77
77
  "title": "${config.title.defaultState}",
78
- "enum": [1, 0],
78
+ "enum": ["locked", "unlocked"],
79
79
  "enumNames": ["${config.enumNames.secured}", "${config.enumNames.unsecured}"]
80
80
  },
81
81
  "defaultPosition": {
82
- "type": "number",
82
+ "type": "string",
83
83
  "title": "${config.title.defaultPosition}",
84
- "enum": [100, 0],
84
+ "enum": ["open", "closed"],
85
85
  "enumNames": ["${config.enumNames.open}", "${config.enumNames.closed}"]
86
86
  },
87
87
  "commandOn": {
@@ -207,7 +207,7 @@
207
207
  "title": "${config.title.commands}",
208
208
  "description": "${config.description.commands}",
209
209
  "condition": {
210
- "functionBody": "return ['Door'].includes(model.accessories?.[arguments[1]]?.type);"
210
+ "functionBody": "return ['Door', 'Window', 'WindowCovering'].includes(model.accessories?.[arguments[1]]?.type);"
211
211
  },
212
212
  "items": [
213
213
  "accessories[].commandOpen",
@@ -230,7 +230,7 @@
230
230
  },
231
231
  "items": [
232
232
  {
233
- "key": "accessories[].defaultOnOff",
233
+ "key": "accessories[].defaultOn",
234
234
  "flex": "0 0 25%"
235
235
  },
236
236
  {
@@ -265,7 +265,7 @@
265
265
  "displayFlex": true,
266
266
  "flex-direction": "row",
267
267
  "condition": {
268
- "functionBody": "return ['Door'].includes(model.accessories?.[arguments[1]]?.type);"
268
+ "functionBody": "return ['Door', 'Window', 'WindowCovering'].includes(model.accessories?.[arguments[1]]?.type);"
269
269
  },
270
270
  "items": [
271
271
  {
@@ -1,8 +1,10 @@
1
- import { DoorAccessory } from './door.js';
2
- import { LightbulbAccessory } from './lightbulb.js';
1
+ import { BlindAccessory } from './position/blind.js';
2
+ import { DoorAccessory } from './position/door.js';
3
+ import { LightbulbAccessory } from './onoff/lightbulb.js';
3
4
  import { LockAccessory } from './lock.js';
4
- import { OutletAccessory } from './outlet.js';
5
- import { SwitchAccessory } from './switch.js';
5
+ import { OutletAccessory } from './onoff/outlet.js';
6
+ import { SwitchAccessory } from './onoff/switch.js';
7
+ import { WindowAccessory } from './position/window.js';
6
8
  import { strings } from '../i18n/i18n.js';
7
9
  import * as Types from '../model/types.js';
8
10
  export function createAccessory(Service, Characteristic, accessory, config, log, persistPath, isGrouped = false) {
@@ -17,6 +19,10 @@ export function createAccessory(Service, Characteristic, accessory, config, log,
17
19
  return new OutletAccessory(Service, Characteristic, accessory, config, log, persistPath, isGrouped);
18
20
  case Types.AccessoryType.Switch:
19
21
  return new SwitchAccessory(Service, Characteristic, accessory, config, log, persistPath, isGrouped);
22
+ case Types.AccessoryType.Window:
23
+ return new WindowAccessory(Service, Characteristic, accessory, config, log, persistPath, isGrouped);
24
+ case Types.AccessoryType.WindowCovering:
25
+ return new BlindAccessory(Service, Characteristic, accessory, config, log, persistPath, isGrouped);
20
26
  default:
21
27
  log.error(strings.startup.unsupportedType, `'${config.type}'`);
22
28
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/accessory/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAI3C,MAAM,UAAU,eAAe,CAC7B,OAA0B,EAC1B,cAAwC,EACxC,SAA4B,EAC5B,MAAyB,EACzB,GAAQ,EACR,WAAmB,EACnB,YAAqB,KAAK;IAG1B,QAAO,MAAM,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,KAAK,CAAC,aAAa,CAAC,IAAI;YAC3B,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACpG,KAAK,KAAK,CAAC,aAAa,CAAC,SAAS;YAChC,OAAO,IAAI,kBAAkB,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACzG,KAAK,KAAK,CAAC,aAAa,CAAC,aAAa;YACpC,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACpG,KAAK,KAAK,CAAC,aAAa,CAAC,MAAM;YAC7B,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACtG,KAAK,KAAK,CAAC,aAAa,CAAC,MAAM;YAC7B,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACtG;YACE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/accessory/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAI3C,MAAM,UAAU,eAAe,CAC7B,OAA0B,EAC1B,cAAwC,EACxC,SAA4B,EAC5B,MAAyB,EACzB,GAAQ,EACR,WAAmB,EACnB,YAAqB,KAAK;IAG1B,QAAO,MAAM,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,KAAK,CAAC,aAAa,CAAC,IAAI;YAC3B,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACpG,KAAK,KAAK,CAAC,aAAa,CAAC,SAAS;YAChC,OAAO,IAAI,kBAAkB,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACzG,KAAK,KAAK,CAAC,aAAa,CAAC,aAAa;YACpC,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACpG,KAAK,KAAK,CAAC,aAAa,CAAC,MAAM;YAC7B,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACtG,KAAK,KAAK,CAAC,aAAa,CAAC,MAAM;YAC7B,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACtG,KAAK,KAAK,CAAC,aAAa,CAAC,MAAM;YAC7B,OAAO,IAAI,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACtG,KAAK,KAAK,CAAC,aAAa,CAAC,cAAc;YACrC,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QACrG;YACE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -7,7 +7,7 @@ export declare class LockAccessory extends DummyAccessory<LockConfig> {
7
7
  constructor(Service: ServiceType, Characteristic: CharacteristicType, accessory: PlatformAccessory, config: LockConfig, log: Log, persistPath: string, isGrouped: boolean);
8
8
  private initializeState;
9
9
  protected getAccessoryType(): AccessoryType;
10
- private get defaultState();
10
+ private get defaultLockState();
11
11
  protected getState(): Promise<CharacteristicValue>;
12
12
  protected setState(value: CharacteristicValue): Promise<void>;
13
13
  private flip;
@@ -1,12 +1,12 @@
1
1
  import { DummyAccessory } from './base.js';
2
2
  import { strings } from '../i18n/i18n.js';
3
- import { AccessoryType } from '../model/types.js';
3
+ import { AccessoryType, DefaultLockState } from '../model/types.js';
4
4
  import { storageGet, storageSet } from '../tools/storage.js';
5
5
  export class LockAccessory extends DummyAccessory {
6
6
  state;
7
7
  constructor(Service, Characteristic, accessory, config, log, persistPath, isGrouped) {
8
8
  super(Service, Characteristic, accessory, config, log, persistPath, isGrouped);
9
- this.state = this.defaultState;
9
+ this.state = this.defaultLockState;
10
10
  this.accessoryService.getCharacteristic(Characteristic.LockTargetState)
11
11
  .onGet(this.getState.bind(this))
12
12
  .onSet(this.setState.bind(this));
@@ -24,8 +24,9 @@ export class LockAccessory extends DummyAccessory {
24
24
  getAccessoryType() {
25
25
  return AccessoryType.LockMechanism;
26
26
  }
27
- get defaultState() {
28
- return this.config.defaultLockState === undefined ? this.Characteristic.LockTargetState.SECURED : this.config.defaultLockState;
27
+ get defaultLockState() {
28
+ return this.config.defaultLockState === DefaultLockState.UNLOCKED ?
29
+ this.Characteristic.LockTargetState.UNSECURED : this.Characteristic.LockTargetState.SECURED;
29
30
  }
30
31
  async getState() {
31
32
  return this.state;
@@ -45,7 +46,7 @@ export class LockAccessory extends DummyAccessory {
45
46
  await storageSet(this.persistPath, this.defaultStateStorageKey, this.state);
46
47
  }
47
48
  else {
48
- if (this.state !== this.defaultState) {
49
+ if (this.state !== this.defaultLockState) {
49
50
  this.startTimer(this.flip.bind(this));
50
51
  }
51
52
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/accessory/lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/accessory/lock.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { CharacteristicValue, PlatformAccessory } from 'homebridge';
2
2
  import { OnOffAccessory } from './onoff.js';
3
- import { AccessoryType, CharacteristicType, LightbulbConfig, ServiceType } from '../model/types.js';
4
- import { Log } from '../tools/log.js';
3
+ import { AccessoryType, CharacteristicType, LightbulbConfig, ServiceType } from '../../model/types.js';
4
+ import { Log } from '../../tools/log.js';
5
5
  export declare class LightbulbAccessory extends OnOffAccessory<LightbulbConfig> {
6
6
  private brightness;
7
7
  constructor(Service: ServiceType, Characteristic: CharacteristicType, accessory: PlatformAccessory, config: LightbulbConfig, log: Log, persistPath: string, isGrouped: boolean);
@@ -1,7 +1,7 @@
1
1
  import { OnOffAccessory } from './onoff.js';
2
- import { strings } from '../i18n/i18n.js';
3
- import { AccessoryType } from '../model/types.js';
4
- import { STORAGE_KEY_SUFFIX_DEFAULT_BRIGHTNESS, storageGet, storageSet } from '../tools/storage.js';
2
+ import { strings } from '../../i18n/i18n.js';
3
+ import { AccessoryType } from '../../model/types.js';
4
+ import { STORAGE_KEY_SUFFIX_DEFAULT_BRIGHTNESS, storageGet, storageSet } from '../../tools/storage.js';
5
5
  const NO_BRIGHTNESS = -1;
6
6
  export class LightbulbAccessory extends OnOffAccessory {
7
7
  brightness;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lightbulb.js","sourceRoot":"","sources":["../../../src/accessory/onoff/lightbulb.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import { CharacteristicValue, PlatformAccessory } from 'homebridge';
2
- import { DummyAccessory } from './base.js';
3
- import { CharacteristicType, OnOffConfig, ServiceType } from '../model/types.js';
4
- import { Log } from '../tools/log.js';
2
+ import { DummyAccessory } from '../base.js';
3
+ import { CharacteristicType, OnOffConfig, ServiceType } from '../../model/types.js';
4
+ import { Log } from '../../tools/log.js';
5
5
  export declare abstract class OnOffAccessory<C extends OnOffConfig = OnOffConfig> extends DummyAccessory<C> {
6
6
  private on;
7
7
  private sensor?;
8
8
  constructor(Service: ServiceType, Characteristic: CharacteristicType, accessory: PlatformAccessory, config: C, log: Log, persistPath: string, isGrouped: boolean);
9
9
  private initializeOn;
10
- private get defaultOnOff();
10
+ private get defaultOn();
11
11
  protected getOn(): Promise<CharacteristicValue>;
12
12
  protected setOn(value: CharacteristicValue): Promise<void>;
13
13
  private flip;
@@ -1,13 +1,13 @@
1
- import { DummyAccessory } from './base.js';
2
- import { SensorAccessory } from './sensor.js';
3
- import { strings } from '../i18n/i18n.js';
4
- import { storageGet, storageSet } from '../tools/storage.js';
1
+ import { DummyAccessory } from '../base.js';
2
+ import { SensorAccessory } from '../sensor.js';
3
+ import { strings } from '../../i18n/i18n.js';
4
+ import { storageGet, storageSet } from '../../tools/storage.js';
5
5
  export class OnOffAccessory extends DummyAccessory {
6
6
  on;
7
7
  sensor;
8
8
  constructor(Service, Characteristic, accessory, config, log, persistPath, isGrouped) {
9
9
  super(Service, Characteristic, accessory, config, log, persistPath, isGrouped);
10
- this.on = this.defaultOnOff;
10
+ this.on = this.defaultOn;
11
11
  this.sensor = SensorAccessory.init(Service, Characteristic, accessory, this.config.name, log, this.config.disableLogging, config.sensor);
12
12
  this.accessoryService.getCharacteristic(Characteristic.On)
13
13
  .onGet(this.getOn.bind(this))
@@ -20,8 +20,8 @@ export class OnOffAccessory extends DummyAccessory {
20
20
  }
21
21
  this.accessoryService.updateCharacteristic(this.Characteristic.On, this.on);
22
22
  }
23
- get defaultOnOff() {
24
- return this.config.defaultOnOff === 1 ? true : false;
23
+ get defaultOn() {
24
+ return this.config.defaultOn ? 1 : 0;
25
25
  }
26
26
  async getOn() {
27
27
  return this.on;
@@ -41,7 +41,7 @@ export class OnOffAccessory extends DummyAccessory {
41
41
  await storageSet(this.persistPath, this.defaultStateStorageKey, this.on);
42
42
  }
43
43
  else {
44
- if (this.on !== this.defaultOnOff) {
44
+ if (this.on !== this.defaultOn) {
45
45
  this.startTimer(this.flip.bind(this));
46
46
  }
47
47
  else {
@@ -49,7 +49,7 @@ export class OnOffAccessory extends DummyAccessory {
49
49
  }
50
50
  }
51
51
  if (this.sensor) {
52
- this.sensor.active = this.on !== this.defaultOnOff;
52
+ this.sensor.active = this.on !== this.defaultOn;
53
53
  }
54
54
  this.accessoryService.updateCharacteristic(this.Characteristic.On, this.on);
55
55
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onoff.js","sourceRoot":"","sources":["../../../src/accessory/onoff/onoff.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { OnOffAccessory } from './onoff.js';
2
- import { OutletConfig, AccessoryType } from '../model/types.js';
2
+ import { OutletConfig, AccessoryType } from '../../model/types.js';
3
3
  export declare class OutletAccessory extends OnOffAccessory<OutletConfig> {
4
4
  protected getAccessoryType(): AccessoryType;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { OnOffAccessory } from './onoff.js';
2
- import { AccessoryType } from '../model/types.js';
2
+ import { AccessoryType } from '../../model/types.js';
3
3
  export class OutletAccessory extends OnOffAccessory {
4
4
  getAccessoryType() {
5
5
  return AccessoryType.Outlet;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outlet.js","sourceRoot":"","sources":["../../../src/accessory/onoff/outlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAgB,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEnE,MAAM,OAAO,eAAgB,SAAQ,cAA4B;IAErD,gBAAgB;QACxB,OAAO,aAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { OnOffAccessory } from './onoff.js';
2
- import { AccessoryType, SwitchConfig } from '../model/types.js';
2
+ import { AccessoryType, SwitchConfig } from '../../model/types.js';
3
3
  export declare class SwitchAccessory extends OnOffAccessory<SwitchConfig> {
4
4
  protected getAccessoryType(): AccessoryType;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import { OnOffAccessory } from './onoff.js';
2
- import { AccessoryType } from '../model/types.js';
2
+ import { AccessoryType } from '../../model/types.js';
3
3
  export class SwitchAccessory extends OnOffAccessory {
4
4
  getAccessoryType() {
5
5
  return AccessoryType.Switch;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/accessory/onoff/switch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAgB,MAAM,sBAAsB,CAAC;AAEnE,MAAM,OAAO,eAAgB,SAAQ,cAA4B;IAErD,gBAAgB;QACxB,OAAO,aAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ import { PositionAccessory } from './position.js';
2
+ import { AccessoryType, BlindConfig } from '../../model/types.js';
3
+ export declare class BlindAccessory extends PositionAccessory<BlindConfig> {
4
+ protected getAccessoryType(): AccessoryType;
5
+ }
@@ -0,0 +1,8 @@
1
+ import { PositionAccessory } from './position.js';
2
+ import { AccessoryType } from '../../model/types.js';
3
+ export class BlindAccessory extends PositionAccessory {
4
+ getAccessoryType() {
5
+ return AccessoryType.WindowCovering;
6
+ }
7
+ }
8
+ //# sourceMappingURL=blind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blind.js","sourceRoot":"","sources":["../../../src/accessory/position/blind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,aAAa,EAAe,MAAM,sBAAsB,CAAC;AAElE,MAAM,OAAO,cAAe,SAAQ,iBAA8B;IAEtD,gBAAgB;QACxB,OAAO,aAAa,CAAC,cAAc,CAAC;IACtC,CAAC;CAEF"}
@@ -0,0 +1,5 @@
1
+ import { PositionAccessory } from './position.js';
2
+ import { AccessoryType, DoorConfig } from '../../model/types.js';
3
+ export declare class DoorAccessory extends PositionAccessory<DoorConfig> {
4
+ protected getAccessoryType(): AccessoryType;
5
+ }
@@ -0,0 +1,8 @@
1
+ import { PositionAccessory } from './position.js';
2
+ import { AccessoryType } from '../../model/types.js';
3
+ export class DoorAccessory extends PositionAccessory {
4
+ getAccessoryType() {
5
+ return AccessoryType.Door;
6
+ }
7
+ }
8
+ //# sourceMappingURL=door.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"door.js","sourceRoot":"","sources":["../../../src/accessory/position/door.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,aAAa,EAAc,MAAM,sBAAsB,CAAC;AAEjE,MAAM,OAAO,aAAc,SAAQ,iBAA6B;IAEpD,gBAAgB;QACxB,OAAO,aAAa,CAAC,IAAI,CAAC;IAC5B,CAAC;CAEF"}
@@ -1,12 +1,11 @@
1
1
  import { CharacteristicValue, PlatformAccessory } from 'homebridge';
2
- import { DummyAccessory } from './base.js';
3
- import { AccessoryType, CharacteristicType, DoorConfig, ServiceType } from '../model/types.js';
4
- import { Log } from '../tools/log.js';
5
- export declare class DoorAccessory extends DummyAccessory<DoorConfig> {
2
+ import { DummyAccessory } from '../base.js';
3
+ import { CharacteristicType, PositionConfig, ServiceType } from '../../model/types.js';
4
+ import { Log } from '../../tools/log.js';
5
+ export declare abstract class PositionAccessory<C extends PositionConfig = PositionConfig> extends DummyAccessory<PositionConfig> {
6
6
  private position;
7
- constructor(Service: ServiceType, Characteristic: CharacteristicType, accessory: PlatformAccessory, config: DoorConfig, log: Log, persistPath: string, isGrouped: boolean);
7
+ constructor(Service: ServiceType, Characteristic: CharacteristicType, accessory: PlatformAccessory, config: C, log: Log, persistPath: string, isGrouped: boolean);
8
8
  private initializePosition;
9
- protected getAccessoryType(): AccessoryType;
10
9
  private get defaultPosition();
11
10
  protected getState(): Promise<CharacteristicValue>;
12
11
  protected getPosition(): Promise<CharacteristicValue>;
@@ -1,10 +1,10 @@
1
- import { DummyAccessory } from './base.js';
2
- import { strings } from '../i18n/i18n.js';
3
- import { AccessoryType } from '../model/types.js';
4
- import { storageGet, storageSet } from '../tools/storage.js';
5
- const DOOR_OPEN = 100;
6
- const DOOR_CLOSED = 0;
7
- export class DoorAccessory extends DummyAccessory {
1
+ import { DummyAccessory } from '../base.js';
2
+ import { strings } from '../../i18n/i18n.js';
3
+ import { DefaultPosition } from '../../model/types.js';
4
+ import { storageGet, storageSet } from '../../tools/storage.js';
5
+ const POSITION_OPEN = 100;
6
+ const POSITION_CLOSED = 0;
7
+ export class PositionAccessory extends DummyAccessory {
8
8
  position;
9
9
  constructor(Service, Characteristic, accessory, config, log, persistPath, isGrouped) {
10
10
  super(Service, Characteristic, accessory, config, log, persistPath, isGrouped);
@@ -25,11 +25,8 @@ export class DoorAccessory extends DummyAccessory {
25
25
  this.accessoryService.updateCharacteristic(this.Characteristic.TargetPosition, this.position);
26
26
  this.accessoryService.updateCharacteristic(this.Characteristic.CurrentPosition, this.position);
27
27
  }
28
- getAccessoryType() {
29
- return AccessoryType.Door;
30
- }
31
28
  get defaultPosition() {
32
- return this.config.defaultPosition === undefined ? DOOR_CLOSED : this.config.defaultPosition;
29
+ return this.config.defaultPosition === DefaultPosition.OPEN ? POSITION_OPEN : POSITION_CLOSED;
33
30
  }
34
31
  async getState() {
35
32
  return this.Characteristic.PositionState.STOPPED;
@@ -38,13 +35,13 @@ export class DoorAccessory extends DummyAccessory {
38
35
  return this.position;
39
36
  }
40
37
  async setPosition(value) {
41
- const targetPosition = value === DOOR_CLOSED ? DOOR_CLOSED : DOOR_OPEN;
38
+ const targetPosition = value === POSITION_CLOSED ? POSITION_CLOSED : POSITION_OPEN;
42
39
  if (this.position !== targetPosition) {
43
40
  this.logPosition(targetPosition);
44
- if (this.config.commandOpen && targetPosition !== DOOR_CLOSED) {
41
+ if (this.config.commandOpen && targetPosition !== POSITION_CLOSED) {
45
42
  this.executeCommand(this.config.commandOpen);
46
43
  }
47
- else if (this.config.commandClose && targetPosition === DOOR_CLOSED) {
44
+ else if (this.config.commandClose && targetPosition === POSITION_CLOSED) {
48
45
  this.executeCommand(this.config.commandClose);
49
46
  }
50
47
  }
@@ -64,12 +61,12 @@ export class DoorAccessory extends DummyAccessory {
64
61
  this.accessoryService.updateCharacteristic(this.Characteristic.CurrentPosition, this.position);
65
62
  }
66
63
  async flip() {
67
- const opposite = this.position === DOOR_CLOSED ? DOOR_OPEN : DOOR_CLOSED;
64
+ const opposite = this.position === POSITION_CLOSED ? POSITION_OPEN : POSITION_CLOSED;
68
65
  await this.setPosition(opposite);
69
66
  }
70
67
  logPosition(value) {
71
- const message = value === DOOR_CLOSED ? strings.accessory.door.closed : strings.accessory.door.open;
68
+ const message = value === POSITION_CLOSED ? strings.accessory.position.closed : strings.accessory.position.open;
72
69
  this.logIfDesired(message, this.config.name);
73
70
  }
74
71
  }
75
- //# sourceMappingURL=door.js.map
72
+ //# sourceMappingURL=position.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"position.js","sourceRoot":"","sources":["../../../src/accessory/position/position.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { PositionAccessory } from './position.js';
2
+ import { AccessoryType, WindowConfig } from '../../model/types.js';
3
+ export declare class WindowAccessory extends PositionAccessory<WindowConfig> {
4
+ protected getAccessoryType(): AccessoryType;
5
+ }
@@ -0,0 +1,8 @@
1
+ import { PositionAccessory } from './position.js';
2
+ import { AccessoryType } from '../../model/types.js';
3
+ export class WindowAccessory extends PositionAccessory {
4
+ getAccessoryType() {
5
+ return AccessoryType.Window;
6
+ }
7
+ }
8
+ //# sourceMappingURL=window.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"window.js","sourceRoot":"","sources":["../../../src/accessory/position/window.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,aAAa,EAAgB,MAAM,sBAAsB,CAAC;AAEnE,MAAM,OAAO,eAAgB,SAAQ,iBAA+B;IAExD,gBAAgB;QACxB,OAAO,aAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;CAEF"}
@@ -44,7 +44,6 @@ export class SensorAccessory {
44
44
  const characteristicInstance = Characteristic[this.sensorInfo.characteristic];
45
45
  this.sensorService.getCharacteristic(characteristicInstance)
46
46
  .onGet(this.onGet.bind(this));
47
- // TODO set starting state as inactive?
48
47
  SensorAccessory.removeUnwantedServices(Service, accessory, type);
49
48
  }
50
49
  async onGet() {
@@ -1 +1 @@
1
- {"version":3,"file":"sensor.js","sourceRoot":"","sources":["../../src/accessory/sensor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sensor.js","sourceRoot":"","sources":["../../src/accessory/sensor.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,10 @@
1
+ <style>
2
+ .dark-mode {
3
+ background-color: #242424;
4
+ color: lightgrey;
5
+ }
6
+ </style>
7
+
1
8
  <!-- <p class="text-center">
2
9
  <img
3
10
  src="https://github.com/mpatfield/homebridge-dummy/blob/latest/img/banner.png?raw=true"
@@ -12,7 +19,7 @@
12
19
 
13
20
  <div id="intro" class="text-center" style="display: none;">
14
21
  <p class="lead" i18n="thankYou" i18n_replace="dummy"></p></br>
15
- <p i18n="migrate"></p></br>
22
+ <p class="lead" i18n="migrate"></p></br>
16
23
  <button type="button" class="btn btn-primary" id="showSettings" i18n="no"></button>&nbsp;&nbsp;
17
24
  <button type="button" class="btn btn-primary" id="showMigration" i18n="yes"></button>
18
25
  </div>
@@ -20,16 +27,18 @@
20
27
  <div id="migration" class="text-center" style="display: none;">
21
28
  <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/1/17/Warning.svg/156px-Warning.svg.png"/>
22
29
  </br></br>
23
- <p class="lead" i18n="migrationDetails1"></p>
24
- <p class="lead" i18n="migrationDetails2" i18n_replace="dummy"></p>
25
- </br>
26
- <p i18n="migrationDetails3" i18n_replace="dummy"></p>
27
- <p i18n="migrationDetails4"></p>
28
- </br>
30
+ <h1><p class="text-danger" i18n="migrationDetails1" i18n_replace="dummy"></p></h1>
31
+ <p class="lead" i18n="migrationDetails2"></p>
32
+ <br/>
33
+ <hr/>
34
+ <br/>
35
+ <p class="lead" i18n="migrationDetails3" i18n_replace="dummy"></p>
36
+ <p class="lead" i18n="migrationDetails4"></p>
37
+ <br/>
29
38
  <button type="button" class="btn btn-primary" id="skipMigration" i18n="no"></button>&nbsp;&nbsp;
30
39
  <button type="button" class="btn btn-primary" id="doMigration" i18n="yes"></button>
31
40
  </br></br></br>
32
41
  <em><p i18n="migrationDetails5" i18n_replace="migration"></p></em></br>
33
42
  </div>
34
43
 
35
- <script src="ui.js?v=1.0.0-alpha.7"></script>
44
+ <script src="ui.js?v=1.0.0-beta.0"></script>
package/dist/i18n/en.d.ts CHANGED
@@ -5,10 +5,6 @@ declare const en: {
5
5
  executed: string;
6
6
  error: string;
7
7
  };
8
- door: {
9
- closed: string;
10
- open: string;
11
- };
12
8
  lightbulb: {
13
9
  brightness: string;
14
10
  stateOn: string;
@@ -21,6 +17,10 @@ declare const en: {
21
17
  stateOn: string;
22
18
  stateOff: string;
23
19
  };
20
+ position: {
21
+ closed: string;
22
+ open: string;
23
+ };
24
24
  timer: {
25
25
  cancel: string;
26
26
  reset: string;
@@ -69,6 +69,8 @@ declare const en: {
69
69
  smokeSensor: string;
70
70
  switch: string;
71
71
  unsecured: string;
72
+ window: string;
73
+ windowCovering: string;
72
74
  };
73
75
  title: {
74
76
  accessory: string;
package/dist/i18n/en.js CHANGED
@@ -5,10 +5,6 @@ const en = {
5
5
  executed: '%s executed command',
6
6
  error: '%s failed to execute command',
7
7
  },
8
- door: {
9
- closed: '%s door is closed',
10
- open: '%s door is open',
11
- },
12
8
  lightbulb: {
13
9
  brightness: '%s brightness is %s',
14
10
  stateOn: '%s is on %s%',
@@ -21,6 +17,10 @@ const en = {
21
17
  stateOn: '%s is on',
22
18
  stateOff: '%s is off',
23
19
  },
20
+ position: {
21
+ closed: '%s is closed',
22
+ open: '%s is open',
23
+ },
24
24
  timer: {
25
25
  cancel: 'Cancelled the timer for %s',
26
26
  reset: 'Reset the timer for %s',
@@ -31,10 +31,10 @@ const en = {
31
31
  },
32
32
  config: {
33
33
  migrate: 'Are you upgrading from an earlier version?',
34
- migrationDetails1: 'There are significant code changes in this version',
35
- migrationDetails2: 'HomeKit automations using %s accessories will need to be reconfigured!',
36
- migrationDetails3: '%s will try to migrate your accessories so they won\'t need to be recreated in Homebridge',
37
- migrationDetails4: 'Would you like to migrate now?',
34
+ migrationDetails1: 'HomeKit automations using %s accessories will need to be reconfigured!',
35
+ migrationDetails2: 'Please downgrade to v0.9.2 or earlier if you want to keep your current setup.',
36
+ migrationDetails3: '%s can try to recreate your accessories, but you will still need reconfigure HomeKit automations.',
37
+ migrationDetails4: 'Would you like to recreate your accessories now?',
38
38
  migrationDetails5: 'For more details, please visit %s',
39
39
  migrationRestartTitle: 'Restart Homebridge',
40
40
  migrationRestartDescription: 'Please restart Homebridge to begin %s migration',
@@ -69,6 +69,8 @@ const en = {
69
69
  smokeSensor: 'Smoke',
70
70
  switch: 'Switch',
71
71
  unsecured: 'Unlocked',
72
+ window: 'Window',
73
+ windowCovering: 'Window Convering (Blinds)',
72
74
  },
73
75
  title: {
74
76
  accessory: 'Accessory',
@@ -1 +1 @@
1
- {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"AAAA,MAAM,EAAE,GAAG;IAET,SAAS,EAAE;QAET,eAAe,EAAE,2CAA2C;QAE5D,OAAO,EAAE;YACP,QAAQ,EAAE,qBAAqB;YAC/B,KAAK,EAAE,8BAA8B;SACtC;QAED,SAAS,EAAE;YACT,UAAU,EAAE,qBAAqB;YACjC,OAAO,EAAE,cAAc;SACxB;QAED,IAAI,EAAE;YACJ,OAAO,EAAE,cAAc;YACvB,SAAS,EAAE,gBAAgB;SAC5B;QAED,KAAK,EAAE;YACL,OAAO,EAAE,UAAU;YACnB,QAAQ,EAAE,WAAW;SACtB;QAED,QAAQ,EAAE;YACR,MAAM,EAAE,cAAc;YACtB,IAAI,EAAE,YAAY;SACnB;QAED,KAAK,EAAE;YACL,MAAM,EAAE,4BAA4B;YACpC,KAAK,EAAE,wBAAwB;YAC/B,UAAU,EAAE,0BAA0B;YACtC,UAAU,EAAE,0BAA0B;YACtC,QAAQ,EAAE,wBAAwB;SACnC;KACF;IAED,MAAM,EAAE;QACN,OAAO,EAAE,4CAA4C;QACrD,iBAAiB,EAAE,wEAAwE;QAC3F,iBAAiB,EAAE,+EAA+E;QAClG,iBAAiB,EAAE,mGAAmG;QACtH,iBAAiB,EAAE,kDAAkD;QACrE,iBAAiB,EAAE,mCAAmC;QACtD,qBAAqB,EAAE,oBAAoB;QAC3C,2BAA2B,EAAE,iDAAiD;QAC9E,OAAO,EAAE,+CAA+C;QACxD,QAAQ,EAAE,6BAA6B;QACvC,GAAG,EAAE,KAAK;QACV,EAAE,EAAE,IAAI;QAER,WAAW,EAAE;YACX,QAAQ,EAAE,+DAA+D;YACzE,MAAM,EAAE,4DAA4D;YACpE,KAAK,EAAE,yDAAyD;SACjE;QAED,SAAS,EAAE;YACT,mBAAmB,EAAC,gBAAgB;YACpC,oBAAoB,EAAE,iBAAiB;YACvC,MAAM,EAAE,QAAQ;YAChB,aAAa,EAAE,SAAS;YACxB,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,OAAO;YACd,UAAU,EAAE,MAAM;YAClB,SAAS,EAAE,WAAW;YACtB,aAAa,EAAE,MAAM;YACrB,GAAG,EAAE,KAAK;YACV,eAAe,EAAE,WAAW;YAC5B,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,SAAS;YAClB,YAAY,EAAE,QAAQ;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,QAAQ;YACjB,WAAW,EAAE,OAAO;YACpB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,UAAU;YACrB,MAAM,EAAE,QAAQ;YAChB,cAAc,EAAE,2BAA2B;SAC5C;QAED,KAAK,EAAE;YACL,SAAS,EAAE,WAAW;YACtB,QAAQ,EAAE,UAAU;YACpB,YAAY,EAAE,eAAe;YAC7B,SAAS,EAAE,YAAY;YACvB,UAAU,EAAE,aAAa;YACzB,WAAW,EAAE,cAAc;YAC3B,WAAW,EAAE,cAAc;YAC3B,aAAa,EAAE,gBAAgB;YAC/B,iBAAiB,EAAE,oBAAoB;YACvC,eAAe,EAAE,kBAAkB;YACnC,YAAY,EAAE,eAAe;YAC7B,KAAK,EAAE,OAAO;YACd,cAAc,EAAE,iBAAiB;YACjC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,qBAAqB;YAC9B,cAAc,EAAE,kBAAkB;YAClC,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,eAAe;YACvB,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,QAAQ;SACjB;KACF;IAED,MAAM,EAAE;QAEN,aAAa,EAAE;YACb,MAAM,EAAE,4BAA4B;YACpC,QAAQ,EAAE,qCAAqC;SAChD;QAED,cAAc,EAAE;YACd,MAAM,EAAE,6BAA6B;YACrC,QAAQ,EAAE,sCAAsC;SACjD;QAED,OAAO,EAAE;YACP,MAAM,EAAE,qBAAqB;YAC7B,QAAQ,EAAE,8BAA8B;SACzC;QAED,IAAI,EAAE;YACJ,MAAM,EAAE,oBAAoB;YAC5B,QAAQ,EAAE,4BAA4B;SACvC;QAED,MAAM,EAAE;YACN,MAAM,EAAE,oBAAoB;YAC5B,QAAQ,EAAE,6BAA6B;SACxC;QAED,SAAS,EAAE;YACT,MAAM,EAAE,uBAAuB;YAC/B,QAAQ,EAAE,gCAAgC;SAC3C;QAED,KAAK,EAAE;YACL,MAAM,EAAE,mBAAmB;YAC3B,QAAQ,EAAE,4BAA4B;SACvC;KACF;IAED,OAAO,EAAE;QACP,eAAe,EAAE,iFAAiF;QAClG,iBAAiB,EAAE,uCAAuC;QAC1D,sBAAsB,EAAE,2CAA2C;QACnE,eAAe,EAAE,kHAAkH;QACnI,eAAe,EAAE,0DAA0D;QAC3E,eAAe,EAAE,+FAA+F;QAChH,YAAY,EAAE,uBAAuB;QACrC,eAAe,EAAE,qBAAqB;QACtC,kBAAkB,EAAE,sBAAsB;QAC1C,aAAa,EAAE,kBAAkB;QACjC,eAAe,EAAE,+BAA+B;QAChD,OAAO,EAAE;YACP,4GAA4G;YAC5G,8EAA8E;YAC9E,4EAA4E;YAC5E,qHAAqH;SACtH;KACF;CACF,CAAC;AAEF,eAAe,EAAE,CAAC"}
@@ -14,10 +14,6 @@ declare const translations: {
14
14
  executed: string;
15
15
  error: string;
16
16
  };
17
- door: {
18
- closed: string;
19
- open: string;
20
- };
21
17
  lightbulb: {
22
18
  brightness: string;
23
19
  stateOn: string;
@@ -30,6 +26,10 @@ declare const translations: {
30
26
  stateOn: string;
31
27
  stateOff: string;
32
28
  };
29
+ position: {
30
+ closed: string;
31
+ open: string;
32
+ };
33
33
  timer: {
34
34
  cancel: string;
35
35
  reset: string;
@@ -78,6 +78,8 @@ declare const translations: {
78
78
  smokeSensor: string;
79
79
  switch: string;
80
80
  unsecured: string;
81
+ window: string;
82
+ windowCovering: string;
81
83
  };
82
84
  title: {
83
85
  accessory: string;
@@ -5,10 +5,6 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
5
5
  executed: string;
6
6
  error: string;
7
7
  };
8
- door: {
9
- closed: string;
10
- open: string;
11
- };
12
8
  lightbulb: {
13
9
  brightness: string;
14
10
  stateOn: string;
@@ -21,6 +17,10 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
21
17
  stateOn: string;
22
18
  stateOff: string;
23
19
  };
20
+ position: {
21
+ closed: string;
22
+ open: string;
23
+ };
24
24
  timer: {
25
25
  cancel: string;
26
26
  reset: string;
@@ -69,6 +69,8 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
69
69
  smokeSensor: string;
70
70
  switch: string;
71
71
  unsecured: string;
72
+ window: string;
73
+ windowCovering: string;
72
74
  };
73
75
  title: {
74
76
  accessory: string;
package/dist/i18n/zz.d.ts CHANGED
@@ -5,10 +5,6 @@ declare const zz: {
5
5
  executed: string;
6
6
  error: string;
7
7
  };
8
- door: {
9
- closed: string;
10
- open: string;
11
- };
12
8
  lightbulb: {
13
9
  brightness: string;
14
10
  stateOn: string;
@@ -21,6 +17,10 @@ declare const zz: {
21
17
  stateOn: string;
22
18
  stateOff: string;
23
19
  };
20
+ position: {
21
+ closed: string;
22
+ open: string;
23
+ };
24
24
  timer: {
25
25
  cancel: string;
26
26
  reset: string;
@@ -69,6 +69,8 @@ declare const zz: {
69
69
  smokeSensor: string;
70
70
  switch: string;
71
71
  unsecured: string;
72
+ window: string;
73
+ windowCovering: string;
72
74
  };
73
75
  title: {
74
76
  accessory: string;
@@ -6,7 +6,9 @@ export declare enum AccessoryType {
6
6
  Lightbulb = "Lightbulb",
7
7
  LockMechanism = "LockMechanism",
8
8
  Outlet = "Outlet",
9
- Switch = "Switch"
9
+ Switch = "Switch",
10
+ Window = "Window",
11
+ WindowCovering = "WindowCovering"
10
12
  }
11
13
  export declare enum SensorType {
12
14
  CarbonDioxideSensor = "CarbonDioxideSensor",
@@ -26,6 +28,14 @@ export declare enum SensorCharacteristic {
26
28
  OccupancyDetected = "OccupancyDetected",
27
29
  SmokeDetected = "SmokeDetected"
28
30
  }
31
+ export declare enum DefaultLockState {
32
+ LOCKED = "locked",
33
+ UNLOCKED = "unlocked"
34
+ }
35
+ export declare enum DefaultPosition {
36
+ OPEN = "open",
37
+ CLOSED = "closed"
38
+ }
29
39
  export type LegacyAccessoryConfig = AccessoryConfig & {
30
40
  name: string;
31
41
  dimmer?: boolean;
@@ -61,7 +71,7 @@ export type DummyConfig = {
61
71
  disableLogging?: boolean;
62
72
  };
63
73
  export type OnOffConfig = DummyConfig & {
64
- defaultOnOff?: CharacteristicValue;
74
+ defaultOn?: CharacteristicValue;
65
75
  sensor?: SensorType;
66
76
  commandOn?: string;
67
77
  commandOff?: string;
@@ -72,15 +82,18 @@ export type LightbulbConfig = OnOffConfig & {
72
82
  };
73
83
  export type SwitchConfig = OnOffConfig & {};
74
84
  export type LockConfig = DummyConfig & {
75
- defaultLockState?: CharacteristicValue;
85
+ defaultLockState?: DefaultLockState;
76
86
  commandLock?: string;
77
87
  commandUnlock?: string;
78
88
  };
79
- export type DoorConfig = DummyConfig & {
80
- defaultPosition?: number;
89
+ export type PositionConfig = DummyConfig & {
90
+ defaultPosition?: DefaultPosition;
81
91
  commandOpen?: string;
82
92
  commandClose?: string;
83
93
  };
94
+ export type DoorConfig = PositionConfig & {};
95
+ export type WindowConfig = PositionConfig & {};
96
+ export type BlindConfig = PositionConfig & {};
84
97
  export type GroupConfig = {
85
98
  accessories: DummyConfig[];
86
99
  };
@@ -5,6 +5,8 @@ export var AccessoryType;
5
5
  AccessoryType["LockMechanism"] = "LockMechanism";
6
6
  AccessoryType["Outlet"] = "Outlet";
7
7
  AccessoryType["Switch"] = "Switch";
8
+ AccessoryType["Window"] = "Window";
9
+ AccessoryType["WindowCovering"] = "WindowCovering";
8
10
  })(AccessoryType || (AccessoryType = {}));
9
11
  export var SensorType;
10
12
  (function (SensorType) {
@@ -26,6 +28,16 @@ export var SensorCharacteristic;
26
28
  SensorCharacteristic["OccupancyDetected"] = "OccupancyDetected";
27
29
  SensorCharacteristic["SmokeDetected"] = "SmokeDetected";
28
30
  })(SensorCharacteristic || (SensorCharacteristic = {}));
31
+ export var DefaultLockState;
32
+ (function (DefaultLockState) {
33
+ DefaultLockState["LOCKED"] = "locked";
34
+ DefaultLockState["UNLOCKED"] = "unlocked";
35
+ })(DefaultLockState || (DefaultLockState = {}));
36
+ export var DefaultPosition;
37
+ (function (DefaultPosition) {
38
+ DefaultPosition["OPEN"] = "open";
39
+ DefaultPosition["CLOSED"] = "closed";
40
+ })(DefaultPosition || (DefaultPosition = {}));
29
41
  export var TimeUnits;
30
42
  (function (TimeUnits) {
31
43
  TimeUnits["SECONDS"] = "SECONDS";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/model/types.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,wCAAuB,CAAA;IACvB,gDAA+B,CAAA;IAC/B,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;AACnB,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,yDAA2C,CAAA;IAC3C,2DAA6C,CAAA;IAC7C,6CAA+B,CAAA;IAC/B,uCAAyB,CAAA;IACzB,2CAA6B,CAAA;IAC7B,iDAAmC,CAAA;IACnC,yCAA2B,CAAA;AAC7B,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,CAAN,IAAY,oBAQX;AARD,WAAY,oBAAoB;IAC9B,uEAA+C,CAAA;IAC/C,yEAAiD,CAAA;IACjD,iEAAyC,CAAA;IACzC,qDAA6B,CAAA;IAC7B,yDAAiC,CAAA;IACjC,+DAAuC,CAAA;IACvC,uDAA+B,CAAA;AACjC,CAAC,EARW,oBAAoB,KAApB,oBAAoB,QAQ/B;AAmBD,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;IACnB,4BAAe,CAAA;AACjB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/model/types.ts"],"names":[],"mappings":"AAKA,MAAM,CAAN,IAAY,aAQX;AARD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,wCAAuB,CAAA;IACvB,gDAA+B,CAAA;IAC/B,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;AACnC,CAAC,EARW,aAAa,KAAb,aAAa,QAQxB;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,yDAA2C,CAAA;IAC3C,2DAA6C,CAAA;IAC7C,6CAA+B,CAAA;IAC/B,uCAAyB,CAAA;IACzB,2CAA6B,CAAA;IAC7B,iDAAmC,CAAA;IACnC,yCAA2B,CAAA;AAC7B,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,CAAN,IAAY,oBAQX;AARD,WAAY,oBAAoB;IAC9B,uEAA+C,CAAA;IAC/C,yEAAiD,CAAA;IACjD,iEAAyC,CAAA;IACzC,qDAA6B,CAAA;IAC7B,yDAAiC,CAAA;IACjC,+DAAuC,CAAA;IACvC,uDAA+B,CAAA;AACjC,CAAC,EARW,oBAAoB,KAApB,oBAAoB,QAQ/B;AAED,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;AACvB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B;AAED,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,oCAAiB,CAAA;AACnB,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAmBD,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;IACnB,4BAAe,CAAA;AACjB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB"}
@@ -11,7 +11,7 @@ function migrateAccessory(legacyConfig) {
11
11
  };
12
12
  if (legacyConfig.reverse) {
13
13
  const onOffConfig = dummyConfig;
14
- onOffConfig.defaultOnOff = 1;
14
+ onOffConfig.defaultOn = 1;
15
15
  }
16
16
  if (legacyConfig.dimmer) {
17
17
  const lightbulbConfig = dummyConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"configMigration.js","sourceRoot":"","sources":["../../src/tools/configMigration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configMigration.js","sourceRoot":"","sources":["../../src/tools/configMigration.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "displayName": "Homebridge Dummy",
5
5
  "description": "Dummy devices for Homebridge",
6
6
  "type": "module",
7
- "version": "1.0.0-alpha.7",
7
+ "version": "1.0.0-beta.0",
8
8
  "homepage": "https://github.com/mpatfield/homebridge-dummy#readme",
9
9
  "repository": {
10
10
  "type": "git",
@@ -1 +0,0 @@
1
- {"version":3,"file":"door.js","sourceRoot":"","sources":["../../src/accessory/door.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"lightbulb.js","sourceRoot":"","sources":["../../src/accessory/lightbulb.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAoD,MAAM,mBAAmB,CAAC;AAGpG,OAAO,EAAE,qCAAqC,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEpG,MAAM,aAAa,GAAG,CAAC,CAAC,CAAC;AAEzB,MAAM,OAAO,kBAAmB,SAAQ,cAA+B;IAE7D,UAAU,CAAsB;IAExC,YACE,OAAoB,EACpB,cAAkC,EAClC,SAA4B,EAC5B,MAAuB,EACvB,GAAQ,EACR,WAAmB,EACnB,SAAkB;QAElB,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;QAE/E,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,aAAa,CAAC;QAEjE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAElB,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;iBACpE,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACpC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAExC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,UAAU,KAAK,aAAa,CAAC;IAC3C,CAAC;IAED,IAAY,2BAA2B;QACrC,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,qCAAqC,EAAE,CAAC;IACvE,CAAC;IAES,gBAAgB;QACxB,OAAO,aAAa,CAAC,SAAS,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAEhC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,2BAA2B,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC;QAC5G,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9F,CAAC;IAEQ,UAAU,CAAC,KAA0B;QAC5C,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC3B,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;QAC7G,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAES,KAAK,CAAC,aAAa;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,KAA0B;QAEtD,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAExB,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,EAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEzG,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9F,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"onoff.js","sourceRoot":"","sources":["../../src/accessory/onoff.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"outlet.js","sourceRoot":"","sources":["../../src/accessory/outlet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAgB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEhE,MAAM,OAAO,eAAgB,SAAQ,cAA4B;IAErD,gBAAgB;QACxB,OAAO,aAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../src/accessory/switch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAgB,MAAM,mBAAmB,CAAC;AAEhE,MAAM,OAAO,eAAgB,SAAQ,cAA4B;IAErD,gBAAgB;QACxB,OAAO,aAAa,CAAC,MAAM,CAAC;IAC9B,CAAC;CACF"}