homebridge 2.0.0-alpha.43 → 2.0.0-alpha.44

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 (76) hide show
  1. package/dist/api.d.ts +30 -0
  2. package/dist/api.d.ts.map +1 -1
  3. package/dist/api.js +26 -0
  4. package/dist/api.js.map +1 -1
  5. package/dist/bridgeService.d.ts +3 -13
  6. package/dist/bridgeService.d.ts.map +1 -1
  7. package/dist/bridgeService.js +8 -24
  8. package/dist/bridgeService.js.map +1 -1
  9. package/dist/childBridgeFork.d.ts +0 -8
  10. package/dist/childBridgeFork.d.ts.map +1 -1
  11. package/dist/childBridgeFork.js +26 -127
  12. package/dist/childBridgeFork.js.map +1 -1
  13. package/dist/childBridgeService.d.ts +0 -12
  14. package/dist/childBridgeService.d.ts.map +1 -1
  15. package/dist/childBridgeService.js +9 -25
  16. package/dist/childBridgeService.js.map +1 -1
  17. package/dist/cli.d.ts.map +1 -1
  18. package/dist/cli.js +1 -3
  19. package/dist/cli.js.map +1 -1
  20. package/dist/ipcService.d.ts +2 -12
  21. package/dist/ipcService.d.ts.map +1 -1
  22. package/dist/ipcService.js +0 -7
  23. package/dist/ipcService.js.map +1 -1
  24. package/dist/matter/index.d.ts +1 -1
  25. package/dist/matter/index.d.ts.map +1 -1
  26. package/dist/matter/index.js.map +1 -1
  27. package/dist/matter/matterAccessoryCache.d.ts +73 -0
  28. package/dist/matter/matterAccessoryCache.d.ts.map +1 -0
  29. package/dist/matter/matterAccessoryCache.js +168 -0
  30. package/dist/matter/matterAccessoryCache.js.map +1 -0
  31. package/dist/matter/matterBehaviors.d.ts +123 -0
  32. package/dist/matter/matterBehaviors.d.ts.map +1 -0
  33. package/dist/matter/matterBehaviors.js +582 -0
  34. package/dist/matter/matterBehaviors.js.map +1 -0
  35. package/dist/matter/matterConfigValidator.d.ts +0 -1
  36. package/dist/matter/matterConfigValidator.d.ts.map +1 -1
  37. package/dist/matter/matterConfigValidator.js +15 -45
  38. package/dist/matter/matterConfigValidator.js.map +1 -1
  39. package/dist/matter/matterErrorHandler.d.ts +1 -1
  40. package/dist/matter/matterErrorHandler.d.ts.map +1 -1
  41. package/dist/matter/matterErrorHandler.js +35 -22
  42. package/dist/matter/matterErrorHandler.js.map +1 -1
  43. package/dist/matter/matterNetworkMonitor.d.ts +3 -0
  44. package/dist/matter/matterNetworkMonitor.d.ts.map +1 -1
  45. package/dist/matter/matterNetworkMonitor.js +49 -26
  46. package/dist/matter/matterNetworkMonitor.js.map +1 -1
  47. package/dist/matter/matterServer.d.ts +79 -5
  48. package/dist/matter/matterServer.d.ts.map +1 -1
  49. package/dist/matter/matterServer.js +487 -97
  50. package/dist/matter/matterServer.js.map +1 -1
  51. package/dist/matter/matterSharedTypes.d.ts +12 -4
  52. package/dist/matter/matterSharedTypes.d.ts.map +1 -1
  53. package/dist/matter/matterSharedTypes.js.map +1 -1
  54. package/dist/matter/matterStorage.d.ts +11 -1
  55. package/dist/matter/matterStorage.d.ts.map +1 -1
  56. package/dist/matter/matterStorage.js +12 -2
  57. package/dist/matter/matterStorage.js.map +1 -1
  58. package/dist/matter/matterTypes.d.ts +68 -19
  59. package/dist/matter/matterTypes.d.ts.map +1 -1
  60. package/dist/matter/matterTypes.js.map +1 -1
  61. package/dist/matter/matterValidation.d.ts +57 -0
  62. package/dist/matter/matterValidation.d.ts.map +1 -0
  63. package/dist/matter/matterValidation.js +100 -0
  64. package/dist/matter/matterValidation.js.map +1 -0
  65. package/dist/plugin.d.ts.map +1 -1
  66. package/dist/plugin.js +2 -4
  67. package/dist/plugin.js.map +1 -1
  68. package/dist/server.d.ts +0 -7
  69. package/dist/server.d.ts.map +1 -1
  70. package/dist/server.js +80 -112
  71. package/dist/server.js.map +1 -1
  72. package/package.json +3 -3
  73. package/dist/matter/matterDiagnostics.d.ts +0 -121
  74. package/dist/matter/matterDiagnostics.d.ts.map +0 -1
  75. package/dist/matter/matterDiagnostics.js +0 -323
  76. package/dist/matter/matterDiagnostics.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,OAAO,MAAM,cAAc,CAAA;AAElC,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,MAAM,MAAM,iBAAiB,CAAA;AAEpC,OAAO,EAAE,aAAa,EAAgC,MAAM,UAAU,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAsC,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/C,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAA;AAc3B,gDAAgD;AAChD,MAAM,CAAN,IAAkB,YAejB;AAfD,WAAkB,YAAY;IAC5B;;OAEG;IACH,mCAAmB,CAAA;IAEnB;;OAEG;IACH,yBAAS,CAAA;IAET;;OAEG;IACH,6BAAa,CAAA;AACf,CAAC,EAfiB,YAAY,KAAZ,YAAY,QAe7B;AAED,MAAM,OAAO,MAAM;IA0BP;IAzBO,GAAG,CAAe;IAClB,aAAa,CAAe;IAC5B,aAAa,CAAe;IAC5B,UAAU,CAAY;IACtB,mBAAmB,CAAqB;IAExC,MAAM,CAAkB;IAEzC,sCAAsC;IACtC,sGAAsG;IACrF,YAAY,GAAoC,IAAI,GAAG,EAAE,CAAA;IAE1E,sDAAsD;IAC9C,YAAY,CAAe;IAEnC,mEAAmE;IAClD,iBAAiB,GAAoC,IAAI,GAAG,EAAE,CAAA;IAE/E,wDAAwD;IACvC,eAAe,GAAgC,IAAI,GAAG,EAAE,CAAA;IAEzE,wBAAwB;IAChB,YAAY,wCAAqC;IAEzD,YACU,UAA6B,EAAE;QAA/B,YAAO,GAAP,OAAO,CAAwB;QAEvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;QAEjC,8CAA8C;QAC9C,IAAI,CAAC,GAAG,GAAG,IAAI,aAAa,EAAE,CAAA;QAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,EAAE,CAAA;QAClC,IAAI,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAErE,wBAAwB;QACxB,IAAI,CAAC,eAAe,sCAAsB,CAAA;QAE1C,4BAA4B;QAC5B,MAAM,oBAAoB,GAAyB;YACjD,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;YAClC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;YAC5C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;SACvD,CAAA;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAA;QAEtE,4BAA4B;QAC5B,MAAM,YAAY,GAAkB;YAClC,oBAAoB,EAAE,IAAI,CAAC,mBAAmB,EAAE;YAChD,yBAAyB,EAAE,mBAAmB;SAC/C,CAAA;QAED,mEAAmE;QACnE,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAEzC,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CACpC,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,mBAAmB,EACxB,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,MAAM,EAClB,IAAI,CAAC,MAAM,CACZ,CAAA;QAED,yCAAyC;QACzC,IAAI,CAAC,GAAG,CAAC,EAAE,qFAAiD,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC9G,IAAI,CAAC,GAAG,CAAC,EAAE,yFAAmD,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAElH,8CAA8C;QAC9C,IAAI,CAAC,GAAG,CAAC,EAAE,mFAAgD,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAE5G,uCAAuC;QACvC,IAAI,CAAC,GAAG,CAAC,EAAE,6EAA6C,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACtG,IAAI,CAAC,GAAG,CAAC,EAAE,iFAA+C,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAC1G,IAAI,CAAC,GAAG,CAAC,EAAE,oFAAiD,IAAI,CAAC,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAE7G,qDAAqD;QACrD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,oDAAiC,GAAG,EAAE;YAChE,IAAI,CAAC,eAAe,4BAAiB,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,yDAAyD;QACzD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,4CAA6B,GAAG,EAAE;YAC5D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,2DAA2D;QAC3D,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,gDAA+B,GAAG,EAAE;YAC9D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,MAAoB;QAC1C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAA;QAE1B,IAAI,CAAC,UAAU,CAAC,WAAW,mEAAwC;YACjE,IAAI,EAAE,KAAc,EAAE,qBAAqB;YAC3C,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,IAAI;YACpE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,IAAI;YACxD,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;YACxE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ;YACrC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG;SAC5B,CAAC,CAAA;IACJ,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,0BAA0B,EAAE,CAAA;QACnC,CAAC;QAED,MAAM,QAAQ,GAAoB,EAAE,CAAA;QAEpC,8BAA8B;QAC9B,MAAM,IAAI,CAAC,aAAa,CAAC,qCAAqC,EAAE,CAAA;QAEhE,qBAAqB;QACrB,MAAM,IAAI,CAAC,aAAa,CAAC,0BAA0B,EAAE,CAAA;QAErD,sDAAsD;QACtD,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAA;QAEnC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;QACxC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,eAAe,EAAE,CAAA;QACxB,CAAC;QAED,0BAA0B;QAC1B,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YACrD,WAAW,CAAC,KAAK,EAAE,CAAA;QACrB,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,aAAa,CAAC,gCAAgC,EAAE,CAAA;QAErD,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAA;QAEzB,mFAAmF;QACnF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;aACxB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAA;IACrC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,sBAAsB;QAClC,gDAAgD;QAChD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC/B,OAAM;QACR,CAAC;QAED,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;YAEzD,uDAAuD;YACvD,IAAI,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAA;YAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,SAAuB,CAAC,CAAA;gBAC9G,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,UAAU,GAAG,IAAI,CAAA,CAAC,sBAAsB;oBACxC,GAAG,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAA;gBACzF,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,kBAAkB,UAAU,mCAAmC,CAAC,CAAA;gBAC3E,CAAC;YACH,CAAC;YAED,gCAAgC;YAChC,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC;gBACnC,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC9B,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,aAAa;gBACvB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,0BAA0B,CAAC;aACvI,CAAC,CAAA;YAEF,0BAA0B;YAC1B,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAA;YAE/B,GAAG,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;YAErD,wCAAwC;YACxC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;YAEhC,qEAAqE;YACrE,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;gBAC3C,IAAI,CAAC,gCAAgC,EAAE,CAAA;YACzC,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,CAAC,qDAAqD,EAAE,KAAK,CAAC,CAAA;YAEvE,mDAAmD;YACnD,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBACb,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAA;gBAC1F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAA;gBAC1F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAA;gBAC1F,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;gBAC3F,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACf,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gCAAgC;QACtC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,EAAE,CAAC;YAC/D,OAAM;QACR,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,CAAA;QAElE,oDAAoD;QACpD,MAAM,YAAY,GAAG;YACnB,IAAI,EAAE,QAAiB;YACvB,MAAM,EAAE,IAAa;YACrB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI;YAC7C,QAAQ,EAAE,iBAAiB,CAAC,MAAM,EAAE,gCAAgC;YACpE,GAAG,EAAE,iBAAiB,CAAC,iBAAiB,EAAE,sCAAsC;YAChF,YAAY,EAAE,iBAAiB,CAAC,YAAY;YAC5C,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;YACpC,aAAa,EAAE,iBAAiB,CAAC,aAAa;YAC9C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,0BAA0B,CAAC;YACvI,MAAM,EAAE,aAAa;YACrB,UAAU,EAAE,aAAa;YACzB,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,MAAM;YACtD,YAAY,EAAE,iBAAiB,CAAC,YAAY;SAC7C,CAAA;QAED,IAAI,CAAC,UAAU,CAAC,WAAW,gFAA+C,YAAY,CAAC,CAAA;IACzF,CAAC;IAEM,KAAK,CAAC,QAAQ;QACnB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAA;QAE7B,qCAAqC;QACrC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAA;YACnD,CAAC;QACH,CAAC;QAED,wEAAwE;QAExE,IAAI,CAAC,eAAe,gCAAmB,CAAA;IACzC,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAA;QAElC,yDAAyD;QACzD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAI,CAAC,CAAA;IAC9C,CAAC;IAEO,gCAAgC,CAAC,WAAgC;QACvE,GAAG,CAAC,IAAI,CAAC,cAAc,WAAW,CAAC,MAAM,uBAAuB,CAAC,CAAA;QACjE,6CAA6C;QAC7C,0EAA0E;IAC5E,CAAC;IAEO,iCAAiC,CAAC,WAAgC;QACxE,sBAAsB;QACtB,IAAI,CAAC,aAAa,CAAC,iCAAiC,CAAC,WAAW,CAAC,CAAA;IACnE,CAAC;IAEO,mCAAmC,CAAC,WAAgC;QAC1E,sBAAsB;QACtB,IAAI,CAAC,aAAa,CAAC,mCAAmC,CAAC,WAAW,CAAC,CAAA;IACrE,CAAC;IAEO,6BAA6B,CAAC,SAAc;QAClD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAA;YAC3E,OAAM;QACR,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;IAChD,CAAC;IAEO,+BAA+B,CAAC,IAAY;QAClD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAA;YAC7E,OAAM;QACR,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC7C,CAAC;IAEO,gCAAgC,CAAC,IAAY,EAAE,OAAe,EAAE,UAA+B;QACrG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAA;YAC/E,OAAM;QACR,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;IACnE,CAAC;IAEO,MAAM,CAAC,UAAU;QACvB,kCAAkC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QAEpC,MAAM,aAAa,GAAwB;YACzC,IAAI,EAAE,YAAY;YAClB,QAAQ,EAAE,mBAAmB;YAC7B,GAAG,EAAE,YAAY;SAClB,CAAA;QAED,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,UAAU,CAAC,CAAA;YACnD,OAAO;gBACL,MAAM,EAAE,aAAa;gBACrB,WAAW,EAAE,EAAE;gBACf,SAAS,EAAE,EAAE;aACd,CAAA;QACH,CAAC;QAED,IAAI,MAAiC,CAAA;QACrC,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;QACrE,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAA;YAC/D,GAAG,CAAC,KAAK,CAAC,oFAAoF,CAAC,CAAA;YAC/F,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACb,MAAM,KAAK,CAAA;QACb,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBAC3C,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;oBAC1C,GAAG,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAA;oBAC3F,MAAM,CAAC,KAAK,GAAG,SAAS,CAAA;gBAC1B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,6FAA6F,CAAC,CAAA;gBACxG,MAAM,CAAC,KAAK,GAAG,SAAS,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAwB,MAAM,CAAC,MAAM,IAAI,aAAa,CAAA;QAClE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,CAAA;QAC/C,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAA;QAC3D,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,aAAa,CAAC,GAAG,CAAA;QAC5C,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;QAEtB,4DAA4D;QAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAS,CAAA;QACxC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,uFAAuF,CAAC,CAAA;QAC3I,CAAC;QAED,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAA;QAC7C,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAA;QAEzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAA;YAC9D,MAAM,CAAC,WAAW,GAAG,EAAE,CAAA;QACzB,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAA;YAC5D,MAAM,CAAC,SAAS,GAAG,EAAE,CAAA;QACvB,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,0DAA0D,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAExH,mDAAmD;QACnD,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;YAC3I,qCAAqC;YACrC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACzB,kDAAkD;gBAClD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC/B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,0BAA0B,CAAA;gBAChH,CAAC;gBAED,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBACvE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;oBACxB,GAAG,CAAC,KAAK,CAAC,8FAA8F,CAAC,CAAA;oBACzG,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAA;gBAC7B,CAAC;YACH,CAAC;YAED,wEAAwE;YACxE,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,6BAA6B,CAC/E,MAAM,CAAC,SAAkB,EACzB,MAAM,CAAC,WAAoB,CAC5B,CAAA;YAED,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;gBACnC,GAAG,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAA;YAC3F,CAAC;YAED,2FAA2F;YAC3F,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;gBAC/B,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAA;gBAChD,MAAM,gBAAgB,GAAa,EAAE,CAAA;gBAErC,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAkB,EAAE,CAAC;oBACjD,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;wBACnC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;oBACrD,CAAC;gBACH,CAAC;gBAED,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,WAAoB,EAAE,CAAC;oBACpD,IAAI,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;wBACpC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;oBACtD,CAAC;gBACH,CAAC;gBAED,IAAI,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,2BAA2B,cAAc,sEAAsE,CAAC,CAAA;gBAC5H,CAAC;gBAED,+CAA+C;gBAC/C,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC;oBAC7E,GAAG,CAAC,IAAI,CAAC,wBAAwB,MAAM,CAAC,MAAM,CAAC,IAAI,oBAAoB,cAAc,uDAAuD,CAAC,CAAA;gBAC/I,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC7B,IAAI,CAAC;;;;;aAKJ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,CAAA;gBACpC,GAAG,CAAC,KAAK,CAAC,kFAAkF,CAAC,CAAA;YAC/F,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,CAAA;QACtC,CAAC;QAED,OAAO,MAA0B,CAAA;IACnC,CAAC;IAEO,eAAe;QACrB,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,iBAAiB,CAAC,CAAA;QAEpE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,eAAe,EAAE,KAAK,EAAE,EAAE;YACzD,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;gBAC/B,GAAG,CAAC,IAAI,CAAC,sFAAsF;sBAC3F,mDAAmD,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA,CAAC,gDAAgD;gBACpH,OAAM;YACR,CAAC;YAED,MAAM,mBAAmB,GAAwC,eAAe,CAAC,SAAS,CAAA;YAC1F,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,CAAA;YACxC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,GAAG,CAAC,IAAI,CAAC,6FAA6F,EAAE,mBAAmB,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;gBACvI,OAAM;YACR,CAAC;YAED,IAAI,MAAc,CAAA;YAClB,IAAI,WAAuC,CAAA;YAE3C,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,CAAA;YACxE,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACxB,OAAM;YACR,CAAC;YAED,mCAAmC;YACnC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,sCAAsC,mBAAmB,wCAAwC,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAA;gBAC7J,OAAM;YACR,CAAC;YAED,IAAI,CAAC;gBACH,WAAW,GAAG,MAAM,CAAC,uBAAuB,CAAC,mBAAmB,CAAC,CAAA;YACnE,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,GAAG,CAAC,KAAK,CAAC,gCAAgC,mBAAmB,+CAA+C,KAAK,GAAG,CAAC,wCAAwC,MAAM,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAA;gBACrM,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA,CAAC,+DAA+D;gBAChF,OAAM;YACR,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YAC7C,MAAM,CAAC,8BAA8B,EAAE,mBAAmB,CAAC,CAAA;YAE3D,wDAAwD;YACxD,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;gBAC5B,0EAA0E;gBAC1E,IAAI,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrC,eAAe,CAAC,OAAO,CAAC,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAA;gBACnF,CAAC;gBAED,4CAA4C;gBAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,yCAAuB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;gBAE1I,IAAI,CAAC;oBACH,IAAI,CAAC,yBAAyB,yCAAuB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAAE,EAAE,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;gBAC7I,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;oBACxB,OAAM;gBACR,CAAC;gBAED,IAAI,WAA+B,CAAA;gBAEnC,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAE,CAAA;oBAC/C,MAAM,CAAC,mCAAmC,SAAS,EAAE,CAAC,CAAA;gBACxD,CAAC;qBAAM,CAAC;oBACN,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAA;oBAC7E,MAAM,CAAC,gBAAgB,UAAU,iBAAiB,SAAS,EAAE,CAAC,CAAA;oBAC9D,WAAW,GAAG,IAAI,kBAAkB,yCAElC,mBAAmB,EACnB,MAAM,EACN,eAAe,CAAC,OAAO,EACvB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,mBAAmB,CACzB,CAAA;oBAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;gBAC/C,CAAC;gBAED,qCAAqC;gBACrC,WAAW,CAAC,SAAS,CAAC,eAAe,CAAC,CAAA;gBAEtC,2FAA2F;gBAC3F,2EAA2E;gBAE3E,OAAM,CAAC,sBAAsB;YAC/B,CAAC;YAED,MAAM,iBAAiB,GAAoB,IAAI,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YAE7F,8IAA8I;YAC9I,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,mBAAmB,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;YAE/I,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAA;gBAC1D,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,MAAM,CAAC,KAAK,CAAC,gCAAgC,mBAAmB,WAAW,MAAM,CAAC,mBAAmB,EAAE,kCAAkC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC3J,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,2EAA2E,EAAE,mBAAmB,CAAC,CAAA;YAC/G,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,aAAa;QACnB,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,eAAe,CAAC,CAAA;QAEhE,MAAM,QAAQ,GAAoB,EAAE,CAAA;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE;YACtD,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;gBAC7B,GAAG,CAAC,IAAI,CAAC,qFAAqF;sBAC1F,kDAAkD,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA,CAAC,gDAAgD;gBACnH,OAAM;YACR,CAAC;YAED,MAAM,kBAAkB,GAAsC,cAAc,CAAC,QAAQ,CAAA;YACrF,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,IAAI,kBAAkB,CAAA;YAE7D,IAAI,MAAc,CAAA;YAClB,IAAI,WAAsC,CAAA;YAE1C,kEAAkE;YAClE,IAAI,kBAAkB,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG,EAAE,CAAC;gBAC5E,OAAM;YACR,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAA;YACtE,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACxB,OAAM;YACR,CAAC;YAED,mCAAmC;YACnC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,qCAAqC,kBAAkB,wCAAwC,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAA;gBAC3J,OAAM;YACR,CAAC;YAED,IAAI,CAAC;gBACH,WAAW,GAAG,MAAM,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;YACjE,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,GAAG,CAAC,KAAK,CAAC,+BAA+B,kBAAkB,+CAA+C,KAAK,GAAG,CAAC,wCAAwC,MAAM,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAA;gBACnM,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA,CAAC,+DAA+D;gBAChF,OAAM;YACR,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YAC7C,MAAM,CAAC,6BAA6B,EAAE,kBAAkB,CAAC,CAAA;YAEzD,wDAAwD;YACxD,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC3B,0EAA0E;gBAC1E,IAAI,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACpC,cAAc,CAAC,OAAO,CAAC,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAA;gBACjF,CAAC;gBAED,4CAA4C;gBAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,uCAAsB,kBAAkB,EAAE,MAAM,CAAC,mBAAmB,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;gBAEvI,IAAI,CAAC;oBACH,IAAI,CAAC,yBAAyB,uCAAsB,kBAAkB,EAAE,MAAM,CAAC,mBAAmB,EAAE,EAAE,cAAc,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;gBAC1I,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;oBACxB,OAAM;gBACR,CAAC;gBAED,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAA;gBAC5E,MAAM,CAAC,gBAAgB,UAAU,iBAAiB,SAAS,EAAE,CAAC,CAAA;gBAC9D,MAAM,WAAW,GAAG,IAAI,kBAAkB,uCAExC,kBAAkB,EAClB,MAAM,EACN,cAAc,CAAC,OAAO,EACtB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,mBAAmB,CACzB,CAAA;gBAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;gBAE7C,qCAAqC;gBACrC,WAAW,CAAC,SAAS,CAAC,cAAc,CAAC,CAAA;gBAErC,2FAA2F;gBAC3F,2EAA2E;gBAE3E,OAAM;YACR,CAAC;YAED,MAAM,QAAQ,GAAmB,IAAI,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YAElF,IAAI,aAAa,CAAC,uBAAuB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpD,MAAM,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;YAC5D,CAAC;iBAAM,IAAI,aAAa,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,+BAA+B;gBAC1F,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAA;YACzG,CAAC;iBAAM,CAAC;gBACN,sFAAsF;gBACtF,sDAAsD;YACxD,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,IAAgB,EAAE,UAAkB,EAAE,UAAkB,EAAE,YAAiC;QACnH,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAC5B,kFAAkF;YAClF,OAAO,UAAU,UAAU,IAAI,UAAU,EAAE,CAAA;QAC7C,CAAC;QACD,iEAAiE;QACjE,OAAO,YAAY,CAAC,QAAS,CAAC,WAAW,EAAE,CAAA;IAC7C,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,IAAgB,EAAE,UAAkB,EAAE,UAAkB,EAAE,YAAiC,EAAE,SAAiB;QAC9I,+CAA+C;QAC/C,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;YAC5B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,KAAK,UAAU,oCAAoC;sBAC1E,gFAAgF,CACnF,CAAA;YACH,CAAC;YAED,0CAA0C;YAC1C,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,KAAK,UAAU,oCAAoC;sBAC1E,kIAAkI,CACrI,CAAA;YACH,CAAC;YAED,yDAAyD;YACzD,OAAM;QACR,CAAC;QAED,+DAA+D;QAC/D,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,KAAK,UAAU,oCAAoC;kBAC1E,qGAAqG,CACxG,CAAA;QACH,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,KAAK,UAAU,oCAAoC;kBAC1E,8CAA8C,YAAY,CAAC,QAAQ,wFAAwF,CAC9J,CAAA;QACH,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACpD,IAAI,IAAI,yCAAwB,EAAE,CAAC;gBACjC,uDAAuD;gBACvD,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,KAAK,UAAU,oCAAoC;sBAC1E,kDAAkD,YAAY,CAAC,QAAQ,mEAAmE,CAC7I,CAAA;YACH,CAAC;iBAAM,IAAI,WAAW,EAAE,UAAU,KAAK,UAAU,EAAE,CAAC;gBAClD,0EAA0E;gBAC1E,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,KAAK,UAAU,oCAAoC;sBAC1E,kDAAkD,YAAY,CAAC,QAAQ,uEAAuE,CACjJ,CAAA;YACH,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,8DAA8D;QAC9D,IAAI,YAAY,CAAC,QAAQ,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAS,CAAC,WAAW,EAAE,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CACb,qBAAqB,IAAI,KAAK,UAAU,oCAAoC;kBAC1E,wCAAwC,YAAY,CAAC,QAAQ,4GAA4G,CAC5K,CAAA;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,0BAA0B;QAChC,oBAAoB;QACpB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QAEvB,oCAAoC;QACpC,IAAI,CAAC,UAAU,CAAC,EAAE,mEAAwC,CAAC,QAAQ,EAAE,EAAE;YACrE,qCAAqC;YACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;gBACjE,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,kBAAkB,EAAE,CAAA;gBAClC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,iCAAiC;QACjC,IAAI,CAAC,UAAU,CAAC,EAAE,6DAAqC,CAAC,QAAQ,EAAE,EAAE;YAClE,qCAAqC;YACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;gBACjE,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,eAAe,EAAE,CAAA;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,kCAAkC;QAClC,IAAI,CAAC,UAAU,CAAC,EAAE,+DAAsC,CAAC,QAAQ,EAAE,EAAE;YACnE,qCAAqC;YACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;gBACjE,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,gBAAgB,EAAE,CAAA;gBAChC,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,oFAAiD,GAAG,EAAE;YACtE,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;YAC5F,IAAI,CAAC,UAAU,CAAC,WAAW,sFAAkD,mBAAmB,CAAC,CAAA;QACnG,CAAC,CAAC,CAAA;QAEF,6BAA6B;QAC7B,+DAA+D;QAC/D,qFAAqF;QAErF,IAAI,CAAC,UAAU,CAAC,EAAE,qEAAyC,CAAC,cAAsB,EAAE,EAAE;YACpF,IAAI,cAAc,KAAK,aAAa,EAAE,CAAC;gBACrC,yFAAyF;gBACzF,GAAG,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAA;gBACtE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;YACtC,CAAC;iBAAM,CAAC;gBACN,uDAAuD;gBACvD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;gBAC9D,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,kBAAkB,EAAE,CAAA;gBAClC,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,gBAAgB,cAAc,+BAA+B,CAAC,CAAA;gBACzE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,+DAAsC,CAAC,cAAsB,EAAE,EAAE;YACjF,IAAI,cAAc,KAAK,aAAa,EAAE,CAAC;gBACrC,GAAG,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;gBACzE,GAAG,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAA;YACtG,CAAC;iBAAM,CAAC;gBACN,uDAAuD;gBACvD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;gBAC9D,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,eAAe,EAAE,CAAA;gBAC/B,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,gBAAgB,cAAc,4BAA4B,CAAC,CAAA;gBACtE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,iEAAuC,CAAC,cAAsB,EAAE,EAAE;YAClF,IAAI,cAAc,KAAK,aAAa,EAAE,CAAC;gBACrC,GAAG,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAA;gBAC1E,GAAG,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAA;YACzE,CAAC;iBAAM,CAAC;gBACN,uDAAuD;gBACvD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;gBAC9D,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,gBAAgB,EAAE,CAAA;gBAChC,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,gBAAgB,cAAc,6BAA6B,CAAC,CAAA;gBACvE,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,sFAAkD,GAAG,EAAE;YAkBvE,MAAM,aAAa,GAAmC,EAAE,CAAA;YAExD,6CAA6C;YAC7C,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC7D,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,CAAA;gBAClE,aAAa,CAAC,IAAI,CAAC;oBACjB,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,IAAI;oBACZ,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI;oBAC7C,QAAQ,EAAE,iBAAiB,CAAC,MAAM;oBAClC,GAAG,EAAE,iBAAiB,CAAC,iBAAiB;oBACxC,YAAY,EAAE,iBAAiB,CAAC,YAAY;oBAC5C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;oBAC7B,MAAM,EAAE,aAAa;oBACrB,UAAU,EAAE,aAAa;oBACzB,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,MAAM;oBACtD,YAAY,EAAE,iBAAiB,CAAC,YAAY;oBAC5C,aAAa,EAAE,IAAI;iBACpB,CAAC,CAAA;YACJ,CAAC;YAED,mCAAmC;YACnC,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBACrD,MAAM,UAAU,GAAG,WAAW,CAAC,oBAAoB,EAAE,CAAA;gBACrD,MAAM,YAAY,GAAG,WAAW,CAAC,eAAe,EAAE,CAAA;gBAClD,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;oBAC/B,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,EAAE,CAAA;oBAC1C,gDAAgD;oBAChD,MAAM,eAAe,GAAG,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,CAAC,UAAU,EAAE,CAAA;oBAEtE,uCAAuC;oBACvC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,eAAe,EAAE,WAAW,CAAC,CAAA;oBAExD,aAAa,CAAC,IAAI,CAAC;wBACjB,IAAI,EAAE,QAAQ;wBACd,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;wBACnD,IAAI,EAAE,YAAY,CAAC,IAAI;wBACvB,QAAQ,EAAE,UAAU,CAAC,MAAM;wBAC3B,GAAG,EAAE,UAAU,CAAC,iBAAiB;wBACjC,YAAY,EAAE,UAAU,CAAC,YAAY;wBACrC,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI;wBACxC,MAAM,EAAE,QAAQ,CAAC,MAAM;wBACvB,UAAU,EAAE,eAAe;wBAC3B,YAAY,EAAE,UAAU,CAAC,YAAY;wBACrC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;wBAC3B,aAAa,EAAE,IAAI;qBACpB,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,CAAC,UAAU,CAAC,WAAW,wFAEzB,aAAa,CACd,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,+EAA8C,GAAG,EAAE;YACnE,6CAA6C;YAC7C,MAAM,oBAAoB,GAEtB;gBACF,QAAQ,EAAE,EAAE;aACb,CAAA;YAED,8BAA8B;YAC9B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,oBAAoB,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAA;YACnF,CAAC;YAED,0DAA0D;YAE1D,IAAI,CAAC,UAAU,CAAC,WAAW,iFAEzB,oBAAoB,CACrB,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,CAAC,EAAE,4FAAqD,CAAC,cAAsB,EAAE,EAAE;YAChG,IAAI,OAAO,GAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;YAE1C,qBAAqB;YACrB,IAAI,cAAc,KAAK,aAAa,EAAE,CAAC;gBACrC,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,EAAE,CAAC;oBAC7D,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,CAAA;gBACpD,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,wEAAwE,cAAc,EAAE,CAAC,CAAA;gBACrG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,4HAA4H;gBAC5H,sCAAsC;gBACtC,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;gBAC9D,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,GAAG,WAAW,CAAC,oBAAoB,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;gBACzE,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,yBAAyB,cAAc,8CAA8C,CAAC,CAAA;gBAClG,CAAC;YACH,CAAC;YAED,sEAAsE;YACtE,MAAM,iBAAiB,GAAG;gBACxB,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,KAAK;gBAC3C,GAAG,EAAE,OAAO,CAAC,iBAAiB,EAAE,+BAA+B;gBAC/D,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,yBAAyB;gBACnD,YAAY,EAAE,OAAO,CAAC,YAAY;aACnC,CAAA;YAED,IAAI,CAAC,UAAU,CAAC,WAAW,8FAEzB,iBAAiB,CAClB,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,cAAc,CAAC,GAAW;QAChC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAC1B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;QAE9C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC7B,GAAG,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAA;YAC5F,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA,CAAC,0CAA0C;YACpE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;YACrD,GAAG,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAA;QAClG,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,mFAAmF,CAAC,CAAA;QAC/F,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAA;QACxD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAA;QACxD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAA;QACpD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAA;QACxD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,CAAA;IAC1D,CAAC;CACF"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "homebridge",
3
3
  "type": "module",
4
- "version": "2.0.0-alpha.43",
4
+ "version": "2.0.0-alpha.44",
5
5
  "description": "HomeKit support for the impatient",
6
6
  "author": "Nick Farina",
7
7
  "license": "Apache-2.0",
@@ -62,7 +62,7 @@
62
62
  "@prettier/plugin-xml": "^3.4.2",
63
63
  "@types/debug": "^4.1.12",
64
64
  "@types/fs-extra": "^11.0.4",
65
- "@types/node": "^24.7.0",
65
+ "@types/node": "^24.7.2",
66
66
  "@types/semver": "^7.7.1",
67
67
  "@types/source-map-support": "^0.5.10",
68
68
  "@vitest/coverage-v8": "^3.2.4",
@@ -70,7 +70,7 @@
70
70
  "nodemon": "^3.1.10",
71
71
  "rimraf": "^6.0.1",
72
72
  "ts-node": "^10.9.2",
73
- "typedoc": "^0.28.13",
73
+ "typedoc": "^0.28.14",
74
74
  "typescript": "^5.9.3",
75
75
  "vitest": "^3.2.4"
76
76
  }
@@ -1,121 +0,0 @@
1
- export interface DiagnosticInfo {
2
- timestamp: Date;
3
- system: SystemInfo;
4
- matter: MatterInfo;
5
- network: NetworkInfo;
6
- errors: ErrorInfo;
7
- performance: PerformanceInfo;
8
- health: HealthStatus;
9
- }
10
- interface SystemInfo {
11
- platform: string;
12
- arch: string;
13
- nodeVersion: string;
14
- uptime: number;
15
- memory: {
16
- total: number;
17
- free: number;
18
- used: number;
19
- percentage: number;
20
- };
21
- cpu: {
22
- model: string;
23
- cores: number;
24
- usage: number;
25
- };
26
- }
27
- interface MatterInfo {
28
- enabled: boolean;
29
- initialized: boolean;
30
- running: boolean;
31
- port?: number;
32
- deviceCount: number;
33
- bridgeCount: number;
34
- version?: string;
35
- }
36
- interface NetworkInfo {
37
- online: boolean;
38
- interfaces: string[];
39
- primaryInterface?: string;
40
- lastCheck: Date;
41
- }
42
- interface ErrorInfo {
43
- total: number;
44
- byType: Record<string, number>;
45
- recent: Array<{
46
- type: string;
47
- message: string;
48
- timestamp: Date;
49
- }>;
50
- }
51
- interface PerformanceInfo {
52
- syncLatency: number[];
53
- averageSyncTime: number;
54
- memoryUsage: number;
55
- eventLoopLag: number;
56
- }
57
- interface HealthStatus {
58
- overall: 'healthy' | 'degraded' | 'unhealthy';
59
- issues: string[];
60
- recommendations: string[];
61
- }
62
- export declare class MatterDiagnostics {
63
- private static instance;
64
- private performanceMetrics;
65
- private diagnosticInterval;
66
- private isDiagnosticsEnabled;
67
- private lastHealthStatus;
68
- private constructor();
69
- static getInstance(): MatterDiagnostics;
70
- /**
71
- * Start diagnostics collection
72
- */
73
- startDiagnostics(intervalMs?: number): void;
74
- /**
75
- * Stop diagnostics collection
76
- */
77
- stopDiagnostics(): void;
78
- /**
79
- * Record sync performance
80
- */
81
- recordSyncTime(timeMs: number): void;
82
- /**
83
- * Collect all diagnostic information
84
- */
85
- collectDiagnostics(matterInfo?: MatterInfo): Promise<DiagnosticInfo>;
86
- /**
87
- * Collect system information
88
- */
89
- private collectSystemInfo;
90
- /**
91
- * Get default Matter info
92
- */
93
- private getDefaultMatterInfo;
94
- /**
95
- * Collect network information
96
- */
97
- private collectNetworkInfo;
98
- /**
99
- * Collect error information
100
- */
101
- private collectErrorInfo;
102
- /**
103
- * Collect performance information
104
- */
105
- private collectPerformanceInfo;
106
- /**
107
- * Assess overall health
108
- */
109
- private assessHealth;
110
- /**
111
- * Collect and log diagnostics
112
- */
113
- private collectAndLogDiagnostics;
114
- /**
115
- * Generate diagnostic report
116
- */
117
- generateReport(matterInfo?: MatterInfo): Promise<string>;
118
- }
119
- export declare const diagnostics: MatterDiagnostics;
120
- export {};
121
- //# sourceMappingURL=matterDiagnostics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"matterDiagnostics.d.ts","sourceRoot":"","sources":["../../src/matter/matterDiagnostics.ts"],"names":[],"mappings":"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"}
@@ -1,323 +0,0 @@
1
- /* global NodeJS */
2
- /**
3
- * Matter Diagnostics
4
- *
5
- * Comprehensive diagnostics and health monitoring for Matter integration
6
- */
7
- import * as os from 'node:os';
8
- import process from 'node:process';
9
- import { Logger } from '../logger.js';
10
- import { errorHandler } from './matterErrorHandler.js';
11
- import { networkMonitor } from './matterNetworkMonitor.js';
12
- const log = Logger.withPrefix('Matter');
13
- export class MatterDiagnostics {
14
- static instance;
15
- performanceMetrics;
16
- diagnosticInterval = null;
17
- isDiagnosticsEnabled = false;
18
- lastHealthStatus = null;
19
- constructor() {
20
- this.performanceMetrics = {
21
- syncTimes: [],
22
- startTime: new Date(),
23
- };
24
- }
25
- static getInstance() {
26
- if (!MatterDiagnostics.instance) {
27
- MatterDiagnostics.instance = new MatterDiagnostics();
28
- }
29
- return MatterDiagnostics.instance;
30
- }
31
- /**
32
- * Start diagnostics collection
33
- */
34
- startDiagnostics(intervalMs = 60000) {
35
- if (this.isDiagnosticsEnabled) {
36
- return;
37
- }
38
- this.isDiagnosticsEnabled = true;
39
- log.debug('Starting Matter diagnostics collection');
40
- // Collect diagnostics periodically
41
- this.diagnosticInterval = setInterval(() => {
42
- // Fire-and-forget with error handling
43
- this.collectAndLogDiagnostics().catch((error) => {
44
- log.debug('Failed to collect diagnostics:', error);
45
- });
46
- }, intervalMs);
47
- }
48
- /**
49
- * Stop diagnostics collection
50
- */
51
- stopDiagnostics() {
52
- if (this.diagnosticInterval) {
53
- clearInterval(this.diagnosticInterval);
54
- this.diagnosticInterval = null;
55
- }
56
- this.isDiagnosticsEnabled = false;
57
- log.debug('Stopped Matter diagnostics collection');
58
- }
59
- /**
60
- * Record sync performance
61
- */
62
- recordSyncTime(timeMs) {
63
- this.performanceMetrics.syncTimes.push(timeMs);
64
- // Keep only last 100 measurements
65
- if (this.performanceMetrics.syncTimes.length > 100) {
66
- this.performanceMetrics.syncTimes.shift();
67
- }
68
- // Log warning for slow syncs
69
- if (timeMs > 1000) {
70
- log.warn(`Slow Matter sync detected: ${timeMs}ms`);
71
- }
72
- }
73
- /**
74
- * Collect all diagnostic information
75
- */
76
- async collectDiagnostics(matterInfo) {
77
- return {
78
- timestamp: new Date(),
79
- system: this.collectSystemInfo(),
80
- matter: matterInfo || this.getDefaultMatterInfo(),
81
- network: this.collectNetworkInfo(),
82
- errors: this.collectErrorInfo(),
83
- performance: this.collectPerformanceInfo(),
84
- health: this.assessHealth(),
85
- };
86
- }
87
- /**
88
- * Collect system information
89
- */
90
- collectSystemInfo() {
91
- const totalMem = os.totalmem();
92
- const freeMem = os.freemem();
93
- const usedMem = totalMem - freeMem;
94
- const cpus = os.cpus();
95
- const avgLoad = os.loadavg()[0];
96
- return {
97
- platform: os.platform(),
98
- arch: os.arch(),
99
- nodeVersion: process.version,
100
- uptime: os.uptime(),
101
- memory: {
102
- total: totalMem,
103
- free: freeMem,
104
- used: usedMem,
105
- percentage: (usedMem / totalMem) * 100,
106
- },
107
- cpu: {
108
- model: cpus[0]?.model || 'Unknown',
109
- cores: cpus.length,
110
- usage: avgLoad,
111
- },
112
- };
113
- }
114
- /**
115
- * Get default Matter info
116
- */
117
- getDefaultMatterInfo() {
118
- return {
119
- enabled: false,
120
- initialized: false,
121
- running: false,
122
- deviceCount: 0,
123
- bridgeCount: 0,
124
- };
125
- }
126
- /**
127
- * Collect network information
128
- */
129
- collectNetworkInfo() {
130
- const status = networkMonitor.getStatus();
131
- return {
132
- online: status.isOnline,
133
- interfaces: status.interfaces,
134
- primaryInterface: status.primaryInterface,
135
- lastCheck: status.lastCheck,
136
- };
137
- }
138
- /**
139
- * Collect error information
140
- */
141
- collectErrorInfo() {
142
- const errorStats = errorHandler.getErrorStats();
143
- let total = 0;
144
- const byType = {};
145
- const recent = [];
146
- for (const [type, stats] of Object.entries(errorStats)) {
147
- total += stats.count;
148
- byType[type] = stats.count;
149
- if (stats.lastError) {
150
- recent.push({
151
- type,
152
- message: stats.lastError.message,
153
- timestamp: stats.lastError.timestamp,
154
- });
155
- }
156
- }
157
- // Sort recent errors by timestamp
158
- recent.sort((a, b) => b.timestamp.getTime() - a.timestamp.getTime());
159
- return {
160
- total,
161
- byType,
162
- recent: recent.slice(0, 10), // Keep only 10 most recent
163
- };
164
- }
165
- /**
166
- * Collect performance information
167
- */
168
- collectPerformanceInfo() {
169
- const syncTimes = this.performanceMetrics.syncTimes;
170
- const avgSyncTime = syncTimes.length > 0
171
- ? syncTimes.reduce((a, b) => a + b, 0) / syncTimes.length
172
- : 0;
173
- return {
174
- syncLatency: syncTimes.slice(-10), // Last 10 measurements
175
- averageSyncTime: avgSyncTime,
176
- memoryUsage: process.memoryUsage().heapUsed,
177
- eventLoopLag: 0, // Would need additional monitoring
178
- };
179
- }
180
- /**
181
- * Assess overall health
182
- */
183
- assessHealth() {
184
- const issues = [];
185
- const recommendations = [];
186
- // Check network
187
- const networkStatus = networkMonitor.getStatus();
188
- if (!networkStatus.isOnline) {
189
- issues.push('Network is offline');
190
- recommendations.push('Check network connectivity');
191
- }
192
- else if (networkStatus.consecutiveFailures > 0) {
193
- issues.push('Intermittent network issues detected');
194
- recommendations.push('Monitor network stability');
195
- }
196
- // Check errors
197
- const errorStats = errorHandler.getErrorStats();
198
- const totalErrors = Object.values(errorStats)
199
- .reduce((sum, stat) => sum + stat.count, 0);
200
- if (totalErrors > 10) {
201
- issues.push(`High error rate: ${totalErrors} errors`);
202
- recommendations.push('Review error logs for patterns');
203
- }
204
- // Check performance
205
- const perfInfo = this.collectPerformanceInfo();
206
- if (perfInfo.averageSyncTime > 500) {
207
- issues.push(`Slow sync performance: ${perfInfo.averageSyncTime.toFixed(0)}ms average`);
208
- recommendations.push('Consider reducing device count or optimizing sync frequency');
209
- }
210
- // Check memory (raised threshold to 95% to reduce false positives)
211
- const systemInfo = this.collectSystemInfo();
212
- if (systemInfo.memory.percentage > 95) {
213
- issues.push(`High memory usage: ${systemInfo.memory.percentage.toFixed(1)}%`);
214
- recommendations.push('Consider increasing system memory or reducing load');
215
- }
216
- else if (systemInfo.memory.percentage > 90) {
217
- // Only log in debug mode for 90-95% range
218
- log.debug(`Memory usage at ${systemInfo.memory.percentage.toFixed(1)}%`);
219
- }
220
- // Determine overall health
221
- let overall;
222
- if (issues.length === 0) {
223
- overall = 'healthy';
224
- }
225
- else if (issues.length <= 2) {
226
- overall = 'degraded';
227
- }
228
- else {
229
- overall = 'unhealthy';
230
- }
231
- return {
232
- overall,
233
- issues,
234
- recommendations,
235
- };
236
- }
237
- /**
238
- * Collect and log diagnostics
239
- */
240
- async collectAndLogDiagnostics() {
241
- const diagnostics = await this.collectDiagnostics();
242
- // Only log health status if it changed or is unhealthy
243
- if (diagnostics.health.overall !== this.lastHealthStatus) {
244
- this.lastHealthStatus = diagnostics.health.overall;
245
- if (diagnostics.health.overall !== 'healthy') {
246
- log.warn(`Matter health status: ${diagnostics.health.overall}`);
247
- for (const issue of diagnostics.health.issues) {
248
- log.warn(` - ${issue}`);
249
- }
250
- for (const recommendation of diagnostics.health.recommendations) {
251
- log.info(` 💡 ${recommendation}`);
252
- }
253
- }
254
- else {
255
- log.info('Matter health status: healthy');
256
- }
257
- }
258
- // Log debug information
259
- log.debug('Matter diagnostics:', {
260
- health: diagnostics.health.overall,
261
- errors: diagnostics.errors.total,
262
- devices: diagnostics.matter.deviceCount,
263
- avgSyncTime: `${diagnostics.performance.averageSyncTime.toFixed(0)}ms`,
264
- memory: `${(diagnostics.system.memory.percentage).toFixed(1)}%`,
265
- });
266
- }
267
- /**
268
- * Generate diagnostic report
269
- */
270
- async generateReport(matterInfo) {
271
- const diagnostics = await this.collectDiagnostics(matterInfo);
272
- return `
273
- Matter Diagnostics Report
274
- ========================
275
- Generated: ${diagnostics.timestamp.toISOString()}
276
-
277
- System Information
278
- ------------------
279
- Platform: ${diagnostics.system.platform} (${diagnostics.system.arch})
280
- Node Version: ${diagnostics.system.nodeVersion}
281
- System Uptime: ${(diagnostics.system.uptime / 3600).toFixed(1)} hours
282
- Memory: ${(diagnostics.system.memory.used / 1024 / 1024 / 1024).toFixed(1)}GB / ${(diagnostics.system.memory.total / 1024 / 1024 / 1024).toFixed(1)}GB (${diagnostics.system.memory.percentage.toFixed(1)}%)
283
- CPU: ${diagnostics.system.cpu.model} (${diagnostics.system.cpu.cores} cores)
284
-
285
- Matter Status
286
- -------------
287
- Enabled: ${diagnostics.matter.enabled}
288
- Initialized: ${diagnostics.matter.initialized}
289
- Running: ${diagnostics.matter.running}
290
- Port: ${diagnostics.matter.port || 'N/A'}
291
- Devices: ${diagnostics.matter.deviceCount}
292
- Bridges: ${diagnostics.matter.bridgeCount}
293
-
294
- Network Status
295
- --------------
296
- Online: ${diagnostics.network.online}
297
- Interfaces: ${diagnostics.network.interfaces.join(', ') || 'None'}
298
- Primary: ${diagnostics.network.primaryInterface || 'N/A'}
299
- Last Check: ${diagnostics.network.lastCheck.toISOString()}
300
-
301
- Error Summary
302
- -------------
303
- Total Errors: ${diagnostics.errors.total}
304
- ${Object.entries(diagnostics.errors.byType)
305
- .map(([type, count]) => ` ${type}: ${count}`)
306
- .join('\n')}
307
-
308
- Performance
309
- -----------
310
- Average Sync Time: ${diagnostics.performance.averageSyncTime.toFixed(0)}ms
311
- Memory Usage: ${(diagnostics.performance.memoryUsage / 1024 / 1024).toFixed(1)}MB
312
-
313
- Health Assessment
314
- -----------------
315
- Overall: ${diagnostics.health.overall.toUpperCase()}
316
- ${diagnostics.health.issues.length > 0 ? `Issues:\n${diagnostics.health.issues.map(i => ` - ${i}`).join('\n')}` : ''}
317
- ${diagnostics.health.recommendations.length > 0 ? `Recommendations:\n${diagnostics.health.recommendations.map(r => ` - ${r}`).join('\n')}` : ''}
318
- `;
319
- }
320
- }
321
- // Export singleton instance
322
- export const diagnostics = MatterDiagnostics.getInstance();
323
- //# sourceMappingURL=matterDiagnostics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"matterDiagnostics.js","sourceRoot":"","sources":["../../src/matter/matterDiagnostics.ts"],"names":[],"mappings":"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"}