homebridge-dummy 1.1.0 → 1.2.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 (80) hide show
  1. package/CHANGELOG.md +12 -3
  2. package/README.md +38 -141
  3. package/config.schema.json +104 -8
  4. package/dist/accessory/base.d.ts +5 -1
  5. package/dist/accessory/base.js +8 -5
  6. package/dist/accessory/base.js.map +1 -1
  7. package/dist/accessory/group.d.ts +2 -7
  8. package/dist/accessory/group.js +5 -14
  9. package/dist/accessory/group.js.map +1 -1
  10. package/dist/accessory/helpers.d.ts +2 -2
  11. package/dist/accessory/helpers.js +9 -9
  12. package/dist/accessory/helpers.js.map +1 -1
  13. package/dist/accessory/lock.d.ts +6 -2
  14. package/dist/accessory/lock.js +14 -4
  15. package/dist/accessory/lock.js.map +1 -1
  16. package/dist/accessory/onoff/lightbulb.d.ts +6 -3
  17. package/dist/accessory/onoff/lightbulb.js +15 -9
  18. package/dist/accessory/onoff/lightbulb.js.map +1 -1
  19. package/dist/accessory/onoff/onoff.d.ts +3 -1
  20. package/dist/accessory/onoff/onoff.js +13 -7
  21. package/dist/accessory/onoff/onoff.js.map +1 -1
  22. package/dist/accessory/onoff/outlet.d.ts +3 -2
  23. package/dist/accessory/onoff/outlet.js +1 -1
  24. package/dist/accessory/onoff/outlet.js.map +1 -1
  25. package/dist/accessory/onoff/switch.d.ts +3 -2
  26. package/dist/accessory/onoff/switch.js +1 -1
  27. package/dist/accessory/onoff/switch.js.map +1 -1
  28. package/dist/accessory/position/blind.d.ts +3 -2
  29. package/dist/accessory/position/blind.js +1 -1
  30. package/dist/accessory/position/blind.js.map +1 -1
  31. package/dist/accessory/position/door.d.ts +3 -2
  32. package/dist/accessory/position/door.js +1 -1
  33. package/dist/accessory/position/door.js.map +1 -1
  34. package/dist/accessory/position/position.d.ts +3 -0
  35. package/dist/accessory/position/position.js +14 -3
  36. package/dist/accessory/position/position.js.map +1 -1
  37. package/dist/accessory/position/window.d.ts +3 -2
  38. package/dist/accessory/position/window.js +1 -1
  39. package/dist/accessory/position/window.js.map +1 -1
  40. package/dist/accessory/sensor.d.ts +2 -1
  41. package/dist/accessory/sensor.js +1 -1
  42. package/dist/accessory/sensor.js.map +1 -1
  43. package/dist/accessory/thermostat.d.ts +8 -2
  44. package/dist/accessory/thermostat.js +33 -21
  45. package/dist/accessory/thermostat.js.map +1 -1
  46. package/dist/homebridge/platform.d.ts +1 -0
  47. package/dist/homebridge/platform.js +10 -3
  48. package/dist/homebridge/platform.js.map +1 -1
  49. package/dist/homebridge-ui/public/index.html +1 -1
  50. package/dist/homebridge-ui/public/ui.js +1 -1
  51. package/dist/i18n/en.d.ts +26 -0
  52. package/dist/i18n/en.js +36 -10
  53. package/dist/i18n/en.js.map +1 -1
  54. package/dist/i18n/i18n.d.ts +26 -0
  55. package/dist/i18n/template.d.ts +26 -0
  56. package/dist/i18n/zz.d.ts +26 -0
  57. package/dist/model/enums.d.ts +64 -0
  58. package/dist/model/enums.js +75 -0
  59. package/dist/model/enums.js.map +1 -0
  60. package/dist/model/types.d.ts +4 -56
  61. package/dist/model/types.js +1 -65
  62. package/dist/model/types.js.map +1 -1
  63. package/dist/model/webhook.d.ts +27 -0
  64. package/dist/model/webhook.js +161 -0
  65. package/dist/model/webhook.js.map +1 -0
  66. package/dist/timeout/schedule.js +11 -4
  67. package/dist/timeout/schedule.js.map +1 -1
  68. package/dist/timeout/timeout.d.ts +1 -1
  69. package/dist/timeout/timeout.js +1 -1
  70. package/dist/tools/configMigration.js +1 -1
  71. package/dist/tools/configMigration.js.map +1 -1
  72. package/dist/tools/log.d.ts +6 -2
  73. package/dist/tools/log.js +28 -1
  74. package/dist/tools/log.js.map +1 -1
  75. package/dist/tools/temperature.d.ts +1 -1
  76. package/dist/tools/temperature.js +1 -1
  77. package/dist/tools/validation.d.ts +1 -3
  78. package/dist/tools/validation.js +0 -8
  79. package/dist/tools/validation.js.map +1 -1
  80. package/package.json +11 -7
@@ -1,7 +1,7 @@
1
1
  import fs from 'fs';
2
2
  import { strings } from '../i18n/i18n.js';
3
3
  import { LEGACY_ALIAS, PLATFORM_NAME } from '../homebridge/settings.js';
4
- import { AccessoryType, TimeUnits } from '../model/types.js';
4
+ import { AccessoryType, TimeUnits } from '../model/enums.js';
5
5
  function migrateAccessory(legacyConfig) {
6
6
  const dummyConfig = {
7
7
  id: crypto.randomUUID(),
@@ -1 +1 @@
1
- {"version":3,"file":"configMigration.js","sourceRoot":"","sources":["../../src/tools/configMigration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AAMpB,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAExE,OAAO,EAAyF,aAAa,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEpJ,SAAS,gBAAgB,CAAC,YAAmC;IAE3D,MAAM,WAAW,GAAgB;QAC/B,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;QACvB,IAAI,EAAE,YAAY,CAAC,IAAI;QACvB,IAAI,EAAE,aAAa,CAAC,MAAM;QAC1B,cAAc,EAAE,YAAY,CAAC,cAAc;KAC5C,CAAC;IAEF,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,WAA0B,CAAC;QAC/C,WAAW,CAAC,SAAS,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,eAAe,GAAG,WAA8B,CAAC;QACvD,eAAe,CAAC,IAAI,GAAG,aAAa,CAAC,SAAS,CAAC;QAC/C,eAAe,CAAC,iBAAiB,GAAG,YAAY,CAAC,UAAU,IAAI,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,CAAC,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;QAChD,WAAW,CAAC,KAAK,GAAG;YAClB,KAAK,EAAE,YAAY,CAAC,IAAI;YACxB,KAAK,EAAE,SAAS,CAAC,YAAY;YAC7B,MAAM,EAAE,YAAY,CAAC,MAAM;SAC5B,CAAC;IACJ,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAQ,EAAE,UAAkB;IAEnE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAE7E,EAAE,CAAC,aAAa,CAAC,UAAU,GAAG,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEvE,IAAI,mBAAoD,CAAC;QACzD,KAAK,MAAM,cAAc,IAAI,MAAM,CAAC,SAA6B,EAAE,CAAC;YAElE,IAAI,cAAc,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;gBAC9C,SAAS;YACX,CAAC;YAED,mBAAmB,GAAG,cAAqC,CAAC;YAE5D,MAAM;QACR,CAAC;QAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YAC3C,OAAO;QACT,CAAC;QAED,mBAAmB,CAAC,WAAW,GAAG,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAEjH,MAAM,QAAQ,GAAkB,EAAE,CAAC;QACnC,MAAM,MAAM,GAAsB,EAAE,CAAC;QAErC,IAAI,WAA4C,CAAC;QAEjD,KAAK,MAAM,eAAe,IAAI,MAAM,CAAC,WAAgC,EAAE,CAAC;YAEtE,IAAI,eAAe,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAC7B,SAAS;YACX,CAAC;YAED,MAAM,WAAW,GAAG,gBAAgB,CAAC,eAAwC,CAAC,CAAC;YAE/E,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC3B,mBAAmB,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAElD,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;gBAClC,WAAW,GAAG,eAAe,CAAC,OAAO,CAAC;YACxC,CAAC;QACH,CAAC;QAED,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;QAE5B,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;YACjC,mBAAmB,CAAC,OAAO,GAAG,WAAW,CAAC;QAC5C,CAAC;QAED,OAAO,mBAAmB,CAAC,eAAe,CAAC;QAE3C,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAE9D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAE7C,IAAI,WAAW,EAAE,CAAC;YAChB,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,QAAQ,CAAC;IAElB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IAClD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"configMigration.js","sourceRoot":"","sources":["../../src/tools/configMigration.ts"],"names":[],"mappings":"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"}
@@ -2,13 +2,17 @@ import { Logger } from 'homebridge';
2
2
  export declare enum LogType {
3
3
  ALWAYS = 0,
4
4
  WARNING = 1,
5
- ERROR = 2
5
+ ERROR = 2,
6
+ SUCCESS = 3
6
7
  }
7
8
  export declare class Log {
8
9
  private readonly logger;
9
- constructor(logger: Logger);
10
+ readonly verbose: boolean;
11
+ constructor(logger: Logger, verbose: boolean);
10
12
  always(message: string, ...parameters: any[]): void;
11
13
  warning(message: string, ...parameters: any[]): void;
12
14
  error(message: string, ...parameters: any[]): void;
13
15
  success(message: string, ...parameters: any[]): void;
16
+ ifVerbose(message: string, ...parameters: any[]): void;
17
+ ifVerbose(level: LogType, message: string, ...parameters: any[]): void;
14
18
  }
package/dist/tools/log.js CHANGED
@@ -3,11 +3,14 @@ export var LogType;
3
3
  LogType[LogType["ALWAYS"] = 0] = "ALWAYS";
4
4
  LogType[LogType["WARNING"] = 1] = "WARNING";
5
5
  LogType[LogType["ERROR"] = 2] = "ERROR";
6
+ LogType[LogType["SUCCESS"] = 3] = "SUCCESS";
6
7
  })(LogType || (LogType = {}));
7
8
  export class Log {
8
9
  logger;
9
- constructor(logger) {
10
+ verbose;
11
+ constructor(logger, verbose) {
10
12
  this.logger = logger;
13
+ this.verbose = verbose;
11
14
  }
12
15
  always(message, ...parameters) {
13
16
  this.logger.info(message, ...parameters);
@@ -21,5 +24,29 @@ export class Log {
21
24
  success(message, ...parameters) {
22
25
  this.logger.success(message, ...parameters);
23
26
  }
27
+ ifVerbose(levelOrMessage, ...rest) {
28
+ if (!this.verbose) {
29
+ return;
30
+ }
31
+ if (typeof levelOrMessage === 'string') {
32
+ this.always(levelOrMessage, ...rest);
33
+ return;
34
+ }
35
+ const [message, ...parameters] = rest;
36
+ switch (levelOrMessage) {
37
+ case LogType.ALWAYS:
38
+ this.always(message, ...parameters);
39
+ break;
40
+ case LogType.WARNING:
41
+ this.warning(message, ...parameters);
42
+ break;
43
+ case LogType.ERROR:
44
+ this.error(message, ...parameters);
45
+ break;
46
+ case LogType.SUCCESS:
47
+ this.error(message, ...parameters);
48
+ break;
49
+ }
50
+ }
24
51
  }
25
52
  //# sourceMappingURL=log.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/tools/log.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,OAIX;AAJD,WAAY,OAAO;IACjB,yCAAM,CAAA;IACN,2CAAO,CAAA;IACP,uCAAK,CAAA;AACP,CAAC,EAJW,OAAO,KAAP,OAAO,QAIlB;AAED,MAAM,OAAO,GAAG;IAGK;IADnB,YACmB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEG,MAAM,CAAC,OAAe,EAAE,GAAG,UAAiB;QACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC3C,CAAC;IAEM,OAAO,CAAC,OAAe,EAAE,GAAG,UAAiB;QAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,GAAG,UAAiB;QAChD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC5C,CAAC;IAEM,OAAO,CAAC,OAAe,EAAE,GAAG,UAAiB;QAClD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/tools/log.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,yCAAM,CAAA;IACN,2CAAO,CAAA;IACP,uCAAK,CAAA;IACL,2CAAO,CAAA;AACT,CAAC,EALW,OAAO,KAAP,OAAO,QAKlB;AAED,MAAM,OAAO,GAAG;IAGK;IACD;IAFlB,YACmB,MAAc,EACf,OAAgB;QADf,WAAM,GAAN,MAAM,CAAQ;QACf,YAAO,GAAP,OAAO,CAAS;IAC/B,CAAC;IAEG,MAAM,CAAC,OAAe,EAAE,GAAG,UAAiB;QACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC3C,CAAC;IAEM,OAAO,CAAC,OAAe,EAAE,GAAG,UAAiB;QAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,GAAG,UAAiB;QAChD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC5C,CAAC;IAEM,OAAO,CAAC,OAAe,EAAE,GAAG,UAAiB;QAClD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;IAC9C,CAAC;IAIM,SAAS,CAAC,cAAgC,EAAE,GAAG,IAAW;QAE/D,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QAED,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,MAAM,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,GAAG,IAAI,CAAC;QACtC,QAAO,cAAc,EAAE,CAAC;YACxB,KAAK,OAAO,CAAC,MAAM;gBACjB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,OAAO,CAAC,OAAO;gBAClB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,OAAO,CAAC,KAAK;gBAChB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,OAAO,CAAC,OAAO;gBAClB,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;gBACnC,MAAM;QACR,CAAC;IACH,CAAC;CACF"}
@@ -1,3 +1,3 @@
1
- import { TemperatureUnits } from '../model/types.js';
1
+ import { TemperatureUnits } from '../model/enums.js';
2
2
  export declare const toCelsius: (temp: number, units?: TemperatureUnits) => number;
3
3
  export declare const fromCelsius: (temp: number, units?: TemperatureUnits) => number;
@@ -1,4 +1,4 @@
1
- import { TemperatureUnits } from '../model/types.js';
1
+ import { TemperatureUnits } from '../model/enums.js';
2
2
  const fahrenheitToCelsius = (fahrenheit) => {
3
3
  return Number(((fahrenheit - 32) * 5 / 9).toFixed(1));
4
4
  };
@@ -1,5 +1,3 @@
1
1
  import { Log } from './log.js';
2
2
  import { Assertable } from '../model/types.js';
3
- import { CharacteristicValue } from 'homebridge';
4
- export declare function assert(log: Log, caller: string, assertable: Assertable, ...keys: (keyof any)[]): boolean;
5
- export declare function assertType(log: Log, caller: string, value: CharacteristicValue, type: string): boolean;
3
+ export declare function assert<A extends Assertable>(log: Log, caller: string, assertable: A, ...keys: (keyof A)[]): boolean;
@@ -1,5 +1,4 @@
1
1
  import { strings } from '../i18n/i18n.js';
2
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
3
2
  export function assert(log, caller, assertable, ...keys) {
4
3
  let valid = true;
5
4
  for (const key of keys) {
@@ -10,11 +9,4 @@ export function assert(log, caller, assertable, ...keys) {
10
9
  }
11
10
  return valid;
12
11
  }
13
- export function assertType(log, caller, value, type) {
14
- if (typeof value !== type) {
15
- log.error(strings.accessory.badValueType, caller, type, typeof value);
16
- return false;
17
- }
18
- return true;
19
- }
20
12
  //# sourceMappingURL=validation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/tools/validation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK1C,8DAA8D;AAC9D,MAAM,UAAU,MAAM,CAAC,GAAQ,EAAE,MAAc,EAAE,UAAsB,EAAE,GAAG,IAAmB;IAC7F,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAK,UAAsC,CAAC,GAAa,CAAC,KAAK,SAAS,EAAE,CAAC;YACzE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC5E,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAQ,EAAE,MAAc,EAAE,KAA0B,EAAE,IAAY;IAE3F,IAAI,OAAO,KAAK,KAAK,IAAI,EAAE,CAAC;QAC1B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/tools/validation.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAI1C,MAAM,UAAU,MAAM,CAAuB,GAAQ,EAAE,MAAc,EAAE,UAAa,EAAE,GAAG,IAAiB;IACxG,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAK,UAAsC,CAAC,GAAa,CAAC,KAAK,SAAS,EAAE,CAAC;YACzE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC5E,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
package/package.json CHANGED
@@ -2,9 +2,9 @@
2
2
  "name": "homebridge-dummy",
3
3
  "platform": "HomebridgeDummy",
4
4
  "displayName": "Homebridge Dummy",
5
- "description": "Dummy accessories for automation with scheduling, delays, sensors, commands, and more",
5
+ "description": "Create fake accessories to help with automation — features scheduling, delays, sensors, commands, and more",
6
6
  "type": "module",
7
- "version": "1.1.0",
7
+ "version": "1.2.0-beta.0",
8
8
  "homepage": "https://github.com/mpatfield/homebridge-dummy#readme",
9
9
  "repository": {
10
10
  "type": "git",
@@ -56,20 +56,24 @@
56
56
  "dependencies": {
57
57
  "@homebridge/plugin-ui-utils": "^2.0.2",
58
58
  "cron": "^4.3.2",
59
- "homebridge-lib": "^7.1.4",
59
+ "escape-html": "^1.0.3",
60
+ "express": "^5.1.0",
61
+ "homebridge-lib": "^7.1.8",
60
62
  "lodash.merge": "^4.6.2",
61
63
  "node-persist": "^4.0.4"
62
64
  },
63
65
  "devDependencies": {
66
+ "@types/escape-html": "^1.0.4",
67
+ "@types/express": "^5.0.3",
64
68
  "@types/lodash.merge": "^4.6.9",
65
69
  "@types/node-persist": "^3.1.8",
66
- "esbuild": "^0.25.5",
67
- "eslint": "^9.27.0",
68
- "homebridge": "^2.0.0-beta.0",
70
+ "esbuild": "^0.25.10",
71
+ "eslint": "^9.35.0",
72
+ "homebridge": "^2.0.0-beta.30",
69
73
  "jiti": "^2.5.1",
70
74
  "rimraf": "^6.0.1",
71
75
  "ts-node": "^10.9.2",
72
- "typescript-eslint": "^8.35.1"
76
+ "typescript-eslint": "^8.44.0"
73
77
  },
74
78
  "homebridge": {
75
79
  "platform": "HomebridgeDummy",