homebridge-config-ui-x 5.10.1-alpha.0 → 5.10.1-beta.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 (265) hide show
  1. package/CHANGELOG.md +4 -15
  2. package/README.md +3 -3
  3. package/dist/core/auth/auth.controller.d.ts +4 -0
  4. package/dist/core/config/config.interfaces.d.ts +14 -0
  5. package/dist/core/config/config.service.d.ts +6 -0
  6. package/dist/core/config/config.service.js +8 -0
  7. package/dist/core/config/config.service.js.map +1 -1
  8. package/dist/core/config/config.startup.js +48 -17
  9. package/dist/core/config/config.startup.js.map +1 -1
  10. package/dist/core/feature-flags/feature-flags.registry.js +5 -0
  11. package/dist/core/feature-flags/feature-flags.registry.js.map +1 -1
  12. package/dist/core/homebridge-ipc/homebridge-ipc.service.js +1 -0
  13. package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
  14. package/dist/core/spa/spa-html.service.d.ts +5 -0
  15. package/dist/core/spa/spa-html.service.js +32 -0
  16. package/dist/core/spa/spa-html.service.js.map +1 -0
  17. package/dist/core/spa/spa.filter.d.ts +3 -0
  18. package/dist/core/spa/spa.filter.js +22 -2
  19. package/dist/core/spa/spa.filter.js.map +1 -1
  20. package/dist/core/ssl/ssl-cert-generator.service.d.ts +15 -0
  21. package/dist/core/ssl/ssl-cert-generator.service.js +125 -0
  22. package/dist/core/ssl/ssl-cert-generator.service.js.map +1 -0
  23. package/dist/globalDefaults.js +3 -0
  24. package/dist/globalDefaults.js.map +1 -1
  25. package/dist/main.js +18 -4
  26. package/dist/main.js.map +1 -1
  27. package/dist/modules/accessories/accessories.controller.d.ts +1 -1
  28. package/dist/modules/accessories/accessories.interfaces.d.ts +94 -0
  29. package/dist/modules/accessories/accessories.interfaces.js +2 -0
  30. package/dist/modules/accessories/accessories.interfaces.js.map +1 -0
  31. package/dist/modules/accessories/accessories.module.js +2 -0
  32. package/dist/modules/accessories/accessories.module.js.map +1 -1
  33. package/dist/modules/accessories/accessories.service.d.ts +21 -3
  34. package/dist/modules/accessories/accessories.service.js +280 -17
  35. package/dist/modules/accessories/accessories.service.js.map +1 -1
  36. package/dist/modules/child-bridges/child-bridges.interfaces.d.ts +9 -0
  37. package/dist/modules/config-editor/config-editor.controller.d.ts +4 -0
  38. package/dist/modules/config-editor/config-editor.controller.js +64 -0
  39. package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
  40. package/dist/modules/config-editor/config-editor.service.d.ts +6 -1
  41. package/dist/modules/config-editor/config-editor.service.js +45 -1
  42. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  43. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +1 -1
  44. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  45. package/dist/modules/plugins/plugins.service.d.ts +0 -1
  46. package/dist/modules/plugins/plugins.service.js +18 -17
  47. package/dist/modules/plugins/plugins.service.js.map +1 -1
  48. package/dist/modules/server/server.controller.d.ts +50 -0
  49. package/dist/modules/server/server.controller.js +201 -2
  50. package/dist/modules/server/server.controller.js.map +1 -1
  51. package/dist/modules/server/server.service.d.ts +48 -0
  52. package/dist/modules/server/server.service.js +502 -14
  53. package/dist/modules/server/server.service.js.map +1 -1
  54. package/dist/modules/status/status.gateway.d.ts +2 -0
  55. package/dist/modules/status/status.interfaces.d.ts +11 -0
  56. package/dist/modules/status/status.service.d.ts +4 -1
  57. package/dist/modules/status/status.service.js +21 -2
  58. package/dist/modules/status/status.service.js.map +1 -1
  59. package/docs/matter-todo.md +15 -0
  60. package/docs/ssl-upload-pr.md +103 -0
  61. package/package.json +8 -3
  62. package/public/3rdpartylicenses.txt +554 -606
  63. package/public/assets/matter.svg +8 -0
  64. package/public/assets/monaco/min/vs/assets/editor.worker-Be8ye1pW.js +26 -0
  65. package/public/assets/monaco/min/vs/assets/json.worker-DKiEKt88.js +58 -0
  66. package/public/assets/monaco/min/vs/basic-languages/monaco.contribution.js +1 -0
  67. package/public/assets/monaco/min/vs/editor/editor.main.css +1 -8
  68. package/public/assets/monaco/min/vs/editor/editor.main.js +4 -797
  69. package/public/assets/monaco/min/vs/editor.api-CalNCsUg.js +903 -0
  70. package/public/assets/monaco/min/vs/jsonMode-DULH5oaX.js +7 -0
  71. package/public/assets/monaco/min/vs/language/json/monaco.contribution.js +1 -0
  72. package/public/assets/monaco/min/vs/loader.js +1364 -7
  73. package/public/assets/monaco/min/vs/lspLanguageFeatures-kM9O9rjY.js +4 -0
  74. package/public/assets/monaco/min/vs/monaco.contribution-D2OdxNBt.js +1 -0
  75. package/public/assets/monaco/min/vs/monaco.contribution-DO3azKX8.js +1 -0
  76. package/public/assets/monaco/min/vs/monaco.contribution-EcChJV6a.js +1 -0
  77. package/public/assets/monaco/min/vs/monaco.contribution-qLAYrEOP.js +1 -0
  78. package/public/assets/monaco/min/vs/nls.messages-loader.js +1 -0
  79. package/public/assets/monaco/min/vs/workers-DcJshg-q.js +1 -0
  80. package/public/assets/plugin-ui-utils/ui.js +3 -0
  81. package/public/assets/plugin-ui-utils/ui.js.map +1 -1
  82. package/public/chunk-2D7CDA3H.js +1 -0
  83. package/public/chunk-2GBZLCJW.js +1 -0
  84. package/public/chunk-33YDZRAK.js +1 -0
  85. package/public/chunk-3DG6CT5D.js +2 -0
  86. package/public/chunk-3F75CKTQ.js +1 -0
  87. package/public/chunk-3OSRGC5M.js +1 -0
  88. package/public/chunk-3UTT42KH.js +1 -0
  89. package/public/chunk-442FBVB5.js +1 -0
  90. package/public/chunk-4PPFVY5K.js +1 -0
  91. package/public/chunk-4RWLV5CJ.js +1 -0
  92. package/public/chunk-4UDSSFBN.js +1 -0
  93. package/public/chunk-4XZK5MQY.js +1 -0
  94. package/public/chunk-5S4MIY7E.js +1 -0
  95. package/public/chunk-5X5S4L7Y.js +1 -0
  96. package/public/chunk-6ELMQIBK.js +1 -0
  97. package/public/chunk-6I27GJJF.js +1 -0
  98. package/public/{chunk-ACVPGZ3H.js → chunk-7CDYTG4I.js} +1 -1
  99. package/public/chunk-7DWXCRSP.js +1 -0
  100. package/public/chunk-7RJ5H5OP.js +1 -0
  101. package/public/chunk-ABQLMP2L.js +1 -0
  102. package/public/chunk-B4AJQJMI.js +1 -0
  103. package/public/chunk-BEI5QPKL.js +5 -0
  104. package/public/chunk-BEWAKOMK.js +1 -0
  105. package/public/{chunk-FHGIL4GK.js → chunk-BMOLDRJ3.js} +1 -1
  106. package/public/chunk-BOW5E4YK.js +50 -0
  107. package/public/chunk-BSST5MPT.js +1 -0
  108. package/public/chunk-BSXPNFI5.js +1 -0
  109. package/public/chunk-C4IIDRJP.js +1 -0
  110. package/public/chunk-CIWR3BDK.js +5 -0
  111. package/public/chunk-CMS4LVBG.js +1 -0
  112. package/public/chunk-CO3QJQRO.js +1 -0
  113. package/public/chunk-CS2WBXWW.js +1 -0
  114. package/public/chunk-CTWHZU36.js +1 -0
  115. package/public/chunk-DAMERMP3.js +1 -0
  116. package/public/chunk-DM74WNXP.js +1 -0
  117. package/public/chunk-DMKHEJF5.js +3 -0
  118. package/public/chunk-DTFJZNTX.js +1 -0
  119. package/public/chunk-DWU5C3KH.js +1 -0
  120. package/public/chunk-EBFB2GZT.js +1 -0
  121. package/public/chunk-EEA6UA46.js +2 -0
  122. package/public/chunk-EJACNX3Z.js +1 -0
  123. package/public/{chunk-U73PAFR5.js → chunk-FE43ULOM.js} +1 -1
  124. package/public/chunk-GPMU3WMO.js +68 -0
  125. package/public/chunk-GWHA2DEF.js +1 -0
  126. package/public/chunk-GXD2SS6L.js +1 -0
  127. package/public/chunk-H6QDC36H.js +1 -0
  128. package/public/{chunk-UPB765LT.js → chunk-H7F7H5MW.js} +1 -1
  129. package/public/chunk-HAJT335F.js +1 -0
  130. package/public/chunk-HK3N2YPM.js +1 -0
  131. package/public/chunk-HLNMCR4K.js +1 -0
  132. package/public/chunk-IC6BLNW5.js +1 -0
  133. package/public/chunk-IMRVMPXI.js +1 -0
  134. package/public/chunk-IPRQGPVV.js +1 -0
  135. package/public/chunk-IVZ5ER6L.js +1 -0
  136. package/public/chunk-JRQC3M7W.js +4 -0
  137. package/public/chunk-JT7TYR5C.js +1 -0
  138. package/public/chunk-KDXCBENV.js +2 -0
  139. package/public/chunk-KGOOP2T6.js +1 -0
  140. package/public/chunk-KMSHJTEM.js +1 -0
  141. package/public/chunk-L77RLTDM.js +1 -0
  142. package/public/chunk-LCGZABYG.js +1 -0
  143. package/public/chunk-LG53BDFP.js +1 -0
  144. package/public/chunk-LJMU7UD3.js +1 -0
  145. package/public/chunk-LKNJHPL6.js +1 -0
  146. package/public/chunk-LKODOMMX.js +1 -0
  147. package/public/chunk-LUUAC57N.js +1 -0
  148. package/public/chunk-MIWSF7W2.js +1 -0
  149. package/public/chunk-MQTRL6KN.js +1 -0
  150. package/public/{chunk-NLVJP2FS.js → chunk-MS6AXMT2.js} +52 -2
  151. package/public/chunk-NP23WSXR.js +1 -0
  152. package/public/chunk-O3SZVIF6.js +1 -0
  153. package/public/chunk-ODXGF3LF.js +1 -0
  154. package/public/chunk-OPDTKONB.js +1 -0
  155. package/public/chunk-ORK6IK47.js +4 -0
  156. package/public/chunk-OZI5E5HI.js +1 -0
  157. package/public/chunk-P4KZ2HSY.js +1 -0
  158. package/public/chunk-PI4V6TBF.js +1 -0
  159. package/public/chunk-PMN4OFOP.js +1 -0
  160. package/public/chunk-Q4WN5E2X.js +1 -0
  161. package/public/chunk-QA6IRNX4.js +1 -0
  162. package/public/chunk-QGV5S3KG.js +1 -0
  163. package/public/chunk-QKEI7JJT.js +1 -0
  164. package/public/chunk-QNQ4HXBD.js +1 -0
  165. package/public/chunk-QNQIBHMP.js +1 -0
  166. package/public/chunk-R4E7RV22.js +1 -0
  167. package/public/chunk-R5Q7W4AU.js +1 -0
  168. package/public/chunk-RQG4TZOZ.js +1 -0
  169. package/public/chunk-SN3EVQDP.js +1 -0
  170. package/public/chunk-T3526HQB.js +1 -0
  171. package/public/{chunk-J3GNTL4X.js → chunk-T4IEJNVJ.js} +1 -1
  172. package/public/chunk-TTPURYKZ.js +1 -0
  173. package/public/{chunk-ZAQCBQTS.js → chunk-U4YCHJUJ.js} +2 -2
  174. package/public/chunk-UAFCVKMR.js +1 -0
  175. package/public/chunk-UBCYUHPO.js +1 -0
  176. package/public/chunk-UJEB6C35.js +1 -0
  177. package/public/chunk-UQP4IIIX.js +1 -0
  178. package/public/chunk-URTTNRYM.js +1 -0
  179. package/public/chunk-USFURAEW.js +1 -0
  180. package/public/chunk-UVRDZGSU.js +1 -0
  181. package/public/chunk-VBTEO65F.js +1 -0
  182. package/public/chunk-WCRO6YQB.js +16 -0
  183. package/public/chunk-XL5BAQKW.js +8 -0
  184. package/public/chunk-XUAJJMQ4.js +1 -0
  185. package/public/chunk-Y67I4K2H.js +1 -0
  186. package/public/chunk-YHOHHKYL.js +1 -0
  187. package/public/chunk-ZABK6QJY.js +1 -0
  188. package/public/chunk-ZCGZM7LU.js +1 -0
  189. package/public/chunk-ZE7IZECI.js +19 -0
  190. package/public/chunk-ZGIR65XW.js +1 -0
  191. package/public/chunk-ZXID2WUA.js +1 -0
  192. package/public/index.html +2 -2
  193. package/public/main-VGG7NRKO.js +1 -0
  194. package/public/media/matter-P563JGDL.svg +8 -0
  195. package/public/styles-CT2LPGES.css +1 -0
  196. package/scripts/extract-plugin-alias.js +53 -2
  197. package/public/assets/monaco/min/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  198. package/public/assets/monaco/min/vs/base/worker/workerMain.js +0 -31
  199. package/public/assets/monaco/min/vs/basic-languages/shell/shell.js +0 -10
  200. package/public/assets/monaco/min/vs/language/json/jsonMode.js +0 -19
  201. package/public/assets/monaco/min/vs/language/json/jsonWorker.js +0 -42
  202. package/public/chunk-22RLE62I.js +0 -1
  203. package/public/chunk-2A6XY76J.js +0 -1
  204. package/public/chunk-2AF3WD4J.js +0 -2
  205. package/public/chunk-3DBRQ7MK.js +0 -1
  206. package/public/chunk-4IR2BGMY.js +0 -2
  207. package/public/chunk-57IPNC7F.js +0 -1
  208. package/public/chunk-6QNJJYEZ.js +0 -4
  209. package/public/chunk-72KEQFMG.js +0 -1
  210. package/public/chunk-A5FPX3XJ.js +0 -1
  211. package/public/chunk-A6U6HYY3.js +0 -1
  212. package/public/chunk-APMBCXUH.js +0 -1
  213. package/public/chunk-AQFUOCN5.js +0 -1
  214. package/public/chunk-B4HZ3C7R.js +0 -1
  215. package/public/chunk-BJQY6ZPJ.js +0 -1
  216. package/public/chunk-BQRR3H5O.js +0 -1
  217. package/public/chunk-C534VT6D.js +0 -1
  218. package/public/chunk-C64SJK5O.js +0 -16
  219. package/public/chunk-CAYKYCA4.js +0 -1
  220. package/public/chunk-DEAIAR5T.js +0 -1
  221. package/public/chunk-E2BBQYGT.js +0 -8
  222. package/public/chunk-E2J5A7BL.js +0 -1
  223. package/public/chunk-EANCGCZ4.js +0 -1
  224. package/public/chunk-ELLOA7NV.js +0 -1
  225. package/public/chunk-F535KZNK.js +0 -1
  226. package/public/chunk-FBCPF7OW.js +0 -1
  227. package/public/chunk-FC5NA4YQ.js +0 -51
  228. package/public/chunk-FXPYZAMJ.js +0 -1
  229. package/public/chunk-FYY57EXZ.js +0 -5
  230. package/public/chunk-G2R4JMBA.js +0 -3
  231. package/public/chunk-H4NAW7LB.js +0 -1
  232. package/public/chunk-HGZUNSQU.js +0 -1
  233. package/public/chunk-HPNXSGCR.js +0 -1
  234. package/public/chunk-HW3LDSBY.js +0 -1
  235. package/public/chunk-IADCQFCV.js +0 -5
  236. package/public/chunk-ISM5U2ZP.js +0 -1
  237. package/public/chunk-IYQU2T5J.js +0 -19
  238. package/public/chunk-JICTKNBT.js +0 -1
  239. package/public/chunk-JVB5DKDR.js +0 -1
  240. package/public/chunk-KU7PGJPQ.js +0 -1
  241. package/public/chunk-L5OY5K3Z.js +0 -1
  242. package/public/chunk-NZHDV2UO.js +0 -1
  243. package/public/chunk-NZUGX67J.js +0 -1
  244. package/public/chunk-PHY7W3BQ.js +0 -1
  245. package/public/chunk-QRNZH52Q.js +0 -1
  246. package/public/chunk-RDXOP2RA.js +0 -1
  247. package/public/chunk-RQF25DTQ.js +0 -1
  248. package/public/chunk-RR2BOWSZ.js +0 -40
  249. package/public/chunk-SQSP77TI.js +0 -1
  250. package/public/chunk-TOWEYTJH.js +0 -1
  251. package/public/chunk-UHXVBJ2O.js +0 -1
  252. package/public/chunk-VLLREE2S.js +0 -1
  253. package/public/chunk-W5BUXVY6.js +0 -5
  254. package/public/chunk-WCOZQRWI.js +0 -1
  255. package/public/chunk-WDMQUU57.js +0 -1
  256. package/public/chunk-WOVMIXAU.js +0 -4
  257. package/public/chunk-XTLENV3O.js +0 -1
  258. package/public/chunk-YINTXBI6.js +0 -50
  259. package/public/chunk-YS7B334L.js +0 -1
  260. package/public/chunk-YYUGFDEY.js +0 -1
  261. package/public/chunk-ZB45BBXI.js +0 -1
  262. package/public/chunk-ZSZ4ITUC.js +0 -1
  263. package/public/main-QWNFO5VR.js +0 -1
  264. package/public/styles-7EFV5QBG.css +0 -1
  265. /package/public/{polyfills-5KWHJ7II.js → polyfills-NISNRVWY.js} +0 -0
@@ -5,6 +5,7 @@
5
5
  */
6
6
 
7
7
  import { EventEmitter } from 'node:events'
8
+ import { readFileSync } from 'node:fs'
8
9
  import { createRequire } from 'node:module'
9
10
  import path from 'node:path'
10
11
  import process from 'node:process'
@@ -40,6 +41,26 @@ const HomebridgeApiMock = {
40
41
  serverVersion: '1.2.3',
41
42
  on: () => { /** mock */ },
42
43
  emit: () => { /** mock */ },
44
+ // Mock Matter API
45
+ isMatterAvailable() {
46
+ return true
47
+ },
48
+ isMatterEnabled() {
49
+ return true
50
+ },
51
+ matterDeviceTypes: new Proxy({}, {
52
+ get() {
53
+ return {} // Return empty object for any device type
54
+ },
55
+ }),
56
+ matterClusters: new Proxy({}, {
57
+ get() {
58
+ return {} // Return empty object for any cluster
59
+ },
60
+ }),
61
+ registerMatterAccessory: () => { /** mock */ },
62
+ unregisterMatterAccessory: () => { /** mock */ },
63
+ updateMatterAccessoryState: () => { /** mock */ },
43
64
  hap: {
44
65
  Characteristic: new class Characteristic extends EventEmitter {
45
66
  constructor() {
@@ -103,11 +124,41 @@ const HomebridgeApiMock = {
103
124
  },
104
125
  }
105
126
 
106
- function main() {
127
+ async function main() {
107
128
  try {
108
129
  let pluginInitializer
109
130
  const pluginPath = process.env.UIX_EXTRACT_PLUGIN_PATH
110
- const pluginModules = require(pluginPath)
131
+
132
+ // Read package.json to get the proper entry point
133
+ let actualEntryPoint = pluginPath
134
+ try {
135
+ const packageJsonPath = path.join(pluginPath, 'package.json')
136
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf8'))
137
+
138
+ if (packageJson.main) {
139
+ actualEntryPoint = path.join(pluginPath, packageJson.main)
140
+ }
141
+ } catch (err) {
142
+ console.error('[extract-plugin-alias] Could not read package.json, using directory path')
143
+ }
144
+
145
+ let pluginModules
146
+
147
+ // Try to load as CommonJS first
148
+ try {
149
+ pluginModules = require(actualEntryPoint)
150
+ } catch (requireError) {
151
+ // If require fails, try dynamic import for ESM modules
152
+ try {
153
+ // For ESM, we need to use file:// URL on some platforms
154
+ const importPath = actualEntryPoint.startsWith('/') || actualEntryPoint.startsWith('file://')
155
+ ? actualEntryPoint
156
+ : path.resolve(actualEntryPoint)
157
+ pluginModules = await import(importPath)
158
+ } catch (importError) {
159
+ throw requireError // Throw the original error
160
+ }
161
+ }
111
162
 
112
163
  if (typeof pluginModules === 'function') {
113
164
  pluginInitializer = pluginModules