@kohost/api-client 4.17.3 → 4.19.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 (99) hide show
  1. package/dist/cjs/models/alarm.cjs +1 -0
  2. package/dist/cjs/models/alarm.cjs.map +1 -1
  3. package/dist/cjs/models/dimmer.cjs +1 -0
  4. package/dist/cjs/models/dimmer.cjs.map +1 -1
  5. package/dist/cjs/models/gateway.cjs +1 -0
  6. package/dist/cjs/models/gateway.cjs.map +1 -1
  7. package/dist/cjs/models/lock.cjs +1 -0
  8. package/dist/cjs/models/lock.cjs.map +1 -1
  9. package/dist/cjs/models/mediaSource.cjs +1 -0
  10. package/dist/cjs/models/mediaSource.cjs.map +1 -1
  11. package/dist/cjs/models/motionSensor.cjs +1 -0
  12. package/dist/cjs/models/motionSensor.cjs.map +1 -1
  13. package/dist/cjs/models/switch.cjs +1 -0
  14. package/dist/cjs/models/switch.cjs.map +1 -1
  15. package/dist/cjs/models/thermostat.cjs +1 -1
  16. package/dist/cjs/models/thermostat.cjs.map +1 -1
  17. package/dist/cjs/models/windowCovering.cjs +1 -0
  18. package/dist/cjs/models/windowCovering.cjs.map +1 -1
  19. package/dist/cjs/schemas/alarm.cjs +3 -0
  20. package/dist/cjs/schemas/alarm.cjs.map +1 -1
  21. package/dist/cjs/schemas/alarm.d.cts +3 -0
  22. package/dist/cjs/schemas/definitions.cjs +30 -0
  23. package/dist/cjs/schemas/definitions.cjs.map +1 -1
  24. package/dist/cjs/schemas/definitions.d.cts +22 -0
  25. package/dist/cjs/schemas/dimmer.cjs +3 -0
  26. package/dist/cjs/schemas/dimmer.cjs.map +1 -1
  27. package/dist/cjs/schemas/dimmer.d.cts +3 -0
  28. package/dist/cjs/schemas/gateway.cjs +3 -0
  29. package/dist/cjs/schemas/gateway.cjs.map +1 -1
  30. package/dist/cjs/schemas/gateway.d.cts +3 -0
  31. package/dist/cjs/schemas/lock.cjs +3 -0
  32. package/dist/cjs/schemas/lock.cjs.map +1 -1
  33. package/dist/cjs/schemas/lock.d.cts +3 -0
  34. package/dist/cjs/schemas/mediaSource.cjs +3 -0
  35. package/dist/cjs/schemas/mediaSource.cjs.map +1 -1
  36. package/dist/cjs/schemas/mediaSource.d.cts +3 -0
  37. package/dist/cjs/schemas/motionSensor.cjs +3 -0
  38. package/dist/cjs/schemas/motionSensor.cjs.map +1 -1
  39. package/dist/cjs/schemas/motionSensor.d.cts +3 -0
  40. package/dist/cjs/schemas/switch.cjs +3 -0
  41. package/dist/cjs/schemas/switch.cjs.map +1 -1
  42. package/dist/cjs/schemas/switch.d.cts +3 -0
  43. package/dist/cjs/schemas/thermostat.cjs +3 -13
  44. package/dist/cjs/schemas/thermostat.cjs.map +1 -1
  45. package/dist/cjs/schemas/thermostat.d.cts +3 -13
  46. package/dist/cjs/schemas/windowCovering.cjs +3 -0
  47. package/dist/cjs/schemas/windowCovering.cjs.map +1 -1
  48. package/dist/cjs/schemas/windowCovering.d.cts +3 -0
  49. package/dist/cjs/validate.d.cts +6 -6
  50. package/dist/esm/models/alarm.js +1 -0
  51. package/dist/esm/models/alarm.js.map +1 -1
  52. package/dist/esm/models/dimmer.js +1 -0
  53. package/dist/esm/models/dimmer.js.map +1 -1
  54. package/dist/esm/models/gateway.js +1 -0
  55. package/dist/esm/models/gateway.js.map +1 -1
  56. package/dist/esm/models/lock.js +1 -0
  57. package/dist/esm/models/lock.js.map +1 -1
  58. package/dist/esm/models/mediaSource.js +1 -0
  59. package/dist/esm/models/mediaSource.js.map +1 -1
  60. package/dist/esm/models/motionSensor.js +1 -0
  61. package/dist/esm/models/motionSensor.js.map +1 -1
  62. package/dist/esm/models/switch.js +1 -0
  63. package/dist/esm/models/switch.js.map +1 -1
  64. package/dist/esm/models/thermostat.js +1 -1
  65. package/dist/esm/models/thermostat.js.map +1 -1
  66. package/dist/esm/models/windowCovering.js +1 -0
  67. package/dist/esm/models/windowCovering.js.map +1 -1
  68. package/dist/esm/schemas/alarm.d.ts +3 -0
  69. package/dist/esm/schemas/alarm.js +3 -0
  70. package/dist/esm/schemas/alarm.js.map +1 -1
  71. package/dist/esm/schemas/definitions.d.ts +22 -0
  72. package/dist/esm/schemas/definitions.js +30 -0
  73. package/dist/esm/schemas/definitions.js.map +1 -1
  74. package/dist/esm/schemas/dimmer.d.ts +3 -0
  75. package/dist/esm/schemas/dimmer.js +3 -0
  76. package/dist/esm/schemas/dimmer.js.map +1 -1
  77. package/dist/esm/schemas/gateway.d.ts +3 -0
  78. package/dist/esm/schemas/gateway.js +3 -0
  79. package/dist/esm/schemas/gateway.js.map +1 -1
  80. package/dist/esm/schemas/lock.d.ts +3 -0
  81. package/dist/esm/schemas/lock.js +3 -0
  82. package/dist/esm/schemas/lock.js.map +1 -1
  83. package/dist/esm/schemas/mediaSource.d.ts +3 -0
  84. package/dist/esm/schemas/mediaSource.js +3 -0
  85. package/dist/esm/schemas/mediaSource.js.map +1 -1
  86. package/dist/esm/schemas/motionSensor.d.ts +3 -0
  87. package/dist/esm/schemas/motionSensor.js +3 -0
  88. package/dist/esm/schemas/motionSensor.js.map +1 -1
  89. package/dist/esm/schemas/switch.d.ts +3 -0
  90. package/dist/esm/schemas/switch.js +3 -0
  91. package/dist/esm/schemas/switch.js.map +1 -1
  92. package/dist/esm/schemas/thermostat.d.ts +3 -13
  93. package/dist/esm/schemas/thermostat.js +3 -13
  94. package/dist/esm/schemas/thermostat.js.map +1 -1
  95. package/dist/esm/schemas/windowCovering.d.ts +3 -0
  96. package/dist/esm/schemas/windowCovering.js +3 -0
  97. package/dist/esm/schemas/windowCovering.js.map +1 -1
  98. package/dist/esm/validate.d.ts +6 -6
  99. package/package.json +1 -1
@@ -18,6 +18,7 @@ class WindowCovering extends Entity {
18
18
  this.discriminator = data.discriminator;
19
19
  if (data.supportedNotifications !== void 0)
20
20
  this.supportedNotifications = data.supportedNotifications;
21
+ if (data.alerts !== void 0) this.alerts = data.alerts;
21
22
  if (data.notification !== void 0) this.notification = data.notification;
22
23
  this.driver = data.driver;
23
24
  if (data.offline !== void 0) this.offline = data.offline;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/models/windowCovering.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateWindowCovering as validate } from \"../validate.js\";\nimport {\n windowCoveringSchema,\n type WindowCoveringSchema,\n} from \"../schemas/windowCovering.js\";\n\n/**\n * Data type for WindowCovering constructor - exported for backwards compatibility\n */\nexport type WindowCoveringData = WindowCoveringSchema;\n\n/**\n * Any smart window covering\n */\nexport interface WindowCovering extends WindowCoveringSchema {}\nexport class WindowCovering extends Entity {\n declare schema: typeof windowCoveringSchema;\n declare validator: typeof validate;\n\n constructor(data: WindowCoveringSchema) {\n super(data);\n this.id = data.id;\n if (data.name !== undefined) this.name = data.name;\n this.type = data.type;\n if (data.discriminator !== undefined)\n this.discriminator = data.discriminator;\n if (data.supportedNotifications !== undefined)\n this.supportedNotifications = data.supportedNotifications;\n if (data.notification !== undefined) this.notification = data.notification;\n this.driver = data.driver;\n if (data.offline !== undefined) this.offline = data.offline;\n this.position = data.position;\n if (data.systemId !== undefined) this.systemId = data.systemId;\n if (data.watts !== undefined) this.watts = data.watts;\n if (data.icon !== undefined) this.icon = data.icon;\n if (data.manufacturer !== undefined) this.manufacturer = data.manufacturer;\n if (data.modelNumber !== undefined) this.modelNumber = data.modelNumber;\n if (data.serialNumber !== undefined) this.serialNumber = data.serialNumber;\n if (data.firmwareVersion !== undefined)\n this.firmwareVersion = data.firmwareVersion;\n }\n}\n\nObject.defineProperty(WindowCovering.prototype, \"schema\", {\n value: windowCoveringSchema,\n});\n\nObject.defineProperty(WindowCovering.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;AAEA,SAAS,cAAc;AACvB,SAAS,0BAA0B,gBAAgB;AACnD;AAAA,EACE;AAAA,OAEK;AAWA,MAAM,uBAAuB,OAAO;AAAA,EAlB3C,OAkB2C;AAAA;AAAA;AAAA,EAIzC,YAAY,MAA4B;AACtC,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,2BAA2B;AAClC,WAAK,yBAAyB,KAAK;AACrC,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,SAAK,SAAS,KAAK;AACnB,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,SAAK,WAAW,KAAK;AACrB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,UAAU,OAAW,MAAK,QAAQ,KAAK;AAChD,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,oBAAoB;AAC3B,WAAK,kBAAkB,KAAK;AAAA,EAChC;AACF;AAEA,OAAO,eAAe,eAAe,WAAW,UAAU;AAAA,EACxD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,eAAe,WAAW,aAAa;AAAA,EAC3D,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/models/windowCovering.ts"],"sourcesContent":["/* This file is automatically generated. Do not modify it manually. */\n\nimport { Entity } from \"./entity.js\";\nimport { validateWindowCovering as validate } from \"../validate.js\";\nimport {\n windowCoveringSchema,\n type WindowCoveringSchema,\n} from \"../schemas/windowCovering.js\";\n\n/**\n * Data type for WindowCovering constructor - exported for backwards compatibility\n */\nexport type WindowCoveringData = WindowCoveringSchema;\n\n/**\n * Any smart window covering\n */\nexport interface WindowCovering extends WindowCoveringSchema {}\nexport class WindowCovering extends Entity {\n declare schema: typeof windowCoveringSchema;\n declare validator: typeof validate;\n\n constructor(data: WindowCoveringSchema) {\n super(data);\n this.id = data.id;\n if (data.name !== undefined) this.name = data.name;\n this.type = data.type;\n if (data.discriminator !== undefined)\n this.discriminator = data.discriminator;\n if (data.supportedNotifications !== undefined)\n this.supportedNotifications = data.supportedNotifications;\n if (data.alerts !== undefined) this.alerts = data.alerts;\n if (data.notification !== undefined) this.notification = data.notification;\n this.driver = data.driver;\n if (data.offline !== undefined) this.offline = data.offline;\n this.position = data.position;\n if (data.systemId !== undefined) this.systemId = data.systemId;\n if (data.watts !== undefined) this.watts = data.watts;\n if (data.icon !== undefined) this.icon = data.icon;\n if (data.manufacturer !== undefined) this.manufacturer = data.manufacturer;\n if (data.modelNumber !== undefined) this.modelNumber = data.modelNumber;\n if (data.serialNumber !== undefined) this.serialNumber = data.serialNumber;\n if (data.firmwareVersion !== undefined)\n this.firmwareVersion = data.firmwareVersion;\n }\n}\n\nObject.defineProperty(WindowCovering.prototype, \"schema\", {\n value: windowCoveringSchema,\n});\n\nObject.defineProperty(WindowCovering.prototype, \"validator\", {\n get: function () {\n return validate;\n },\n});\n"],"mappings":";;AAEA,SAAS,cAAc;AACvB,SAAS,0BAA0B,gBAAgB;AACnD;AAAA,EACE;AAAA,OAEK;AAWA,MAAM,uBAAuB,OAAO;AAAA,EAlB3C,OAkB2C;AAAA;AAAA;AAAA,EAIzC,YAAY,MAA4B;AACtC,UAAM,IAAI;AACV,SAAK,KAAK,KAAK;AACf,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,SAAK,OAAO,KAAK;AACjB,QAAI,KAAK,kBAAkB;AACzB,WAAK,gBAAgB,KAAK;AAC5B,QAAI,KAAK,2BAA2B;AAClC,WAAK,yBAAyB,KAAK;AACrC,QAAI,KAAK,WAAW,OAAW,MAAK,SAAS,KAAK;AAClD,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,SAAK,SAAS,KAAK;AACnB,QAAI,KAAK,YAAY,OAAW,MAAK,UAAU,KAAK;AACpD,SAAK,WAAW,KAAK;AACrB,QAAI,KAAK,aAAa,OAAW,MAAK,WAAW,KAAK;AACtD,QAAI,KAAK,UAAU,OAAW,MAAK,QAAQ,KAAK;AAChD,QAAI,KAAK,SAAS,OAAW,MAAK,OAAO,KAAK;AAC9C,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,gBAAgB,OAAW,MAAK,cAAc,KAAK;AAC5D,QAAI,KAAK,iBAAiB,OAAW,MAAK,eAAe,KAAK;AAC9D,QAAI,KAAK,oBAAoB;AAC3B,WAAK,kBAAkB,KAAK;AAAA,EAChC;AACF;AAEA,OAAO,eAAe,eAAe,WAAW,UAAU;AAAA,EACxD,OAAO;AACT,CAAC;AAED,OAAO,eAAe,eAAe,WAAW,aAAa;AAAA,EAC3D,KAAK,kCAAY;AACf,WAAO;AAAA,EACT,GAFK;AAGP,CAAC;","names":[]}
@@ -37,6 +37,9 @@ declare const alarmSchema: {
37
37
  readonly driver: {
38
38
  readonly $ref: "definitions.json#/definitions/driver";
39
39
  };
40
+ readonly alerts: {
41
+ readonly $ref: "definitions.json#/definitions/alerts";
42
+ };
40
43
  readonly areas: {
41
44
  readonly type: "array";
42
45
  readonly items: {
@@ -43,6 +43,9 @@ const alarmSchema = {
43
43
  driver: {
44
44
  $ref: "definitions.json#/definitions/driver"
45
45
  },
46
+ alerts: {
47
+ $ref: "definitions.json#/definitions/alerts"
48
+ },
46
49
  areas: {
47
50
  type: "array",
48
51
  items: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/alarm.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const alarmSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"alarm.json\",\n title: \"Alarm\",\n description: \"Any smart alarm system\",\n type: \"object\",\n definitions: {\n securityMode: {\n type: [\"string\", \"null\"],\n enum: [\n \"arming\",\n \"disarming\",\n \"armed\",\n \"disarmed\",\n \"intrusion\",\n \"fire\",\n \"medical\",\n null,\n ],\n },\n },\n required: [\"id\", \"type\", \"areas\", \"zones\", \"driver\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n description: \"Name of the alarm\",\n },\n offline: {\n type: \"boolean\",\n },\n type: {\n type: \"string\",\n enum: [\"alarm\"],\n default: \"alarm\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n areas: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n supportedSecurityModes: {\n type: \"array\",\n items: { $ref: \"#/definitions/securityMode\" },\n },\n securityMode: {\n $ref: \"#/definitions/securityMode\",\n },\n },\n additionalProperties: false,\n },\n },\n zones: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n secure: {\n type: [\"boolean\", \"null\"],\n },\n bypassed: {\n type: [\"boolean\", \"null\"],\n },\n offline: {\n type: \"boolean\",\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n },\n additionalProperties: false,\n },\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n code: {\n type: \"string\",\n },\n chime: {\n type: \"boolean\",\n description: \"Chime enabled\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n powerLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n monitoringTrouble: {\n type: \"boolean\",\n },\n bellTrouble: {\n type: \"boolean\",\n },\n },\n} as const;\n\nexport type AlarmSchema = FromSchema<\n typeof alarmSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/alarm.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const alarmSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"alarm.json\",\n title: \"Alarm\",\n description: \"Any smart alarm system\",\n type: \"object\",\n definitions: {\n securityMode: {\n type: [\"string\", \"null\"],\n enum: [\n \"arming\",\n \"disarming\",\n \"armed\",\n \"disarmed\",\n \"intrusion\",\n \"fire\",\n \"medical\",\n null,\n ],\n },\n },\n required: [\"id\", \"type\", \"areas\", \"zones\", \"driver\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n description: \"Name of the alarm\",\n },\n offline: {\n type: \"boolean\",\n },\n type: {\n type: \"string\",\n enum: [\"alarm\"],\n default: \"alarm\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\",\n },\n areas: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n supportedSecurityModes: {\n type: \"array\",\n items: { $ref: \"#/definitions/securityMode\" },\n },\n securityMode: {\n $ref: \"#/definitions/securityMode\",\n },\n },\n additionalProperties: false,\n },\n },\n zones: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n secure: {\n type: [\"boolean\", \"null\"],\n },\n bypassed: {\n type: [\"boolean\", \"null\"],\n },\n offline: {\n type: \"boolean\",\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n },\n additionalProperties: false,\n },\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n code: {\n type: \"string\",\n },\n chime: {\n type: \"boolean\",\n description: \"Chime enabled\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n address: {\n $ref: \"definitions.json#/definitions/address\",\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n powerLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n monitoringTrouble: {\n type: \"boolean\",\n },\n bellTrouble: {\n type: \"boolean\",\n },\n },\n} as const;\n\nexport type AlarmSchema = FromSchema<\n typeof alarmSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
@@ -84,6 +84,28 @@ declare const defs: {
84
84
  readonly name: {
85
85
  readonly type: "string";
86
86
  };
87
+ readonly alerts: {
88
+ readonly type: "array";
89
+ readonly uniqueItems: true;
90
+ readonly items: {
91
+ readonly type: "object";
92
+ readonly additionalProperties: false;
93
+ readonly required: readonly ["type", "status", "message"];
94
+ readonly properties: {
95
+ readonly type: {
96
+ readonly type: "string";
97
+ readonly enum: readonly ["Battery", "Communication", "Config", "Door Ajar", "Equipment", "Power", "Temperature"];
98
+ };
99
+ readonly status: {
100
+ readonly type: "string";
101
+ readonly enum: readonly ["Active", "Resolved"];
102
+ };
103
+ readonly message: {
104
+ readonly type: "string";
105
+ };
106
+ };
107
+ };
108
+ };
87
109
  readonly supportedNotifications: {
88
110
  readonly type: "array";
89
111
  readonly uniqueItems: true;
@@ -154,6 +154,36 @@ const defs = {
154
154
  name: {
155
155
  type: "string"
156
156
  },
157
+ alerts: {
158
+ type: "array",
159
+ uniqueItems: true,
160
+ items: {
161
+ type: "object",
162
+ additionalProperties: false,
163
+ required: ["type", "status", "message"],
164
+ properties: {
165
+ type: {
166
+ type: "string",
167
+ enum: [
168
+ "Battery",
169
+ "Communication",
170
+ "Config",
171
+ "Door Ajar",
172
+ "Equipment",
173
+ "Power",
174
+ "Temperature"
175
+ ]
176
+ },
177
+ status: {
178
+ type: "string",
179
+ enum: ["Active", "Resolved"]
180
+ },
181
+ message: {
182
+ type: "string"
183
+ }
184
+ }
185
+ }
186
+ },
157
187
  supportedNotifications: {
158
188
  type: "array",
159
189
  uniqueItems: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/definitions.ts"],"sourcesContent":["const defs = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"definitions.json\",\n title: \"Definitions\",\n definitions: {\n id: {\n type: \"string\",\n description: \"Identifier of the object.\",\n },\n systemId: {\n type: \"string\",\n description: \"Identifier of the object, directly related to the system.\",\n },\n systemData: {\n type: \"object\",\n },\n metadata: {\n type: \"object\",\n default: {},\n },\n date: {\n type: [\"string\", \"object\"],\n format: \"date-time\",\n },\n file: {\n type: \"object\",\n required: [\"name\", \"type\", \"data\"],\n properties: {\n name: {\n type: \"string\",\n description: \"Name of the file.\",\n },\n type: {\n type: \"string\",\n description: \"MIME type of the file (e.g. application/pdf).\",\n },\n data: {\n type: \"string\",\n description: \"Base64-encoded data of the file.\",\n },\n },\n },\n address: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n line1: {\n type: \"string\",\n },\n line2: {\n type: \"string\",\n },\n line3: {\n type: \"string\",\n },\n city: {\n type: \"string\",\n },\n state: {\n type: \"string\",\n },\n postalCode: {\n type: \"string\",\n },\n countryCode: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n },\n },\n driver: {\n type: \"string\",\n description: \"Driver used to communicate with the object.\",\n enum: [\n \"adlink\",\n \"aws-kinesis\",\n \"bacnet\",\n \"benq\",\n \"butler\",\n \"comelit\",\n \"crestron\",\n \"dell\",\n \"digital-watchdog\",\n \"distech\",\n \"dmp\",\n \"doorbird\",\n \"dormakaba\",\n \"dsc\",\n \"dsc-itv2\",\n \"ecobee\",\n \"epson\",\n \"geovision-rs\",\n \"geovision-as-manager\",\n \"honeywell-vista\",\n \"igor\",\n \"inncom\",\n \"isapi\",\n \"kohost-k7\",\n \"kohost\",\n \"lg\",\n \"lg-webos\",\n \"lapi\",\n \"lirc\",\n \"mews\",\n \"mht\",\n \"newline\",\n \"paxton\",\n \"pelican-wireless\",\n \"power-shades\",\n \"rachio\",\n \"rebrandly\",\n \"relay\",\n \"rtsp\",\n \"salto\",\n \"salto-irn\",\n \"samsung\",\n \"se\",\n \"sendgrid\",\n \"smartboard\",\n \"sonifi\",\n \"stay-n-touch\",\n \"storable\",\n \"twilio\",\n \"unifi\",\n \"valcom\",\n \"veracross\",\n \"vivotek\",\n \"vizio\",\n \"wisenet\",\n \"cloudflare-images\",\n \"cloudflare-stream\",\n \"insperia-privacy\",\n ],\n },\n type: {\n type: \"string\",\n enum: [\n \"alarm\",\n \"dimmer\",\n \"switch\",\n \"motionSensor\",\n \"windowCovering\",\n \"camera\",\n \"mediaSource\",\n \"thermostat\",\n \"lock\",\n \"courtesy\",\n ],\n },\n name: {\n type: \"string\",\n },\n supportedNotifications: {\n type: \"array\",\n uniqueItems: true,\n items: {\n enum: [\n \"button 1\",\n \"button 2\",\n \"button 3\",\n \"button 4\",\n \"button 5\",\n \"idle\",\n \"powerHasBeedApplied\",\n \"acMainsDisconnected\",\n \"acMainsReconnected\",\n \"replaceBatterySoon\",\n \"replaceBatteryNow\",\n \"batteryOk\",\n \"hardwareFailure\",\n \"softwareFailure\",\n \"hardwareFailureWithCode\",\n \"softwareFailureWithCode\",\n \"motionDetection\",\n \"airFilterNeedsCleaned\",\n \"airFilterNeedsReplaced\",\n \"smokeDetected\",\n \"outsideSafeTemperatureRange\",\n \"outsideSafeHumidityRange\",\n \"scheduleMaintenance\",\n \"doorAjar\",\n \"communicationFailure\",\n \"communicationOk\",\n \"burglarAlarm\",\n \"fireAlarm\",\n ],\n },\n },\n notification: {\n type: [\"object\", \"null\"],\n properties: {\n name: {\n type: \"string\",\n $ref: \"#/definitions/supportedNotifications/items\",\n },\n timestamp: {\n type: \"number\",\n minimum: 1655907956593,\n },\n description: {\n type: \"string\",\n },\n },\n },\n batteryLevel: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n watts: {\n type: \"number\",\n minimum: 0,\n },\n revenue: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n date: {\n type: \"string\",\n format: \"date-time\",\n },\n price: {\n type: \"number\",\n },\n tax: {\n type: [\"number\", \"null\"],\n },\n },\n },\n },\n },\n} as const;\n\nexport type ISODateString = ReturnType<Date[\"toISOString\"]>;\n\nexport { defs as definitionsSchema };\nexport default defs;\n"],"mappings":"AAAA,MAAM,OAAO;AAAA,EACX,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,IACX,IAAI;AAAA,MACF,MAAM;AAAA,MACN,aAAa;AAAA,IACf;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,aAAa;AAAA,IACf;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,MAAM;AAAA,MACJ,MAAM,CAAC,UAAU,QAAQ;AAAA,MACzB,QAAQ;AAAA,IACV;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,UAAU,CAAC,QAAQ,QAAQ,MAAM;AAAA,MACjC,YAAY;AAAA,QACV,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,MACF;AAAA,IACF;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,sBAAsB;AAAA,MACtB,YAAY;AAAA,QACV,IAAI;AAAA,UACF,MAAM;AAAA,QACR;AAAA,QACA,OAAO;AAAA,UACL,MAAM;AAAA,QACR;AAAA,QACA,OAAO;AAAA,UACL,MAAM;AAAA,QACR;AAAA,QACA,OAAO;AAAA,UACL,MAAM;AAAA,QACR;AAAA,QACA,MAAM;AAAA,UACJ,MAAM;AAAA,QACR;AAAA,QACA,OAAO;AAAA,UACL,MAAM;AAAA,QACR;AAAA,QACA,YAAY;AAAA,UACV,MAAM;AAAA,QACR;AAAA,QACA,aAAa;AAAA,UACX,MAAM;AAAA,UACN,WAAW;AAAA,UACX,WAAW;AAAA,QACb;AAAA,MACF;AAAA,IACF;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,aAAa;AAAA,MACb,MAAM;AAAA,QACJ;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM;AAAA,QACJ;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,OAAO;AAAA,QACL,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,cAAc;AAAA,MACZ,MAAM,CAAC,UAAU,MAAM;AAAA,MACvB,YAAY;AAAA,QACV,MAAM;AAAA,UACJ,MAAM;AAAA,UACN,MAAM;AAAA,QACR;AAAA,QACA,WAAW;AAAA,UACT,MAAM;AAAA,UACN,SAAS;AAAA,QACX;AAAA,QACA,aAAa;AAAA,UACX,MAAM;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,SAAS;AAAA,IACX;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,OAAO;AAAA,QACL,MAAM;AAAA,QACN,YAAY;AAAA,UACV,IAAI;AAAA,YACF,MAAM;AAAA,UACR;AAAA,UACA,MAAM;AAAA,YACJ,MAAM;AAAA,UACR;AAAA,UACA,MAAM;AAAA,YACJ,MAAM;AAAA,YACN,QAAQ;AAAA,UACV;AAAA,UACA,OAAO;AAAA,YACL,MAAM;AAAA,UACR;AAAA,UACA,KAAK;AAAA,YACH,MAAM,CAAC,UAAU,MAAM;AAAA,UACzB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAKA,IAAO,sBAAQ;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/definitions.ts"],"sourcesContent":["const defs = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"definitions.json\",\n title: \"Definitions\",\n definitions: {\n id: {\n type: \"string\",\n description: \"Identifier of the object.\",\n },\n systemId: {\n type: \"string\",\n description: \"Identifier of the object, directly related to the system.\",\n },\n systemData: {\n type: \"object\",\n },\n metadata: {\n type: \"object\",\n default: {},\n },\n date: {\n type: [\"string\", \"object\"],\n format: \"date-time\",\n },\n file: {\n type: \"object\",\n required: [\"name\", \"type\", \"data\"],\n properties: {\n name: {\n type: \"string\",\n description: \"Name of the file.\",\n },\n type: {\n type: \"string\",\n description: \"MIME type of the file (e.g. application/pdf).\",\n },\n data: {\n type: \"string\",\n description: \"Base64-encoded data of the file.\",\n },\n },\n },\n address: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n type: \"string\",\n },\n line1: {\n type: \"string\",\n },\n line2: {\n type: \"string\",\n },\n line3: {\n type: \"string\",\n },\n city: {\n type: \"string\",\n },\n state: {\n type: \"string\",\n },\n postalCode: {\n type: \"string\",\n },\n countryCode: {\n type: \"string\",\n minLength: 2,\n maxLength: 2,\n },\n },\n },\n driver: {\n type: \"string\",\n description: \"Driver used to communicate with the object.\",\n enum: [\n \"adlink\",\n \"aws-kinesis\",\n \"bacnet\",\n \"benq\",\n \"butler\",\n \"comelit\",\n \"crestron\",\n \"dell\",\n \"digital-watchdog\",\n \"distech\",\n \"dmp\",\n \"doorbird\",\n \"dormakaba\",\n \"dsc\",\n \"dsc-itv2\",\n \"ecobee\",\n \"epson\",\n \"geovision-rs\",\n \"geovision-as-manager\",\n \"honeywell-vista\",\n \"igor\",\n \"inncom\",\n \"isapi\",\n \"kohost-k7\",\n \"kohost\",\n \"lg\",\n \"lg-webos\",\n \"lapi\",\n \"lirc\",\n \"mews\",\n \"mht\",\n \"newline\",\n \"paxton\",\n \"pelican-wireless\",\n \"power-shades\",\n \"rachio\",\n \"rebrandly\",\n \"relay\",\n \"rtsp\",\n \"salto\",\n \"salto-irn\",\n \"samsung\",\n \"se\",\n \"sendgrid\",\n \"smartboard\",\n \"sonifi\",\n \"stay-n-touch\",\n \"storable\",\n \"twilio\",\n \"unifi\",\n \"valcom\",\n \"veracross\",\n \"vivotek\",\n \"vizio\",\n \"wisenet\",\n \"cloudflare-images\",\n \"cloudflare-stream\",\n \"insperia-privacy\",\n ],\n },\n type: {\n type: \"string\",\n enum: [\n \"alarm\",\n \"dimmer\",\n \"switch\",\n \"motionSensor\",\n \"windowCovering\",\n \"camera\",\n \"mediaSource\",\n \"thermostat\",\n \"lock\",\n \"courtesy\",\n ],\n },\n name: {\n type: \"string\",\n },\n alerts: {\n type: \"array\",\n uniqueItems: true,\n items: {\n type: \"object\",\n additionalProperties: false,\n required: [\"type\", \"status\", \"message\"],\n properties: {\n type: {\n type: \"string\",\n enum: [\n \"Battery\",\n \"Communication\",\n \"Config\",\n \"Door Ajar\",\n \"Equipment\",\n \"Power\",\n \"Temperature\",\n ],\n },\n status: {\n type: \"string\",\n enum: [\"Active\", \"Resolved\"],\n },\n message: {\n type: \"string\",\n },\n },\n },\n },\n supportedNotifications: {\n type: \"array\",\n uniqueItems: true,\n items: {\n enum: [\n \"button 1\",\n \"button 2\",\n \"button 3\",\n \"button 4\",\n \"button 5\",\n \"idle\",\n \"powerHasBeedApplied\",\n \"acMainsDisconnected\",\n \"acMainsReconnected\",\n \"replaceBatterySoon\",\n \"replaceBatteryNow\",\n \"batteryOk\",\n \"hardwareFailure\",\n \"softwareFailure\",\n \"hardwareFailureWithCode\",\n \"softwareFailureWithCode\",\n \"motionDetection\",\n \"airFilterNeedsCleaned\",\n \"airFilterNeedsReplaced\",\n \"smokeDetected\",\n \"outsideSafeTemperatureRange\",\n \"outsideSafeHumidityRange\",\n \"scheduleMaintenance\",\n \"doorAjar\",\n \"communicationFailure\",\n \"communicationOk\",\n \"burglarAlarm\",\n \"fireAlarm\",\n ],\n },\n },\n notification: {\n type: [\"object\", \"null\"],\n properties: {\n name: {\n type: \"string\",\n $ref: \"#/definitions/supportedNotifications/items\",\n },\n timestamp: {\n type: \"number\",\n minimum: 1655907956593,\n },\n description: {\n type: \"string\",\n },\n },\n },\n batteryLevel: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n watts: {\n type: \"number\",\n minimum: 0,\n },\n revenue: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n date: {\n type: \"string\",\n format: \"date-time\",\n },\n price: {\n type: \"number\",\n },\n tax: {\n type: [\"number\", \"null\"],\n },\n },\n },\n },\n },\n} as const;\n\nexport type ISODateString = ReturnType<Date[\"toISOString\"]>;\n\nexport { defs as definitionsSchema };\nexport default defs;\n"],"mappings":"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","names":[]}
@@ -31,6 +31,9 @@ declare const dimmerSchema: {
31
31
  readonly offline: {
32
32
  readonly type: "boolean";
33
33
  };
34
+ readonly alerts: {
35
+ readonly $ref: "definitions.json#/definitions/alerts";
36
+ };
34
37
  readonly level: {
35
38
  readonly type: readonly ["number", "null"];
36
39
  readonly minimum: 0;
@@ -28,6 +28,9 @@ const dimmerSchema = {
28
28
  offline: {
29
29
  type: "boolean"
30
30
  },
31
+ alerts: {
32
+ $ref: "definitions.json#/definitions/alerts"
33
+ },
31
34
  level: {
32
35
  type: ["number", "null"],
33
36
  minimum: 0,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/dimmer.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const dimmerSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"dimmer.json\",\n title: \"Dimmer\",\n description: \"Any smart dimmer\",\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n enum: [\"dimmer\"],\n default: \"dimmer\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n offline: {\n type: \"boolean\",\n },\n level: {\n type: [\"number\", \"null\"],\n minimum: 0,\n maximum: 100,\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n required: [\"id\", \"type\", \"level\", \"driver\"],\n} as const;\n\nexport type DimmerSchema = FromSchema<\n typeof dimmerSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,eAAe;AAAA,EAC1B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,QAAQ;AAAA,MACf,SAAS;AAAA,IACX;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM,CAAC,UAAU,MAAM;AAAA,MACvB,SAAS;AAAA,MACT,SAAS;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,UAAU,CAAC,MAAM,QAAQ,SAAS,QAAQ;AAC5C;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/dimmer.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const dimmerSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"dimmer.json\",\n title: \"Dimmer\",\n description: \"Any smart dimmer\",\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n enum: [\"dimmer\"],\n default: \"dimmer\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n offline: {\n type: \"boolean\",\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\"\n },\n level: {\n type: [\"number\", \"null\"],\n minimum: 0,\n maximum: 100,\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n required: [\"id\", \"type\", \"level\", \"driver\"],\n} as const;\n\nexport type DimmerSchema = FromSchema<\n typeof dimmerSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,eAAe;AAAA,EAC1B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,QAAQ;AAAA,MACf,SAAS;AAAA,IACX;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM,CAAC,UAAU,MAAM;AAAA,MACvB,SAAS;AAAA,MACT,SAAS;AAAA,IACX;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,UAAU,CAAC,MAAM,QAAQ,SAAS,QAAQ;AAC5C;","names":[]}
@@ -21,6 +21,9 @@ declare const gatewaySchema: {
21
21
  readonly type: {
22
22
  readonly $ref: "definitions.json#/definitions/type";
23
23
  };
24
+ readonly alerts: {
25
+ readonly $ref: "definitions.json#/definitions/alerts";
26
+ };
24
27
  readonly supportedNotifications: {
25
28
  readonly $ref: "definitions.json#/definitions/supportedNotifications";
26
29
  };
@@ -18,6 +18,9 @@ const gatewaySchema = {
18
18
  type: {
19
19
  $ref: "definitions.json#/definitions/type"
20
20
  },
21
+ alerts: {
22
+ $ref: "definitions.json#/definitions/alerts"
23
+ },
21
24
  supportedNotifications: {
22
25
  $ref: "definitions.json#/definitions/supportedNotifications"
23
26
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/gateway.ts"],"sourcesContent":["import defs from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const gatewaySchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"iotGateway.json\",\n title: \"Gateway\",\n description:\n \"Any smart gateway that is an entrypoint for controlling devices\",\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n offline: {\n type: \"boolean\",\n },\n type: {\n $ref: \"definitions.json#/definitions/type\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n status: {\n type: \"string\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n required: [\"id\", \"type\", \"status\", \"driver\"],\n} as const;\n\nexport type GatewaySchema = FromSchema<\n typeof gatewaySchema,\n { references: [typeof defs] }\n>;\n"],"mappings":"AAGO,MAAM,gBAAgB;AAAA,EAC3B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aACE;AAAA,EACF,MAAM;AAAA,EACN,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,UAAU,CAAC,MAAM,QAAQ,UAAU,QAAQ;AAC7C;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/gateway.ts"],"sourcesContent":["import defs from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const gatewaySchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"iotGateway.json\",\n title: \"Gateway\",\n description:\n \"Any smart gateway that is an entrypoint for controlling devices\",\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n offline: {\n type: \"boolean\",\n },\n type: {\n $ref: \"definitions.json#/definitions/type\",\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\"\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n status: {\n type: \"string\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n required: [\"id\", \"type\", \"status\", \"driver\"],\n} as const;\n\nexport type GatewaySchema = FromSchema<\n typeof gatewaySchema,\n { references: [typeof defs] }\n>;\n"],"mappings":"AAGO,MAAM,gBAAgB;AAAA,EAC3B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aACE;AAAA,EACF,MAAM;AAAA,EACN,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,UAAU,CAAC,MAAM,QAAQ,UAAU,QAAQ;AAC7C;","names":[]}
@@ -32,6 +32,9 @@ declare const lockSchema: {
32
32
  readonly driver: {
33
33
  readonly $ref: "definitions.json#/definitions/driver";
34
34
  };
35
+ readonly alerts: {
36
+ readonly $ref: "definitions.json#/definitions/alerts";
37
+ };
35
38
  readonly state: {
36
39
  readonly type: readonly ["string", "null"];
37
40
  readonly enum: readonly ["locked", "unlocked", null];
@@ -29,6 +29,9 @@ const lockSchema = {
29
29
  driver: {
30
30
  $ref: "definitions.json#/definitions/driver"
31
31
  },
32
+ alerts: {
33
+ $ref: "definitions.json#/definitions/alerts"
34
+ },
32
35
  state: {
33
36
  type: ["string", "null"],
34
37
  enum: ["locked", "unlocked", null]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/lock.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const lockSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"lock.json\",\n title: \"Lock\",\n description: \"Any smart lock\",\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n enum: [\"lock\"],\n default: \"lock\",\n },\n offline: {\n type: \"boolean\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n state: {\n type: [\"string\", \"null\"],\n enum: [\"locked\", \"unlocked\", null],\n },\n mode: {\n type: [\"string\", \"null\"],\n enum: [\n \"normal\",\n \"autoLock\",\n \"emergencyOpen\",\n \"emergencyClose\",\n \"holdOpen\",\n \"lockdown\",\n null,\n ],\n description:\n \"emergencyOpen and emergencyClose are deprecated and can be removed once Salto, Paxton and Geovision drivers are updated\",\n default: null,\n },\n supportedModes: {\n type: \"array\",\n uniqueItems: true,\n items: {\n enum: [\n \"normal\",\n \"autoLock\",\n \"emergencyOpen\",\n \"emergencyClose\",\n \"holdOpen\",\n \"lockdown\",\n null,\n ],\n },\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n required: [\"id\", \"type\", \"state\", \"driver\"],\n} as const;\n\nexport type LockSchema = FromSchema<\n typeof lockSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,aAAa;AAAA,EACxB,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,MAAM;AAAA,MACb,SAAS;AAAA,IACX;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM,CAAC,UAAU,MAAM;AAAA,MACvB,MAAM,CAAC,UAAU,YAAY,IAAI;AAAA,IACnC;AAAA,IACA,MAAM;AAAA,MACJ,MAAM,CAAC,UAAU,MAAM;AAAA,MACvB,MAAM;AAAA,QACJ;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,aACE;AAAA,MACF,SAAS;AAAA,IACX;AAAA,IACA,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,aAAa;AAAA,MACb,OAAO;AAAA,QACL,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,UAAU,CAAC,MAAM,QAAQ,SAAS,QAAQ;AAC5C;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/lock.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const lockSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"lock.json\",\n title: \"Lock\",\n description: \"Any smart lock\",\n type: \"object\",\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n enum: [\"lock\"],\n default: \"lock\",\n },\n offline: {\n type: \"boolean\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\"\n },\n state: {\n type: [\"string\", \"null\"],\n enum: [\"locked\", \"unlocked\", null],\n },\n mode: {\n type: [\"string\", \"null\"],\n enum: [\n \"normal\",\n \"autoLock\",\n \"emergencyOpen\",\n \"emergencyClose\",\n \"holdOpen\",\n \"lockdown\",\n null,\n ],\n description:\n \"emergencyOpen and emergencyClose are deprecated and can be removed once Salto, Paxton and Geovision drivers are updated\",\n default: null,\n },\n supportedModes: {\n type: \"array\",\n uniqueItems: true,\n items: {\n enum: [\n \"normal\",\n \"autoLock\",\n \"emergencyOpen\",\n \"emergencyClose\",\n \"holdOpen\",\n \"lockdown\",\n null,\n ],\n },\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n required: [\"id\", \"type\", \"state\", \"driver\"],\n} as const;\n\nexport type LockSchema = FromSchema<\n typeof lockSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,aAAa;AAAA,EACxB,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,MAAM;AAAA,MACb,SAAS;AAAA,IACX;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM,CAAC,UAAU,MAAM;AAAA,MACvB,MAAM,CAAC,UAAU,YAAY,IAAI;AAAA,IACnC;AAAA,IACA,MAAM;AAAA,MACJ,MAAM,CAAC,UAAU,MAAM;AAAA,MACvB,MAAM;AAAA,QACJ;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,MACA,aACE;AAAA,MACF,SAAS;AAAA,IACX;AAAA,IACA,gBAAgB;AAAA,MACd,MAAM;AAAA,MACN,aAAa;AAAA,MACb,OAAO;AAAA,QACL,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,UAAU,CAAC,MAAM,QAAQ,SAAS,QAAQ;AAC5C;","names":[]}
@@ -21,6 +21,9 @@ declare const mediaSourceSchema: {
21
21
  readonly type: "string";
22
22
  readonly enum: readonly ["tv", "dvr", "appleTv", "discPlayer", "mediaPlayer", "paSystem", "uncontrolledDevice"];
23
23
  };
24
+ readonly alerts: {
25
+ readonly $ref: "definitions.json#/definitions/alerts";
26
+ };
24
27
  readonly playlists: {
25
28
  readonly type: "array";
26
29
  readonly items: {
@@ -26,6 +26,9 @@ const mediaSourceSchema = {
26
26
  "uncontrolledDevice"
27
27
  ]
28
28
  },
29
+ alerts: {
30
+ $ref: "definitions.json#/definitions/alerts"
31
+ },
29
32
  playlists: {
30
33
  type: "array",
31
34
  items: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/mediaSource.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const mediaSourceSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"mediaSource.json\",\n title: \"Media Source\",\n description: \"Any media source\",\n type: \"object\",\n required: [\"id\", \"type\", \"discriminator\", \"audio\", \"video\", \"driver\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"mediaSource\",\n enum: [\"mediaSource\"],\n },\n discriminator: {\n type: \"string\",\n enum: [\n \"tv\",\n \"dvr\",\n \"appleTv\",\n \"discPlayer\",\n \"mediaPlayer\",\n \"paSystem\",\n \"uncontrolledDevice\",\n ],\n },\n playlists: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n $ref: \"definitions.json#/definitions/name\",\n },\n },\n },\n },\n remote: {\n type: \"string\",\n enum: [\n \"MR22GA\",\n \"XRT260\",\n \"XRT270\",\n \"HOF-16K 1.2\",\n \"219863500\",\n \"SONIFI\",\n \"AKB76039803\",\n \"BN59-01388A\",\n \"TRY01\",\n \"1035792\",\n ],\n },\n name: {\n $ref: \"definitions.json#/definitions/name\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n offline: {\n type: \"boolean\",\n },\n audio: {\n type: \"boolean\",\n },\n video: {\n type: \"boolean\",\n },\n powerFeedback: {\n type: \"boolean\",\n },\n volumeFeedback: {\n type: \"boolean\",\n },\n muted: {\n type: \"boolean\",\n },\n volume: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n brightness: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n contrast: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n power: {\n type: \"string\",\n enum: [\"on\", \"off\"],\n },\n input: {\n type: \"string\",\n },\n supportedInputs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n output: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n supportedOutputs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n content: {\n type: [\"object\", \"null\"],\n additionalProperties: false,\n properties: {\n playlistId: {\n type: \"string\",\n },\n title: {\n type: \"string\",\n },\n message: {\n type: \"string\",\n },\n url: {\n type: \"string\",\n },\n },\n },\n command: {\n type: [\"string\", \"null\"],\n enum: [\n \"content\",\n \"output\",\n \"mute\",\n \"muted\",\n \"volumeUp\",\n \"volume\",\n \"volumeDown\",\n \"enterBrightness\",\n \"brightness\",\n \"brightnessUp\",\n \"brightnessDown\",\n \"channelUp\",\n \"channelDown\",\n \"number0\",\n \"number1\",\n \"number2\",\n \"number3\",\n \"number4\",\n \"number5\",\n \"number6\",\n \"number7\",\n \"number8\",\n \"number9\",\n \"lastChannel\",\n \"display\",\n \"favoriteChannel\",\n \"play\",\n \"playing\",\n \"stop\",\n \"stopped\",\n \"pause\",\n \"paused\",\n \"fastForward\",\n \"fastForwarding\",\n \"rewind\",\n \"rewinding\",\n \"instantReplay\",\n \"record\",\n \"ac3\",\n \"pvrMenu\",\n \"guide\",\n \"menu\",\n \"menuUp\",\n \"menuDown\",\n \"menuLeft\",\n \"menuRight\",\n \"pageUp\",\n \"pageDown\",\n \"select\",\n \"exit\",\n \"input\",\n \"power\",\n \"enterChannel\",\n \"enterVolume\",\n \"enterContrast\",\n \"number10\",\n \"number11\",\n \"number12\",\n \"number13\",\n \"number14\",\n \"number15\",\n \"number16\",\n \"number10Plus\",\n \"number20Plus\",\n \"number100\",\n \"dash\",\n \"threeChan\",\n \"threeD\",\n \"sixChan\",\n \"a\",\n \"add\",\n \"alarm\",\n \"am\",\n \"analog\",\n \"angle\",\n \"antenna\",\n \"antennaEast\",\n \"antennaWest\",\n \"aspect\",\n \"audio1\",\n \"audio2\",\n \"audio3\",\n \"audioDumming\",\n \"audioLevelDown\",\n \"audioLevelUp\",\n \"b\",\n \"back\",\n \"c\",\n \"component1\",\n \"component2\",\n \"component3\",\n \"d\",\n \"home\",\n \"list\",\n \"liveTv\",\n \"discreteInputCable\",\n \"powerOff\",\n \"powerOn\",\n \"setupMenu\",\n \"skipForward\",\n \"skipReverse\",\n \"video1\",\n \"video2\",\n \"video3\",\n \"video4\",\n \"video5\",\n \"details\",\n \"hdmi1\",\n \"hdmi2\",\n \"hdmi3\",\n \"cecDeviceList\",\n \"mtsSap\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"alert\",\n \"order\",\n ],\n },\n supportedCommands: {\n type: \"array\",\n items: {\n $ref: \"#/properties/command\",\n },\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n additionalProperties: false,\n} as const;\n\nexport type MediaSourceSchema = FromSchema<\n typeof mediaSourceSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/mediaSource.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const mediaSourceSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"mediaSource.json\",\n title: \"Media Source\",\n description: \"Any media source\",\n type: \"object\",\n required: [\"id\", \"type\", \"discriminator\", \"audio\", \"video\", \"driver\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n type: {\n type: \"string\",\n default: \"mediaSource\",\n enum: [\"mediaSource\"],\n },\n discriminator: {\n type: \"string\",\n enum: [\n \"tv\",\n \"dvr\",\n \"appleTv\",\n \"discPlayer\",\n \"mediaPlayer\",\n \"paSystem\",\n \"uncontrolledDevice\",\n ],\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\"\n },\n playlists: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n $ref: \"definitions.json#/definitions/name\",\n },\n },\n },\n },\n remote: {\n type: \"string\",\n enum: [\n \"MR22GA\",\n \"XRT260\",\n \"XRT270\",\n \"HOF-16K 1.2\",\n \"219863500\",\n \"SONIFI\",\n \"AKB76039803\",\n \"BN59-01388A\",\n \"TRY01\",\n \"1035792\",\n ],\n },\n name: {\n $ref: \"definitions.json#/definitions/name\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n offline: {\n type: \"boolean\",\n },\n audio: {\n type: \"boolean\",\n },\n video: {\n type: \"boolean\",\n },\n powerFeedback: {\n type: \"boolean\",\n },\n volumeFeedback: {\n type: \"boolean\",\n },\n muted: {\n type: \"boolean\",\n },\n volume: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n brightness: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n contrast: {\n type: \"number\",\n minimum: 0,\n maximum: 100,\n },\n power: {\n type: \"string\",\n enum: [\"on\", \"off\"],\n },\n input: {\n type: \"string\",\n },\n supportedInputs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n output: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n supportedOutputs: {\n type: \"array\",\n items: {\n type: \"string\",\n },\n },\n content: {\n type: [\"object\", \"null\"],\n additionalProperties: false,\n properties: {\n playlistId: {\n type: \"string\",\n },\n title: {\n type: \"string\",\n },\n message: {\n type: \"string\",\n },\n url: {\n type: \"string\",\n },\n },\n },\n command: {\n type: [\"string\", \"null\"],\n enum: [\n \"content\",\n \"output\",\n \"mute\",\n \"muted\",\n \"volumeUp\",\n \"volume\",\n \"volumeDown\",\n \"enterBrightness\",\n \"brightness\",\n \"brightnessUp\",\n \"brightnessDown\",\n \"channelUp\",\n \"channelDown\",\n \"number0\",\n \"number1\",\n \"number2\",\n \"number3\",\n \"number4\",\n \"number5\",\n \"number6\",\n \"number7\",\n \"number8\",\n \"number9\",\n \"lastChannel\",\n \"display\",\n \"favoriteChannel\",\n \"play\",\n \"playing\",\n \"stop\",\n \"stopped\",\n \"pause\",\n \"paused\",\n \"fastForward\",\n \"fastForwarding\",\n \"rewind\",\n \"rewinding\",\n \"instantReplay\",\n \"record\",\n \"ac3\",\n \"pvrMenu\",\n \"guide\",\n \"menu\",\n \"menuUp\",\n \"menuDown\",\n \"menuLeft\",\n \"menuRight\",\n \"pageUp\",\n \"pageDown\",\n \"select\",\n \"exit\",\n \"input\",\n \"power\",\n \"enterChannel\",\n \"enterVolume\",\n \"enterContrast\",\n \"number10\",\n \"number11\",\n \"number12\",\n \"number13\",\n \"number14\",\n \"number15\",\n \"number16\",\n \"number10Plus\",\n \"number20Plus\",\n \"number100\",\n \"dash\",\n \"threeChan\",\n \"threeD\",\n \"sixChan\",\n \"a\",\n \"add\",\n \"alarm\",\n \"am\",\n \"analog\",\n \"angle\",\n \"antenna\",\n \"antennaEast\",\n \"antennaWest\",\n \"aspect\",\n \"audio1\",\n \"audio2\",\n \"audio3\",\n \"audioDumming\",\n \"audioLevelDown\",\n \"audioLevelUp\",\n \"b\",\n \"back\",\n \"c\",\n \"component1\",\n \"component2\",\n \"component3\",\n \"d\",\n \"home\",\n \"list\",\n \"liveTv\",\n \"discreteInputCable\",\n \"powerOff\",\n \"powerOn\",\n \"setupMenu\",\n \"skipForward\",\n \"skipReverse\",\n \"video1\",\n \"video2\",\n \"video3\",\n \"video4\",\n \"video5\",\n \"details\",\n \"hdmi1\",\n \"hdmi2\",\n \"hdmi3\",\n \"cecDeviceList\",\n \"mtsSap\",\n \"red\",\n \"green\",\n \"yellow\",\n \"blue\",\n \"alert\",\n \"order\",\n ],\n },\n supportedCommands: {\n type: \"array\",\n items: {\n $ref: \"#/properties/command\",\n },\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n additionalProperties: false,\n} as const;\n\nexport type MediaSourceSchema = FromSchema<\n typeof mediaSourceSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
@@ -27,6 +27,9 @@ declare const motionSensorSchema: {
27
27
  readonly driver: {
28
28
  readonly $ref: "definitions.json#/definitions/driver";
29
29
  };
30
+ readonly alerts: {
31
+ readonly $ref: "definitions.json#/definitions/alerts";
32
+ };
30
33
  readonly systemId: {
31
34
  readonly $ref: "definitions.json#/definitions/systemId";
32
35
  };
@@ -24,6 +24,9 @@ const motionSensorSchema = {
24
24
  driver: {
25
25
  $ref: "definitions.json#/definitions/driver"
26
26
  },
27
+ alerts: {
28
+ $ref: "definitions.json#/definitions/alerts"
29
+ },
27
30
  systemId: {
28
31
  $ref: "definitions.json#/definitions/systemId"
29
32
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/motionSensor.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const motionSensorSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"motionSensor.json\",\n title: \"Motion Sensor\",\n description: \"Any smart motion sensor\",\n type: \"object\",\n required: [\"id\", \"type\", \"driver\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n default: \"motionSensor\",\n enum: [\"motionSensor\"],\n },\n offline: {\n type: \"boolean\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n occupied: {\n type: \"boolean\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n} as const;\n\nexport type MotionSensorSchema = FromSchema<\n typeof motionSensorSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,qBAAqB;AAAA,EAChC,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,QAAQ;AAAA,EACjC,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,MAAM,CAAC,cAAc;AAAA,IACvB;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/motionSensor.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const motionSensorSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"motionSensor.json\",\n title: \"Motion Sensor\",\n description: \"Any smart motion sensor\",\n type: \"object\",\n required: [\"id\", \"type\", \"driver\"],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n default: \"motionSensor\",\n enum: [\"motionSensor\"],\n },\n offline: {\n type: \"boolean\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\"\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n occupied: {\n type: \"boolean\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n },\n} as const;\n\nexport type MotionSensorSchema = FromSchema<\n typeof motionSensorSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,qBAAqB;AAAA,EAChC,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,QAAQ;AAAA,EACjC,sBAAsB;AAAA,EACtB,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,MACT,MAAM,CAAC,cAAc;AAAA,IACvB;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,EACF;AACF;","names":[]}
@@ -24,6 +24,9 @@ declare const switchSchema: {
24
24
  readonly type: "string";
25
25
  readonly enum: readonly ["light", "fan", "irrigation"];
26
26
  };
27
+ readonly alerts: {
28
+ readonly $ref: "definitions.json#/definitions/alerts";
29
+ };
27
30
  readonly supportedNotifications: {
28
31
  readonly $ref: "definitions.json#/definitions/supportedNotifications";
29
32
  };
@@ -21,6 +21,9 @@ const switchSchema = {
21
21
  type: "string",
22
22
  enum: ["light", "fan", "irrigation"]
23
23
  },
24
+ alerts: {
25
+ $ref: "definitions.json#/definitions/alerts"
26
+ },
24
27
  supportedNotifications: {
25
28
  $ref: "definitions.json#/definitions/supportedNotifications"
26
29
  },
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/switch.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const switchSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"switch.json\",\n title: \"Switch\",\n description: \"Any smart switch\",\n type: \"object\",\n required: [\"id\", \"type\", \"state\", \"driver\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n enum: [\"switch\"],\n default: \"switch\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"light\", \"fan\", \"irrigation\"],\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n offline: {\n type: \"boolean\",\n },\n state: {\n type: \"string\",\n enum: [\"on\", \"off\"],\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n restoresAt: {\n type: \"string\",\n format: \"date-time\",\n },\n },\n} as const;\n\nexport type SwitchSchema = FromSchema<\n typeof switchSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,eAAe;AAAA,EAC1B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,SAAS,QAAQ;AAAA,EAC1C,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,QAAQ;AAAA,MACf,SAAS;AAAA,IACX;AAAA,IACA,eAAe;AAAA,MACb,MAAM;AAAA,MACN,MAAM,CAAC,SAAS,OAAO,YAAY;AAAA,IACrC;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,MAAM,CAAC,MAAM,KAAK;AAAA,IACpB;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,MACN,QAAQ;AAAA,IACV;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/switch.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const switchSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"switch.json\",\n title: \"Switch\",\n description: \"Any smart switch\",\n type: \"object\",\n required: [\"id\", \"type\", \"state\", \"driver\"],\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n type: \"string\",\n },\n type: {\n type: \"string\",\n enum: [\"switch\"],\n default: \"switch\",\n },\n discriminator: {\n type: \"string\",\n enum: [\"light\", \"fan\", \"irrigation\"],\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\"\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n offline: {\n type: \"boolean\",\n },\n state: {\n type: \"string\",\n enum: [\"on\", \"off\"],\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n restoresAt: {\n type: \"string\",\n format: \"date-time\",\n },\n },\n} as const;\n\nexport type SwitchSchema = FromSchema<\n typeof switchSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"AAGO,MAAM,eAAe;AAAA,EAC1B,SAAS;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aAAa;AAAA,EACb,MAAM;AAAA,EACN,UAAU,CAAC,MAAM,QAAQ,SAAS,QAAQ;AAAA,EAC1C,YAAY;AAAA,IACV,IAAI;AAAA,MACF,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,MAAM,CAAC,QAAQ;AAAA,MACf,SAAS;AAAA,IACX;AAAA,IACA,eAAe;AAAA,MACb,MAAM;AAAA,MACN,MAAM,CAAC,SAAS,OAAO,YAAY;AAAA,IACrC;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,wBAAwB;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,QAAQ;AAAA,MACN,MAAM;AAAA,IACR;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,MAAM,CAAC,MAAM,KAAK;AAAA,IACpB;AAAA,IACA,UAAU;AAAA,MACR,MAAM;AAAA,IACR;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,IACR;AAAA,IACA,MAAM;AAAA,MACJ,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,aAAa;AAAA,MACX,MAAM;AAAA,IACR;AAAA,IACA,cAAc;AAAA,MACZ,MAAM;AAAA,IACR;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,IACR;AAAA,IACA,YAAY;AAAA,MACV,MAAM;AAAA,MACN,QAAQ;AAAA,IACV;AAAA,EACF;AACF;","names":[]}
@@ -24,6 +24,9 @@ declare const thermostatSchema: {
24
24
  readonly driver: {
25
25
  readonly $ref: "definitions.json#/definitions/driver";
26
26
  };
27
+ readonly alerts: {
28
+ readonly $ref: "definitions.json#/definitions/alerts";
29
+ };
27
30
  readonly offline: {
28
31
  readonly type: "boolean";
29
32
  };
@@ -56,19 +59,6 @@ declare const thermostatSchema: {
56
59
  readonly type: readonly ["number", "null"];
57
60
  readonly description: "Minimum safe humidity";
58
61
  };
59
- readonly equipment: {
60
- readonly type: "object";
61
- readonly properties: {
62
- readonly status: {
63
- readonly type: "string";
64
- readonly enum: readonly ["Ok", "Trouble"];
65
- };
66
- readonly message: {
67
- readonly type: "string";
68
- };
69
- };
70
- readonly required: readonly ["status"];
71
- };
72
62
  readonly hvacMode: {
73
63
  readonly type: "string";
74
64
  readonly enum: readonly ["cool", "heat", "auto", "off"];
@@ -33,6 +33,9 @@ const thermostatSchema = {
33
33
  driver: {
34
34
  $ref: "definitions.json#/definitions/driver"
35
35
  },
36
+ alerts: {
37
+ $ref: "definitions.json#/definitions/alerts"
38
+ },
36
39
  offline: {
37
40
  type: "boolean"
38
41
  },
@@ -65,19 +68,6 @@ const thermostatSchema = {
65
68
  type: ["number", "null"],
66
69
  description: "Minimum safe humidity"
67
70
  },
68
- equipment: {
69
- type: "object",
70
- properties: {
71
- status: {
72
- type: "string",
73
- enum: ["Ok", "Trouble"]
74
- },
75
- message: {
76
- type: "string"
77
- }
78
- },
79
- required: ["status"]
80
- },
81
71
  hvacMode: {
82
72
  type: "string",
83
73
  enum: ["cool", "heat", "auto", "off"]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../.generated/schemas/thermostat.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const thermostatSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"thermostat.json\",\n title: \"Thermostat\",\n description: \"Any smart thermostat\",\n type: \"object\",\n required: [\n \"id\",\n \"type\",\n \"hvacMode\",\n \"fanMode\",\n \"hvacState\",\n \"fanState\",\n \"setpoints\",\n \"temperatureScale\",\n \"supportedHvacModes\",\n \"supportedFanModes\",\n \"driver\",\n ],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n $ref: \"definitions.json#/definitions/name\",\n },\n type: {\n type: \"string\",\n enum: [\"thermostat\"],\n default: \"thermostat\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n offline: {\n type: \"boolean\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n currentTemperature: {\n type: \"number\",\n },\n maxSafeCurrentTemp: {\n type: [\"number\", \"null\"],\n description: \"Maximum safe temperature\",\n },\n minSafeCurrentTemp: {\n type: [\"number\", \"null\"],\n description: \"Minimum safe temperature\",\n },\n currentHumidity: {\n type: \"number\",\n minimum: 0,\n },\n maxSafeCurrentHumidity: {\n type: [\"number\", \"null\"],\n description: \"Maximum safe humidity\",\n },\n minSafeCurrentHumidity: {\n type: [\"number\", \"null\"],\n description: \"Minimum safe humidity\",\n },\n equipment: {\n type: \"object\",\n properties: {\n status: {\n type: \"string\",\n enum: [\"Ok\", \"Trouble\"],\n },\n message: {\n type: \"string\",\n },\n },\n required: [\"status\"],\n },\n hvacMode: {\n type: \"string\",\n enum: [\"cool\", \"heat\", \"auto\", \"off\"],\n },\n hvacState: {\n type: [\"string\", \"null\"],\n enum: [\"cooling\", \"heating\", \"off\", null],\n },\n fanMode: {\n type: \"string\",\n enum: [\"auto\", \"low\", \"medium\", \"high\", \"off\", \"on\"],\n },\n fanState: {\n type: [\"string\", \"null\"],\n enum: [\"off\", \"low\", \"medium\", \"high\", \"on\", null],\n },\n temperatureScale: {\n type: \"string\",\n enum: [\"celsius\", \"fahrenheit\"],\n default: \"fahrenheit\",\n },\n humidityScale: {\n type: [\"string\", \"null\"],\n enum: [\"absolute\", \"relative\", null],\n },\n supportedHvacModes: {\n type: \"array\",\n uniqueItems: true,\n minItems: 2,\n items: {\n type: \"string\",\n enum: [\"cool\", \"heat\", \"auto\", \"off\"],\n },\n },\n supportedFanModes: {\n type: \"array\",\n uniqueItems: true,\n items: {\n type: \"string\",\n enum: [\"auto\", \"low\", \"medium\", \"high\", \"off\", \"on\"],\n },\n },\n setpoints: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n cool: {\n $ref: \"#/definitions/setpoint\",\n },\n heat: {\n $ref: \"#/definitions/setpoint\",\n },\n auto: {\n $ref: \"#/definitions/setpoint\",\n },\n },\n },\n minAutoDelta: {\n type: \"number\",\n default: 3,\n },\n cycleRate: {\n type: \"number\",\n },\n co2: {\n type: \"number\",\n description: \"Parts per million (ppm)\",\n },\n voc: {\n type: \"number\",\n description: \"Parts per billion (ppb)\",\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n uiEnabled: {\n type: \"boolean\",\n description: \"Local thermostat controls active or not\",\n default: true,\n },\n },\n definitions: {\n setpoint: {\n type: \"object\",\n additionalProperties: false,\n required: [\"value\", \"min\", \"max\"],\n properties: {\n value: {\n type: \"number\",\n minimum: 0,\n maximum: 99,\n },\n min: {\n type: [\"number\", \"null\"],\n minimum: 0,\n maximum: 99,\n },\n max: {\n type: [\"number\", \"null\"],\n minimum: 0,\n maximum: 99,\n },\n },\n },\n },\n} as const;\n\nexport type ThermostatSchema = FromSchema<\n typeof thermostatSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../.generated/schemas/thermostat.ts"],"sourcesContent":["import defs, { ISODateString } from \"./definitions\";\nimport type { FromSchema } from \"json-schema-to-ts\";\n\nexport const thermostatSchema = {\n $schema: \"http://json-schema.org/draft-07/schema\",\n $id: \"thermostat.json\",\n title: \"Thermostat\",\n description: \"Any smart thermostat\",\n type: \"object\",\n required: [\n \"id\",\n \"type\",\n \"hvacMode\",\n \"fanMode\",\n \"hvacState\",\n \"fanState\",\n \"setpoints\",\n \"temperatureScale\",\n \"supportedHvacModes\",\n \"supportedFanModes\",\n \"driver\",\n ],\n additionalProperties: false,\n properties: {\n id: {\n $ref: \"definitions.json#/definitions/id\",\n },\n name: {\n $ref: \"definitions.json#/definitions/name\",\n },\n type: {\n type: \"string\",\n enum: [\"thermostat\"],\n default: \"thermostat\",\n },\n driver: {\n $ref: \"definitions.json#/definitions/driver\",\n },\n alerts: {\n $ref: \"definitions.json#/definitions/alerts\"\n },\n offline: {\n type: \"boolean\",\n },\n supportedNotifications: {\n $ref: \"definitions.json#/definitions/supportedNotifications\",\n },\n notification: {\n $ref: \"definitions.json#/definitions/notification\",\n },\n currentTemperature: {\n type: \"number\",\n },\n maxSafeCurrentTemp: {\n type: [\"number\", \"null\"],\n description: \"Maximum safe temperature\",\n },\n minSafeCurrentTemp: {\n type: [\"number\", \"null\"],\n description: \"Minimum safe temperature\",\n },\n currentHumidity: {\n type: \"number\",\n minimum: 0,\n },\n maxSafeCurrentHumidity: {\n type: [\"number\", \"null\"],\n description: \"Maximum safe humidity\",\n },\n minSafeCurrentHumidity: {\n type: [\"number\", \"null\"],\n description: \"Minimum safe humidity\",\n },\n hvacMode: {\n type: \"string\",\n enum: [\"cool\", \"heat\", \"auto\", \"off\"],\n },\n hvacState: {\n type: [\"string\", \"null\"],\n enum: [\"cooling\", \"heating\", \"off\", null],\n },\n fanMode: {\n type: \"string\",\n enum: [\"auto\", \"low\", \"medium\", \"high\", \"off\", \"on\"],\n },\n fanState: {\n type: [\"string\", \"null\"],\n enum: [\"off\", \"low\", \"medium\", \"high\", \"on\", null],\n },\n temperatureScale: {\n type: \"string\",\n enum: [\"celsius\", \"fahrenheit\"],\n default: \"fahrenheit\",\n },\n humidityScale: {\n type: [\"string\", \"null\"],\n enum: [\"absolute\", \"relative\", null],\n },\n supportedHvacModes: {\n type: \"array\",\n uniqueItems: true,\n minItems: 2,\n items: {\n type: \"string\",\n enum: [\"cool\", \"heat\", \"auto\", \"off\"],\n },\n },\n supportedFanModes: {\n type: \"array\",\n uniqueItems: true,\n items: {\n type: \"string\",\n enum: [\"auto\", \"low\", \"medium\", \"high\", \"off\", \"on\"],\n },\n },\n setpoints: {\n type: \"object\",\n additionalProperties: false,\n properties: {\n cool: {\n $ref: \"#/definitions/setpoint\",\n },\n heat: {\n $ref: \"#/definitions/setpoint\",\n },\n auto: {\n $ref: \"#/definitions/setpoint\",\n },\n },\n },\n minAutoDelta: {\n type: \"number\",\n default: 3,\n },\n cycleRate: {\n type: \"number\",\n },\n co2: {\n type: \"number\",\n description: \"Parts per million (ppm)\",\n },\n voc: {\n type: \"number\",\n description: \"Parts per billion (ppb)\",\n },\n batteryLevel: {\n $ref: \"definitions.json#/definitions/batteryLevel\",\n },\n systemId: {\n $ref: \"definitions.json#/definitions/systemId\",\n },\n watts: {\n $ref: \"definitions.json#/definitions/watts\",\n },\n icon: {\n type: \"string\",\n },\n manufacturer: {\n type: \"string\",\n },\n modelNumber: {\n type: \"string\",\n },\n serialNumber: {\n type: \"string\",\n },\n firmwareVersion: {\n type: \"string\",\n },\n uiEnabled: {\n type: \"boolean\",\n description: \"Local thermostat controls active or not\",\n default: true,\n },\n },\n definitions: {\n setpoint: {\n type: \"object\",\n additionalProperties: false,\n required: [\"value\", \"min\", \"max\"],\n properties: {\n value: {\n type: \"number\",\n minimum: 0,\n maximum: 99,\n },\n min: {\n type: [\"number\", \"null\"],\n minimum: 0,\n maximum: 99,\n },\n max: {\n type: [\"number\", \"null\"],\n minimum: 0,\n maximum: 99,\n },\n },\n },\n },\n} as const;\n\nexport type ThermostatSchema = FromSchema<\n typeof thermostatSchema,\n {\n references: [typeof defs];\n deserialize: [\n {\n pattern: {\n format: \"date-time\";\n };\n output: Date | ISODateString;\n },\n ];\n }\n>;\n"],"mappings":"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","names":[]}