@switchbot/homebridge-switchbot 5.0.0-beta.146 → 5.0.0-beta.148

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 (74) hide show
  1. package/.github/workflows/ci.yml +1 -1
  2. package/.github/workflows/manual-e2e.yml +3 -3
  3. package/config.schema.json +6 -0
  4. package/dist/deviceCommandMapper.d.ts +10 -0
  5. package/dist/deviceCommandMapper.d.ts.map +1 -0
  6. package/dist/deviceCommandMapper.js +319 -0
  7. package/dist/deviceCommandMapper.js.map +1 -0
  8. package/dist/deviceFactory.d.ts +2 -3
  9. package/dist/deviceFactory.d.ts.map +1 -1
  10. package/dist/deviceFactory.js +12 -3
  11. package/dist/deviceFactory.js.map +1 -1
  12. package/dist/homebridge-ui/endpoints/config.d.ts.map +1 -1
  13. package/dist/homebridge-ui/endpoints/config.js +1 -18
  14. package/dist/homebridge-ui/endpoints/config.js.map +1 -1
  15. package/dist/homebridge-ui/endpoints/devices.d.ts.map +1 -1
  16. package/dist/homebridge-ui/endpoints/devices.js +1 -350
  17. package/dist/homebridge-ui/endpoints/devices.js.map +1 -1
  18. package/dist/homebridge-ui/public/index.html +6 -0
  19. package/dist/homebridge-ui/public/js/advanced-settings.d.ts.map +1 -1
  20. package/dist/homebridge-ui/public/js/advanced-settings.js +22 -12
  21. package/dist/homebridge-ui/public/js/advanced-settings.js.map +1 -1
  22. package/dist/homebridge-ui/public/js/advanced-settings.ts +36 -25
  23. package/dist/homebridge-ui/public/js/api.d.ts +1 -1
  24. package/dist/homebridge-ui/public/js/api.d.ts.map +1 -1
  25. package/dist/homebridge-ui/public/js/api.js +111 -52
  26. package/dist/homebridge-ui/public/js/api.js.map +1 -1
  27. package/dist/homebridge-ui/public/js/api.ts +112 -53
  28. package/dist/homebridge-ui/public/js/app.js +234 -177
  29. package/dist/homebridge-ui/public/js/app.js.map +4 -4
  30. package/dist/homebridge-ui/public/js/credentials.d.ts.map +1 -1
  31. package/dist/homebridge-ui/public/js/credentials.js +26 -23
  32. package/dist/homebridge-ui/public/js/credentials.js.map +1 -1
  33. package/dist/homebridge-ui/public/js/credentials.ts +26 -25
  34. package/dist/homebridge-ui/public/js/devices-delete.d.ts.map +1 -1
  35. package/dist/homebridge-ui/public/js/devices-delete.js +3 -10
  36. package/dist/homebridge-ui/public/js/devices-delete.js.map +1 -1
  37. package/dist/homebridge-ui/public/js/devices-delete.ts +3 -12
  38. package/dist/homebridge-ui/public/js/devices.d.ts.map +1 -1
  39. package/dist/homebridge-ui/public/js/devices.js +0 -3
  40. package/dist/homebridge-ui/public/js/devices.js.map +1 -1
  41. package/dist/homebridge-ui/public/js/devices.ts +5 -9
  42. package/dist/homebridge-ui/server.js +0 -2
  43. package/dist/homebridge-ui/server.js.map +1 -1
  44. package/dist/platform.d.ts.map +1 -1
  45. package/dist/platform.js +3 -2
  46. package/dist/platform.js.map +1 -1
  47. package/dist/settings.d.ts +1 -0
  48. package/dist/settings.d.ts.map +1 -1
  49. package/dist/settings.js +1 -0
  50. package/dist/settings.js.map +1 -1
  51. package/dist/switchbotClient.d.ts.map +1 -1
  52. package/dist/switchbotClient.js +42 -55
  53. package/dist/switchbotClient.js.map +1 -1
  54. package/docs/variables/default.html +1 -1
  55. package/package.json +1 -1
  56. package/src/deviceCommandMapper.ts +333 -0
  57. package/src/deviceFactory.ts +14 -6
  58. package/src/homebridge-ui/endpoints/config.ts +2 -18
  59. package/src/homebridge-ui/endpoints/devices.ts +1 -392
  60. package/src/homebridge-ui/public/index.html +6 -0
  61. package/src/homebridge-ui/public/js/advanced-settings.ts +36 -25
  62. package/src/homebridge-ui/public/js/api.ts +112 -53
  63. package/src/homebridge-ui/public/js/credentials.ts +26 -25
  64. package/src/homebridge-ui/public/js/devices-delete.ts +3 -12
  65. package/src/homebridge-ui/public/js/devices.ts +5 -9
  66. package/src/homebridge-ui/server.ts +0 -2
  67. package/src/platform.ts +3 -2
  68. package/src/settings.ts +2 -0
  69. package/src/switchbotClient.ts +43 -54
  70. package/dist/homebridge-ui/endpoints/credentials.d.ts +0 -6
  71. package/dist/homebridge-ui/endpoints/credentials.d.ts.map +0 -1
  72. package/dist/homebridge-ui/endpoints/credentials.js +0 -65
  73. package/dist/homebridge-ui/endpoints/credentials.js.map +0 -1
  74. package/src/homebridge-ui/endpoints/credentials.ts +0 -74
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/credentials.ts"],"names":[],"mappings":"AAKA,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkC1D;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CA8DrD"}
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/credentials.ts"],"names":[],"mappings":"AAIA,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAiC1D;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAiErD"}
@@ -1,29 +1,31 @@
1
- import { fetchCredentialStatus as apiFetchCredentialStatus, saveCredentials as apiSaveCredentials, syncParentPluginConfigFromDisk } from './api.js';
2
1
  import { uiLog } from './logger.js';
3
2
  import { hideBusyUi, showBusyUi } from './modal.js';
4
3
  import { toastError, toastSuccess, toastWarning } from './toast.js';
5
4
  export async function loadCredentialStatus() {
6
5
  try {
7
- const creds = await apiFetchCredentialStatus();
8
- if (!creds) {
9
- uiLog.error('Failed to load credentials');
6
+ if (typeof homebridge.getPluginConfig !== 'function') {
7
+ uiLog.error('Homebridge UI API not available');
10
8
  return;
11
9
  }
10
+ const configArr = await homebridge.getPluginConfig();
11
+ const config = Array.isArray(configArr) && configArr.length > 0 ? configArr[0] : {};
12
+ const token = config.openApiToken || '';
13
+ const secret = config.openApiSecret || '';
12
14
  const tokenStatus = document.getElementById('tokenStatus');
13
15
  const secretStatus = document.getElementById('secretStatus');
14
16
  if (!tokenStatus || !secretStatus) {
15
17
  return;
16
18
  }
17
- if (creds.hasToken) {
18
- tokenStatus.textContent = `✓ Configured (${creds.tokenLength} characters)`;
19
+ if (token) {
20
+ tokenStatus.textContent = `✓ Configured (${token.length} characters)`;
19
21
  tokenStatus.classList.add('ok');
20
22
  }
21
23
  else {
22
24
  tokenStatus.textContent = 'Not configured';
23
25
  tokenStatus.classList.remove('ok');
24
26
  }
25
- if (creds.hasSecret) {
26
- secretStatus.textContent = `✓ Configured (${creds.secretLength} characters)`;
27
+ if (secret) {
28
+ secretStatus.textContent = `✓ Configured (${secret.length} characters)`;
27
29
  secretStatus.classList.add('ok');
28
30
  }
29
31
  else {
@@ -54,23 +56,24 @@ export async function saveCredentials() {
54
56
  saveBtn.disabled = true;
55
57
  saveBtn.textContent = 'Saving...';
56
58
  uiLog.info('Saving credentials...');
57
- const result = await apiSaveCredentials(token, secret);
58
- uiLog.info('Save response:', result);
59
- const message = result?.message || 'Credentials saved successfully';
60
- saveStatus.textContent = `✓ ${message}`;
61
- saveStatus.classList.remove('error');
62
- saveStatus.classList.add('success-msg');
63
- toastSuccess(message);
64
- const synced = await syncParentPluginConfigFromDisk(true);
65
- if (synced) {
66
- saveStatus.textContent += ' - Config saved automatically.';
67
- toastSuccess('Configuration synced and saved automatically');
59
+ if (typeof homebridge.getPluginConfig !== 'function' || typeof homebridge.updatePluginConfig !== 'function') {
60
+ throw new TypeError('Homebridge UI API not available');
68
61
  }
69
- else {
70
- toastWarning('Credentials saved, but configuration sync failed');
62
+ const configArr = await homebridge.getPluginConfig();
63
+ if (!Array.isArray(configArr) || configArr.length === 0) {
64
+ throw new Error('No plugin config found');
71
65
  }
72
- // Clear inputs after successful save
73
- ;
66
+ const config = configArr[0];
67
+ config.openApiToken = token;
68
+ config.openApiSecret = secret;
69
+ await homebridge.updatePluginConfig([config]);
70
+ if (typeof homebridge.savePluginConfig === 'function') {
71
+ await homebridge.savePluginConfig();
72
+ }
73
+ saveStatus.textContent = `✓ Credentials saved successfully`;
74
+ saveStatus.classList.remove('error');
75
+ saveStatus.classList.add('success-msg');
76
+ toastSuccess('Credentials saved successfully');
74
77
  document.getElementById('token').value = '';
75
78
  document.getElementById('secret').value = '';
76
79
  // Reload status to verify save
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/credentials.ts"],"names":[],"mappings":"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"}
@@ -1,34 +1,32 @@
1
- import { fetchCredentialStatus as apiFetchCredentialStatus, saveCredentials as apiSaveCredentials, syncParentPluginConfigFromDisk } from './api.js'
2
1
  import { uiLog } from './logger.js'
3
2
  import { hideBusyUi, showBusyUi } from './modal.js'
4
3
  import { toastError, toastSuccess, toastWarning } from './toast.js'
5
4
 
6
5
  export async function loadCredentialStatus(): Promise<void> {
7
6
  try {
8
- const creds = await apiFetchCredentialStatus()
9
-
10
- if (!creds) {
11
- uiLog.error('Failed to load credentials')
7
+ if (typeof homebridge.getPluginConfig !== 'function') {
8
+ uiLog.error('Homebridge UI API not available')
12
9
  return
13
10
  }
11
+ const configArr = await homebridge.getPluginConfig()
12
+ const config = Array.isArray(configArr) && configArr.length > 0 ? configArr[0] : {}
13
+ const token = config.openApiToken || ''
14
+ const secret = config.openApiSecret || ''
14
15
 
15
16
  const tokenStatus = document.getElementById('tokenStatus')
16
17
  const secretStatus = document.getElementById('secretStatus')
17
-
18
18
  if (!tokenStatus || !secretStatus) {
19
19
  return
20
20
  }
21
-
22
- if (creds.hasToken) {
23
- tokenStatus.textContent = `✓ Configured (${creds.tokenLength} characters)`
21
+ if (token) {
22
+ tokenStatus.textContent = `✓ Configured (${token.length} characters)`
24
23
  tokenStatus.classList.add('ok')
25
24
  } else {
26
25
  tokenStatus.textContent = 'Not configured'
27
26
  tokenStatus.classList.remove('ok')
28
27
  }
29
-
30
- if (creds.hasSecret) {
31
- secretStatus.textContent = `✓ Configured (${creds.secretLength} characters)`
28
+ if (secret) {
29
+ secretStatus.textContent = `✓ Configured (${secret.length} characters)`
32
30
  secretStatus.classList.add('ok')
33
31
  } else {
34
32
  secretStatus.textContent = 'Not configured'
@@ -62,22 +60,25 @@ export async function saveCredentials(): Promise<void> {
62
60
  saveBtn.textContent = 'Saving...'
63
61
  uiLog.info('Saving credentials...')
64
62
 
65
- const result = await apiSaveCredentials(token, secret)
66
- uiLog.info('Save response:', result)
63
+ if (typeof homebridge.getPluginConfig !== 'function' || typeof homebridge.updatePluginConfig !== 'function') {
64
+ throw new TypeError('Homebridge UI API not available')
65
+ }
66
+ const configArr = await homebridge.getPluginConfig()
67
+ if (!Array.isArray(configArr) || configArr.length === 0) {
68
+ throw new Error('No plugin config found')
69
+ }
70
+ const config = configArr[0]
71
+ config.openApiToken = token
72
+ config.openApiSecret = secret
73
+ await homebridge.updatePluginConfig([config])
74
+ if (typeof homebridge.savePluginConfig === 'function') {
75
+ await homebridge.savePluginConfig()
76
+ }
67
77
 
68
- const message = result?.message || 'Credentials saved successfully'
69
- saveStatus.textContent = `✓ ${message}`
78
+ saveStatus.textContent = `✓ Credentials saved successfully`
70
79
  saveStatus.classList.remove('error')
71
80
  saveStatus.classList.add('success-msg')
72
- toastSuccess(message)
73
-
74
- const synced = await syncParentPluginConfigFromDisk(true)
75
- if (synced) {
76
- saveStatus.textContent += ' - Config saved automatically.'
77
- toastSuccess('Configuration synced and saved automatically')
78
- } else {
79
- toastWarning('Credentials saved, but configuration sync failed')
80
- }
81
+ toastSuccess('Credentials saved successfully')
81
82
 
82
83
  // Clear inputs after successful save
83
84
  ;(document.getElementById('token') as HTMLInputElement).value = ''
@@ -1 +1 @@
1
- {"version":3,"file":"devices-delete.d.ts","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices-delete.ts"],"names":[],"mappings":"AAyEA,wBAAsB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuChG;AA6ED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CA8ChE"}
1
+ {"version":3,"file":"devices-delete.d.ts","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices-delete.ts"],"names":[],"mappings":"AAyEA,wBAAsB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkChG;AA6ED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CA0ChE"}
@@ -69,19 +69,15 @@ export async function deleteDeviceFromConfig(deviceId, deviceName) {
69
69
  }
70
70
  try {
71
71
  showBusyUi();
72
- uiLog.info('Sending delete request for deviceId:', deviceId);
72
+ uiLog.info('Deleting device from config:', deviceId);
73
73
  const resp = await apiDeleteDevice(deviceId);
74
74
  uiLog.info('Delete response:', resp);
75
- if (!resp || resp.success === false) {
76
- throw new Error(resp?.data?.message || 'Failed to delete device');
77
- }
78
75
  uiLog.info('Syncing parent config from disk...');
79
76
  const synced = await syncParentPluginConfigFromDisk(true);
80
77
  if (!synced) {
81
78
  toastWarning('Device deleted, but configuration sync failed');
82
79
  }
83
80
  uiLog.info('Refreshing device list...');
84
- // Refresh device list
85
81
  const list = await fetchDevices();
86
82
  uiLog.info('Rendering devices:', list.length);
87
83
  renderDeviceList(list);
@@ -176,12 +172,9 @@ export async function deleteAllDevicesFromConfig() {
176
172
  return;
177
173
  }
178
174
  showBusyUi();
179
- uiLog.info('Sending delete all devices request');
175
+ uiLog.info('Deleting all devices from config');
180
176
  const resp = await apiDeleteAllDevices();
181
177
  uiLog.info('Delete all response:', resp);
182
- if (!resp || resp.success === false) {
183
- throw new Error(resp?.data?.message || 'Failed to delete all devices');
184
- }
185
178
  uiLog.info('Syncing parent config from disk...');
186
179
  const synced = await syncParentPluginConfigFromDisk(true);
187
180
  if (!synced) {
@@ -191,7 +184,7 @@ export async function deleteAllDevicesFromConfig() {
191
184
  const updatedList = await fetchDevices();
192
185
  uiLog.info('Rendering devices:', updatedList.length);
193
186
  renderDeviceList(updatedList);
194
- const deletedCount = resp?.deletedCount || list.length;
187
+ const deletedCount = resp?.deletedCount || 0;
195
188
  uiLog.info(`✓ Removed ${deletedCount} device(s) successfully`);
196
189
  toastSuccess(`Removed ${deletedCount} device(s) successfully`);
197
190
  }
@@ -1 +1 @@
1
- {"version":3,"file":"devices-delete.js","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices-delete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,IAAI,mBAAmB,EAAE,YAAY,IAAI,eAAe,EAAE,YAAY,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAA;AACjJ,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAEnE,KAAK,UAAU,mBAAmB,CAAC,cAAsB;IACvD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC7C,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAA;QAChC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;QACvB,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAA;QACxB,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAA;QAC5B,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;QAC7B,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAA;QAC5C,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;QAC9B,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAA;QACnC,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,QAAQ,CAAA;QACvC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAA;QAE9B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC3C,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,eAAe,CAAA;QACxE,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAA;QACzD,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;QAC5B,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAA;QACjC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAA;QAC9B,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAA;QAC7B,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,8BAA8B,CAAA;QAEtD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QAC1C,KAAK,CAAC,WAAW,GAAG,eAAe,CAAA;QACnC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAA;QAEjC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC3C,OAAO,CAAC,WAAW,GAAG,WAAW,cAAc,uBAAuB,CAAA;QACtE,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAA;QAEnC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC7C,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;QAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,UAAU,CAAA;QACzC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAA;QAEzB,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;QAClD,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAA;QAChC,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAA;QAEtC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;QAClD,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAA;QAChC,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAA;QAEtC,MAAM,OAAO,GAAG,CAAC,MAAe,EAAE,EAAE;YAClC,OAAO,CAAC,MAAM,EAAE,CAAA;YAChB,OAAO,CAAC,MAAM,CAAC,CAAA;QACjB,CAAC,CAAA;QAED,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACxC,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACvC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC9B,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC9B,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACxB,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAC1B,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAC1B,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAC1B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,QAAgB,EAAE,UAAkB;IAC/E,KAAK,CAAC,IAAI,CAAC,mCAAmC,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;IAErE,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,UAAU,IAAI,QAAQ,CAAC,CAAA;IACnE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;QACtC,OAAM;IACR,CAAC;IAED,IAAI,CAAC;QACH,UAAU,EAAE,CAAA;QACZ,KAAK,CAAC,IAAI,CAAC,sCAAsC,EAAE,QAAQ,CAAC,CAAA;QAC5D,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAA;QAC5C,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAEpC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,IAAI,yBAAyB,CAAC,CAAA;QACnE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,MAAM,8BAA8B,CAAC,IAAI,CAAC,CAAA;QACzD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,YAAY,CAAC,+CAA+C,CAAC,CAAA;QAC/D,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;QACvC,sBAAsB;QACtB,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAA;QACjC,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QAC7C,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAEtB,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;QAC3C,YAAY,CAAC,WAAW,UAAU,IAAI,QAAQ,wBAAwB,CAAC,CAAA;IACzE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAA;QAC/B,UAAU,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAA;IACxE,CAAC;YAAS,CAAC;QACT,UAAU,EAAE,CAAA;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,WAAmB;IACvD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC7C,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAA;QAChC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAA;QACvB,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAA;QACxB,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAA;QAC5B,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;QAC7B,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAA;QAC5C,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;QAC9B,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAA;QACnC,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,QAAQ,CAAA;QACvC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAA;QAE9B,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC3C,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,eAAe,CAAA;QACxE,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAA;QACzD,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;QAC5B,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAA;QACjC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAA;QAC9B,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAA;QAC7B,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,8BAA8B,CAAA;QACtD,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,mBAAmB,CAAA;QAE3C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QAC1C,KAAK,CAAC,WAAW,GAAG,uBAAuB,CAAA;QAC3C,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAA;QACjC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS,CAAA;QAE7B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC3C,OAAO,CAAC,SAAS,GAAG,+CAA+C,WAAW,mFAAmF,CAAA;QACjK,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAA;QACnC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAA;QAEhC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC7C,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;QAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,GAAG,UAAU,CAAA;QACzC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,MAAM,CAAA;QAE1B,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;QAClD,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAA;QAChC,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAA;QACtC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,UAAU,CAAA;QACpC,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAA;QACjC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAA;QAEjC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;QAClD,SAAS,CAAC,WAAW,GAAG,YAAY,CAAA;QACpC,SAAS,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAA;QACtC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,UAAU,CAAA;QACpC,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAA;QAEjC,MAAM,OAAO,GAAG,CAAC,MAAe,EAAE,EAAE;YAClC,OAAO,CAAC,MAAM,EAAE,CAAA;YAChB,OAAO,CAAC,MAAM,CAAC,CAAA;QACjB,CAAC,CAAA;QAED,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACxC,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACvC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC7B,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC9B,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC9B,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QACxB,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAC1B,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAC1B,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAC1B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B;IAC9C,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;IAE/C,IAAI,CAAC;QACH,2BAA2B;QAC3B,MAAM,IAAI,GAAG,MAAM,YAAY,EAAE,CAAA;QACjC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,YAAY,CAAC,sBAAsB,CAAC,CAAA;YACpC,OAAM;QACR,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;YAC1C,OAAM;QACR,CAAC;QAED,UAAU,EAAE,CAAA;QACZ,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAA;QAChD,MAAM,IAAI,GAAG,MAAM,mBAAmB,EAAE,CAAA;QACxC,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAA;QAExC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,IAAI,8BAA8B,CAAC,CAAA;QACxE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,MAAM,8BAA8B,CAAC,IAAI,CAAC,CAAA;QACzD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,YAAY,CAAC,gDAAgD,CAAC,CAAA;QAChE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;QACvC,MAAM,WAAW,GAAG,MAAM,YAAY,EAAE,CAAA;QACxC,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;QACpD,gBAAgB,CAAC,WAAW,CAAC,CAAA;QAE7B,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,IAAI,CAAC,MAAM,CAAA;QACtD,KAAK,CAAC,IAAI,CAAC,aAAa,YAAY,yBAAyB,CAAC,CAAA;QAC9D,YAAY,CAAC,WAAW,YAAY,yBAAyB,CAAC,CAAA;IAChE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,KAAK,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAA;QACnC,UAAU,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAA;IAC7E,CAAC;YAAS,CAAC;QACT,UAAU,EAAE,CAAA;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"devices-delete.js","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices-delete.ts"],"names":[],"mappings":"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"}
@@ -82,14 +82,10 @@ export async function deleteDeviceFromConfig(deviceId: string, deviceName: strin
82
82
 
83
83
  try {
84
84
  showBusyUi()
85
- uiLog.info('Sending delete request for deviceId:', deviceId)
85
+ uiLog.info('Deleting device from config:', deviceId)
86
86
  const resp = await apiDeleteDevice(deviceId)
87
87
  uiLog.info('Delete response:', resp)
88
88
 
89
- if (!resp || resp.success === false) {
90
- throw new Error(resp?.data?.message || 'Failed to delete device')
91
- }
92
-
93
89
  uiLog.info('Syncing parent config from disk...')
94
90
  const synced = await syncParentPluginConfigFromDisk(true)
95
91
  if (!synced) {
@@ -97,7 +93,6 @@ export async function deleteDeviceFromConfig(deviceId: string, deviceName: strin
97
93
  }
98
94
 
99
95
  uiLog.info('Refreshing device list...')
100
- // Refresh device list
101
96
  const list = await fetchDevices()
102
97
  uiLog.info('Rendering devices:', list.length)
103
98
  renderDeviceList(list)
@@ -205,14 +200,10 @@ export async function deleteAllDevicesFromConfig(): Promise<void> {
205
200
  }
206
201
 
207
202
  showBusyUi()
208
- uiLog.info('Sending delete all devices request')
203
+ uiLog.info('Deleting all devices from config')
209
204
  const resp = await apiDeleteAllDevices()
210
205
  uiLog.info('Delete all response:', resp)
211
206
 
212
- if (!resp || resp.success === false) {
213
- throw new Error(resp?.data?.message || 'Failed to delete all devices')
214
- }
215
-
216
207
  uiLog.info('Syncing parent config from disk...')
217
208
  const synced = await syncParentPluginConfigFromDisk(true)
218
209
  if (!synced) {
@@ -224,7 +215,7 @@ export async function deleteAllDevicesFromConfig(): Promise<void> {
224
215
  uiLog.info('Rendering devices:', updatedList.length)
225
216
  renderDeviceList(updatedList)
226
217
 
227
- const deletedCount = resp?.deletedCount || list.length
218
+ const deletedCount = resp?.deletedCount || 0
228
219
  uiLog.info(`✓ Removed ${deletedCount} device(s) successfully`)
229
220
  toastSuccess(`Removed ${deletedCount} device(s) successfully`)
230
221
  } catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"devices.d.ts","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices.ts"],"names":[],"mappings":"AAMA,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,CA+E3I;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAUzD;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3D"}
1
+ {"version":3,"file":"devices.d.ts","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices.ts"],"names":[],"mappings":"AAMA,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC,CA2E3I;AAED,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAUzD;AAED,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3D"}
@@ -21,9 +21,6 @@ export async function addDeviceToConfig(device, options = {}) {
21
21
  keyId: importValues.keyId,
22
22
  });
23
23
  uiLog.info('Add device response:', resp);
24
- if (!resp || resp.success === false) {
25
- throw new Error(resp?.data?.message || 'Failed to add device');
26
- }
27
24
  const alreadyExists = !!resp?.alreadyExists;
28
25
  const message = resp?.message
29
26
  || (alreadyExists
@@ -1 +1 @@
1
- {"version":3,"file":"devices.js","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devices.js","sourceRoot":"","sources":["../../../../src/homebridge-ui/public/js/devices.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export async function addDeviceToConfig(device: any, options: { refresh?: boolea
14
14
  return { added: false }
15
15
  }
16
16
 
17
+
17
18
  showBusyUi()
18
19
  uiLog.info('Adding device to config:', device)
19
20
  const resp = await addDevice(device.id, importValues.configDeviceName, importValues.configDeviceType, {
@@ -25,16 +26,11 @@ export async function addDeviceToConfig(device: any, options: { refresh?: boolea
25
26
  })
26
27
  uiLog.info('Add device response:', resp)
27
28
 
28
- if (!resp || resp.success === false) {
29
- throw new Error(resp?.data?.message || 'Failed to add device')
30
- }
31
-
32
29
  const alreadyExists = !!resp?.alreadyExists
33
- const message
34
- = resp?.message
35
- || (alreadyExists
36
- ? `Device "${importValues.configDeviceName}" already in config`
37
- : `Device "${importValues.configDeviceName}" added successfully!`)
30
+ const message = resp?.message
31
+ || (alreadyExists
32
+ ? `Device "${importValues.configDeviceName}" already in config`
33
+ : `Device "${importValues.configDeviceName}" added successfully!`)
38
34
 
39
35
  if (alreadyExists) {
40
36
  toastInfo(message)
@@ -1,6 +1,5 @@
1
1
  import { HomebridgePluginUiServer } from '@homebridge/plugin-ui-utils';
2
2
  import { registerConfigEndpoints } from './endpoints/config.js';
3
- import { registerCredentialsEndpoint } from './endpoints/credentials.js';
4
3
  import { registerDeviceEndpoints } from './endpoints/devices.js';
5
4
  import { registerDiscoveryEndpoint } from './endpoints/discovery.js';
6
5
  const server = new HomebridgePluginUiServer();
@@ -8,6 +7,5 @@ const server = new HomebridgePluginUiServer();
8
7
  registerConfigEndpoints(server);
9
8
  registerDiscoveryEndpoint(server);
10
9
  registerDeviceEndpoints(server);
11
- registerCredentialsEndpoint(server);
12
10
  server.ready();
13
11
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/homebridge-ui/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAA;AAEtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAA;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA;AAEpE,MAAM,MAAM,GAAG,IAAI,wBAAwB,EAAE,CAAA;AAE7C,yBAAyB;AACzB,uBAAuB,CAAC,MAAM,CAAC,CAAA;AAC/B,yBAAyB,CAAC,MAAM,CAAC,CAAA;AACjC,uBAAuB,CAAC,MAAM,CAAC,CAAA;AAC/B,2BAA2B,CAAC,MAAM,CAAC,CAAA;AAEnC,MAAM,CAAC,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/homebridge-ui/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAA;AAEtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA;AAEpE,MAAM,MAAM,GAAG,IAAI,wBAAwB,EAAE,CAAA;AAE7C,yBAAyB;AACzB,uBAAuB,CAAC,MAAM,CAAC,CAAA;AAC/B,yBAAyB,CAAC,MAAM,CAAC,CAAA;AACjC,uBAAuB,CAAC,MAAM,CAAC,CAAA;AAE/B,MAAM,CAAC,KAAK,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAkE7D,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CA2KtD,CAAA;AA+yBD,qBAAa,oBAAoB;IAC/B,GAAG,EAAE,GAAG,GAAG,SAAS,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,qBAAqB,CAAA;IAC7B,OAAO,EAAE,GAAG,EAAE,CAAK;IAEnB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE7B,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,oBAAoB,CAA8B;IAE1D,OAAO,CAAC,iBAAiB,CAAyC;IAClE,OAAO,CAAC,iBAAiB,CAA8B;IACvD,OAAO,CAAC,oBAAoB,CAAI;IAChC,OAAO,CAAC,gBAAgB,CAAI;gBAEhB,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,GAAG;IAoC1D;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkI5B;;OAEG;YACW,yBAAyB;IAmCvC,OAAO,CAAC,aAAa;IAUf,WAAW;IAsLX,kBAAkB,CAAC,SAAS,EAAE,GAAG;IAYvC,wBAAwB,CAAC,CAAC,SAAS,EAAE,GAAG;CASzC;AAGD,qBAAa,uBAAuB;IAClC,GAAG,EAAE,GAAG,GAAG,SAAS,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,qBAAqB,CAAA;IAC7B,OAAO,EAAE,GAAG,EAAE,CAAK;IACnB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE7B,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,oBAAoB,CAA8B;gBAE9C,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,GAAG;IA8CpD,WAAW;IAwCjB,OAAO,CAAC,aAAa;YAUP,qBAAqB;IAU7B,kBAAkB,CAAC,SAAS,EAAE,GAAG;IAWvC,wBAAwB,CAAC,SAAS,EAAE,GAAG;IAWjC,yBAAyB;CAqHhC;;AAED,wBAA8D"}
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAkE7D,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CA2KtD,CAAA;AA+yBD,qBAAa,oBAAoB;IAC/B,GAAG,EAAE,GAAG,GAAG,SAAS,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,qBAAqB,CAAA;IAC7B,OAAO,EAAE,GAAG,EAAE,CAAK;IAEnB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE7B,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,oBAAoB,CAA8B;IAE1D,OAAO,CAAC,iBAAiB,CAAyC;IAClE,OAAO,CAAC,iBAAiB,CAA8B;IACvD,OAAO,CAAC,oBAAoB,CAAI;IAChC,OAAO,CAAC,gBAAgB,CAAI;gBAEhB,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,GAAG;IAqC1D;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkI5B;;OAEG;YACW,yBAAyB;IAmCvC,OAAO,CAAC,aAAa;IAUf,WAAW;IAsLX,kBAAkB,CAAC,SAAS,EAAE,GAAG;IAYvC,wBAAwB,CAAC,CAAC,SAAS,EAAE,GAAG;CASzC;AAGD,qBAAa,uBAAuB;IAClC,GAAG,EAAE,GAAG,GAAG,SAAS,CAAA;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,qBAAqB,CAAA;IAC7B,OAAO,EAAE,GAAG,EAAE,CAAK;IACnB,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE7B,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,oBAAoB,CAA8B;gBAE9C,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,GAAG;IA8CpD,WAAW;IAwCjB,OAAO,CAAC,aAAa;YAUP,qBAAqB;IAU7B,kBAAkB,CAAC,SAAS,EAAE,GAAG;IAWvC,wBAAwB,CAAC,SAAS,EAAE,GAAG;IAWjC,yBAAyB;CAqHhC;;AAED,wBAA8D"}
package/dist/platform.js CHANGED
@@ -1053,7 +1053,8 @@ export class SwitchBotHAPPlatform {
1053
1053
  openApiLastReset = 0;
1054
1054
  constructor(log, config, api) {
1055
1055
  this.log = log;
1056
- this.config = { ...config, logger: log };
1056
+ // Ensure both log and logger are set for downstream device constructors
1057
+ this.config = { ...config, log, logger: log };
1057
1058
  this.api = api;
1058
1059
  this.accessories = new Map();
1059
1060
  this.log.info('SwitchBot HAP platform initialized');
@@ -1276,7 +1277,7 @@ export class SwitchBotHAPPlatform {
1276
1277
  _raw: raw,
1277
1278
  };
1278
1279
  const type = normalizeTypeForMatter(d.type);
1279
- const deviceOpts = { id: d.id, type, name: d.name, encryptionKey: d.encryptionKey, keyId: d.keyId };
1280
+ const deviceOpts = { id: d.id, type, name: d.name, encryptionKey: d.encryptionKey, keyId: d.keyId, log: this.log };
1280
1281
  this.log.debug(`[Matter/Debug] Device options for ${d.name ?? d.id}:`, JSON.stringify(deviceOpts, null, 2));
1281
1282
  const matterSupported = !!DEVICE_MATTER_SUPPORTED[(type || '').toLowerCase()];
1282
1283
  // Auto-detect Matter from Homebridge API, allow manual override via config