@switchbot/homebridge-switchbot 5.1.0-beta.2 → 5.1.0-beta.4

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 (64) hide show
  1. package/.github/copilot-instructions.md +63 -0
  2. package/.github/scripts/normalize-changelog-header.cjs +86 -0
  3. package/.github/scripts/npm-version-script-esm-auto.js +201 -0
  4. package/.github/scripts/resolve-version-bump-esm.js +118 -0
  5. package/.github/workflows/release.yml +5 -5
  6. package/CHANGELOG.md +18 -0
  7. package/dist/{SwitchBotHAPPlatform.d.ts → Platform.HAP.d.ts} +2 -2
  8. package/dist/Platform.HAP.d.ts.map +1 -0
  9. package/dist/{SwitchBotHAPPlatform.js → Platform.HAP.js} +4 -2
  10. package/dist/Platform.HAP.js.map +1 -0
  11. package/dist/{SwitchBotMatterPlatform.d.ts → Platform.Matter.d.ts} +2 -2
  12. package/dist/Platform.Matter.d.ts.map +1 -0
  13. package/dist/{SwitchBotMatterPlatform.js → Platform.Matter.js} +1 -1
  14. package/dist/Platform.Matter.js.map +1 -0
  15. package/dist/homebridge-ui/public/css/styles.css +1 -1
  16. package/dist/homebridge-ui/public/index.html +18 -5
  17. package/dist/homebridge-ui/public/js/api.d.ts +1 -0
  18. package/dist/homebridge-ui/public/js/api.d.ts.map +1 -1
  19. package/dist/homebridge-ui/public/js/api.js +14 -1
  20. package/dist/homebridge-ui/public/js/api.js.map +1 -1
  21. package/dist/homebridge-ui/public/js/api.ts +16 -1
  22. package/dist/homebridge-ui/public/js/app.js +54 -71
  23. package/dist/homebridge-ui/public/js/app.js.map +2 -2
  24. package/dist/homebridge-ui/public/js/discovery.d.ts.map +1 -1
  25. package/dist/homebridge-ui/public/js/discovery.js +0 -36
  26. package/dist/homebridge-ui/public/js/discovery.js.map +1 -1
  27. package/dist/homebridge-ui/public/js/discovery.ts +0 -37
  28. package/dist/homebridge-ui/public/js/legacy-view.d.ts +3 -0
  29. package/dist/homebridge-ui/public/js/legacy-view.d.ts.map +1 -0
  30. package/dist/homebridge-ui/public/js/legacy-view.js +34 -0
  31. package/dist/homebridge-ui/public/js/legacy-view.js.map +1 -0
  32. package/dist/homebridge-ui/public/js/legacy-view.ts +94 -0
  33. package/dist/homebridge-ui/public/js/render.d.ts.map +1 -1
  34. package/dist/homebridge-ui/public/js/render.js +38 -31
  35. package/dist/homebridge-ui/public/js/render.js.map +1 -1
  36. package/dist/homebridge-ui/public/js/render.ts +39 -34
  37. package/dist/homebridge-ui/public/js/toast.d.ts.map +1 -1
  38. package/dist/homebridge-ui/public/js/toast.js +2 -3
  39. package/dist/homebridge-ui/public/js/toast.js.map +1 -1
  40. package/dist/homebridge-ui/public/js/toast.ts +2 -3
  41. package/dist/index.js +2 -2
  42. package/dist/index.js.map +1 -1
  43. package/docs/variables/default.html +1 -1
  44. package/package.json +9 -15
  45. package/src/{SwitchBotHAPPlatform.ts → Platform.HAP.ts} +5 -2
  46. package/src/{SwitchBotMatterPlatform.ts → Platform.Matter.ts} +2 -1
  47. package/src/homebridge-ui/public/css/styles.css +1 -1
  48. package/src/homebridge-ui/public/index.html +17 -4
  49. package/src/homebridge-ui/public/js/api.ts +16 -1
  50. package/src/homebridge-ui/public/js/discovery.ts +0 -37
  51. package/src/homebridge-ui/public/js/legacy-view.js +34 -0
  52. package/src/homebridge-ui/public/js/legacy-view.ts +94 -0
  53. package/src/homebridge-ui/public/js/render.ts +39 -34
  54. package/src/homebridge-ui/public/js/toast.ts +2 -3
  55. package/src/index.ts +2 -2
  56. package/test/platform/accessory-restore.spec.ts +2 -2
  57. package/test/platform/matter-childbridge.spec.ts +1 -1
  58. package/test/platform/matter-integration.spec.ts +1 -1
  59. package/test/platform/platform-edge.spec.ts +2 -2
  60. package/test/platform/platform.integration.spec.ts +1 -1
  61. package/dist/SwitchBotHAPPlatform.d.ts.map +0 -1
  62. package/dist/SwitchBotHAPPlatform.js.map +0 -1
  63. package/dist/SwitchBotMatterPlatform.d.ts.map +0 -1
  64. package/dist/SwitchBotMatterPlatform.js.map +0 -1
@@ -201,7 +201,7 @@ label {
201
201
  }
202
202
 
203
203
  input {
204
- width: 100%;
204
+ margin-right: 4px;
205
205
  max-width: 400px;
206
206
  padding: 6px 8px;
207
207
  border: 1px solid #d1d5db;
@@ -9,7 +9,14 @@
9
9
  </head>
10
10
 
11
11
  <body>
12
+
12
13
  <h1>🤖 SwitchBot Configuration</h1>
14
+ <div style="margin-bottom: 12px;">
15
+ <button id="legacyViewBtn" onclick="enableLegacyView()" style="font-size: 12px; padding: 4px 10px;">Legacy View</button>
16
+ <button id="dynamicViewBtn" onclick="disableLegacyView()" style="font-size: 12px; padding: 4px 10px; display: none;">Dynamic View</button>
17
+ </div>
18
+
19
+ <div id="dynamicUiContainer">
13
20
 
14
21
  <!-- v4 config incompatibility warning – shown dynamically by app.js -->
15
22
  <div id="v4ConfigWarning" class="v4-config-warning" style="display: none">
@@ -104,10 +111,6 @@
104
111
  <button id="discoverBtn" onclick="discoverDevices()" style="margin-bottom: 8px">
105
112
  🔍 Discover
106
113
  </button>
107
- <button id="cancelDiscoverBtn"
108
- style="margin-left: 6px; margin-bottom: 8px; display: none; padding: 6px 10px; font-size: 11px" class="secondary">
109
- Cancel
110
- </button>
111
114
  <div id="discoverStatus" style="margin-bottom: 6px; font-size: 11px"></div>
112
115
  <div id="discoverDevicesFound" style="margin-bottom: 6px; font-size: 11px; display: none"></div>
113
116
  <div id="discoverPhaseProgress" class="discover-phase-progress" style="display: none">
@@ -231,8 +234,18 @@
231
234
  </form>
232
235
  </div>
233
236
 
237
+ </div> <!-- end dynamicUiContainer -->
238
+
239
+ <div id="legacyViewContainer" style="display: none;">
240
+ <div class="card compact">
241
+ <h2>Legacy Config View</h2>
242
+ <div id="legacyConfigForm"></div>
243
+ </div>
244
+ </div>
245
+
234
246
  <script type="module" src="js/app.js"></script>
235
247
  <script type="module" src="js/advanced-settings.js"></script>
248
+ <script type="module" src="js/legacy-view.js"></script>
236
249
  </body>
237
250
 
238
251
  </html>
@@ -300,7 +300,22 @@ export async function addDevicesInBulk(
300
300
  if (!resp || resp.success === false) {
301
301
  throw new Error(resp?.data?.message || 'Bulk add failed')
302
302
  }
303
- return resp.data || resp
303
+ return normalizeBulkAddDevicesResponse(resp)
304
+ }
305
+
306
+ export function normalizeBulkAddDevicesResponse(resp: any): any {
307
+ const payload = resp?.data && typeof resp.data === 'object' ? resp.data : resp
308
+ const addedCount = Number(payload?.addedCount ?? payload?.added ?? 0)
309
+ const skippedCount = Number(payload?.skippedCount ?? payload?.skipped ?? 0)
310
+ const updatedCount = Number(payload?.updatedCount ?? payload?.updated ?? 0)
311
+
312
+ return {
313
+ ...payload,
314
+ success: resp?.success ?? true,
315
+ addedCount,
316
+ skippedCount,
317
+ updatedCount,
318
+ }
304
319
  }
305
320
 
306
321
  export async function updateDevice(
@@ -394,7 +394,6 @@ function setDiscoveryGroupExpanded(groupKey: string, expanded: boolean): void {
394
394
 
395
395
  export async function discoverDevices(): Promise<void> {
396
396
  const btn = document.getElementById('discoverBtn') as HTMLButtonElement
397
- const cancelBtn = document.getElementById('cancelDiscoverBtn') as HTMLButtonElement | null
398
397
  const status = document.getElementById('discoverStatus')
399
398
  const phaseProgress = document.getElementById('discoverPhaseProgress') as HTMLElement | null
400
399
  const phaseFill = document.getElementById('discoverPhaseFill') as HTMLElement | null
@@ -424,7 +423,6 @@ export async function discoverDevices(): Promise<void> {
424
423
  const startedAt = Date.now()
425
424
  let phaseStartedAt = startedAt
426
425
  let phase = 'Preparing discovery...'
427
- let cancelled = false
428
426
 
429
427
  // --- Real-time RSSI polling additions ---
430
428
  // (bleScanDurationSeconds is now only used in bleSettings below)
@@ -936,32 +934,8 @@ export async function discoverDevices(): Promise<void> {
936
934
  devicesFoundDisplay.classList.remove('discovery-scanning-pulse')
937
935
  }
938
936
 
939
- if (cancelBtn) {
940
- cancelBtn.style.display = 'inline-block'
941
- cancelBtn.disabled = false
942
- cancelBtn.onclick = () => {
943
- cancelled = true
944
- const totalSeconds = Math.max(0, Math.floor((Date.now() - startedAt) / 1000))
945
- status.textContent = `Discovery cancelled (${totalSeconds}s total)`
946
- if (phaseProgress) {
947
- phaseProgress.style.display = 'none'
948
- }
949
- if (devicesFoundDisplay) {
950
- devicesFoundDisplay.style.display = 'none'
951
- devicesFoundDisplay.classList.remove('discovery-scanning-pulse')
952
- }
953
- cancelBtn.style.display = 'none'
954
- btn.disabled = false
955
- btn.textContent = '🔍 Discover Devices'
956
- hideBusyUi()
957
- }
958
- }
959
-
960
937
  if (bleSettings.bleEnabled) {
961
938
  const bleDevicesRaw = await apiDiscoverDevices('ble', bleSettings)
962
- if (cancelled) {
963
- return
964
- }
965
939
 
966
940
  discoveredDevices = dedupeById(bleDevicesRaw)
967
941
  uiLog.info('BLE discover response:', bleDevicesRaw)
@@ -988,9 +962,6 @@ export async function discoverDevices(): Promise<void> {
988
962
 
989
963
  try {
990
964
  const openApiDevicesRaw = await apiDiscoverDevices('openapi')
991
- if (cancelled) {
992
- return
993
- }
994
965
 
995
966
  uiLog.info('OpenAPI discover response:', openApiDevicesRaw)
996
967
  discoveredDevices = mergeDiscoveredDevices(discoveredDevices, openApiDevicesRaw)
@@ -1096,9 +1067,6 @@ export async function discoverDevices(): Promise<void> {
1096
1067
  setDiscoveryCache(discoveredDevices)
1097
1068
  updateLastScannedStatus()
1098
1069
  } catch (e) {
1099
- if (cancelled) {
1100
- return
1101
- }
1102
1070
  uiLog.error('Discovery error:', e)
1103
1071
  status.textContent = `Error: ${e instanceof Error ? e.message : 'Discovery failed'}`
1104
1072
  status.classList.add('error')
@@ -1123,11 +1091,6 @@ export async function discoverDevices(): Promise<void> {
1123
1091
  }
1124
1092
  btn.disabled = false
1125
1093
  btn.textContent = '🔍 Discover Devices'
1126
- if (cancelBtn) {
1127
- cancelBtn.disabled = false
1128
- cancelBtn.style.display = 'none'
1129
- cancelBtn.onclick = null
1130
- }
1131
1094
  }
1132
1095
  }
1133
1096
 
@@ -0,0 +1,34 @@
1
+ import { disableLegacyView, enableLegacyView } from './legacy-view.js'
2
+
3
+ // Toggle button visibility and view containers
4
+ function updateViewButtons() {
5
+ const legacyBtn = document.getElementById('legacyViewBtn')
6
+ const dynamicBtn = document.getElementById('dynamicViewBtn')
7
+ const legacyContainer = document.getElementById('legacyViewContainer')
8
+ if (legacyContainer && legacyContainer.style.display === 'block') {
9
+ if (legacyBtn) {
10
+ legacyBtn.style.display = 'none'
11
+ }
12
+ if (dynamicBtn) {
13
+ dynamicBtn.style.display = 'inline-block'
14
+ }
15
+ } else {
16
+ if (legacyBtn) {
17
+ legacyBtn.style.display = 'inline-block'
18
+ }
19
+ if (dynamicBtn) {
20
+ dynamicBtn.style.display = 'none'
21
+ }
22
+ }
23
+ }
24
+
25
+ window.enableLegacyView = function () {
26
+ enableLegacyView()
27
+ updateViewButtons()
28
+ }
29
+ window.disableLegacyView = function () {
30
+ disableLegacyView()
31
+ updateViewButtons()
32
+ }
33
+
34
+ document.addEventListener('DOMContentLoaded', updateViewButtons)
@@ -0,0 +1,94 @@
1
+ // legacy-view.ts
2
+ // Renders the config UI from config.schema.json and toggles between legacy and dynamic UI
3
+
4
+ import schema from '../../../../config.schema.json'
5
+
6
+ function renderLegacyView() {
7
+ const container = document.getElementById('legacyConfigForm')
8
+ if (!container) {
9
+ return
10
+ }
11
+ container.innerHTML = ''
12
+ const { properties } = schema.schema
13
+ const layout = schema.layout || []
14
+ const form = document.createElement('form')
15
+ for (const section of layout) {
16
+ const fieldset = document.createElement('fieldset')
17
+ if (section.title) {
18
+ const legend = document.createElement('legend')
19
+ legend.textContent = section.title
20
+ fieldset.appendChild(legend)
21
+ }
22
+ for (const key of section.items) {
23
+ const prop = properties[key]
24
+ if (!prop) {
25
+ continue
26
+ }
27
+ if (prop.type === 'array' && prop.items && prop.items.properties) {
28
+ // Render array of devices as a table
29
+ const table = document.createElement('table')
30
+ table.style.marginBottom = '12px'
31
+ const thead = document.createElement('thead')
32
+ const headerRow = document.createElement('tr')
33
+ for (const colKey of Object.keys(prop.items.properties)) {
34
+ const th = document.createElement('th')
35
+ th.textContent = prop.items.properties[colKey].title || colKey
36
+ headerRow.appendChild(th)
37
+ }
38
+ thead.appendChild(headerRow)
39
+ table.appendChild(thead)
40
+ // No data rows (read-only legacy view)
41
+ fieldset.appendChild(table)
42
+ continue
43
+ }
44
+ const label = document.createElement('label')
45
+ label.textContent = prop.title || key
46
+ label.style.display = 'block'
47
+ let input: HTMLElement
48
+ if (prop.enum) {
49
+ const select = document.createElement('select')
50
+ select.name = key
51
+ for (const opt of prop.enum) {
52
+ const option = document.createElement('option')
53
+ option.value = opt
54
+ option.textContent = opt
55
+ select.appendChild(option)
56
+ }
57
+ input = select
58
+ } else if (prop.type === 'boolean') {
59
+ const checkbox = document.createElement('input')
60
+ checkbox.type = 'checkbox'
61
+ checkbox.name = key
62
+ if (prop.default) {
63
+ checkbox.checked = true
64
+ }
65
+ input = checkbox
66
+ } else {
67
+ const text = document.createElement('input')
68
+ text.name = key
69
+ text.type = prop.format === 'password' ? 'password' : 'text'
70
+ if (prop.default) {
71
+ text.value = prop.default
72
+ }
73
+ input = text
74
+ }
75
+ label.appendChild(input)
76
+ fieldset.appendChild(label)
77
+ }
78
+ form.appendChild(fieldset)
79
+ }
80
+ container.appendChild(form)
81
+ }
82
+
83
+ export function enableLegacyView() {
84
+ document.getElementById('dynamicUiContainer')!.style.display = 'none'
85
+ document.getElementById('legacyViewContainer')!.style.display = 'block'
86
+ renderLegacyView()
87
+ }
88
+
89
+ export function disableLegacyView() {
90
+ document.getElementById('dynamicUiContainer')!.style.display = 'block'
91
+ document.getElementById('legacyViewContainer')!.style.display = 'none'
92
+ }
93
+
94
+ // (window assignment removed; handled in .js entry point)
@@ -5,6 +5,22 @@ const SPACES_REGEX = /\s/g
5
5
  const CAMELCASE_REGEX = /([A-Z])/g
6
6
  const FIRST_CHAR_REGEX = /^./
7
7
 
8
+ async function copyTextWithFallback(text: string): Promise<void> {
9
+ try {
10
+ await navigator.clipboard.writeText(text)
11
+ } catch {
12
+ const textarea = document.createElement('textarea')
13
+ textarea.value = text
14
+ textarea.setAttribute('readonly', '')
15
+ textarea.style.cssText = 'position:fixed;left:-9999px;opacity:0;pointer-events:none'
16
+ document.body.appendChild(textarea)
17
+ textarea.select()
18
+ textarea.setSelectionRange(0, textarea.value.length)
19
+ document.execCommand('copy')
20
+ textarea.remove()
21
+ }
22
+ }
23
+
8
24
  /**
9
25
  * Get RSSI signal quality level and color based on dBm value
10
26
  * @param rssi Signal strength in dBm (typically -30 to -90)
@@ -119,7 +135,6 @@ export function renderSignalQualityBadge(rssi: number | undefined): HTMLElement
119
135
  border-radius: 3px;
120
136
  font-size: 10px;
121
137
  font-weight: 600;
122
- margin-left: 8px;
123
138
  `
124
139
  badge.title = quality.description
125
140
 
@@ -927,6 +942,7 @@ export function renderDeviceList(list: any[]): void {
927
942
 
928
943
  status.textContent = `Found ${list.length} device(s)`
929
944
  ul.classList.add('device-grid')
945
+ ul.style.padding = '0'
930
946
  ul.innerHTML = ''
931
947
 
932
948
  // Show remove all button when devices exist
@@ -941,6 +957,7 @@ export function renderDeviceList(list: any[]): void {
941
957
  li.style.display = 'flex'
942
958
  li.style.flexDirection = 'column'
943
959
  li.style.alignItems = 'stretch'
960
+ li.style.padding = '5px 8px'
944
961
  li.style.marginBottom = '0'
945
962
 
946
963
  const info = document.createElement('div')
@@ -950,14 +967,15 @@ export function renderDeviceList(list: any[]): void {
950
967
 
951
968
  const nameContainer = document.createElement('div')
952
969
  nameContainer.style.display = 'flex'
953
- nameContainer.style.flexDirection = 'column'
954
- nameContainer.style.alignItems = 'flex-start'
955
- nameContainer.style.gap = '0'
970
+ nameContainer.style.alignItems = 'center'
971
+ nameContainer.style.marginBottom = '0'
972
+ nameContainer.style.flexWrap = 'wrap'
973
+ nameContainer.style.gap = '4px'
956
974
 
957
975
  const name = document.createElement('div')
958
976
  name.style.fontWeight = '500'
959
977
  name.style.fontSize = '13px'
960
- name.textContent = d.name || d.id
978
+ name.textContent = d.configDeviceName || d.name || d.id
961
979
 
962
980
  const expandedDetails = document.createElement('div')
963
981
  expandedDetails.style.display = 'none'
@@ -978,25 +996,8 @@ export function renderDeviceList(list: any[]): void {
978
996
  expandBtn.style.transform = isHidden ? 'rotate(180deg)' : 'rotate(0deg)'
979
997
  }
980
998
 
981
- const code = document.createElement('code')
982
- code.textContent = d.id
983
- code.style.fontSize = '10px'
984
- code.style.opacity = '0.75'
985
- code.style.marginLeft = '0'
986
- code.style.whiteSpace = 'normal'
987
- code.style.overflowWrap = 'anywhere'
988
- code.style.wordBreak = 'break-word'
989
- code.style.maxWidth = '100%'
990
-
991
- const headerRow = document.createElement('div')
992
- headerRow.style.display = 'inline-flex'
993
- headerRow.style.alignItems = 'center'
994
- headerRow.style.gap = '4px'
995
- headerRow.appendChild(name)
996
- headerRow.appendChild(expandBtn)
997
-
998
- nameContainer.appendChild(headerRow)
999
- nameContainer.appendChild(code)
999
+ nameContainer.appendChild(name)
1000
+ nameContainer.appendChild(expandBtn)
1000
1001
 
1001
1002
  // Add signal strength visualization if RSSI is available
1002
1003
  if (d.rssi !== undefined && d.rssi !== null && d.rssi !== 0) {
@@ -1005,15 +1006,17 @@ export function renderDeviceList(list: any[]): void {
1005
1006
  }
1006
1007
 
1007
1008
  const meta = document.createElement('div')
1008
- meta.style.opacity = '0.75'
1009
- meta.style.marginTop = '0'
1010
- meta.style.fontSize = '11px'
1011
-
1012
- const typeText = d.type ? `type: ${d.type}` : ''
1013
- const connText = d.connectionPreference ? `conn: ${d.connectionPreference}` : ''
1009
+ meta.style.opacity = '0.7'
1010
+ meta.style.fontSize = '10px'
1011
+ meta.style.fontFamily = 'monospace'
1012
+
1013
+ const deviceIdentifier = d.deviceId || d.id
1014
+ const id = `ID: ${deviceIdentifier}`
1015
+ const typeText = d.configDeviceType || d.type ? `Type: ${d.configDeviceType || d.type}` : ''
1016
+ const connText = d.connectionPreference ? `Conn: ${d.connectionPreference}` : ''
1014
1017
  const extText = d.externalPublishProtocol && d.externalPublishProtocol !== 'none' ? `external: ${d.externalPublishProtocol}` : ''
1015
- const roomText = d.room ? `room: ${d.room}` : ''
1016
- meta.textContent = [typeText, connText, extText, roomText].filter(Boolean).join(' | ')
1018
+ const roomText = d.room ? `Room: ${d.room}` : ''
1019
+ meta.textContent = [id, typeText, connText, extText, roomText].filter(Boolean).join(' | ')
1017
1020
 
1018
1021
  info.appendChild(nameContainer)
1019
1022
  info.appendChild(meta)
@@ -1044,7 +1047,9 @@ export function renderDeviceList(list: any[]): void {
1044
1047
  copyBtn.style.fontSize = '11px'
1045
1048
  copyBtn.addEventListener('click', async () => {
1046
1049
  try {
1047
- await navigator.clipboard.writeText(d.id)
1050
+ if (deviceIdentifier) {
1051
+ await copyTextWithFallback(deviceIdentifier)
1052
+ }
1048
1053
  copyBtn.textContent = 'Copied'
1049
1054
  copyBtn.classList.add('success')
1050
1055
  setTimeout(() => {
@@ -1073,8 +1078,8 @@ export function renderDeviceList(list: any[]): void {
1073
1078
 
1074
1079
  buttons.appendChild(editBtn)
1075
1080
  buttons.appendChild(copyBtn)
1076
- buttons.appendChild(createConnectionTestControls(d))
1077
1081
  buttons.appendChild(deleteBtn)
1082
+ buttons.appendChild(createConnectionTestControls(d))
1078
1083
 
1079
1084
  li.appendChild(info)
1080
1085
  li.appendChild(buttons)
@@ -10,10 +10,9 @@ function showToast(
10
10
  // Defensive: check for window and homebridge existence
11
11
  const hb = typeof window !== 'undefined' ? (window as any).homebridge : undefined
12
12
  const toast = hb && typeof hb.toast === 'object' ? hb.toast : undefined
13
- const fn = toast && typeof toast[method] === 'function' ? toast[method] : undefined
14
- if (fn) {
13
+ if (toast && typeof toast[method] === 'function') {
15
14
  try {
16
- fn(message, title)
15
+ toast[method](message, title)
17
16
  return
18
17
  } catch (err) {
19
18
  uiLog.warn(`Toast ${method} threw:`, err)
package/src/index.ts CHANGED
@@ -4,9 +4,9 @@
4
4
  */
5
5
  import type { API } from 'homebridge'
6
6
 
7
+ import { SwitchBotHAPPlatform } from './Platform.HAP.js'
8
+ import { SwitchBotMatterPlatform } from './Platform.Matter.js'
7
9
  import { PLATFORM_NAME, PLUGIN_NAME } from './settings.js'
8
- import { SwitchBotHAPPlatform } from './SwitchBotHAPPlatform.js'
9
- import { SwitchBotMatterPlatform } from './SwitchBotMatterPlatform.js'
10
10
  import { createPlatformProxy } from './utils.js'
11
11
 
12
12
  /**
@@ -1,7 +1,7 @@
1
1
  import { describe, expect, it } from 'vitest'
2
2
 
3
- import { SwitchBotHAPPlatform } from '../../src/SwitchBotHAPPlatform.js'
4
- import { SwitchBotMatterPlatform } from '../../src/SwitchBotMatterPlatform.js'
3
+ import { SwitchBotHAPPlatform } from '../../src/Platform.HAP.js'
4
+ import { SwitchBotMatterPlatform } from '../../src/Platform.Matter.js'
5
5
 
6
6
  describe('accessory restoration', () => {
7
7
  class TestHAPPlatform extends SwitchBotHAPPlatform {
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest'
2
2
 
3
- import { SwitchBotMatterPlatform } from '../../src/SwitchBotMatterPlatform.js'
3
+ import { SwitchBotMatterPlatform } from '../../src/Platform.Matter.js'
4
4
 
5
5
  describe('matter child bridge accessory restoration', () => {
6
6
  class TestMatterPlatform extends SwitchBotMatterPlatform {
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it, vi } from 'vitest'
2
2
 
3
- import { SwitchBotMatterPlatform } from '../../src/SwitchBotMatterPlatform.js'
3
+ import { SwitchBotMatterPlatform } from '../../src/Platform.Matter.js'
4
4
 
5
5
  describe('matter integration platform', () => {
6
6
  class TestMatterPlatform extends SwitchBotMatterPlatform {
@@ -1,7 +1,7 @@
1
1
  import { describe, expect, it } from 'vitest'
2
2
 
3
- import SwitchBotHAPPlatform from '../../src/SwitchBotHAPPlatform.js'
4
- import { SwitchBotMatterPlatform } from '../../src/SwitchBotMatterPlatform.js'
3
+ import SwitchBotHAPPlatform from '../../src/Platform.HAP.js'
4
+ import { SwitchBotMatterPlatform } from '../../src/Platform.Matter.js'
5
5
 
6
6
  const mockLogger = {
7
7
  info: () => {},
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it, vi } from 'vitest'
2
2
 
3
- import { SwitchBotHAPPlatform } from '../../src/SwitchBotHAPPlatform.js'
3
+ import { SwitchBotHAPPlatform } from '../../src/Platform.HAP.js'
4
4
 
5
5
  describe('hAP platform integration', () => {
6
6
  class TestHAPPlatform extends SwitchBotHAPPlatform {
@@ -1 +0,0 @@
1
- {"version":3,"file":"SwitchBotHAPPlatform.d.ts","sourceRoot":"","sources":["../src/SwitchBotHAPPlatform.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;AAO7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,oBAAoB;IAC/B,8BAA8B;IAC9B,GAAG,EAAE,GAAG,GAAG,SAAS,CAAA;IACpB,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,2BAA2B;IAC3B,MAAM,EAAE,qBAAqB,CAAA;IAC7B,mCAAmC;IACnC,OAAO,EAAE,GAAG,EAAE,CAAK;IACnB,gDAAgD;IAChD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,sDAAsD;IACtD,OAAO,CAAC,cAAc,CAAa;IACnC,0CAA0C;IAC1C,OAAO,CAAC,oBAAoB,CAA8B;IAC1D,4CAA4C;IAC5C,OAAO,CAAC,iBAAiB,CAAyC;IAClE,wCAAwC;IACxC,OAAO,CAAC,iBAAiB,CAA8B;IACvD,2CAA2C;IAC3C,OAAO,CAAC,oBAAoB,CAAI;IAChC,yDAAyD;IACzD,OAAO,CAAC,gBAAgB,CAAI;IAE5B;;;;;OAKG;gBACS,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,GAAG;IA2C1D;;;;;;OAMG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IA8DlC;;;;;;;;;;;;;;;;;;;;OAoBG;YACW,sBAAsB;IAuIpC;;;OAGG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;;OAGG;IACH,mBAAmB,IAAI,IAAI;IAS3B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAWrB;;;;;;OAMG;YACW,qBAAqB;IAiCnC;;;;OAIG;IACH,QAAQ,IAAI,IAAI;IAQhB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAkI5B;;;;OAIG;IACG,kBAAkB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvD;;;;OAIG;IACH,wBAAwB,CAAC,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI;CAShD;AAED,eAAe,oBAAoB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SwitchBotHAPPlatform.js","sourceRoot":"","sources":["../src/SwitchBotHAPPlatform.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SwitchBotMatterPlatform.d.ts","sourceRoot":"","sources":["../src/SwitchBotMatterPlatform.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;AAO7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,uBAAuB;IAClC,8BAA8B;IAC9B,GAAG,EAAE,GAAG,GAAG,SAAS,CAAA;IACpB,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,2BAA2B;IAC3B,MAAM,EAAE,qBAAqB,CAAA;IAC7B,mCAAmC;IACnC,OAAO,EAAE,GAAG,EAAE,CAAK;IACnB,gDAAgD;IAChD,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC7B,sDAAsD;IACtD,OAAO,CAAC,cAAc,CAAa;IACnC,0CAA0C;IAC1C,OAAO,CAAC,oBAAoB,CAA8B;IAC1D,4CAA4C;IAC5C,OAAO,CAAC,iBAAiB,CAAyC;IAClE,wCAAwC;IACxC,OAAO,CAAC,iBAAiB,CAA8B;IACvD,2CAA2C;IAC3C,OAAO,CAAC,oBAAoB,CAAI;IAChC,yDAAyD;IACzD,OAAO,CAAC,gBAAgB,CAAI;IAE5B;;;;;OAKG;gBACS,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,GAAG;IA2C1D;;;;;OAKG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAmDlC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,yBAAyB,CAAC,cAAc,EAAE;QAAE,OAAO,EAAE,GAAG,CAAC;QAAC,CAAC,EAAE,GAAG,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,OAAO,CAAC;QAAC,uBAAuB,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;KAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAiI5L,gCAAgC;IAwB9C;;;OAGG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;;OAGG;IACH,mBAAmB,IAAI,IAAI;IAS3B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAWrB;;;;;;OAMG;YACW,qBAAqB;IAiCnC;;;;OAIG;IACH,QAAQ,IAAI,IAAI;IAQhB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAkI5B;;;;OAIG;IACG,kBAAkB,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAUvD;;;;OAIG;IACH,wBAAwB,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI;CAS/C;AAED,eAAe,uBAAuB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"SwitchBotMatterPlatform.js","sourceRoot":"","sources":["../src/SwitchBotMatterPlatform.ts"],"names":[],"mappings":"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"}