@switchbot/homebridge-switchbot 0.1.2-beta.7 → 0.2.0-alpha.1

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 (106) hide show
  1. package/.github/ISSUE_TEMPLATE/feature-request.yml +1 -1
  2. package/.github/dependabot.yml +2 -0
  3. package/.github/workflows/codeql-analysis.yml +71 -0
  4. package/CHANGELOG.md +5 -1
  5. package/README.md +2 -1
  6. package/config.schema.json +420 -471
  7. package/dist/devices/bots.d.ts +19 -5
  8. package/dist/devices/bots.d.ts.map +1 -1
  9. package/dist/devices/bots.js +172 -148
  10. package/dist/devices/bots.js.map +1 -1
  11. package/dist/devices/bulb.d.ts +8 -6
  12. package/dist/devices/bulb.d.ts.map +1 -1
  13. package/dist/devices/bulb.js +45 -28
  14. package/dist/devices/bulb.js.map +1 -1
  15. package/dist/devices/contact.d.ts +10 -5
  16. package/dist/devices/contact.d.ts.map +1 -1
  17. package/dist/devices/contact.js +94 -63
  18. package/dist/devices/contact.js.map +1 -1
  19. package/dist/devices/curtains.d.ts +14 -5
  20. package/dist/devices/curtains.d.ts.map +1 -1
  21. package/dist/devices/curtains.js +174 -120
  22. package/dist/devices/curtains.js.map +1 -1
  23. package/dist/devices/humidifiers.d.ts +6 -6
  24. package/dist/devices/humidifiers.d.ts.map +1 -1
  25. package/dist/devices/humidifiers.js +78 -94
  26. package/dist/devices/humidifiers.js.map +1 -1
  27. package/dist/devices/indoorcam.d.ts +43 -0
  28. package/dist/devices/indoorcam.d.ts.map +1 -0
  29. package/dist/devices/indoorcam.js +241 -0
  30. package/dist/devices/indoorcam.js.map +1 -0
  31. package/dist/devices/meters.d.ts +8 -5
  32. package/dist/devices/meters.d.ts.map +1 -1
  33. package/dist/devices/meters.js +126 -92
  34. package/dist/devices/meters.js.map +1 -1
  35. package/dist/devices/motion.d.ts +9 -5
  36. package/dist/devices/motion.d.ts.map +1 -1
  37. package/dist/devices/motion.js +74 -59
  38. package/dist/devices/motion.js.map +1 -1
  39. package/dist/devices/plugs.d.ts +5 -4
  40. package/dist/devices/plugs.d.ts.map +1 -1
  41. package/dist/devices/plugs.js +65 -56
  42. package/dist/devices/plugs.js.map +1 -1
  43. package/dist/irdevices/airconditioners.d.ts +3 -3
  44. package/dist/irdevices/airconditioners.d.ts.map +1 -1
  45. package/dist/irdevices/airconditioners.js +12 -7
  46. package/dist/irdevices/airconditioners.js.map +1 -1
  47. package/dist/irdevices/airpurifiers.d.ts +3 -3
  48. package/dist/irdevices/airpurifiers.d.ts.map +1 -1
  49. package/dist/irdevices/airpurifiers.js +1 -1
  50. package/dist/irdevices/airpurifiers.js.map +1 -1
  51. package/dist/irdevices/cameras.d.ts +3 -3
  52. package/dist/irdevices/cameras.d.ts.map +1 -1
  53. package/dist/irdevices/cameras.js +1 -1
  54. package/dist/irdevices/cameras.js.map +1 -1
  55. package/dist/irdevices/fans.d.ts +3 -3
  56. package/dist/irdevices/fans.d.ts.map +1 -1
  57. package/dist/irdevices/fans.js +11 -12
  58. package/dist/irdevices/fans.js.map +1 -1
  59. package/dist/irdevices/lights.d.ts +3 -3
  60. package/dist/irdevices/lights.d.ts.map +1 -1
  61. package/dist/irdevices/lights.js +1 -1
  62. package/dist/irdevices/lights.js.map +1 -1
  63. package/dist/irdevices/others.d.ts +3 -3
  64. package/dist/irdevices/others.d.ts.map +1 -1
  65. package/dist/irdevices/others.js +8 -8
  66. package/dist/irdevices/others.js.map +1 -1
  67. package/dist/irdevices/tvs.d.ts +3 -3
  68. package/dist/irdevices/tvs.d.ts.map +1 -1
  69. package/dist/irdevices/tvs.js +16 -6
  70. package/dist/irdevices/tvs.js.map +1 -1
  71. package/dist/irdevices/vacuumcleaners.d.ts +3 -3
  72. package/dist/irdevices/vacuumcleaners.d.ts.map +1 -1
  73. package/dist/irdevices/vacuumcleaners.js +2 -3
  74. package/dist/irdevices/vacuumcleaners.js.map +1 -1
  75. package/dist/irdevices/waterheaters.d.ts +3 -3
  76. package/dist/irdevices/waterheaters.d.ts.map +1 -1
  77. package/dist/irdevices/waterheaters.js +2 -2
  78. package/dist/irdevices/waterheaters.js.map +1 -1
  79. package/dist/platform.d.ts +14 -5
  80. package/dist/platform.d.ts.map +1 -1
  81. package/dist/platform.js +420 -418
  82. package/dist/platform.js.map +1 -1
  83. package/dist/settings.d.ts +18 -15
  84. package/dist/settings.d.ts.map +1 -1
  85. package/package.json +65 -65
  86. package/src/devices/bots.ts +188 -165
  87. package/src/devices/bulb.ts +48 -40
  88. package/src/devices/contact.ts +100 -73
  89. package/src/devices/curtains.ts +192 -140
  90. package/src/devices/humidifiers.ts +82 -124
  91. package/src/devices/indoorcam.ts +303 -0
  92. package/src/devices/meters.ts +130 -110
  93. package/src/devices/motion.ts +80 -69
  94. package/src/devices/plugs.ts +67 -65
  95. package/src/irdevices/airconditioners.ts +14 -10
  96. package/src/irdevices/airpurifiers.ts +4 -4
  97. package/src/irdevices/cameras.ts +4 -4
  98. package/src/irdevices/fans.ts +14 -18
  99. package/src/irdevices/lights.ts +4 -4
  100. package/src/irdevices/others.ts +12 -14
  101. package/src/irdevices/tvs.ts +21 -10
  102. package/src/irdevices/vacuumcleaners.ts +5 -9
  103. package/src/irdevices/waterheaters.ts +5 -5
  104. package/src/platform.ts +455 -619
  105. package/src/settings.ts +19 -15
  106. package/.github/workflows/issue-validate.yml +0 -18
package/src/settings.ts CHANGED
@@ -22,7 +22,6 @@ export const DeviceURL = 'https://api.switch-bot.com/v1.0/devices';
22
22
  //Config
23
23
  export interface SwitchBotPlatformConfig extends PlatformConfig {
24
24
  credentials?: credentials;
25
- devicediscovery?: boolean;
26
25
  options?: options | Record<string, never>;
27
26
  }
28
27
 
@@ -33,8 +32,14 @@ export type credentials = {
33
32
  export type options = {
34
33
  refreshRate?: number;
35
34
  pushRate?: number;
36
- hide_device: string[];
37
- debug?: boolean;
35
+ debug?: string;
36
+ devices?: Array<devicesConfig>;
37
+ };
38
+
39
+ export interface devicesConfig extends device, irdevice {
40
+ id: any;
41
+ type?: string;
42
+ deviceId: string;
38
43
  bot?: bot;
39
44
  meter?: meter;
40
45
  humidifier?: humidifier;
@@ -43,8 +48,9 @@ export type options = {
43
48
  fan?: irfan;
44
49
  irair?: irair;
45
50
  other?: other;
46
- ble?: string[];
47
- };
51
+ ble?: string;
52
+ hide_device?: boolean;
53
+ }
48
54
 
49
55
  export type meter = {
50
56
  unit?: number;
@@ -53,9 +59,7 @@ export type meter = {
53
59
  };
54
60
 
55
61
  export type bot = {
56
- switch?: boolean;
57
- device_switch?: string[];
58
- device_press?: string[];
62
+ mode?: string;
59
63
  };
60
64
 
61
65
  export type humidifier = {
@@ -76,8 +80,8 @@ export type bulb = {
76
80
  };
77
81
 
78
82
  export type irfan = {
79
- swing_mode?: string[];
80
- rotation_speed?: string[];
83
+ swing_mode?: boolean;
84
+ rotation_speed?: boolean;
81
85
  set_minStep?: number; //set_minStep
82
86
  set_max?: number; //set_max
83
87
  set_min?: number; //set_min
@@ -85,19 +89,19 @@ export type irfan = {
85
89
 
86
90
  //For Potential Future Use
87
91
  export type set_minStep = {
88
- set_minStep_device?: string[];
92
+ set_minStep_device?: boolean;
89
93
  set_minStep?: number;
90
94
  };
91
95
 
92
96
  //For Potential Future Use
93
97
  export type set_max = {
94
- set_max_device?: string[];
98
+ set_max_device?: boolean;
95
99
  set_max?: number;
96
100
  };
97
101
 
98
102
  //For Potential Future Use
99
103
  export type set_min = {
100
- set_min_device?: string[];
104
+ set_min_device?: boolean;
101
105
  set_min?: number;
102
106
  };
103
107
 
@@ -129,7 +133,7 @@ export type deviceList = {
129
133
 
130
134
  export type device = {
131
135
  //device ID.
132
- deviceId: string;
136
+ deviceId?: string;
133
137
  //device name.
134
138
  deviceName: string;
135
139
  //device type.
@@ -158,7 +162,7 @@ export type infraredRemoteList = {
158
162
  };
159
163
 
160
164
  export type irdevice = {
161
- deviceId: string; //device ID
165
+ deviceId?: string; //device ID
162
166
  deviceName: string; //device name
163
167
  remoteType: string; //device type
164
168
  hubDeviceId: string; //remote device's parent Hub ID
@@ -1,18 +0,0 @@
1
- # Close issues that don't conform to the issue templates.
2
- #
3
- name: Close Non-Conforming Issues
4
-
5
- on:
6
- issues:
7
- types: [opened]
8
-
9
- jobs:
10
- autoclose:
11
- runs-on: ubuntu-latest
12
- steps:
13
- - name: Autoclose issues that don't follow the issue templates.
14
- uses: roots/issue-closer@v1
15
- with:
16
- issue-close-message: "@${issue.user.login} - this issue is being automatically closed because it does not follow either the feature request, support request, or bug report issue template. The issue templates have been designed to help in the troubleshooting (or feature request) process. Please use them and populate it as completely as possible to streamline troubleshooting or feature request discussions."
17
- issue-pattern: "Is your feature request related to a problem? Please describe|Homebridge SwitchBot Plugin Version"
18
- repo-token: ${{ secrets.GITHUB_TOKEN }}