homebridge-eufy-security 2.1.2 → 2.1.3

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 (351) hide show
  1. package/.angular/cache/13.3.8/angular-webpack/5c469ae2ec9b3e3444d34d56e7c70f3aa2560d00/0.pack +0 -0
  2. package/.angular/cache/13.3.8/angular-webpack/5c469ae2ec9b3e3444d34d56e7c70f3aa2560d00/index.pack +0 -0
  3. package/.angular/cache/13.3.8/babel-webpack/002b767f336bba4a19522b7001fdc9b0.json +1 -0
  4. package/.angular/cache/13.3.8/babel-webpack/01030dc9cf6ace516c5e21a11a51e514.json +1 -0
  5. package/.angular/cache/13.3.8/babel-webpack/016384ad7d62e5dbc2ee70c28b77bd33.json +1 -0
  6. package/.angular/cache/13.3.8/babel-webpack/031cd7cdf7943a415e924a9bd8128beb.json +1 -0
  7. package/.angular/cache/13.3.8/babel-webpack/052db9656c92d22373c12ebe3e254dd4.json +1 -0
  8. package/.angular/cache/13.3.8/babel-webpack/0531356196812f38430f56879f62470e.json +1 -0
  9. package/.angular/cache/13.3.8/babel-webpack/05725b64be0203c8d738c859f49ff405.json +1 -0
  10. package/.angular/cache/13.3.8/babel-webpack/062f6b5564c03c877d5ca52593b3b84b.json +1 -0
  11. package/.angular/cache/13.3.8/babel-webpack/065481f4d76a32e7e22e45cbaaf7825f.json +1 -0
  12. package/.angular/cache/13.3.8/babel-webpack/0666a98d8aab522670ce30753fd2f458.json +1 -0
  13. package/.angular/cache/13.3.8/babel-webpack/06dae47ab777cda8f0450790afc70025.json +1 -0
  14. package/.angular/cache/13.3.8/babel-webpack/07327b5d1e655671ee9b925dd372d49b.json +1 -0
  15. package/.angular/cache/13.3.8/babel-webpack/08004e90d212fca2a295493a98f3ba77.json +1 -0
  16. package/.angular/cache/13.3.8/babel-webpack/08774f00ef3c205e99175c2b9da49f2b.json +1 -0
  17. package/.angular/cache/13.3.8/babel-webpack/0af00780c4947ca8fd33e0b65cb5ea72.json +1 -0
  18. package/.angular/cache/13.3.8/babel-webpack/0af971038ef69574cca173d8fe2103ec.json +1 -0
  19. package/.angular/cache/13.3.8/babel-webpack/0b0b779faf1c39010031922b0e26ea0e.json +1 -0
  20. package/.angular/cache/13.3.8/babel-webpack/0cc5f5c0d0699ac0e44f99d1e88cd4c3.json +1 -0
  21. package/.angular/cache/13.3.8/babel-webpack/0ea0dd52ab9118e6d87a54ddc6b131ed.json +1 -0
  22. package/.angular/cache/13.3.8/babel-webpack/100429b5082c9f5b148d923f63be053b.json +1 -0
  23. package/.angular/cache/13.3.8/babel-webpack/10a1421cf7b46f7b3a45fb4d8219fe91.json +1 -0
  24. package/.angular/cache/13.3.8/babel-webpack/11e1f133849ff16a3097bdfe6fe5ee13.json +1 -0
  25. package/.angular/cache/13.3.8/babel-webpack/1270c1ff7a60022a1aa57342495267a1.json +1 -0
  26. package/.angular/cache/13.3.8/babel-webpack/132c8edfd0cd38acf02806ab58e8e342.json +1 -0
  27. package/.angular/cache/13.3.8/babel-webpack/13efa114bcdf71c8d1dd6e357fc96b38.json +1 -0
  28. package/.angular/cache/13.3.8/babel-webpack/14cc9c26f157ea0ed289c80aa16f84f4.json +1 -0
  29. package/.angular/cache/13.3.8/babel-webpack/153924e34aecb770553db2728af5931e.json +1 -0
  30. package/.angular/cache/13.3.8/babel-webpack/1550d75086d96874e41f3a9d370731f4.json +1 -0
  31. package/.angular/cache/13.3.8/babel-webpack/1a7f6499cefe53a91f2f8667d50cdbca.json +1 -0
  32. package/.angular/cache/13.3.8/babel-webpack/1a8288e5abb45e773ad1a85443bc5657.json +1 -0
  33. package/.angular/cache/13.3.8/babel-webpack/1b8dee5bab79ed93f24f0d6da8092510.json +1 -0
  34. package/.angular/cache/13.3.8/babel-webpack/1bd605fdf506ed9a0ff60978ef2df4b9.json +1 -0
  35. package/.angular/cache/13.3.8/babel-webpack/1bf109ad03caa833e13e667c1d9f2e47.json +1 -0
  36. package/.angular/cache/13.3.8/babel-webpack/1c9227ff67ce23ac82a282e3fb06c095.json +1 -0
  37. package/.angular/cache/13.3.8/babel-webpack/1cfe39783d86ba5c07e5614b1ec404f7.json +1 -0
  38. package/.angular/cache/13.3.8/babel-webpack/1dbc0980fd50e2f2fafa29f1763d1fe1.json +1 -0
  39. package/.angular/cache/13.3.8/babel-webpack/1dfb517adcaf071e8bd2ab77a28b1d35.json +1 -0
  40. package/.angular/cache/13.3.8/babel-webpack/2280aeda8abc7b63f49942444aec136f.json +1 -0
  41. package/.angular/cache/13.3.8/babel-webpack/23ff81c6e504d78e456e195f76a3621b.json +1 -0
  42. package/.angular/cache/13.3.8/babel-webpack/2532da45d53ab9d70eb682a31552950b.json +1 -0
  43. package/.angular/cache/13.3.8/babel-webpack/25647909666a00be07bf38169e041be2.json +1 -0
  44. package/.angular/cache/13.3.8/babel-webpack/258ce5624159326d68ae8aee3732119b.json +1 -0
  45. package/.angular/cache/13.3.8/babel-webpack/25cc498a9011bfe34a0c1febeae89e16.json +1 -0
  46. package/.angular/cache/13.3.8/babel-webpack/261a759a77de28fa767c29524940d6cc.json +1 -0
  47. package/.angular/cache/13.3.8/babel-webpack/26269fd9cae4fe30738831979db08c38.json +1 -0
  48. package/.angular/cache/13.3.8/babel-webpack/270221a53faa5e3c9061a0e8af50bb86.json +1 -0
  49. package/.angular/cache/13.3.8/babel-webpack/27d4bf45f79956b092b163ad19cf9e89.json +1 -0
  50. package/.angular/cache/13.3.8/babel-webpack/29a8da37097e6c923af711271baec17c.json +1 -0
  51. package/.angular/cache/13.3.8/babel-webpack/2d054cedefc8ff37848a2616550b8aaf.json +1 -0
  52. package/.angular/cache/13.3.8/babel-webpack/2d4670a3c225024b10ab496350f7aee3.json +1 -0
  53. package/.angular/cache/13.3.8/babel-webpack/2d7e93363c9300593386133460b237f8.json +1 -0
  54. package/.angular/cache/13.3.8/babel-webpack/2eef96834e778035a7937b18ea6143fc.json +1 -0
  55. package/.angular/cache/13.3.8/babel-webpack/2f1dba70cd0bdc43524b8b7a65bacb29.json +1 -0
  56. package/.angular/cache/13.3.8/babel-webpack/2fb65b04240fcce5b926c609f2400529.json +1 -0
  57. package/.angular/cache/13.3.8/babel-webpack/2ff9789499e2786f623bf0db087e88d1.json +1 -0
  58. package/.angular/cache/13.3.8/babel-webpack/30448d7918d0317a2c085755868cf6ca.json +1 -0
  59. package/.angular/cache/13.3.8/babel-webpack/30d576b2a16732c44ce6053b6aa974e9.json +1 -0
  60. package/.angular/cache/13.3.8/babel-webpack/325abc3f4c36271afbbcefde8586dfb9.json +1 -0
  61. package/.angular/cache/13.3.8/babel-webpack/32ce9fee8ef079a8a53d503a4d7261e5.json +1 -0
  62. package/.angular/cache/13.3.8/babel-webpack/34415e07a1f080036d319f9b2c38f651.json +1 -0
  63. package/.angular/cache/13.3.8/babel-webpack/344e62d8fa5508cbe60258b031745896.json +1 -0
  64. package/.angular/cache/13.3.8/babel-webpack/34cb39d1ff500829727fee82bfd1f6b7.json +1 -0
  65. package/.angular/cache/13.3.8/babel-webpack/34d4df2bd91b606a2d05b63a3f91cd67.json +1 -0
  66. package/.angular/cache/13.3.8/babel-webpack/371e1540688780cd53699c01d3cbb3d7.json +1 -0
  67. package/.angular/cache/13.3.8/babel-webpack/3798287f8a756c447af5d2c202139966.json +1 -0
  68. package/.angular/cache/13.3.8/babel-webpack/37cc822bd5240b358dc56fb6a8f72cab.json +1 -0
  69. package/.angular/cache/13.3.8/babel-webpack/37cf9e3961050209da17e3643f9b96a2.json +1 -0
  70. package/.angular/cache/13.3.8/babel-webpack/393adeab7f49f0dc13085c23473fa88c.json +1 -0
  71. package/.angular/cache/13.3.8/babel-webpack/3a4cd0895f382899b668066a8493f3ce.json +1 -0
  72. package/.angular/cache/13.3.8/babel-webpack/3b2a3070b835723a9b1595e7d1a07359.json +1 -0
  73. package/.angular/cache/13.3.8/babel-webpack/3ba824534546af066a817fa0a3f400d3.json +1 -0
  74. package/.angular/cache/13.3.8/babel-webpack/3c0153bae74856d5b87a9d550c21a9eb.json +1 -0
  75. package/.angular/cache/13.3.8/babel-webpack/3c98b4603069d16c8d5574f7e887d943.json +1 -0
  76. package/.angular/cache/13.3.8/babel-webpack/3d0f141c3d5a487cc999dfd4e46c7e76.json +1 -0
  77. package/.angular/cache/13.3.8/babel-webpack/3da8a56fc5b1a180258bfc49d495dd0a.json +1 -0
  78. package/.angular/cache/13.3.8/babel-webpack/3dec37f90ad593c5e046d12e3fd83212.json +1 -0
  79. package/.angular/cache/13.3.8/babel-webpack/3e9091097711fd6166dbe75a30a2a4b9.json +1 -0
  80. package/.angular/cache/13.3.8/babel-webpack/3ef8f2b32f318f0bb4d6741b36153c18.json +1 -0
  81. package/.angular/cache/13.3.8/babel-webpack/3faa2db6dd6b37bf84cf23df280ae371.json +1 -0
  82. package/.angular/cache/13.3.8/babel-webpack/401cf04b9635bf4287fae7d54ac85e10.json +1 -0
  83. package/.angular/cache/13.3.8/babel-webpack/4143509c8fef21f44cadcd1ea2f332d8.json +1 -0
  84. package/.angular/cache/13.3.8/babel-webpack/41e9bedcdebbf887933887ca4cf22c2a.json +1 -0
  85. package/.angular/cache/13.3.8/babel-webpack/422cb89a641d38c1d5501c23b7c016a8.json +1 -0
  86. package/.angular/cache/13.3.8/babel-webpack/42a45fce70dece14c2bf55a986045606.json +1 -0
  87. package/.angular/cache/13.3.8/babel-webpack/42ecb9d49401cbdc4351b2ba7bfd1665.json +1 -0
  88. package/.angular/cache/13.3.8/babel-webpack/44f114c3483c720ec820b3feb1d59d05.json +1 -0
  89. package/.angular/cache/13.3.8/babel-webpack/44fda3bdb9741b14b6c76f839d37b7ad.json +1 -0
  90. package/.angular/cache/13.3.8/babel-webpack/464348a2dc9f5a7801e593b16b322bf5.json +1 -0
  91. package/.angular/cache/13.3.8/babel-webpack/4649f81af11ab967f112df339ff5769d.json +1 -0
  92. package/.angular/cache/13.3.8/babel-webpack/465fcc59e903556ea77850f0f79a8471.json +1 -0
  93. package/.angular/cache/13.3.8/babel-webpack/468b6d85983ecc7c976b7fdbe1c3cded.json +1 -0
  94. package/.angular/cache/13.3.8/babel-webpack/47173d576132855887972723e24015cd.json +1 -0
  95. package/.angular/cache/13.3.8/babel-webpack/4829478c5a8b97334cdec2218b002975.json +1 -0
  96. package/.angular/cache/13.3.8/babel-webpack/484d86bf741b6c5e6081efd4394c19c0.json +1 -0
  97. package/.angular/cache/13.3.8/babel-webpack/489f8f732e234c7ac2ec3e006bc677c0.json +1 -0
  98. package/.angular/cache/13.3.8/babel-webpack/48b0ff30bcd8bf1a1241fa9ba2e2a721.json +1 -0
  99. package/.angular/cache/13.3.8/babel-webpack/4984f233d58a807c95d77c58760bb8d1.json +1 -0
  100. package/.angular/cache/13.3.8/babel-webpack/49968fac28967061f8ba0773544aa4d4.json +1 -0
  101. package/.angular/cache/13.3.8/babel-webpack/49f24e3c6e037b60aaa97dca0732729e.json +1 -0
  102. package/.angular/cache/13.3.8/babel-webpack/49fa7418f40089c10022436e32588e26.json +1 -0
  103. package/.angular/cache/13.3.8/babel-webpack/4b4c45724ccac31a75716db793d78301.json +1 -0
  104. package/.angular/cache/13.3.8/babel-webpack/4c0e3dde3a954173292d3507ae8d8800.json +1 -0
  105. package/.angular/cache/13.3.8/babel-webpack/4c4a47266dbbd98ce6017fc2c4c16ab3.json +1 -0
  106. package/.angular/cache/13.3.8/babel-webpack/4c96fba9bc62fb6f1c63003516298f1c.json +1 -0
  107. package/.angular/cache/13.3.8/babel-webpack/4cca923dd39b1b68e675cb8d3e950a52.json +1 -0
  108. package/.angular/cache/13.3.8/babel-webpack/4daf0fe84bb8cae6a38a04196ec98cc4.json +1 -0
  109. package/.angular/cache/13.3.8/babel-webpack/4df0a5af25e9de5468e7ba40b7fee3bf.json +1 -0
  110. package/.angular/cache/13.3.8/babel-webpack/4e3522f06633365908c6a755ee4f7ae2.json +1 -0
  111. package/.angular/cache/13.3.8/babel-webpack/4fe2c18c7438dcc8d3bd1923274e2436.json +1 -0
  112. package/.angular/cache/13.3.8/babel-webpack/5009f4f03e78e7231475ebacb4d3cb2b.json +1 -0
  113. package/.angular/cache/13.3.8/babel-webpack/5033d4f94ec879440ab69ce7414f6486.json +1 -0
  114. package/.angular/cache/13.3.8/babel-webpack/5033f8defd60862ef0fe3cb41f2a927d.json +1 -0
  115. package/.angular/cache/13.3.8/babel-webpack/50a24abc129121eab5bcc4e0e7013ba9.json +1 -0
  116. package/.angular/cache/13.3.8/babel-webpack/51b3ec1d8e0a6bc69d42eaf0f1daeccb.json +1 -0
  117. package/.angular/cache/13.3.8/babel-webpack/51ca9e5390150126951cf0e49ed0f2fe.json +1 -0
  118. package/.angular/cache/13.3.8/babel-webpack/5345701941753864dbc3d6a2a1d4a015.json +1 -0
  119. package/.angular/cache/13.3.8/babel-webpack/53a8d17b51367157500e522b7c6d8197.json +1 -0
  120. package/.angular/cache/13.3.8/babel-webpack/54f97adf03da9afd3a08ddfaf49eab08.json +1 -0
  121. package/.angular/cache/13.3.8/babel-webpack/5504faf61da3e420003d77c44633c4e4.json +1 -0
  122. package/.angular/cache/13.3.8/babel-webpack/5563340c9e848ed24018ba313024fd8a.json +1 -0
  123. package/.angular/cache/13.3.8/babel-webpack/55bc0b6328492e14e699699ca9262bfe.json +1 -0
  124. package/.angular/cache/13.3.8/babel-webpack/5714c49932c371c6da63af63a01bddfc.json +1 -0
  125. package/.angular/cache/13.3.8/babel-webpack/57168bffb5e0bdca5ac4cf7f7ad84c16.json +1 -0
  126. package/.angular/cache/13.3.8/babel-webpack/57fbd00776674a76b440117bbe06a06b.json +1 -0
  127. package/.angular/cache/13.3.8/babel-webpack/5a077e69c799caf22d23efae17cf1e2d.json +1 -0
  128. package/.angular/cache/13.3.8/babel-webpack/5aac8614496f60c990efe8f74fdde586.json +1 -0
  129. package/.angular/cache/13.3.8/babel-webpack/5ab6a0ec43a189cdfe1e3ec22227730a.json +1 -0
  130. package/.angular/cache/13.3.8/babel-webpack/5c48bf55a0b28ef23d9a4576b5140e1d.json +1 -0
  131. package/.angular/cache/13.3.8/babel-webpack/5cd0b3cf17233c2754f8c98f1fda3e6c.json +1 -0
  132. package/.angular/cache/13.3.8/babel-webpack/5d4f879a80a4d6e46d0d8bcef1330395.json +1 -0
  133. package/.angular/cache/13.3.8/babel-webpack/5f9209a5cb234d569edc9200c749e2e0.json +1 -0
  134. package/.angular/cache/13.3.8/babel-webpack/6144ffa2c0dbc83bf8d9803a0a62491f.json +1 -0
  135. package/.angular/cache/13.3.8/babel-webpack/620fd3110133f761d0b7931d2f26b9a3.json +1 -0
  136. package/.angular/cache/13.3.8/babel-webpack/626979296b5ad1d3e1d0239c4393cc8b.json +1 -0
  137. package/.angular/cache/13.3.8/babel-webpack/627c2de9e10f88ad60b4ecd050dc9e87.json +1 -0
  138. package/.angular/cache/13.3.8/babel-webpack/62e89a7b9a089e888beaf0e58074cc3d.json +1 -0
  139. package/.angular/cache/13.3.8/babel-webpack/63d96b6b85ee5b164ad31fa4f62a4c37.json +1 -0
  140. package/.angular/cache/13.3.8/babel-webpack/63fa8926e36f9a08b3edd4612120d091.json +1 -0
  141. package/.angular/cache/13.3.8/babel-webpack/6461bbfdc47be7c54acdceb1e912bd1f.json +1 -0
  142. package/.angular/cache/13.3.8/babel-webpack/6571b553a64d8710e2d993fb3c17d791.json +1 -0
  143. package/.angular/cache/13.3.8/babel-webpack/659a925ca3b85535e82d6e8e3bd8321f.json +1 -0
  144. package/.angular/cache/13.3.8/babel-webpack/667e152369048e521dc578dbfe705afd.json +1 -0
  145. package/.angular/cache/13.3.8/babel-webpack/67c2867db19110bc07d468a31663b082.json +1 -0
  146. package/.angular/cache/13.3.8/babel-webpack/6915cdb3b410d12086de37baa1b80a13.json +1 -0
  147. package/.angular/cache/13.3.8/babel-webpack/69f6c96e258b8f5cbaa6ef8a0968ea8d.json +1 -0
  148. package/.angular/cache/13.3.8/babel-webpack/6ab4d8e3aa8e69681619e3dcfa7c2b1f.json +1 -0
  149. package/.angular/cache/13.3.8/babel-webpack/6b5fe499289b5a30c0d55d5b26d405d9.json +1 -0
  150. package/.angular/cache/13.3.8/babel-webpack/6bd846c9cb2fa982d31fb84286711398.json +1 -0
  151. package/.angular/cache/13.3.8/babel-webpack/6c0d66bfaa813d1decfd38bb748f1629.json +1 -0
  152. package/.angular/cache/13.3.8/babel-webpack/6c6837527a1673b4a16b4641ca2443c2.json +1 -0
  153. package/.angular/cache/13.3.8/babel-webpack/6e5845a65dd2f18c67922fc986035589.json +1 -0
  154. package/.angular/cache/13.3.8/babel-webpack/6f9d93a23559c2592f58781802cdbfad.json +1 -0
  155. package/.angular/cache/13.3.8/babel-webpack/6fdcb04b6b486092a35f2a562b470132.json +1 -0
  156. package/.angular/cache/13.3.8/babel-webpack/6fe9064763ddc74eb2e60b19bdcd348a.json +1 -0
  157. package/.angular/cache/13.3.8/babel-webpack/706c71f4c0a758cd7eb5422a0556cd8d.json +1 -0
  158. package/.angular/cache/13.3.8/babel-webpack/708bbfec6aaa490c1ee1a4a2db0c9dce.json +1 -0
  159. package/.angular/cache/13.3.8/babel-webpack/72d1926b6da79407ac2307aa242b7441.json +1 -0
  160. package/.angular/cache/13.3.8/babel-webpack/741fd2072a66ddffb835ab604c7b2348.json +1 -0
  161. package/.angular/cache/13.3.8/babel-webpack/74dfdb01aede70196bb29e3b8ef656da.json +1 -0
  162. package/.angular/cache/13.3.8/babel-webpack/75b409f8a1b798089336a83c230990a7.json +1 -0
  163. package/.angular/cache/13.3.8/babel-webpack/769f290e0375c736b7c71d24a0116679.json +1 -0
  164. package/.angular/cache/13.3.8/babel-webpack/76ddbf24cc7c413441a3d9591e8bb7d9.json +1 -0
  165. package/.angular/cache/13.3.8/babel-webpack/77751a54089601bdd7607b5509d66e23.json +1 -0
  166. package/.angular/cache/13.3.8/babel-webpack/77ce825c7716d5316a0f16c42452a87b.json +1 -0
  167. package/.angular/cache/13.3.8/babel-webpack/78be25a27f5b0e5db1fde15164e5dbcc.json +1 -0
  168. package/.angular/cache/13.3.8/babel-webpack/78ee5111123bf9926f2196ef82161ab3.json +1 -0
  169. package/.angular/cache/13.3.8/babel-webpack/79279197a3876a629e83e4a210b9b4d1.json +1 -0
  170. package/.angular/cache/13.3.8/babel-webpack/7977f6f82cf1646ae7e8be3a9362dc45.json +1 -0
  171. package/.angular/cache/13.3.8/babel-webpack/7a408d4d78bda49400eebbaf10a41695.json +1 -0
  172. package/.angular/cache/13.3.8/babel-webpack/7bb709bbff1e7f63cabf9ebf6424812a.json +1 -0
  173. package/.angular/cache/13.3.8/babel-webpack/7cb455299ee59fd075819074454baad8.json +1 -0
  174. package/.angular/cache/13.3.8/babel-webpack/7d9bc884038ee3ce50b86af6c49a172c.json +1 -0
  175. package/.angular/cache/13.3.8/babel-webpack/7f2a10f1c76f0ccbc31fb4dbfc83cf79.json +1 -0
  176. package/.angular/cache/13.3.8/babel-webpack/8003eeff572554d1ecf833627e8013b5.json +1 -0
  177. package/.angular/cache/13.3.8/babel-webpack/810a0190c65ff4a7163712fff1ce5589.json +1 -0
  178. package/.angular/cache/13.3.8/babel-webpack/81a9bc9d5a78eb9336fda4a4b51a9db1.json +1 -0
  179. package/.angular/cache/13.3.8/babel-webpack/825a38018882116e97529b92d3e971bb.json +1 -0
  180. package/.angular/cache/13.3.8/babel-webpack/827322420b0bf4e571321c200204f131.json +1 -0
  181. package/.angular/cache/13.3.8/babel-webpack/83baf9ca4e3395d2d5e5b924c74b5d69.json +1 -0
  182. package/.angular/cache/13.3.8/babel-webpack/83f118a093bfed771c90b2be60915ec2.json +1 -0
  183. package/.angular/cache/13.3.8/babel-webpack/86f90bd133cc14bd5e56f0799ddf9078.json +1 -0
  184. package/.angular/cache/13.3.8/babel-webpack/87851d6e26a3d008e043f7dfe633fed6.json +1 -0
  185. package/.angular/cache/13.3.8/babel-webpack/87b764acce5c285ebc92c67a512be949.json +1 -0
  186. package/.angular/cache/13.3.8/babel-webpack/886449f9f291fa3749aa80e90b3b9baa.json +1 -0
  187. package/.angular/cache/13.3.8/babel-webpack/8996307ea201cc088e8ae52c3147034e.json +1 -0
  188. package/.angular/cache/13.3.8/babel-webpack/8ad06ced1b426df27f86e698e23cd7bc.json +1 -0
  189. package/.angular/cache/13.3.8/babel-webpack/8b72b92a68c0aa36907479d54f6054ff.json +1 -0
  190. package/.angular/cache/13.3.8/babel-webpack/8b87157fd8f1fd92951de100c4338217.json +1 -0
  191. package/.angular/cache/13.3.8/babel-webpack/8d9f1796f742e95e3cfca5b9d522de84.json +1 -0
  192. package/.angular/cache/13.3.8/babel-webpack/8f69db7fd3359e9a1bd0697ba8267a8c.json +1 -0
  193. package/.angular/cache/13.3.8/babel-webpack/8f7d13df8bb26b1cf12a1a66af10a642.json +1 -0
  194. package/.angular/cache/13.3.8/babel-webpack/8ff6cb151e5ed105330f8dd6869861e2.json +1 -0
  195. package/.angular/cache/13.3.8/babel-webpack/905811c589a08ff992dd16401158f01d.json +1 -0
  196. package/.angular/cache/13.3.8/babel-webpack/91bfe0227693f3f6a28b93f16ce90aba.json +1 -0
  197. package/.angular/cache/13.3.8/babel-webpack/92e32b8e0b7d6cfa56e253e9949b28b5.json +1 -0
  198. package/.angular/cache/13.3.8/babel-webpack/93022f8c3568cc0763b7bad0ee433b8b.json +1 -0
  199. package/.angular/cache/13.3.8/babel-webpack/938bb3acf3bd6d51461354f14ba81282.json +1 -0
  200. package/.angular/cache/13.3.8/babel-webpack/9400d7ebd38390b019c049d6c636db71.json +1 -0
  201. package/.angular/cache/13.3.8/babel-webpack/947f408ca8e3872a9cfa4163c2c284c8.json +1 -0
  202. package/.angular/cache/13.3.8/babel-webpack/95f4a24c39887555c0e1d85b1979bcf6.json +1 -0
  203. package/.angular/cache/13.3.8/babel-webpack/9617d48f11c90169d8297e26a46c26d7.json +1 -0
  204. package/.angular/cache/13.3.8/babel-webpack/98ba64e212e975e34df2fcc90d0caf6e.json +1 -0
  205. package/.angular/cache/13.3.8/babel-webpack/9ad5a1f9a21e742680cf3cb1818861ad.json +1 -0
  206. package/.angular/cache/13.3.8/babel-webpack/9c2c51a3a60e6d9f9165b003e76d401a.json +1 -0
  207. package/.angular/cache/13.3.8/babel-webpack/9caf482a8cafdd62827fb068390c19d2.json +1 -0
  208. package/.angular/cache/13.3.8/babel-webpack/9cdd3dce1fca0a68c50c30c3b154784e.json +1 -0
  209. package/.angular/cache/13.3.8/babel-webpack/9dd9f9069a5a9d39bff4ba3aebf3aacd.json +1 -0
  210. package/.angular/cache/13.3.8/babel-webpack/9e04c25c398c9641b70773472b91e9f4.json +1 -0
  211. package/.angular/cache/13.3.8/babel-webpack/9e67ca1c65c2b233d408cb44f808ab1f.json +1 -0
  212. package/.angular/cache/13.3.8/babel-webpack/a06a5557d63854b094d704445b9cbba0.json +1 -0
  213. package/.angular/cache/13.3.8/babel-webpack/a0cba8d6bad5dbf6e2cd9c1dce6a6d8c.json +1 -0
  214. package/.angular/cache/13.3.8/babel-webpack/a17ae6b26968359520d47b0650868869.json +1 -0
  215. package/.angular/cache/13.3.8/babel-webpack/a19e2c547578cfc1624d80296e6cc6e9.json +1 -0
  216. package/.angular/cache/13.3.8/babel-webpack/a3cc87818516e8313e437b957c96de27.json +1 -0
  217. package/.angular/cache/13.3.8/babel-webpack/a63c7a2e141525144e120979dfab330e.json +1 -0
  218. package/.angular/cache/13.3.8/babel-webpack/a77291233507e897c763cd5708171f2c.json +1 -0
  219. package/.angular/cache/13.3.8/babel-webpack/a9d0e9a36e846d7722eb6cbf86cf0eab.json +1 -0
  220. package/.angular/cache/13.3.8/babel-webpack/aa8d07367b1673dc078e853d9f54bd4f.json +1 -0
  221. package/.angular/cache/13.3.8/babel-webpack/aaa7865da0ed6c92e751d36c340f0412.json +1 -0
  222. package/.angular/cache/13.3.8/babel-webpack/ab14fddae15293d3e96649edb59ab6ee.json +1 -0
  223. package/.angular/cache/13.3.8/babel-webpack/ab5001b86bfe76ad7eabaa3bb03ee91c.json +1 -0
  224. package/.angular/cache/13.3.8/babel-webpack/ac115cfdb4ae57d5be899b6109d5c66d.json +1 -0
  225. package/.angular/cache/13.3.8/babel-webpack/ad5fd8e37c0ee6ec03716556349bcd7c.json +1 -0
  226. package/.angular/cache/13.3.8/babel-webpack/af15b0ed03ff515cf83a61a8f8ba8114.json +1 -0
  227. package/.angular/cache/13.3.8/babel-webpack/afd65bb5d81dd8ed61398e262960e379.json +1 -0
  228. package/.angular/cache/13.3.8/babel-webpack/b088264162bac1b5481bed0300f6aa8c.json +1 -0
  229. package/.angular/cache/13.3.8/babel-webpack/b10dbba09a3bfc69ebac1af564d03ab0.json +1 -0
  230. package/.angular/cache/13.3.8/babel-webpack/b11cb6660865c10be2d7a63cb962fb22.json +1 -0
  231. package/.angular/cache/13.3.8/babel-webpack/b2f5da40326881237ded1223a9e2b91e.json +1 -0
  232. package/.angular/cache/13.3.8/babel-webpack/b308ff5fbdb2e0d0962a00b3fdb4bba3.json +1 -0
  233. package/.angular/cache/13.3.8/babel-webpack/b4a250ad486dbf53468ea3f79f1aa56e.json +1 -0
  234. package/.angular/cache/13.3.8/babel-webpack/b4dc46a9366a3638f5263324f76d1257.json +1 -0
  235. package/.angular/cache/13.3.8/babel-webpack/b5214ad5a0cd4b989daa7cf3b2c81788.json +1 -0
  236. package/.angular/cache/13.3.8/babel-webpack/b54ab58104a20cf6abd4a7ade0cb5efe.json +1 -0
  237. package/.angular/cache/13.3.8/babel-webpack/b67b8d5d0e99959f9b731f548adc8bfa.json +1 -0
  238. package/.angular/cache/13.3.8/babel-webpack/b6b67c74aff89c2642a888b7375ab497.json +1 -0
  239. package/.angular/cache/13.3.8/babel-webpack/b78bf462c67d0084c64d890dd61e44a5.json +1 -0
  240. package/.angular/cache/13.3.8/babel-webpack/b7b45e6f3d9017ec4d9a9505ec6b1032.json +1 -0
  241. package/.angular/cache/13.3.8/babel-webpack/b902ae2d3307471e3f109cafebff941b.json +1 -0
  242. package/.angular/cache/13.3.8/babel-webpack/ba20ff82523086fc151c328e0fdc4e4e.json +1 -0
  243. package/.angular/cache/13.3.8/babel-webpack/bb5667c873411096eeb80085b1ca161e.json +1 -0
  244. package/.angular/cache/13.3.8/babel-webpack/bb58549725b01927dafeb42503c665a8.json +1 -0
  245. package/.angular/cache/13.3.8/babel-webpack/bb95ba87259582460ac5794209b3da28.json +1 -0
  246. package/.angular/cache/13.3.8/babel-webpack/bbb58b2daf454bd0a76ec382e06b07b0.json +1 -0
  247. package/.angular/cache/13.3.8/babel-webpack/bc4011f3189c2f439af86f17561ec9ce.json +1 -0
  248. package/.angular/cache/13.3.8/babel-webpack/bcbfbc473b03621491e4aba8e3148afc.json +1 -0
  249. package/.angular/cache/13.3.8/babel-webpack/bdf02e15e2b0f2252eec6075bfe0656b.json +1 -0
  250. package/.angular/cache/13.3.8/babel-webpack/bf69385e02b170469c07539aa0e90b86.json +1 -0
  251. package/.angular/cache/13.3.8/babel-webpack/bffbc2e7cd917a26abe867f247a50355.json +1 -0
  252. package/.angular/cache/13.3.8/babel-webpack/c01e2106240c1038b3f131aaacdf3127.json +1 -0
  253. package/.angular/cache/13.3.8/babel-webpack/c03b6674aa649f98a7f74af2be55e968.json +1 -0
  254. package/.angular/cache/13.3.8/babel-webpack/c12caf9d4638d85c0f0f11c0cc1f60f8.json +1 -0
  255. package/.angular/cache/13.3.8/babel-webpack/c151b4d148d17e99d9078e817b5cbed7.json +1 -0
  256. package/.angular/cache/13.3.8/babel-webpack/c21157f72fa81b896cfc69398590ffcd.json +1 -0
  257. package/.angular/cache/13.3.8/babel-webpack/c3d1530cf1bdc0040772700037b47739.json +1 -0
  258. package/.angular/cache/13.3.8/babel-webpack/c3e6c41249e1d8472be77446873e1863.json +1 -0
  259. package/.angular/cache/13.3.8/babel-webpack/c4118a992fb6bea0691521256e115d01.json +1 -0
  260. package/.angular/cache/13.3.8/babel-webpack/c42938d588314e5b841269e3b53d04b6.json +1 -0
  261. package/.angular/cache/13.3.8/babel-webpack/c4334ab9356f466b6056f380ab481291.json +1 -0
  262. package/.angular/cache/13.3.8/babel-webpack/c45c0e77d8f42cf281137812403551db.json +1 -0
  263. package/.angular/cache/13.3.8/babel-webpack/c527cc7cf1eaafe2ef74a5b64bc41bca.json +1 -0
  264. package/.angular/cache/13.3.8/babel-webpack/c5e17599d9c6b12eb0529b7431b1196f.json +1 -0
  265. package/.angular/cache/13.3.8/babel-webpack/c5f513e2805dbebd48256ec6d3d095a8.json +1 -0
  266. package/.angular/cache/13.3.8/babel-webpack/c6d1565e62b101ed183b3f447b21e774.json +1 -0
  267. package/.angular/cache/13.3.8/babel-webpack/c71837e43e0372efdecc0e3b9578f599.json +1 -0
  268. package/.angular/cache/13.3.8/babel-webpack/c926a68c65f1f4e1cb91c6d9136d43a3.json +1 -0
  269. package/.angular/cache/13.3.8/babel-webpack/c933131ed6ab617ba88b8dcf1c32f88d.json +1 -0
  270. package/.angular/cache/13.3.8/babel-webpack/caf3200b607bc0d82b1e238a1fa92e3e.json +1 -0
  271. package/.angular/cache/13.3.8/babel-webpack/cb5688b77172c4f2464646fb48434431.json +1 -0
  272. package/.angular/cache/13.3.8/babel-webpack/cc7c1b7d60e30e27fc3ac384ca5790c3.json +1 -0
  273. package/.angular/cache/13.3.8/babel-webpack/ccf739c4cd78fe256f7fe4c3d8ecb5a6.json +1 -0
  274. package/.angular/cache/13.3.8/babel-webpack/cd7be29a67ce0a719a6bba6b756c968c.json +1 -0
  275. package/.angular/cache/13.3.8/babel-webpack/cdf324523d7093bd7d83db7315f1e53d.json +1 -0
  276. package/.angular/cache/13.3.8/babel-webpack/ce55f0ec957ad17390ca1626b0fa54dc.json +1 -0
  277. package/.angular/cache/13.3.8/babel-webpack/ce83a29846bd4d7c9363952117125cd8.json +1 -0
  278. package/.angular/cache/13.3.8/babel-webpack/ce87faab295452b86a55b10f3328e88e.json +1 -0
  279. package/.angular/cache/13.3.8/babel-webpack/cee8ad61bbb1c8501799c125130713e2.json +1 -0
  280. package/.angular/cache/13.3.8/babel-webpack/cf725e286e3156c367900f91bb6fe0f4.json +1 -0
  281. package/.angular/cache/13.3.8/babel-webpack/d00e50c8700890444ea390a517892393.json +1 -0
  282. package/.angular/cache/13.3.8/babel-webpack/d13e22c859c1503702dce6b3d2bdb825.json +1 -0
  283. package/.angular/cache/13.3.8/babel-webpack/d296e6e39d7b1da9a2730657c6b9a8a8.json +1 -0
  284. package/.angular/cache/13.3.8/babel-webpack/d382ecfa087acfe724fe1d27b8aade26.json +1 -0
  285. package/.angular/cache/13.3.8/babel-webpack/d4b1b33e1be5887d55716f5de6c8619e.json +1 -0
  286. package/.angular/cache/13.3.8/babel-webpack/d66d388dd8029afedacbb3bf5eea9f2a.json +1 -0
  287. package/.angular/cache/13.3.8/babel-webpack/d670c34e6297a533c9f989c256fa904e.json +1 -0
  288. package/.angular/cache/13.3.8/babel-webpack/d6ea2139d4e7ebde4fb5d9ca685f6156.json +1 -0
  289. package/.angular/cache/13.3.8/babel-webpack/d97f611e91ff2e958d4bd563d5577d4c.json +1 -0
  290. package/.angular/cache/13.3.8/babel-webpack/db0e61ea8a2bf6305dc6436ced7873bd.json +1 -0
  291. package/.angular/cache/13.3.8/babel-webpack/db2764d8627cf6541a57cdc803977954.json +1 -0
  292. package/.angular/cache/13.3.8/babel-webpack/dc2f0c3883ddba73b7610bad5d3e5a7c.json +1 -0
  293. package/.angular/cache/13.3.8/babel-webpack/dcba1c12c2235201507746f191aaae34.json +1 -0
  294. package/.angular/cache/13.3.8/babel-webpack/dd132f3f48c7788bd78bb61cd39389c0.json +1 -0
  295. package/.angular/cache/13.3.8/babel-webpack/dd14d17f6181a4e509f4b1af92e01189.json +1 -0
  296. package/.angular/cache/13.3.8/babel-webpack/dd9efed6889cb2f2c9dcae0ac34cfd3b.json +1 -0
  297. package/.angular/cache/13.3.8/babel-webpack/de5be13a077040d81a6be92739ac9424.json +1 -0
  298. package/.angular/cache/13.3.8/babel-webpack/df3e709dc4474fbc4a1ffba664469834.json +1 -0
  299. package/.angular/cache/13.3.8/babel-webpack/df6c6ef53d881b53b959a9395f172cb5.json +1 -0
  300. package/.angular/cache/13.3.8/babel-webpack/dfddd41dde86972d7d471f6655361e6b.json +1 -0
  301. package/.angular/cache/13.3.8/babel-webpack/e11abe9c0fa21ad541612d9d18926c83.json +1 -0
  302. package/.angular/cache/13.3.8/babel-webpack/e177a98234698cea48aaeb7a5c3d62d9.json +1 -0
  303. package/.angular/cache/13.3.8/babel-webpack/e2bb776bc5c66c1b7cb2d8710f0075bd.json +1 -0
  304. package/.angular/cache/13.3.8/babel-webpack/e332faec2bafe37908a0aa88a1ac1aa5.json +1 -0
  305. package/.angular/cache/13.3.8/babel-webpack/e4d51765fc0d4ef65d8e4283090bc08f.json +1 -0
  306. package/.angular/cache/13.3.8/babel-webpack/e50b91f0d84ab2adfede57f92162e129.json +1 -0
  307. package/.angular/cache/13.3.8/babel-webpack/e65a6f02a72fab74ab88d8cea6fb91a4.json +1 -0
  308. package/.angular/cache/13.3.8/babel-webpack/e68b59f5f6e55f9bed2db51b554a6d9b.json +1 -0
  309. package/.angular/cache/13.3.8/babel-webpack/e6d1b308346f3e288e57688424c071f9.json +1 -0
  310. package/.angular/cache/13.3.8/babel-webpack/e72efbcdf47558156e4c4c5c03ad9922.json +1 -0
  311. package/.angular/cache/13.3.8/babel-webpack/e74d56fbbec5a1cee2fe5efc42f42482.json +1 -0
  312. package/.angular/cache/13.3.8/babel-webpack/e7afea9fd4aa90dc195b45e7eafa08ed.json +1 -0
  313. package/.angular/cache/13.3.8/babel-webpack/e8538d1514392ef4bd9f4175e3859b64.json +1 -0
  314. package/.angular/cache/13.3.8/babel-webpack/e92299f62ba1e277c1f0febcc42f6f6c.json +1 -0
  315. package/.angular/cache/13.3.8/babel-webpack/e9ce2aceaa98de9c401e914987675185.json +1 -0
  316. package/.angular/cache/13.3.8/babel-webpack/eaf2f107db46caef610605458d470dd6.json +1 -0
  317. package/.angular/cache/13.3.8/babel-webpack/ebe9fcdfddc0049f2a3539bdf372182a.json +1 -0
  318. package/.angular/cache/13.3.8/babel-webpack/ebf00c7d547a3fd380303a0677afd6fd.json +1 -0
  319. package/.angular/cache/13.3.8/babel-webpack/ec62a0272ab85622ae90a9ded37faac6.json +1 -0
  320. package/.angular/cache/13.3.8/babel-webpack/ec6ec0a385bca5a0af84b0764b68f2eb.json +1 -0
  321. package/.angular/cache/13.3.8/babel-webpack/ed25182b670a7ef1f75cffc990301abd.json +1 -0
  322. package/.angular/cache/13.3.8/babel-webpack/ed859e0eb8c893c50d86dc06f044e2f2.json +1 -0
  323. package/.angular/cache/13.3.8/babel-webpack/eddb54479fc84d9a7fb12de46687ccbb.json +1 -0
  324. package/.angular/cache/13.3.8/babel-webpack/efa7bcb095fd93cacda7678eab41687b.json +1 -0
  325. package/.angular/cache/13.3.8/babel-webpack/efc0dedea79d75441c21fd90de356e24.json +1 -0
  326. package/.angular/cache/13.3.8/babel-webpack/f0af07e622f23258c8ca1e7c5bfec120.json +1 -0
  327. package/.angular/cache/13.3.8/babel-webpack/f0c44de2465dcbd9e88c8a03509d0256.json +1 -0
  328. package/.angular/cache/13.3.8/babel-webpack/f1162e154ed889f4a293300795d69259.json +1 -0
  329. package/.angular/cache/13.3.8/babel-webpack/f177c4de766e451f4beff650f84ecb5a.json +1 -0
  330. package/.angular/cache/13.3.8/babel-webpack/f25518eac9526bb125e8e70536d9873e.json +1 -0
  331. package/.angular/cache/13.3.8/babel-webpack/f2c1dc64b41106092be1791fec494ac9.json +1 -0
  332. package/.angular/cache/13.3.8/babel-webpack/f34ab63ab5b8337d0023eab174e66515.json +1 -0
  333. package/.angular/cache/13.3.8/babel-webpack/f3811f682513cc105b9f7980bf5465ca.json +1 -0
  334. package/.angular/cache/13.3.8/babel-webpack/f46796dc6bf3d6d7c3611e8d607bdcda.json +1 -0
  335. package/.angular/cache/13.3.8/babel-webpack/f48109d62480024bdc089c7318d3d104.json +1 -0
  336. package/.angular/cache/13.3.8/babel-webpack/f50dbb569f9e2a941366366e228b7e7b.json +1 -0
  337. package/.angular/cache/13.3.8/babel-webpack/f56763c4978e4735e2b8fabbd1774db6.json +1 -0
  338. package/.angular/cache/13.3.8/babel-webpack/f6abd512586dde031ecd5b3305daaf95.json +1 -0
  339. package/.angular/cache/13.3.8/babel-webpack/f70e5c60d842462753b2f323debb32e4.json +1 -0
  340. package/.angular/cache/13.3.8/babel-webpack/f7a848e3fc241a5c78b17669a7bd1fa7.json +1 -0
  341. package/.angular/cache/13.3.8/babel-webpack/fa2e761077559ae9ecc7e380ec7f3aef.json +1 -0
  342. package/.angular/cache/13.3.8/babel-webpack/fa5305b0e1d7ebfd40cfa6b317c98780.json +1 -0
  343. package/.angular/cache/13.3.8/babel-webpack/fa53f4380f7b2ff4417f9785ac323634.json +1 -0
  344. package/.angular/cache/13.3.8/babel-webpack/fa5ce8a874423e1be3adde2dab6bd603.json +1 -0
  345. package/.angular/cache/13.3.8/babel-webpack/fddb68d0661d96a618e00d6674ca7dad.json +1 -0
  346. package/.angular/cache/13.3.8/babel-webpack/fe890ed50c86989a4ac3c56913c146bc.json +1 -0
  347. package/CHANGELOG.md +12 -0
  348. package/homebridge-ui/public/index.html +1 -1
  349. package/homebridge-ui/public/main.ef1d40566bd2fdc0.js +1 -0
  350. package/package.json +1 -1
  351. package/homebridge-ui/public/main.ece8fc9a34c8f89b.js +0 -1
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { innerFrom } from '../observable/innerFrom';\nimport { observeOn } from '../operators/observeOn';\nimport { subscribeOn } from '../operators/subscribeOn';\nexport function scheduleObservable(input, scheduler) {\n return innerFrom(input).pipe(subscribeOn(scheduler), observeOn(scheduler));\n} //# sourceMappingURL=scheduleObservable.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import _asyncToGenerator from \"/Users/rene/dev/eufy-plugin/publish/plugin/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { ConfigOptionsInterpreter } from '../config-options-interpreter';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../../app/plugin.service\";\nimport * as i2 from \"@angular/forms\";\nexport let IgnoreAccessoryComponent = /*#__PURE__*/(() => {\n class IgnoreAccessoryComponent extends ConfigOptionsInterpreter {\n constructor(pluginService) {\n super(pluginService);\n this.value = false;\n }\n\n ngOnInit() {\n this.readValue();\n }\n\n readValue() {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n _this.config = yield _this.pluginService.getConfig();\n\n if (_this.accessory) {\n const identifier = _this.accessory.station ? 'ignoreStations' : 'ignoreDevices';\n\n if (Array.isArray(_this.config[identifier])) {\n _this.value = _this.config[identifier].find(uId => uId === _this.accessory.uniqueId) !== undefined;\n }\n }\n })();\n }\n\n update() {\n var _this2 = this;\n\n return _asyncToGenerator(function* () {\n if (!_this2.accessory) {\n return;\n }\n\n const identifier = _this2.accessory.station ? 'ignoreStations' : 'ignoreDevices';\n _this2.config = yield _this2.pluginService.getConfig();\n\n if (_this2.value) {\n if (Array.isArray(_this2.config[identifier]) && !_this2.config[identifier].find(uId => uId === _this2.accessory.uniqueId)) {\n _this2.config[identifier].push(_this2.accessory.uniqueId);\n } else if (!Array.isArray(_this2.config[identifier])) {\n _this2.config[identifier] = [_this2.accessory.uniqueId];\n }\n } else {\n if (Array.isArray(_this2.config[identifier]) && _this2.config[identifier].find(uId => uId === _this2.accessory.uniqueId) !== undefined) {\n _this2.config[identifier] = _this2.config[identifier].filter(uId => uId !== _this2.accessory.uniqueId);\n }\n }\n\n _this2.pluginService.updateConfig(_this2.config);\n })();\n }\n\n }\n\n IgnoreAccessoryComponent.ɵfac = function IgnoreAccessoryComponent_Factory(t) {\n return new (t || IgnoreAccessoryComponent)(i0.ɵɵdirectiveInject(i1.PluginService));\n };\n\n IgnoreAccessoryComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: IgnoreAccessoryComponent,\n selectors: [[\"app-ignore-accessory\"]],\n inputs: {\n accessory: \"accessory\"\n },\n features: [i0.ɵɵInheritDefinitionFeature],\n decls: 6,\n vars: 2,\n consts: [[1, \"settingsItem\", \"row\", \"p-3\", \"pb-1\"], [1, \"d-flex\", \"justify-content-between\", \"align-items-center\", \"mb-2\"], [1, \"form-check\", \"form-switch\"], [\"type\", \"checkbox\", \"role\", \"switch\", \"id\", \"flexSwitchCheckDefault\", 1, \"form-check-input\", 3, \"ngModel\", \"ngModelChange\", \"change\"]],\n template: function IgnoreAccessoryComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 0)(1, \"div\", 1)(2, \"span\");\n i0.ɵɵtext(3);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 2)(5, \"input\", 3);\n i0.ɵɵlistener(\"ngModelChange\", function IgnoreAccessoryComponent_Template_input_ngModelChange_5_listener($event) {\n return ctx.value = $event;\n })(\"change\", function IgnoreAccessoryComponent_Template_input_change_5_listener() {\n return ctx.update();\n });\n i0.ɵɵelementEnd()()()();\n }\n\n if (rf & 2) {\n i0.ɵɵadvance(3);\n i0.ɵɵtextInterpolate1(\"Ignore \", ctx.accessory && ctx.accessory.station ? \"Station\" : \"Device\", \"\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngModel\", ctx.value);\n }\n },\n directives: [i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgModel],\n encapsulation: 2\n });\n return IgnoreAccessoryComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export default function uniqueBy(arr, fn) {\n var identifiers = new Set();\n return arr.filter(function (item) {\n var identifier = fn(item);\n\n if (!identifiers.has(identifier)) {\n identifiers.add(identifier);\n return true;\n }\n });\n}","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function filter(predicate, thisArg) {\n return operate((source, subscriber) => {\n let index = 0;\n source.subscribe(createOperatorSubscriber(subscriber, value => predicate.call(thisArg, value, index++) && subscriber.next(value)));\n });\n} //# sourceMappingURL=filter.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function sequenceEqual(compareTo, comparator = (a, b) => a === b) {\n return operate((source, subscriber) => {\n const aState = createState();\n const bState = createState();\n\n const emit = isEqual => {\n subscriber.next(isEqual);\n subscriber.complete();\n };\n\n const createSubscriber = (selfState, otherState) => {\n const sequenceEqualSubscriber = createOperatorSubscriber(subscriber, a => {\n const {\n buffer,\n complete\n } = otherState;\n\n if (buffer.length === 0) {\n complete ? emit(false) : selfState.buffer.push(a);\n } else {\n !comparator(a, buffer.shift()) && emit(false);\n }\n }, () => {\n selfState.complete = true;\n const {\n complete,\n buffer\n } = otherState;\n complete && emit(buffer.length === 0);\n sequenceEqualSubscriber === null || sequenceEqualSubscriber === void 0 ? void 0 : sequenceEqualSubscriber.unsubscribe();\n });\n return sequenceEqualSubscriber;\n };\n\n source.subscribe(createSubscriber(aState, bState));\n compareTo.subscribe(createSubscriber(bState, aState));\n });\n}\n\nfunction createState() {\n return {\n buffer: [],\n complete: false\n };\n} //# sourceMappingURL=sequenceEqual.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { AsyncAction } from './AsyncAction';\nimport { immediateProvider } from './immediateProvider';\nexport class AsapAction extends AsyncAction {\n constructor(scheduler, work) {\n super(scheduler, work);\n this.scheduler = scheduler;\n this.work = work;\n }\n\n requestAsyncId(scheduler, id, delay = 0) {\n if (delay !== null && delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n\n scheduler.actions.push(this);\n return scheduler._scheduled || (scheduler._scheduled = immediateProvider.setImmediate(scheduler.flush.bind(scheduler, undefined)));\n }\n\n recycleAsyncId(scheduler, id, delay = 0) {\n if (delay != null && delay > 0 || delay == null && this.delay > 0) {\n return super.recycleAsyncId(scheduler, id, delay);\n }\n\n if (!scheduler.actions.some(action => action.id === id)) {\n immediateProvider.clearImmediate(id);\n scheduler._scheduled = undefined;\n }\n\n return undefined;\n }\n\n} //# sourceMappingURL=AsapAction.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function refCount() {\n return operate((source, subscriber) => {\n let connection = null;\n source._refCount++;\n const refCounter = createOperatorSubscriber(subscriber, undefined, undefined, undefined, () => {\n if (!source || source._refCount <= 0 || 0 < --source._refCount) {\n connection = null;\n return;\n }\n\n const sharedConnection = source._connection;\n const conn = connection;\n connection = null;\n\n if (sharedConnection && (!conn || sharedConnection === conn)) {\n sharedConnection.unsubscribe();\n }\n\n subscriber.unsubscribe();\n });\n source.subscribe(refCounter);\n\n if (!refCounter.closed) {\n connection = source.connect();\n }\n });\n} //# sourceMappingURL=refCount.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Observable } from '../Observable';\nimport { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from '../util/isFunction';\nimport { executeSchedule } from '../util/executeSchedule';\nexport function scheduleIterable(input, scheduler) {\n return new Observable(subscriber => {\n let iterator;\n executeSchedule(subscriber, scheduler, () => {\n iterator = input[Symbol_iterator]();\n executeSchedule(subscriber, scheduler, () => {\n let value;\n let done;\n\n try {\n ({\n value,\n done\n } = iterator.next());\n } catch (err) {\n subscriber.error(err);\n return;\n }\n\n if (done) {\n subscriber.complete();\n } else {\n subscriber.next(value);\n }\n }, 0, true);\n });\n return () => isFunction(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return();\n });\n} //# sourceMappingURL=scheduleIterable.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Observable } from '../Observable';\nexport function scheduleArray(input, scheduler) {\n return new Observable(subscriber => {\n let i = 0;\n return scheduler.schedule(function () {\n if (i === input.length) {\n subscriber.complete();\n } else {\n subscriber.next(input[i++]);\n\n if (!subscriber.closed) {\n this.schedule();\n }\n }\n });\n });\n} //# sourceMappingURL=scheduleArray.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Subject } from './Subject';\nexport class BehaviorSubject extends Subject {\n constructor(_value) {\n super();\n this._value = _value;\n }\n\n get value() {\n return this.getValue();\n }\n\n _subscribe(subscriber) {\n const subscription = super._subscribe(subscriber);\n\n !subscription.closed && subscriber.next(this._value);\n return subscription;\n }\n\n getValue() {\n const {\n hasError,\n thrownError,\n _value\n } = this;\n\n if (hasError) {\n throw thrownError;\n }\n\n this._throwIfClosed();\n\n return _value;\n }\n\n next(value) {\n super.next(this._value = value);\n }\n\n} //# sourceMappingURL=BehaviorSubject.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Subject } from '../Subject';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/innerFrom';\nexport function windowWhen(closingSelector) {\n return operate((source, subscriber) => {\n let window;\n let closingSubscriber;\n\n const handleError = err => {\n window.error(err);\n subscriber.error(err);\n };\n\n const openWindow = () => {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n window === null || window === void 0 ? void 0 : window.complete();\n window = new Subject();\n subscriber.next(window.asObservable());\n let closingNotifier;\n\n try {\n closingNotifier = innerFrom(closingSelector());\n } catch (err) {\n handleError(err);\n return;\n }\n\n closingNotifier.subscribe(closingSubscriber = createOperatorSubscriber(subscriber, openWindow, openWindow, handleError));\n };\n\n openWindow();\n source.subscribe(createOperatorSubscriber(subscriber, value => window.next(value), () => {\n window.complete();\n subscriber.complete();\n }, handleError, () => {\n closingSubscriber === null || closingSubscriber === void 0 ? void 0 : closingSubscriber.unsubscribe();\n window = null;\n }));\n });\n} //# sourceMappingURL=windowWhen.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Observable } from '../../Observable';\nimport { Subscription } from '../../Subscription';\nimport { performanceTimestampProvider } from '../../scheduler/performanceTimestampProvider';\nimport { animationFrameProvider } from '../../scheduler/animationFrameProvider';\nexport function animationFrames(timestampProvider) {\n return timestampProvider ? animationFramesFactory(timestampProvider) : DEFAULT_ANIMATION_FRAMES;\n}\n\nfunction animationFramesFactory(timestampProvider) {\n const {\n schedule\n } = animationFrameProvider;\n return new Observable(subscriber => {\n const subscription = new Subscription();\n const provider = timestampProvider || performanceTimestampProvider;\n const start = provider.now();\n\n const run = timestamp => {\n const now = provider.now();\n subscriber.next({\n timestamp: timestampProvider ? now : timestamp,\n elapsed: now - start\n });\n\n if (!subscriber.closed) {\n subscription.add(schedule(run));\n }\n };\n\n subscription.add(schedule(run));\n return subscription;\n });\n}\n\nconst DEFAULT_ANIMATION_FRAMES = animationFramesFactory(); //# sourceMappingURL=animationFrames.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined))();\nexport function errorNotification(error) {\n return createNotification('E', undefined, error);\n}\nexport function nextNotification(value) {\n return createNotification('N', value, undefined);\n}\nexport function createNotification(kind, value, error) {\n return {\n kind,\n value,\n error\n };\n} //# sourceMappingURL=NotificationFactories.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"\"use strict\";\n\nmodule.exports = function (i) {\n return i[1];\n};","map":null,"metadata":{},"sourceType":"script"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Observable } from './Observable';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\nexport let Subject = /*#__PURE__*/(() => {\n class Subject extends Observable {\n constructor() {\n super();\n this.closed = false;\n this.currentObservers = null;\n this.observers = [];\n this.isStopped = false;\n this.hasError = false;\n this.thrownError = null;\n }\n\n lift(operator) {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator;\n return subject;\n }\n\n _throwIfClosed() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n }\n\n next(value) {\n errorContext(() => {\n this._throwIfClosed();\n\n if (!this.isStopped) {\n if (!this.currentObservers) {\n this.currentObservers = Array.from(this.observers);\n }\n\n for (const observer of this.currentObservers) {\n observer.next(value);\n }\n }\n });\n }\n\n error(err) {\n errorContext(() => {\n this._throwIfClosed();\n\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n const {\n observers\n } = this;\n\n while (observers.length) {\n observers.shift().error(err);\n }\n }\n });\n }\n\n complete() {\n errorContext(() => {\n this._throwIfClosed();\n\n if (!this.isStopped) {\n this.isStopped = true;\n const {\n observers\n } = this;\n\n while (observers.length) {\n observers.shift().complete();\n }\n }\n });\n }\n\n unsubscribe() {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null;\n }\n\n get observed() {\n var _a;\n\n return ((_a = this.observers) === null || _a === void 0 ? void 0 : _a.length) > 0;\n }\n\n _trySubscribe(subscriber) {\n this._throwIfClosed();\n\n return super._trySubscribe(subscriber);\n }\n\n _subscribe(subscriber) {\n this._throwIfClosed();\n\n this._checkFinalizedStatuses(subscriber);\n\n return this._innerSubscribe(subscriber);\n }\n\n _innerSubscribe(subscriber) {\n const {\n hasError,\n isStopped,\n observers\n } = this;\n\n if (hasError || isStopped) {\n return EMPTY_SUBSCRIPTION;\n }\n\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription(() => {\n this.currentObservers = null;\n arrRemove(observers, subscriber);\n });\n }\n\n _checkFinalizedStatuses(subscriber) {\n const {\n hasError,\n thrownError,\n isStopped\n } = this;\n\n if (hasError) {\n subscriber.error(thrownError);\n } else if (isStopped) {\n subscriber.complete();\n }\n }\n\n asObservable() {\n const observable = new Observable();\n observable.source = this;\n return observable;\n }\n\n }\n\n Subject.create = (destination, source) => {\n return new AnonymousSubject(destination, source);\n };\n\n return Subject;\n})();\nexport class AnonymousSubject extends Subject {\n constructor(destination, source) {\n super();\n this.destination = destination;\n this.source = source;\n }\n\n next(value) {\n var _a, _b;\n\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.next) === null || _b === void 0 ? void 0 : _b.call(_a, value);\n }\n\n error(err) {\n var _a, _b;\n\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.call(_a, err);\n }\n\n complete() {\n var _a, _b;\n\n (_b = (_a = this.destination) === null || _a === void 0 ? void 0 : _a.complete) === null || _b === void 0 ? void 0 : _b.call(_a);\n }\n\n _subscribe(subscriber) {\n var _a, _b;\n\n return (_b = (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber)) !== null && _b !== void 0 ? _b : EMPTY_SUBSCRIPTION;\n }\n\n} //# sourceMappingURL=Subject.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { concat } from '../observable/concat';\nimport { popScheduler } from '../util/args';\nimport { operate } from '../util/lift';\nexport function startWith(...values) {\n const scheduler = popScheduler(values);\n return operate((source, subscriber) => {\n (scheduler ? concat(values, source, scheduler) : concat(values, source)).subscribe(subscriber);\n });\n} //# sourceMappingURL=startWith.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { AsyncScheduler } from './AsyncScheduler';\nexport class AnimationFrameScheduler extends AsyncScheduler {\n flush(action) {\n this._active = true;\n const flushId = this._scheduled;\n this._scheduled = undefined;\n const {\n actions\n } = this;\n let error;\n action = action || actions.shift();\n\n do {\n if (error = action.execute(action.state, action.delay)) {\n break;\n }\n } while ((action = actions[0]) && action.id === flushId && actions.shift());\n\n this._active = false;\n\n if (error) {\n while ((action = actions[0]) && action.id === flushId && actions.shift()) {\n action.unsubscribe();\n }\n\n throw error;\n }\n }\n\n} //# sourceMappingURL=AnimationFrameScheduler.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { asyncScheduler } from '../scheduler/async';\nimport { delayWhen } from './delayWhen';\nimport { timer } from '../observable/timer';\nexport function delay(due, scheduler = asyncScheduler) {\n const duration = timer(due, scheduler);\n return delayWhen(() => duration);\n} //# sourceMappingURL=delay.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import * as __NgCli_bootstrap_1 from \"@angular/platform-browser\";\n/* eslint-disable no-console */\n\nimport { enableProdMode } from '@angular/core';\nimport { AppModule } from './app/app.module';\nimport { environment } from './environments/environment';\n\nif (environment.production) {\n enableProdMode();\n}\n\n__NgCli_bootstrap_1.platformBrowser().bootstrapModule(AppModule).catch(err => console.error(err));","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function find(predicate, thisArg) {\n return operate(createFind(predicate, thisArg, 'value'));\n}\nexport function createFind(predicate, thisArg, emit) {\n const findIndex = emit === 'index';\n return (source, subscriber) => {\n let index = 0;\n source.subscribe(createOperatorSubscriber(subscriber, value => {\n const i = index++;\n\n if (predicate.call(thisArg, value, i, source)) {\n subscriber.next(findIndex ? i : value);\n subscriber.complete();\n }\n }, () => {\n subscriber.next(findIndex ? -1 : undefined);\n subscriber.complete();\n }));\n };\n} //# sourceMappingURL=find.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import _asyncToGenerator from \"/Users/rene/dev/eufy-plugin/publish/plugin/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { ConfigOptionsInterpreter } from '../config-options-interpreter';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../../app/plugin.service\";\nimport * as i2 from \"@ng-bootstrap/ng-bootstrap\";\nimport * as i3 from \"@angular/forms\";\nimport * as i4 from \"@angular/common\";\n\nfunction AdvancedVideoconfigComponent_ng_template_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\")(1, \"b\");\n i0.ɵɵtext(2, \"Advanced Video Config\");\n i0.ɵɵelementEnd()();\n }\n}\n\nfunction AdvancedVideoconfigComponent_ng_template_4_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"button\", 4)(1, \"span\")(2, \"b\");\n i0.ɵɵtext(3, \"Advanced Video Config\");\n i0.ɵɵelementEnd()()();\n }\n}\n\nfunction AdvancedVideoconfigComponent_ng_template_5_div_15_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\");\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r4 = i0.ɵɵnextContext(2);\n i0.ɵɵadvance(1);\n i0.ɵɵtextInterpolate1(\" \", ctx_r4.presetDescription, \" \");\n }\n}\n\nfunction AdvancedVideoconfigComponent_ng_template_5_Template(rf, ctx) {\n if (rf & 1) {\n const _r6 = i0.ɵɵgetCurrentView();\n\n i0.ɵɵtext(0, \" The following options directly change the way how ffmpeg is configured when a stream is started. If configured incorrectly these will most likely result in faulty streams or bad streaming performance. \");\n i0.ɵɵelement(1, \"p\");\n i0.ɵɵtext(2, \" You can try the following presets to improve your streaming experience. We do not guarantee that these will work for you.\");\n i0.ɵɵelement(3, \"p\");\n i0.ɵɵelementStart(4, \"div\", 5)(5, \"div\", 6)(6, \"select\", 7);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_select_ngModelChange_6_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r5 = i0.ɵɵnextContext();\n return ctx_r5.preset = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_select_change_6_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r7 = i0.ɵɵnextContext();\n return ctx_r7.loadPreset();\n });\n i0.ɵɵelementStart(7, \"option\", 8);\n i0.ɵɵtext(8, \"No Preset (default)\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(9, \"option\", 8);\n i0.ɵɵtext(10, \"Copy\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(11, \"option\", 8);\n i0.ɵɵtext(12, \"Performance\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(13, \"option\", 8);\n i0.ɵɵtext(14, \"Custom\");\n i0.ɵɵelementEnd()()()();\n i0.ɵɵtemplate(15, AdvancedVideoconfigComponent_ng_template_5_div_15_Template, 2, 1, \"div\", 9);\n i0.ɵɵelement(16, \"p\");\n i0.ɵɵelementStart(17, \"div\", 10)(18, \"div\", 11)(19, \"input\", 12);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_19_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r8 = i0.ɵɵnextContext();\n return ctx_r8.debug = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_19_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r9 = i0.ɵɵnextContext();\n return ctx_r9.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(20, \"span\", 13);\n i0.ɵɵtext(21, \"ffmpeg debug\");\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(22, \"div\", 10)(23, \"div\", 11)(24, \"input\", 12);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_24_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r10 = i0.ɵɵnextContext();\n return ctx_r10.useSeparateProcesses = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_24_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r11 = i0.ɵɵnextContext();\n return ctx_r11.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(25, \"span\", 13);\n i0.ɵɵtext(26, \"use separate processes for video and audio\");\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(27, \"div\", 10)(28, \"div\", 11)(29, \"input\", 12);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_29_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r12 = i0.ɵɵnextContext();\n return ctx_r12.readRate = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_29_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r13 = i0.ɵɵnextContext();\n return ctx_r13.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(30, \"span\", 13);\n i0.ɵɵtext(31, \"readRate\");\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(32, \"div\", 10)(33, \"div\", 11)(34, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_34_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r14 = i0.ɵɵnextContext();\n ctx_r14.vcodec = ctx_r14.vcodec === undefined ? \"\" : undefined;\n return ctx_r14.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(35, \"span\", 13);\n i0.ɵɵtext(36, \"vcodec\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(37, \"input\", 15);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_37_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r15 = i0.ɵɵnextContext();\n return ctx_r15.vcodec = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_37_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r16 = i0.ɵɵnextContext();\n return ctx_r16.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(38, \"div\", 10)(39, \"div\", 11)(40, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_40_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r17 = i0.ɵɵnextContext();\n ctx_r17.acodec = ctx_r17.acodec === undefined ? \"\" : undefined;\n return ctx_r17.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(41, \"span\", 13);\n i0.ɵɵtext(42, \"acodec\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(43, \"input\", 16);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_43_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r18 = i0.ɵɵnextContext();\n return ctx_r18.acodec = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_43_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r19 = i0.ɵɵnextContext();\n return ctx_r19.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(44, \"div\", 10)(45, \"div\", 11)(46, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_46_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r20 = i0.ɵɵnextContext();\n ctx_r20.videoFilter = ctx_r20.videoFilter === undefined ? \"\" : undefined;\n return ctx_r20.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(47, \"span\", 13);\n i0.ɵɵtext(48, \"videoFilter\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(49, \"input\", 17);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_49_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r21 = i0.ɵɵnextContext();\n return ctx_r21.videoFilter = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_49_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r22 = i0.ɵɵnextContext();\n return ctx_r22.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(50, \"div\", 10)(51, \"div\", 11)(52, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_52_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r23 = i0.ɵɵnextContext();\n ctx_r23.encoderOptions = ctx_r23.encoderOptions === undefined ? \"\" : undefined;\n return ctx_r23.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(53, \"span\", 13);\n i0.ɵɵtext(54, \"encoderOptions\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(55, \"input\", 18);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_55_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r24 = i0.ɵɵnextContext();\n return ctx_r24.encoderOptions = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_55_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r25 = i0.ɵɵnextContext();\n return ctx_r25.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(56, \"div\", 10)(57, \"div\", 11)(58, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_58_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r26 = i0.ɵɵnextContext();\n ctx_r26.probeSize = ctx_r26.probeSize === undefined ? 0 : undefined;\n return ctx_r26.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(59, \"span\", 13);\n i0.ɵɵtext(60, \"probeSize\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(61, \"input\", 19);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_61_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r27 = i0.ɵɵnextContext();\n return ctx_r27.probeSize = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_61_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r28 = i0.ɵɵnextContext();\n return ctx_r28.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(62, \"div\", 10)(63, \"div\", 11)(64, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_64_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r29 = i0.ɵɵnextContext();\n ctx_r29.analyzeDuration = ctx_r29.analyzeDuration === undefined ? 0 : undefined;\n return ctx_r29.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(65, \"span\", 13);\n i0.ɵɵtext(66, \"analyzeDuration\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(67, \"input\", 19);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_67_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r30 = i0.ɵɵnextContext();\n return ctx_r30.analyzeDuration = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_67_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r31 = i0.ɵɵnextContext();\n return ctx_r31.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(68, \"div\", 10)(69, \"div\", 11)(70, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_70_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r32 = i0.ɵɵnextContext();\n ctx_r32.maxStreams = ctx_r32.maxStreams === undefined ? 0 : undefined;\n return ctx_r32.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(71, \"span\", 13);\n i0.ɵɵtext(72, \"maxStreams\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(73, \"input\", 19);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_73_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r33 = i0.ɵɵnextContext();\n return ctx_r33.maxStreams = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_73_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r34 = i0.ɵɵnextContext();\n return ctx_r34.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(74, \"div\", 10)(75, \"div\", 11)(76, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_76_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r35 = i0.ɵɵnextContext();\n ctx_r35.maxWidth = ctx_r35.maxWidth === undefined ? 0 : undefined;\n return ctx_r35.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(77, \"span\", 13);\n i0.ɵɵtext(78, \"maxWidth\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(79, \"input\", 19);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_79_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r36 = i0.ɵɵnextContext();\n return ctx_r36.maxWidth = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_79_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r37 = i0.ɵɵnextContext();\n return ctx_r37.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(80, \"div\", 10)(81, \"div\", 11)(82, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_82_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r38 = i0.ɵɵnextContext();\n ctx_r38.maxHeight = ctx_r38.maxHeight === undefined ? 0 : undefined;\n return ctx_r38.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(83, \"span\", 13);\n i0.ɵɵtext(84, \"maxHeight\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(85, \"input\", 19);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_85_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r39 = i0.ɵɵnextContext();\n return ctx_r39.maxHeight = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_85_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r40 = i0.ɵɵnextContext();\n return ctx_r40.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(86, \"div\", 10)(87, \"div\", 11)(88, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_88_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r41 = i0.ɵɵnextContext();\n ctx_r41.maxFPS = ctx_r41.maxFPS === undefined ? 0 : undefined;\n return ctx_r41.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(89, \"span\", 13);\n i0.ɵɵtext(90, \"fps\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(91, \"input\", 19);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_91_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r42 = i0.ɵɵnextContext();\n return ctx_r42.maxFPS = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_91_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r43 = i0.ɵɵnextContext();\n return ctx_r43.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(92, \"div\", 10)(93, \"div\", 11)(94, \"input\", 14);\n i0.ɵɵlistener(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_94_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r44 = i0.ɵɵnextContext();\n ctx_r44.maxBitrate = ctx_r44.maxBitrate === undefined ? 0 : undefined;\n return ctx_r44.update();\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(95, \"span\", 13);\n i0.ɵɵtext(96, \"bitrate\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(97, \"input\", 19);\n i0.ɵɵlistener(\"ngModelChange\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_ngModelChange_97_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r45 = i0.ɵɵnextContext();\n return ctx_r45.maxBitrate = $event;\n })(\"change\", function AdvancedVideoconfigComponent_ng_template_5_Template_input_change_97_listener() {\n i0.ɵɵrestoreView(_r6);\n const ctx_r46 = i0.ɵɵnextContext();\n return ctx_r46.update();\n });\n i0.ɵɵelementEnd()();\n }\n\n if (rf & 2) {\n const ctx_r3 = i0.ɵɵnextContext();\n i0.ɵɵadvance(6);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.preset);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngValue\", 0);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngValue\", 1);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngValue\", 2);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngValue\", 3);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngIf\", ctx_r3.presetDescription);\n i0.ɵɵadvance(4);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.debug);\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.useSeparateProcesses);\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.readRate);\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"checked\", ctx_r3.vcodec !== undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.vcodec);\n i0.ɵɵattribute(\"disabled\", ctx_r3.vcodec === undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.acodec !== undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.acodec);\n i0.ɵɵattribute(\"disabled\", ctx_r3.acodec === undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.videoFilter !== undefined ? true : null);\n i0.ɵɵattribute(\"disabled\", ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(1);\n i0.ɵɵattribute(\"style\", ctx_r3.vcodec === \"copy\" ? \"text-decoration: line-through; color: lightgray;\" : null, i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.videoFilter);\n i0.ɵɵattribute(\"disabled\", ctx_r3.videoFilter === undefined || ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.encoderOptions !== undefined ? true : null);\n i0.ɵɵattribute(\"disabled\", ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(1);\n i0.ɵɵattribute(\"style\", ctx_r3.vcodec === \"copy\" ? \"text-decoration: line-through; color: lightgray;\" : null, i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.encoderOptions);\n i0.ɵɵattribute(\"disabled\", ctx_r3.encoderOptions === undefined || ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.probeSize !== undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.probeSize);\n i0.ɵɵattribute(\"disabled\", ctx_r3.probeSize === undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.analyzeDuration !== undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.analyzeDuration);\n i0.ɵɵattribute(\"disabled\", ctx_r3.analyzeDuration === undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.maxStreams !== undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.maxStreams);\n i0.ɵɵattribute(\"disabled\", ctx_r3.maxStreams === undefined ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.maxWidth !== undefined ? true : null);\n i0.ɵɵattribute(\"disabled\", ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(1);\n i0.ɵɵattribute(\"style\", ctx_r3.vcodec === \"copy\" ? \"text-decoration: line-through; color: lightgray;\" : null, i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.maxWidth);\n i0.ɵɵattribute(\"disabled\", ctx_r3.maxWidth === undefined || ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.maxHeight !== undefined ? true : null);\n i0.ɵɵattribute(\"disabled\", ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(1);\n i0.ɵɵattribute(\"style\", ctx_r3.vcodec === \"copy\" ? \"text-decoration: line-through; color: lightgray;\" : null, i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.maxHeight);\n i0.ɵɵattribute(\"disabled\", ctx_r3.maxHeight === undefined || ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.maxFPS !== undefined ? true : null);\n i0.ɵɵattribute(\"disabled\", ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(1);\n i0.ɵɵattribute(\"style\", ctx_r3.vcodec === \"copy\" ? \"text-decoration: line-through; color: lightgray;\" : null, i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.maxFPS);\n i0.ɵɵattribute(\"disabled\", ctx_r3.maxFPS === undefined || ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"checked\", ctx_r3.maxBitrate !== undefined ? true : null);\n i0.ɵɵattribute(\"disabled\", ctx_r3.vcodec === \"copy\" ? true : null);\n i0.ɵɵadvance(1);\n i0.ɵɵattribute(\"style\", ctx_r3.vcodec === \"copy\" ? \"text-decoration: line-through; color: lightgray;\" : null, i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngModel\", ctx_r3.maxBitrate);\n i0.ɵɵattribute(\"disabled\", ctx_r3.maxBitrate === undefined || ctx_r3.vcodec === \"copy\" ? true : null);\n }\n}\n\nexport let AdvancedVideoconfigComponent = /*#__PURE__*/(() => {\n class AdvancedVideoconfigComponent extends ConfigOptionsInterpreter {\n constructor(pluginService) {\n super(pluginService);\n this.debug = undefined;\n this.readRate = undefined;\n this.vcodec = undefined;\n this.acodec = undefined;\n this.videoFilter = undefined;\n this.encoderOptions = undefined;\n this.probeSize = undefined;\n this.analyzeDuration = undefined;\n this.maxStreams = undefined;\n this.maxWidth = undefined;\n this.maxHeight = undefined;\n this.maxFPS = undefined;\n this.maxBitrate = undefined;\n this.useSeparateProcesses = undefined;\n this.preset = 0;\n }\n\n ngOnInit() {\n this.readValue();\n }\n\n readValue() {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n var _a;\n\n const config = yield _this.getCameraConfig(((_a = _this.accessory) === null || _a === void 0 ? void 0 : _a.uniqueId) || '');\n\n if (config && Object.prototype.hasOwnProperty.call(config, 'videoConfig')) {\n Object.entries(config['videoConfig']).forEach(([key, value]) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const obj = _this;\n obj[key] = value;\n });\n }\n\n _this.updatePreset();\n })();\n }\n\n loadPreset() {\n if (this.preset === 0) {\n this.readRate = undefined;\n this.vcodec = undefined;\n this.acodec = undefined;\n this.videoFilter = undefined;\n this.encoderOptions = undefined;\n this.probeSize = undefined;\n this.analyzeDuration = undefined;\n this.maxStreams = undefined;\n this.maxWidth = undefined;\n this.maxHeight = undefined;\n this.maxFPS = undefined;\n this.maxBitrate = undefined;\n this.useSeparateProcesses = undefined;\n this.presetDescription = undefined;\n } else if (this.preset === 1) {\n this.readRate = undefined;\n this.vcodec = 'copy';\n this.acodec = undefined;\n this.videoFilter = undefined;\n this.encoderOptions = undefined;\n this.probeSize = undefined;\n this.analyzeDuration = undefined;\n this.maxStreams = undefined;\n this.maxWidth = undefined;\n this.maxHeight = undefined;\n this.maxFPS = undefined;\n this.maxBitrate = undefined;\n this.useSeparateProcesses = true; // eslint-disable-next-line max-len\n\n this.presetDescription = 'Most eufy cams support the same codec that HomeKit requests. You can try and \\'forward\\' the stream directly without encoding it with ffmpeg. This can increase performance and quality drastically.';\n } else if (this.preset === 2) {\n this.readRate = undefined;\n this.vcodec = undefined;\n this.acodec = undefined;\n this.videoFilter = undefined;\n this.encoderOptions = undefined;\n this.probeSize = undefined;\n this.analyzeDuration = undefined;\n this.maxStreams = undefined;\n this.maxWidth = 640;\n this.maxHeight = 480;\n this.maxFPS = 15;\n this.maxBitrate = undefined;\n this.useSeparateProcesses = true; // eslint-disable-next-line max-len\n\n this.presetDescription = 'This preset tries to increase performance by reducing the quality of the stream. This can work for low performance hardware like raspberry pis.';\n } else {\n this.presetDescription = undefined;\n }\n\n this.update();\n }\n\n updatePreset() {\n let p = 3;\n\n if (!this.readRate && this.vcodec === undefined && this.acodec === undefined && this.videoFilter === undefined && this.encoderOptions === undefined && this.probeSize === undefined && this.analyzeDuration === undefined && this.maxStreams === undefined && this.maxWidth === undefined && this.maxHeight === undefined && this.maxFPS === undefined && this.maxBitrate === undefined && this.useSeparateProcesses === undefined) {\n p = 0;\n }\n\n if (!this.readRate && this.vcodec === 'copy' && this.acodec === undefined && this.videoFilter === undefined && this.encoderOptions === undefined && this.probeSize === undefined && this.analyzeDuration === undefined && this.maxStreams === undefined && this.maxWidth === undefined && this.maxHeight === undefined && this.maxFPS === undefined && this.maxBitrate === undefined && this.useSeparateProcesses === true) {\n p = 1;\n }\n\n if (!this.readRate && this.vcodec === undefined && this.acodec === undefined && this.videoFilter === undefined && this.encoderOptions === undefined && this.probeSize === undefined && this.analyzeDuration === undefined && this.maxStreams === undefined && this.maxWidth === 640 && this.maxHeight === 480 && this.maxFPS === 15 && this.maxBitrate === undefined && this.useSeparateProcesses === true) {\n p = 2;\n }\n\n if (p !== this.preset) {\n this.preset = p;\n }\n }\n\n update() {\n var _this2 = this;\n\n return _asyncToGenerator(function* () {\n var _a;\n\n const config = yield _this2.getCameraConfig(((_a = _this2.accessory) === null || _a === void 0 ? void 0 : _a.uniqueId) || '');\n const videoConfig = config && Object.prototype.hasOwnProperty.call(config, 'videoConfig') ? config['videoConfig'] : {};\n const newConfig = {};\n\n if (Object.prototype.hasOwnProperty.call(videoConfig, 'audio')) {\n newConfig['audio'] = videoConfig['audio'];\n }\n\n if (_this2.debug) {\n newConfig['debug'] = _this2.debug;\n }\n\n if (_this2.readRate) {\n newConfig['readRate'] = _this2.readRate;\n }\n\n if (_this2.vcodec && _this2.vcodec !== '') {\n newConfig['vcodec'] = _this2.vcodec;\n }\n\n if (_this2.acodec && _this2.acodec !== '') {\n newConfig['acodec'] = _this2.acodec;\n }\n\n if (_this2.videoFilter && _this2.videoFilter !== '') {\n newConfig['videoFilter'] = _this2.videoFilter;\n }\n\n if (_this2.encoderOptions && _this2.encoderOptions !== '') {\n newConfig['encoderOptions'] = _this2.encoderOptions;\n }\n\n if (_this2.probeSize !== undefined) {\n newConfig['probeSize'] = _this2.probeSize;\n }\n\n if (_this2.analyzeDuration !== undefined) {\n newConfig['analyzeDuration'] = _this2.analyzeDuration;\n }\n\n if (_this2.maxStreams !== undefined) {\n newConfig['maxStreams'] = _this2.maxStreams;\n }\n\n if (_this2.maxWidth !== undefined) {\n newConfig['maxWidth'] = _this2.maxWidth;\n }\n\n if (_this2.maxHeight !== undefined) {\n newConfig['maxHeight'] = _this2.maxHeight;\n }\n\n if (_this2.maxFPS !== undefined) {\n newConfig['maxFPS'] = _this2.maxFPS;\n }\n\n if (_this2.maxBitrate !== undefined) {\n newConfig['maxBitrate'] = _this2.maxBitrate;\n }\n\n if (_this2.useSeparateProcesses) {\n newConfig['useSeparateProcesses'] = _this2.useSeparateProcesses;\n }\n\n _this2.updateConfig({\n videoConfig: newConfig\n }, _this2.accessory);\n\n _this2.updatePreset();\n })();\n }\n\n }\n\n AdvancedVideoconfigComponent.ɵfac = function AdvancedVideoconfigComponent_Factory(t) {\n return new (t || AdvancedVideoconfigComponent)(i0.ɵɵdirectiveInject(i1.PluginService));\n };\n\n AdvancedVideoconfigComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: AdvancedVideoconfigComponent,\n selectors: [[\"app-advanced-videoconfig\"]],\n inputs: {\n accessory: \"accessory\"\n },\n features: [i0.ɵɵInheritDefinitionFeature],\n decls: 6,\n vars: 0,\n consts: [[\"acc\", \"ngbAccordion\"], [\"ngbPanelTitle\", \"\", \"class\", \"accordion-header\"], [\"ngbPanelHeader\", \"\"], [\"ngbPanelContent\", \"\"], [\"ngbPanelToggle\", \"\", 1, \"accordion-button\"], [1, \"d-flex\", \"flex-column\", \"flex-sm-row\", \"justify-content-between\", \"align-items-start\", \"align-items-sm-center\", \"mb-2\"], [1, \"col-12\", \"col-sm-4\"], [\"aria-label\", \"Presets\", 1, \"form-select\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [3, \"ngValue\"], [4, \"ngIf\"], [1, \"input-group\", \"mb-1\"], [1, \"input-group-text\"], [\"type\", \"checkbox\", 1, \"form-check-input\", \"mt-0\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [\"id\", \"inputGroup-sizing-default\", 1, \"input-group-text\"], [\"type\", \"checkbox\", 1, \"form-check-input\", \"mt-0\", 3, \"checked\", \"change\"], [\"type\", \"text\", \"placeholder\", \"libx264\", 1, \"form-control\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [\"type\", \"text\", \"placeholder\", \"libfdk_aac\", 1, \"form-control\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [\"type\", \"text\", \"placeholder\", \"leave blank if you don't know\", 1, \"form-control\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [\"type\", \"text\", \"placeholder\", \"-preset ultrafast -tune zerolatency\", 1, \"form-control\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [\"type\", \"number\", \"placeholder\", \"0\", 1, \"form-control\", 3, \"ngModel\", \"ngModelChange\", \"change\"]],\n template: function AdvancedVideoconfigComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"ngb-accordion\", null, 0)(2, \"ngb-panel\");\n i0.ɵɵtemplate(3, AdvancedVideoconfigComponent_ng_template_3_Template, 3, 0, \"ng-template\", 1);\n i0.ɵɵtemplate(4, AdvancedVideoconfigComponent_ng_template_4_Template, 4, 0, \"ng-template\", 2);\n i0.ɵɵtemplate(5, AdvancedVideoconfigComponent_ng_template_5_Template, 98, 54, \"ng-template\", 3);\n i0.ɵɵelementEnd()();\n }\n },\n directives: [i2.NgbAccordion, i2.NgbPanel, i2.NgbPanelTitle, i2.NgbPanelHeader, i2.NgbPanelToggle, i2.NgbPanelContent, i3.SelectControlValueAccessor, i3.NgControlStatus, i3.NgModel, i3.NgSelectOption, i3.ɵNgSelectMultipleOption, i4.NgIf, i3.CheckboxControlValueAccessor, i3.DefaultValueAccessor, i3.NumberValueAccessor],\n styles: [\".accordion-button[_ngcontent-%COMP%]:not(.collapsed){background-color:#00000008!important;color:#000!important}.accordion-button[_ngcontent-%COMP%]:not(.collapsed):after{background-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\")}.form-check-input[_ngcontent-%COMP%]{margin-left:-.5rem}.input-group-text[_ngcontent-%COMP%]{padding:.375rem 1rem}\"]\n });\n return AdvancedVideoconfigComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m;\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = -7;\n var i = isLE ? nBytes - 1 : 0;\n var d = isLE ? -1 : 1;\n var s = buffer[offset + i];\n i += d;\n e = s & (1 << -nBits) - 1;\n s >>= -nBits;\n nBits += eLen;\n\n for (; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n\n for (; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : (s ? -1 : 1) * Infinity;\n } else {\n m = m + Math.pow(2, mLen);\n e = e - eBias;\n }\n\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen);\n};\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c;\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0;\n var i = isLE ? 0 : nBytes - 1;\n var d = isLE ? 1 : -1;\n var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;\n value = Math.abs(value);\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0;\n e = eMax;\n } else {\n e = Math.floor(Math.log(value) / Math.LN2);\n\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * Math.pow(2, 1 - eBias);\n }\n\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * Math.pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\n e = 0;\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = e << mLen | m;\n eLen += mLen;\n\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128;\n};","map":null,"metadata":{},"sourceType":"script"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { identity } from './identity';\nexport function pipe(...fns) {\n return pipeFromArray(fns);\n}\nexport function pipeFromArray(fns) {\n if (fns.length === 0) {\n return identity;\n }\n\n if (fns.length === 1) {\n return fns[0];\n }\n\n return function piped(input) {\n return fns.reduce((prev, fn) => fn(prev), input);\n };\n} //# sourceMappingURL=pipe.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import _asyncToGenerator from \"/Users/rene/dev/eufy-plugin/publish/plugin/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { ModalDismissReasons } from '@ng-bootstrap/ng-bootstrap';\nimport { faScrewdriverWrench } from '@fortawesome/free-solid-svg-icons';\nimport { faEyeSlash } from '@fortawesome/free-solid-svg-icons';\nimport { faRotate } from '@fortawesome/free-solid-svg-icons';\nimport { DeviceImage } from '../util/deviceToImagesMap';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@ng-bootstrap/ng-bootstrap\";\nimport * as i2 from \"../plugin.service\";\nimport * as i3 from \"@angular/router\";\nimport * as i4 from \"@angular/common\";\nimport * as i5 from \"@fortawesome/angular-fontawesome\";\n\nfunction AccessoryListComponent_ng_template_0_Template(rf, ctx) {\n if (rf & 1) {\n const _r6 = i0.ɵɵgetCurrentView();\n\n i0.ɵɵelementStart(0, \"div\", 2)(1, \"h4\", 3);\n i0.ɵɵtext(2, \"Refresh stations and devices\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(3, \"button\", 4);\n i0.ɵɵlistener(\"click\", function AccessoryListComponent_ng_template_0_Template_button_click_3_listener() {\n const restoredCtx = i0.ɵɵrestoreView(_r6);\n const modal_r4 = restoredCtx.$implicit;\n return modal_r4.dismiss(\"Cross click\");\n });\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(4, \"div\", 5)(5, \"div\", 6);\n i0.ɵɵtext(6, \" To refresh all stations and devices you will be logged into your eufy account. This can interfere with the plugins connection to the eufy cloud. \");\n i0.ɵɵelement(7, \"p\");\n i0.ɵɵelementStart(8, \"b\", 7);\n i0.ɵɵtext(9, \"We strongly recommened that you restart the plugin after you're done with the configuration even if you didn't change any settings.\");\n i0.ɵɵelementEnd();\n i0.ɵɵelement(10, \"p\");\n i0.ɵɵtext(11, \" Otherwise you might experience glitches like no longer working push notifications for the plugin (see \");\n i0.ɵɵelementStart(12, \"a\", 8);\n i0.ɵɵtext(13, \"here\");\n i0.ɵɵelementEnd();\n i0.ɵɵtext(14, \" for more information). \");\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(15, \"div\", 9)(16, \"a\", 10);\n i0.ɵɵlistener(\"click\", function AccessoryListComponent_ng_template_0_Template_a_click_16_listener() {\n const restoredCtx = i0.ɵɵrestoreView(_r6);\n const modal_r4 = restoredCtx.$implicit;\n return modal_r4.close(\"Login\");\n });\n i0.ɵɵtext(17, \"Login with eufy\");\n i0.ɵɵelementEnd()();\n }\n}\n\nfunction AccessoryListComponent_div_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 11)(1, \"div\", 12);\n i0.ɵɵelement(2, \"div\", 13);\n i0.ɵɵelementStart(3, \"div\", 14)(4, \"div\", 15)(5, \"div\", 16);\n i0.ɵɵtext(6, \" Loading Accessories... \");\n i0.ɵɵelementStart(7, \"div\", 17);\n i0.ɵɵelement(8, \"div\", 18);\n i0.ɵɵelementEnd()()()();\n i0.ɵɵelement(9, \"div\", 13);\n i0.ɵɵelementEnd()();\n }\n}\n\nfunction AccessoryListComponent_div_3_div_17_span_8_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 42);\n i0.ɵɵelement(1, \"fa-icon\", 43);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r11 = i0.ɵɵnextContext(3);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"icon\", ctx_r11.ignoreIcon);\n }\n}\n\nfunction AccessoryListComponent_div_3_div_17_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 31)(1, \"div\", 32)(2, \"div\", 33)(3, \"a\", 34)(4, \"div\", 35);\n i0.ɵɵelement(5, \"img\", 36);\n i0.ɵɵelementStart(6, \"span\", 37);\n i0.ɵɵelement(7, \"fa-icon\", 38);\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(8, AccessoryListComponent_div_3_div_17_span_8_Template, 2, 1, \"span\", 39);\n i0.ɵɵelementEnd()()()();\n i0.ɵɵelementStart(9, \"span\", 40);\n i0.ɵɵtext(10);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(11, \"span\", 41);\n i0.ɵɵtext(12);\n i0.ɵɵelementEnd()();\n }\n\n if (rf & 2) {\n const station_r10 = ctx.$implicit;\n const ctx_r8 = i0.ɵɵnextContext(2);\n let tmp_1_0;\n i0.ɵɵadvance(3);\n i0.ɵɵpropertyInterpolate1(\"routerLink\", \"/stationConfig/\", station_r10.uniqueId, \"\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"src\", \"assets/devices/\" + (ctx_r8.DeviceImage.get(station_r10.type) ? (tmp_1_0 = ctx_r8.DeviceImage.get(station_r10.type)) == null ? null : tmp_1_0.image : \"unknown.png\"), i0.ɵɵsanitizeUrl);\n i0.ɵɵattribute(\"style\", ctx_r8.getDevicePanelStyle(station_r10), i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"icon\", ctx_r8.settingsIcon);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", station_r10.ignored);\n i0.ɵɵadvance(2);\n i0.ɵɵtextInterpolate(station_r10.cachedName ? station_r10.cachedName : station_r10.displayName);\n i0.ɵɵadvance(2);\n i0.ɵɵtextInterpolate1(\"(\", station_r10.uniqueId, \")\");\n }\n}\n\nfunction AccessoryListComponent_div_3_div_24_span_8_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 42);\n i0.ɵɵelement(1, \"fa-icon\", 43);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n const ctx_r13 = i0.ɵɵnextContext(3);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"icon\", ctx_r13.ignoreIcon);\n }\n}\n\nfunction AccessoryListComponent_div_3_div_24_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 31)(1, \"div\", 32)(2, \"div\", 33)(3, \"a\", 34)(4, \"div\", 35);\n i0.ɵɵelement(5, \"img\", 36);\n i0.ɵɵelementStart(6, \"span\", 37);\n i0.ɵɵelement(7, \"fa-icon\", 38);\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(8, AccessoryListComponent_div_3_div_24_span_8_Template, 2, 1, \"span\", 39);\n i0.ɵɵelementEnd()()()();\n i0.ɵɵelementStart(9, \"span\", 40);\n i0.ɵɵtext(10);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(11, \"span\", 41);\n i0.ɵɵtext(12);\n i0.ɵɵelementEnd()();\n }\n\n if (rf & 2) {\n const device_r12 = ctx.$implicit;\n const ctx_r9 = i0.ɵɵnextContext(2);\n let tmp_1_0;\n i0.ɵɵadvance(3);\n i0.ɵɵpropertyInterpolate1(\"routerLink\", \"/cameraConfig/\", device_r12.uniqueId, \"\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"src\", \"assets/devices/\" + (ctx_r9.DeviceImage.get(device_r12.type) ? (tmp_1_0 = ctx_r9.DeviceImage.get(device_r12.type)) == null ? null : tmp_1_0.image : \"unknown.png\"), i0.ɵɵsanitizeUrl);\n i0.ɵɵattribute(\"style\", ctx_r9.getDevicePanelStyle(device_r12), i0.ɵɵsanitizeStyle);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"icon\", ctx_r9.settingsIcon);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", device_r12.ignored);\n i0.ɵɵadvance(2);\n i0.ɵɵtextInterpolate(device_r12.cachedName ? device_r12.cachedName : device_r12.displayName);\n i0.ɵɵadvance(2);\n i0.ɵɵtextInterpolate1(\"(\", device_r12.uniqueId, \")\");\n }\n}\n\nfunction AccessoryListComponent_div_3_Template(rf, ctx) {\n if (rf & 1) {\n const _r15 = i0.ɵɵgetCurrentView();\n\n i0.ɵɵelementStart(0, \"div\", 11)(1, \"div\", 19)(2, \"div\", 20)(3, \"button\", 21);\n i0.ɵɵlistener(\"click\", function AccessoryListComponent_div_3_Template_button_click_3_listener() {\n i0.ɵɵrestoreView(_r15);\n const ctx_r14 = i0.ɵɵnextContext();\n\n const _r0 = i0.ɵɵreference(1);\n\n return ctx_r14.openReloadModal(_r0);\n });\n i0.ɵɵelement(4, \"fa-icon\", 22);\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(5, \"div\", 23)(6, \"a\", 24);\n i0.ɵɵtext(7, \"Plugin Settings\");\n i0.ɵɵelementEnd()()();\n i0.ɵɵelement(8, \"p\");\n i0.ɵɵelementStart(9, \"span\");\n i0.ɵɵtext(10, \"Click on any device below to access its settings.\");\n i0.ɵɵelementEnd();\n i0.ɵɵelement(11, \"p\");\n i0.ɵɵelementStart(12, \"div\", 25)(13, \"div\", 26);\n i0.ɵɵtext(14, \" Stations \");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(15, \"div\", 27)(16, \"div\", 19);\n i0.ɵɵtemplate(17, AccessoryListComponent_div_3_div_17_Template, 13, 7, \"div\", 28);\n i0.ɵɵelementEnd()()();\n i0.ɵɵelement(18, \"p\");\n i0.ɵɵelementStart(19, \"div\", 25)(20, \"div\", 26);\n i0.ɵɵtext(21, \" Devices \");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(22, \"div\", 29)(23, \"div\", 19);\n i0.ɵɵtemplate(24, AccessoryListComponent_div_3_div_24_Template, 13, 7, \"div\", 28);\n i0.ɵɵelementEnd()()();\n i0.ɵɵelement(25, \"p\");\n i0.ɵɵelementStart(26, \"span\")(27, \"i\");\n i0.ɵɵtext(28, \"The images used above are 'best effort' for now, since we do not own every eufy device. If you experience that your device is depicted with a wrong image please feel free to let us know in an issue on our \");\n i0.ɵɵelementStart(29, \"a\", 30);\n i0.ɵɵtext(30, \"Github page.\");\n i0.ɵɵelementEnd()()()();\n }\n\n if (rf & 2) {\n const ctx_r3 = i0.ɵɵnextContext();\n i0.ɵɵadvance(4);\n i0.ɵɵproperty(\"icon\", ctx_r3.reloadIcon);\n i0.ɵɵadvance(13);\n i0.ɵɵproperty(\"ngForOf\", ctx_r3.stations);\n i0.ɵɵadvance(7);\n i0.ɵɵproperty(\"ngForOf\", ctx_r3.devices);\n }\n}\n\nexport let AccessoryListComponent = /*#__PURE__*/(() => {\n class AccessoryListComponent {\n constructor(modalService, pluginService, route, routerService) {\n this.modalService = modalService;\n this.pluginService = pluginService;\n this.route = route;\n this.routerService = routerService;\n this.stations = [];\n this.devices = [];\n this.settingsIcon = faScrewdriverWrench;\n this.ignoreIcon = faEyeSlash;\n this.reloadIcon = faRotate;\n this.DeviceImage = DeviceImage;\n this.closeResult = '';\n }\n\n ngOnInit() {\n this.waitForAccessories = this.route.snapshot.paramMap.get('waitForAccessories') === 'true';\n this.pluginService.addEventListener('newAccessories', () => {\n console.log('plugin accessories have changed. updating...');\n this.updateDevices();\n this.updateStations();\n });\n this.updateStations();\n this.updateDevices();\n\n if (!this.waitForAccessories && this.stations.length === 0 && this.devices.length === 0) {\n this.pluginService.loadStoredAccessories().then(result => {\n if (!result) {\n this.routerService.navigateByUrl('/login');\n }\n }).catch(err => {\n this.routerService.navigateByUrl('/login');\n });\n }\n }\n\n updateStations() {\n this.stations = this.pluginService.getStations();\n this.updateProperties();\n }\n\n updateDevices() {\n this.devices = this.pluginService.getDevices();\n this.updateProperties();\n }\n\n updateProperties() {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n const config = yield _this.pluginService.getConfig();\n\n if (Array.isArray(config['ignoreStations'])) {\n _this.stations.forEach(station => {\n station.ignored = config['ignoreStations'].find(uId => uId === station.uniqueId) !== undefined;\n });\n }\n\n if (Array.isArray(config['ignoreDevices'])) {\n _this.devices.forEach(device => {\n device.ignored = config['ignoreDevices'].find(uId => uId === device.uniqueId) !== undefined;\n });\n } // load cached Names\n\n\n _this.stations.forEach(station => {\n _this.pluginService.getCachedName(station).then(cachedName => station.cachedName = cachedName);\n });\n\n _this.devices.forEach(device => {\n _this.pluginService.getCachedName(device).then(cachedName => device.cachedName = cachedName);\n });\n })();\n }\n\n openReloadModal(content) {\n this.modalService.open(content, {\n ariaLabelledBy: 'modal-basic-title',\n centered: true\n }).result.then(result => {\n this.closeResult = `Closed with: ${result}`;\n }, reason => {\n this.closeResult = `Dismissed ${this.getDismissReason(reason)}`;\n });\n }\n\n getDismissReason(reason) {\n if (reason === ModalDismissReasons.ESC) {\n return 'by pressing ESC';\n } else if (reason === ModalDismissReasons.BACKDROP_CLICK) {\n return 'by clicking on a backdrop';\n } else {\n return `with: ${reason}`;\n }\n }\n\n getDevicePanelStyle(accessory) {\n var _a;\n\n let style = '';\n\n if (accessory.ignored) {\n style += 'opacity: 0.2;';\n }\n\n if (DeviceImage.get(accessory.type)) {\n style += 'padding:' + ((_a = DeviceImage.get(accessory.type)) === null || _a === void 0 ? void 0 : _a.padding);\n } else {\n style += 'padding:20px';\n }\n\n return style;\n }\n\n }\n\n AccessoryListComponent.ɵfac = function AccessoryListComponent_Factory(t) {\n return new (t || AccessoryListComponent)(i0.ɵɵdirectiveInject(i1.NgbModal), i0.ɵɵdirectiveInject(i2.PluginService), i0.ɵɵdirectiveInject(i3.ActivatedRoute), i0.ɵɵdirectiveInject(i3.Router));\n };\n\n AccessoryListComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: AccessoryListComponent,\n selectors: [[\"app-accessory-list\"]],\n inputs: {\n waitForAccessories: \"waitForAccessories\"\n },\n decls: 4,\n vars: 2,\n consts: [[\"reloadModal\", \"\"], [\"class\", \"container\", 4, \"ngIf\"], [1, \"modal-header\"], [\"id\", \"modal-basic-title\", 1, \"modal-title\"], [\"type\", \"button\", \"aria-label\", \"Close\", 1, \"btn-close\", 3, \"click\"], [1, \"modal-body\"], [1, \"mb-3\"], [2, \"color\", \"#dc3545\"], [\"href\", \"https://github.com/homebridge-eufy-security/plugin/issues/59#issuecomment-1147314942\", \"target\", \"_blank\", \"rel\", \"noopener noreferrer\"], [1, \"modal-footer\"], [\"routerLink\", \"/login\", 1, \"btn\", \"btn-success\", 3, \"click\"], [1, \"container\"], [1, \"row\", \"pl-5\", \"pr-5\"], [1, \"col\", 2, \"max-width\", \"20%\"], [1, \"col\", \"d-flex\", \"justify-content-center\"], [1, \"card\", \"shadow-sm\", \"text-center\", \"pt-3\", \"pb-3\", 2, \"width\", \"100%\"], [1, \"mx-auto\"], [1, \"progress\", 2, \"height\", \"8px\"], [\"role\", \"progressbar\", \"aria-valuenow\", \"75\", \"aria-valuemin\", \"0\", \"aria-valuemax\", \"100\", 1, \"progress-bar\", \"progress-bar-striped\", \"bg-info\", \"progress-bar-animated\", 2, \"width\", \"75%\"], [1, \"row\"], [1, \"col-6\"], [\"type\", \"button\", 1, \"btn\", \"btn-success\", 3, \"click\"], [\"size\", \"lg\", 3, \"icon\"], [1, \"col-6\", \"text-end\"], [\"routerLink\", \"/advancedConfig\", 1, \"btn\", \"btn-secondary\"], [1, \"card\"], [1, \"card-header\"], [1, \"card-body\", \"pt-0\", \"pb-0\"], [\"class\", \"col-6 col-sm-4 mt-3 mb-3 d-flex flex-column align-items-center\", 4, \"ngFor\", \"ngForOf\"], [1, \"card-body\"], [\"href\", \"https://github.com/homebridge-eufy-security/plugin\", \"target\", \"_blank\", \"rel\", \"noopener noreferrer\"], [1, \"col-6\", \"col-sm-4\", \"mt-3\", \"mb-3\", \"d-flex\", \"flex-column\", \"align-items-center\"], [1, \"col-12\", \"col-sm-7\"], [1, \"text-center\"], [2, \"color\", \"black\", 3, \"routerLink\"], [1, \"device\", \"ratio\", \"ratio-1x1\", \"border\", \"rounded\", \"shadow-sm\"], [1, \"deviceimage\", 3, \"src\"], [1, \"devicesettingsicon\", \"d-flex\", \"border\", \"align-items-center\", \"justify-content-center\", 2, \"z-index\", \"15\"], [\"size\", \"2x\", 3, \"icon\"], [\"class\", \"d-flex border align-items-top justify-content-end\", \"style\", \"z-index: 20;\", 4, \"ngIf\"], [1, \"col-12\", \"text-center\"], [1, \"col-12\", \"serial\", \"fw-light\", \"text-center\"], [1, \"d-flex\", \"border\", \"align-items-top\", \"justify-content-end\", 2, \"z-index\", \"20\"], [\"size\", \"xs\", 1, \"mt-sm-1\", \"m-sm-2\", \"m-1\", \"mt-0\", 3, \"icon\"]],\n template: function AccessoryListComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵtemplate(0, AccessoryListComponent_ng_template_0_Template, 18, 0, \"ng-template\", null, 0, i0.ɵɵtemplateRefExtractor);\n i0.ɵɵtemplate(2, AccessoryListComponent_div_2_Template, 10, 0, \"div\", 1);\n i0.ɵɵtemplate(3, AccessoryListComponent_div_3_Template, 31, 3, \"div\", 1);\n }\n\n if (rf & 2) {\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngIf\", ctx.stations.length === 0 && ctx.devices.length === 0);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.stations.length !== 0 || ctx.devices.length !== 0);\n }\n },\n directives: [i3.RouterLinkWithHref, i4.NgIf, i5.FaIconComponent, i4.NgForOf],\n styles: [\".device[_ngcontent-%COMP%]:hover{transform:scale(1.05);border-color:#ffc107!important;color:#ffc107}.device[_ngcontent-%COMP%]{background-color:#fff!important;color:#000!important}.device[_ngcontent-%COMP%]:hover .deviceimage[_ngcontent-%COMP%]{opacity:.5}.device[_ngcontent-%COMP%] .devicesettingsicon[_ngcontent-%COMP%]{display:none!important}.device[_ngcontent-%COMP%]:hover .devicesettingsicon[_ngcontent-%COMP%]{display:flex!important;color:#ffa000!important}.serial[_ngcontent-%COMP%]{font-size:12px}\"]\n });\n return AccessoryListComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { asyncScheduler } from '../scheduler/async';\nimport { sample } from './sample';\nimport { interval } from '../observable/interval';\nexport function sampleTime(period, scheduler = asyncScheduler) {\n return sample(interval(period, scheduler));\n} //# sourceMappingURL=sampleTime.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { map } from './map';\nexport function pluck(...properties) {\n const length = properties.length;\n\n if (length === 0) {\n throw new Error('list of properties cannot be empty.');\n }\n\n return map(x => {\n let currentProp = x;\n\n for (let i = 0; i < length; i++) {\n const p = currentProp === null || currentProp === void 0 ? void 0 : currentProp[properties[i]];\n\n if (typeof p !== 'undefined') {\n currentProp = p;\n } else {\n return undefined;\n }\n }\n\n return currentProp;\n });\n} //# sourceMappingURL=pluck.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { EMPTY } from '../observable/empty';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/innerFrom';\nimport { timer } from '../observable/timer';\nexport function repeat(countOrConfig) {\n let count = Infinity;\n let delay;\n\n if (countOrConfig != null) {\n if (typeof countOrConfig === 'object') {\n ({\n count = Infinity,\n delay\n } = countOrConfig);\n } else {\n count = countOrConfig;\n }\n }\n\n return count <= 0 ? () => EMPTY : operate((source, subscriber) => {\n let soFar = 0;\n let sourceSub;\n\n const resubscribe = () => {\n sourceSub === null || sourceSub === void 0 ? void 0 : sourceSub.unsubscribe();\n sourceSub = null;\n\n if (delay != null) {\n const notifier = typeof delay === 'number' ? timer(delay) : innerFrom(delay(soFar));\n const notifierSubscriber = createOperatorSubscriber(subscriber, () => {\n notifierSubscriber.unsubscribe();\n subscribeToSource();\n });\n notifier.subscribe(notifierSubscriber);\n } else {\n subscribeToSource();\n }\n };\n\n const subscribeToSource = () => {\n let syncUnsub = false;\n sourceSub = source.subscribe(createOperatorSubscriber(subscriber, undefined, () => {\n if (++soFar < count) {\n if (sourceSub) {\n resubscribe();\n } else {\n syncUnsub = true;\n }\n } else {\n subscriber.complete();\n }\n }));\n\n if (syncUnsub) {\n resubscribe();\n }\n };\n\n subscribeToSource();\n });\n} //# sourceMappingURL=repeat.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { asyncScheduler } from '../scheduler/async';\nimport { timer } from './timer';\nexport function interval(period = 0, scheduler = asyncScheduler) {\n if (period < 0) {\n period = 0;\n }\n\n return timer(period, period, scheduler);\n} //# sourceMappingURL=interval.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { from } from './from';\nexport function pairs(obj, scheduler) {\n return from(Object.entries(obj), scheduler);\n} //# sourceMappingURL=pairs.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export function createObject(keys, values) {\n return keys.reduce((result, key, i) => (result[key] = values[i], result), {});\n} //# sourceMappingURL=createObject.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { combineLatestInit } from '../observable/combineLatest';\nimport { operate } from '../util/lift';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { mapOneOrManyArgs } from '../util/mapOneOrManyArgs';\nimport { pipe } from '../util/pipe';\nimport { popResultSelector } from '../util/args';\nexport function combineLatest(...args) {\n const resultSelector = popResultSelector(args);\n return resultSelector ? pipe(combineLatest(...args), mapOneOrManyArgs(resultSelector)) : operate((source, subscriber) => {\n combineLatestInit([source, ...argsOrArgArray(args)])(subscriber);\n });\n} //# sourceMappingURL=combineLatest.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { concat } from '../observable/concat';\nimport { of } from '../observable/of';\nexport function endWith(...values) {\n return source => concat(source, of(...values));\n} //# sourceMappingURL=endWith.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { executeSchedule } from '../util/executeSchedule';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function observeOn(scheduler, delay = 0) {\n return operate((source, subscriber) => {\n source.subscribe(createOperatorSubscriber(subscriber, value => executeSchedule(subscriber, scheduler, () => subscriber.next(value), delay), () => executeSchedule(subscriber, scheduler, () => subscriber.complete(), delay), err => executeSchedule(subscriber, scheduler, () => subscriber.error(err), delay)));\n });\n} //# sourceMappingURL=observeOn.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { isFunction } from './isFunction';\nexport function isAsyncIterable(obj) {\n return Symbol.asyncIterator && isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]);\n} //# sourceMappingURL=isAsyncIterable.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export {}; //# sourceMappingURL=types.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import _asyncToGenerator from \"/Users/rene/dev/eufy-plugin/publish/plugin/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { ConfigOptionsInterpreter } from '../config-options-interpreter';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../../app/plugin.service\";\nimport * as i2 from \"@angular/forms\";\nexport let CameraButtonsComponent = /*#__PURE__*/(() => {\n class CameraButtonsComponent extends ConfigOptionsInterpreter {\n constructor(pluginService) {\n super(pluginService);\n this.enableCameraButton = true;\n this.enableMotionButton = true;\n }\n\n ngOnInit() {\n this.readValue();\n }\n\n readValue() {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n var _a;\n\n const config = yield _this.getCameraConfig(((_a = _this.accessory) === null || _a === void 0 ? void 0 : _a.uniqueId) || '');\n\n if (config && Object.prototype.hasOwnProperty.call(config, 'enableButton')) {\n _this.enableCameraButton = config['enableButton'];\n }\n\n if (config && Object.prototype.hasOwnProperty.call(config, 'motionButton')) {\n _this.enableMotionButton = config['motionButton'];\n }\n })();\n }\n\n update() {\n this.updateConfig({\n enableButton: this.enableCameraButton,\n motionButton: this.enableMotionButton\n }, this.accessory);\n }\n\n }\n\n CameraButtonsComponent.ɵfac = function CameraButtonsComponent_Factory(t) {\n return new (t || CameraButtonsComponent)(i0.ɵɵdirectiveInject(i1.PluginService));\n };\n\n CameraButtonsComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: CameraButtonsComponent,\n selectors: [[\"app-camera-buttons\"]],\n inputs: {\n accessory: \"accessory\"\n },\n features: [i0.ɵɵInheritDefinitionFeature],\n decls: 17,\n vars: 2,\n consts: [[1, \"settingsItem\", \"row\", \"p-3\"], [1, \"d-flex\", \"justify-content-between\", \"align-items-center\", \"mb-2\"], [1, \"form-check\", \"form-switch\"], [\"type\", \"checkbox\", \"role\", \"switch\", \"id\", \"flexSwitchCheckDefault\", 1, \"form-check-input\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [\"href\", \"https://github.com/homebridge-eufy-security/plugin/wiki/Common-Issues#unexpected-homekit-behaviour\", \"target\", \"_blank\", \"rel\", \"noopener noreferrer\"]],\n template: function CameraButtonsComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 0)(1, \"div\", 1)(2, \"span\");\n i0.ɵɵtext(3, \"Display HomeKit button to switch camera on/off\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 2)(5, \"input\", 3);\n i0.ɵɵlistener(\"ngModelChange\", function CameraButtonsComponent_Template_input_ngModelChange_5_listener($event) {\n return ctx.enableCameraButton = $event;\n })(\"change\", function CameraButtonsComponent_Template_input_change_5_listener() {\n return ctx.update();\n });\n i0.ɵɵelementEnd()()();\n i0.ɵɵelementStart(6, \"div\", 1)(7, \"span\");\n i0.ɵɵtext(8, \"Display HomeKit button to switch motion detection on/off\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(9, \"div\", 2)(10, \"input\", 3);\n i0.ɵɵlistener(\"ngModelChange\", function CameraButtonsComponent_Template_input_ngModelChange_10_listener($event) {\n return ctx.enableMotionButton = $event;\n })(\"change\", function CameraButtonsComponent_Template_input_change_10_listener() {\n return ctx.update();\n });\n i0.ɵɵelementEnd()()();\n i0.ɵɵelementStart(11, \"small\")(12, \"i\");\n i0.ɵɵtext(13, \" When changing these settings you might need to clear accessory cache (homebridge settings) so it can take effect. See \");\n i0.ɵɵelementStart(14, \"a\", 4);\n i0.ɵɵtext(15, \"here\");\n i0.ɵɵelementEnd();\n i0.ɵɵtext(16, \" for more details. \");\n i0.ɵɵelementEnd()()();\n }\n\n if (rf & 2) {\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"ngModel\", ctx.enableCameraButton);\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"ngModel\", ctx.enableMotionButton);\n }\n },\n directives: [i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgModel],\n encapsulation: 2\n });\n return CameraButtonsComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { AsyncAction } from './AsyncAction';\nexport class QueueAction extends AsyncAction {\n constructor(scheduler, work) {\n super(scheduler, work);\n this.scheduler = scheduler;\n this.work = work;\n }\n\n schedule(state, delay = 0) {\n if (delay > 0) {\n return super.schedule(state, delay);\n }\n\n this.delay = delay;\n this.state = state;\n this.scheduler.flush(this);\n return this;\n }\n\n execute(state, delay) {\n return delay > 0 || this.closed ? super.execute(state, delay) : this._execute(state, delay);\n }\n\n requestAsyncId(scheduler, id, delay = 0) {\n if (delay != null && delay > 0 || delay == null && this.delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n\n return scheduler.flush(this);\n }\n\n} //# sourceMappingURL=QueueAction.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export function createInvalidObservableTypeError(input) {\n return new TypeError(`You provided ${input !== null && typeof input === 'object' ? 'an invalid object' : `'${input}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`);\n} //# sourceMappingURL=throwUnobservableError.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { isFunction } from './util/isFunction';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\nexport class Subscriber extends Subscription {\n constructor(destination) {\n super();\n this.isStopped = false;\n\n if (destination) {\n this.destination = destination;\n\n if (isSubscription(destination)) {\n destination.add(this);\n }\n } else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n\n static create(next, error, complete) {\n return new SafeSubscriber(next, error, complete);\n }\n\n next(value) {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n } else {\n this._next(value);\n }\n }\n\n error(err) {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n } else {\n this.isStopped = true;\n\n this._error(err);\n }\n }\n\n complete() {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n } else {\n this.isStopped = true;\n\n this._complete();\n }\n }\n\n unsubscribe() {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null;\n }\n }\n\n _next(value) {\n this.destination.next(value);\n }\n\n _error(err) {\n try {\n this.destination.error(err);\n } finally {\n this.unsubscribe();\n }\n }\n\n _complete() {\n try {\n this.destination.complete();\n } finally {\n this.unsubscribe();\n }\n }\n\n}\nconst _bind = Function.prototype.bind;\n\nfunction bind(fn, thisArg) {\n return _bind.call(fn, thisArg);\n}\n\nclass ConsumerObserver {\n constructor(partialObserver) {\n this.partialObserver = partialObserver;\n }\n\n next(value) {\n const {\n partialObserver\n } = this;\n\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n error(err) {\n const {\n partialObserver\n } = this;\n\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n } catch (error) {\n handleUnhandledError(error);\n }\n } else {\n handleUnhandledError(err);\n }\n }\n\n complete() {\n const {\n partialObserver\n } = this;\n\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n}\n\nexport class SafeSubscriber extends Subscriber {\n constructor(observerOrNext, error, complete) {\n super();\n let partialObserver;\n\n if (isFunction(observerOrNext) || !observerOrNext) {\n partialObserver = {\n next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined,\n error: error !== null && error !== void 0 ? error : undefined,\n complete: complete !== null && complete !== void 0 ? complete : undefined\n };\n } else {\n let context;\n\n if (this && config.useDeprecatedNextContext) {\n context = Object.create(observerOrNext);\n\n context.unsubscribe = () => this.unsubscribe();\n\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context)\n };\n } else {\n partialObserver = observerOrNext;\n }\n }\n\n this.destination = new ConsumerObserver(partialObserver);\n }\n\n}\n\nfunction handleUnhandledError(error) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n } else {\n reportUnhandledError(error);\n }\n}\n\nfunction defaultErrorHandler(err) {\n throw err;\n}\n\nfunction handleStoppedNotification(notification, subscriber) {\n const {\n onStoppedNotification\n } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\n\nexport const EMPTY_OBSERVER = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop\n}; //# sourceMappingURL=Subscriber.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { isFunction } from './isFunction';\nimport { isScheduler } from './isScheduler';\n\nfunction last(arr) {\n return arr[arr.length - 1];\n}\n\nexport function popResultSelector(args) {\n return isFunction(last(args)) ? args.pop() : undefined;\n}\nexport function popScheduler(args) {\n return isScheduler(last(args)) ? args.pop() : undefined;\n}\nexport function popNumber(args, defaultValue) {\n return typeof last(args) === 'number' ? args.pop() : defaultValue;\n} //# sourceMappingURL=args.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { operate } from '../util/lift';\nimport { innerFrom } from '../observable/innerFrom';\nimport { argsOrArgArray } from '../util/argsOrArgArray';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { noop } from '../util/noop';\nexport function onErrorResumeNext(...sources) {\n const nextSources = argsOrArgArray(sources);\n return operate((source, subscriber) => {\n const remaining = [source, ...nextSources];\n\n const subscribeNext = () => {\n if (!subscriber.closed) {\n if (remaining.length > 0) {\n let nextSource;\n\n try {\n nextSource = innerFrom(remaining.shift());\n } catch (err) {\n subscribeNext();\n return;\n }\n\n const innerSub = createOperatorSubscriber(subscriber, undefined, noop, noop);\n nextSource.subscribe(innerSub);\n innerSub.add(subscribeNext);\n } else {\n subscriber.complete();\n }\n }\n };\n\n subscribeNext();\n });\n} //# sourceMappingURL=onErrorResumeNext.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { createErrorClass } from './createErrorClass';\nexport const EmptyError = createErrorClass(_super => function EmptyErrorImpl() {\n _super(this);\n\n this.name = 'EmptyError';\n this.message = 'no elements in sequence';\n}); //# sourceMappingURL=EmptyError.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { EMPTY } from './observable/empty';\nimport { of } from './observable/of';\nimport { throwError } from './observable/throwError';\nimport { isFunction } from './util/isFunction';\nexport var NotificationKind = /*#__PURE__*/(() => {\n (function (NotificationKind) {\n NotificationKind[\"NEXT\"] = \"N\";\n NotificationKind[\"ERROR\"] = \"E\";\n NotificationKind[\"COMPLETE\"] = \"C\";\n })(NotificationKind || (NotificationKind = {}));\n\n return NotificationKind;\n})();\nexport class Notification {\n constructor(kind, value, error) {\n this.kind = kind;\n this.value = value;\n this.error = error;\n this.hasValue = kind === 'N';\n }\n\n observe(observer) {\n return observeNotification(this, observer);\n }\n\n do(nextHandler, errorHandler, completeHandler) {\n const {\n kind,\n value,\n error\n } = this;\n return kind === 'N' ? nextHandler === null || nextHandler === void 0 ? void 0 : nextHandler(value) : kind === 'E' ? errorHandler === null || errorHandler === void 0 ? void 0 : errorHandler(error) : completeHandler === null || completeHandler === void 0 ? void 0 : completeHandler();\n }\n\n accept(nextOrObserver, error, complete) {\n var _a;\n\n return isFunction((_a = nextOrObserver) === null || _a === void 0 ? void 0 : _a.next) ? this.observe(nextOrObserver) : this.do(nextOrObserver, error, complete);\n }\n\n toObservable() {\n const {\n kind,\n value,\n error\n } = this;\n const result = kind === 'N' ? of(value) : kind === 'E' ? throwError(() => error) : kind === 'C' ? EMPTY : 0;\n\n if (!result) {\n throw new TypeError(`Unexpected notification kind ${kind}`);\n }\n\n return result;\n }\n\n static createNext(value) {\n return new Notification('N', value);\n }\n\n static createError(err) {\n return new Notification('E', undefined, err);\n }\n\n static createComplete() {\n return Notification.completeNotification;\n }\n\n}\nNotification.completeNotification = new Notification('C');\nexport function observeNotification(notification, observer) {\n var _a, _b, _c;\n\n const {\n kind,\n value,\n error\n } = notification;\n\n if (typeof kind !== 'string') {\n throw new TypeError('Invalid notification, missing \"kind\"');\n }\n\n kind === 'N' ? (_a = observer.next) === null || _a === void 0 ? void 0 : _a.call(observer, value) : kind === 'E' ? (_b = observer.error) === null || _b === void 0 ? void 0 : _b.call(observer, error) : (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer);\n} //# sourceMappingURL=Notification.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { mergeAll } from './mergeAll';\nexport function concatAll() {\n return mergeAll(1);\n} //# sourceMappingURL=concatAll.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export const observable = (() => typeof Symbol === 'function' && Symbol.observable || '@@observable')(); //# sourceMappingURL=observable.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { dateTimestampProvider } from './scheduler/dateTimestampProvider';\nexport class Scheduler {\n constructor(schedulerActionCtor, now = Scheduler.now) {\n this.schedulerActionCtor = schedulerActionCtor;\n this.now = now;\n }\n\n schedule(work, delay = 0, state) {\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n }\n\n}\nScheduler.now = dateTimestampProvider.now; //# sourceMappingURL=Scheduler.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import _asyncToGenerator from \"/Users/rene/dev/eufy-plugin/publish/plugin/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { DEFAULT_CAMERACONFIG_VALUES } from '../../../app/util/default-config-values';\nimport { ConfigOptionsInterpreter } from '../config-options-interpreter';\nimport { faPlusCircle, faMinusCircle, faCircle } from '@fortawesome/free-solid-svg-icons';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../../app/plugin.service\";\nimport * as i2 from \"@angular/forms\";\nimport * as i3 from \"@angular/common\";\nimport * as i4 from \"@fortawesome/angular-fontawesome\";\n\nfunction SnapshotHandlingMethodComponent_small_12_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"small\")(1, \"i\")(2, \"b\");\n i0.ɵɵtext(3, \"Description:\");\n i0.ɵɵelementEnd();\n i0.ɵɵtext(4, \" The plugin will try to get the latest possible snapshot. If none is present the plugin will start a livestream to render one frame.\");\n i0.ɵɵelement(5, \"br\");\n i0.ɵɵtext(6, \" This process might take a few seconds and can slow down your homebridge instance for this duration. If you encounter problems with this method please try another. \");\n i0.ɵɵelement(7, \"p\")(8, \"fa-icon\", 6);\n i0.ɵɵtext(9, \" Up-to-date Snapshots (events)\");\n i0.ɵɵelement(10, \"br\")(11, \"fa-icon\", 6);\n i0.ɵɵtext(12, \" Up-to-date Snapshots (HomeKit View)\");\n i0.ɵɵelement(13, \"br\")(14, \"fa-icon\", 7);\n i0.ɵɵtext(15, \" Performance\");\n i0.ɵɵelement(16, \"br\")(17, \"fa-icon\", 7);\n i0.ɵɵtext(18, \" Battery life\");\n i0.ɵɵelement(19, \"br\");\n i0.ɵɵelementEnd()();\n }\n\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵadvance(8);\n i0.ɵɵproperty(\"icon\", ctx_r0.plusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r0.plusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r0.minusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r0.minusIcon);\n }\n}\n\nfunction SnapshotHandlingMethodComponent_small_13_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"small\")(1, \"i\")(2, \"b\");\n i0.ɵɵtext(3, \"Description:\");\n i0.ɵɵelementEnd();\n i0.ɵɵtext(4, \" This mode combines the other two. When a snapshot is requested the plugin will try to get a new snapshot from the camera.\");\n i0.ɵɵelement(5, \"br\");\n i0.ɵɵtext(6, \" After one second the snapshot will be delivered - if necessary by using an older snapshot. For events the plugin will wait on a new snapshot. \");\n i0.ɵɵelement(7, \"p\")(8, \"fa-icon\", 6);\n i0.ɵɵtext(9, \" Up-to-date Snapshots (events)\");\n i0.ɵɵelement(10, \"br\")(11, \"fa-icon\", 8);\n i0.ɵɵtext(12, \" Up-to-date Snapshots (HomeKit View)\");\n i0.ɵɵelement(13, \"br\")(14, \"fa-icon\", 6);\n i0.ɵɵtext(15, \" Performance\");\n i0.ɵɵelement(16, \"br\")(17, \"fa-icon\", 7);\n i0.ɵɵtext(18, \" Battery life\");\n i0.ɵɵelement(19, \"br\");\n i0.ɵɵelementEnd()();\n }\n\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵadvance(8);\n i0.ɵɵproperty(\"icon\", ctx_r1.plusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r1.mediumIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r1.plusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r1.minusIcon);\n }\n}\n\nfunction SnapshotHandlingMethodComponent_small_14_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"small\")(1, \"i\")(2, \"b\");\n i0.ɵɵtext(3, \"Description:\");\n i0.ɵɵelementEnd();\n i0.ɵɵtext(4, \" The plugin will preferablly use cloud snapshots from eufy to fulfill snapshot requests as fast as possible.\");\n i0.ɵɵelement(5, \"br\");\n i0.ɵɵtext(6, \" If an event, like motion or doorbell ring oocurs, the plugin will try to wait for a cloud snapshot to be provided. But the periodic snapshots in homekit will most likely be outdated (e.g. up to a few hours old). \");\n i0.ɵɵelement(7, \"p\")(8, \"fa-icon\", 6);\n i0.ɵɵtext(9, \" Up-to-date Snapshots (events)\");\n i0.ɵɵelement(10, \"br\")(11, \"fa-icon\", 7);\n i0.ɵɵtext(12, \" Up-to-date Snapshots (HomeKit View)\");\n i0.ɵɵelement(13, \"br\")(14, \"fa-icon\", 6);\n i0.ɵɵtext(15, \" Performance\");\n i0.ɵɵelement(16, \"br\")(17, \"fa-icon\", 6);\n i0.ɵɵtext(18, \" Battery life\");\n i0.ɵɵelement(19, \"br\");\n i0.ɵɵelementEnd()();\n }\n\n if (rf & 2) {\n const ctx_r2 = i0.ɵɵnextContext();\n i0.ɵɵadvance(8);\n i0.ɵɵproperty(\"icon\", ctx_r2.plusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r2.minusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r2.plusIcon);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"icon\", ctx_r2.plusIcon);\n }\n}\n\nexport let SnapshotHandlingMethodComponent = /*#__PURE__*/(() => {\n class SnapshotHandlingMethodComponent extends ConfigOptionsInterpreter {\n constructor(pluginService) {\n super(pluginService);\n /** Customize from here */\n\n /** updateConfig() will overwrite any settings that you'll provide */\n\n /** Don't try and 'append'/'push' to arrays this way - add a custom method instead */\n\n /** see config option to ignore devices as example */\n\n /** updateConfig() takes an optional second parameter to specify the accessoriy for which the setting is changed */\n\n this.plusIcon = faPlusCircle;\n this.minusIcon = faMinusCircle;\n this.mediumIcon = faCircle;\n this.value = DEFAULT_CAMERACONFIG_VALUES.snapshotHandlingMethod;\n }\n\n ngOnInit() {\n this.readValue();\n }\n\n readValue() {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n var _a;\n\n const config = yield _this.getCameraConfig(((_a = _this.accessory) === null || _a === void 0 ? void 0 : _a.uniqueId) || '');\n\n if (config && Object.prototype.hasOwnProperty.call(config, 'snapshotHandlingMethod')) {\n _this.value = config['snapshotHandlingMethod'];\n } else if (config && Object.prototype.hasOwnProperty.call(config, 'forcerefreshsnap')) {\n _this.value = config['forcerefreshsnap'] ? 1 : 3;\n }\n })();\n }\n\n update() {\n this.updateConfig({\n snapshotHandlingMethod: this.value\n }, this.accessory);\n }\n\n }\n\n SnapshotHandlingMethodComponent.ɵfac = function SnapshotHandlingMethodComponent_Factory(t) {\n return new (t || SnapshotHandlingMethodComponent)(i0.ɵɵdirectiveInject(i1.PluginService));\n };\n\n SnapshotHandlingMethodComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: SnapshotHandlingMethodComponent,\n selectors: [[\"app-snapshot-handling-method\"]],\n inputs: {\n accessory: \"accessory\"\n },\n features: [i0.ɵɵInheritDefinitionFeature],\n decls: 15,\n vars: 7,\n consts: [[1, \"settingsItem\", \"row\", \"p-3\"], [1, \"d-flex\", \"flex-column\", \"flex-sm-row\", \"justify-content-between\", \"align-items-start\", \"align-items-sm-center\", \"mb-2\"], [1, \"col-12\", \"col-sm-4\"], [\"aria-label\", \"Device Operation Mode\", 1, \"form-select\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [3, \"ngValue\"], [4, \"ngIf\"], [\"size\", \"xs\", 1, \"m-1\", 2, \"color\", \"#7FFF00\", 3, \"icon\"], [\"size\", \"xs\", 1, \"m-1\", 2, \"color\", \"#B22222\", 3, \"icon\"], [\"size\", \"xs\", 1, \"m-1\", 2, \"color\", \"#FF8C00\", 3, \"icon\"]],\n template: function SnapshotHandlingMethodComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 0)(1, \"div\", 1)(2, \"span\");\n i0.ɵɵtext(3, \"Snapshot Handling Method\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 2)(5, \"select\", 3);\n i0.ɵɵlistener(\"ngModelChange\", function SnapshotHandlingMethodComponent_Template_select_ngModelChange_5_listener($event) {\n return ctx.value = $event;\n })(\"change\", function SnapshotHandlingMethodComponent_Template_select_change_5_listener() {\n return ctx.update();\n });\n i0.ɵɵelementStart(6, \"option\", 4);\n i0.ɵɵtext(7, \"Force Refresh Snapshots\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(8, \"option\", 4);\n i0.ɵɵtext(9, \"Balanced\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(10, \"option\", 4);\n i0.ɵɵtext(11, \"Cloud Snapshots\");\n i0.ɵɵelementEnd()()()();\n i0.ɵɵtemplate(12, SnapshotHandlingMethodComponent_small_12_Template, 20, 4, \"small\", 5);\n i0.ɵɵtemplate(13, SnapshotHandlingMethodComponent_small_13_Template, 20, 4, \"small\", 5);\n i0.ɵɵtemplate(14, SnapshotHandlingMethodComponent_small_14_Template, 20, 4, \"small\", 5);\n i0.ɵɵelementEnd();\n }\n\n if (rf & 2) {\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"ngModel\", ctx.value);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngValue\", 1);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngValue\", 2);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngValue\", 3);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngIf\", ctx.value === 1);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.value === 2);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.value === 3);\n }\n },\n directives: [i2.SelectControlValueAccessor, i2.NgControlStatus, i2.NgModel, i2.NgSelectOption, i2.ɵNgSelectMultipleOption, i3.NgIf, i4.FaIconComponent],\n encapsulation: 2\n });\n return SnapshotHandlingMethodComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { EmptyError } from './util/EmptyError';\nimport { SafeSubscriber } from './Subscriber';\nexport function firstValueFrom(source, config) {\n const hasConfig = typeof config === 'object';\n return new Promise((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: value => {\n resolve(value);\n subscriber.unsubscribe();\n },\n error: reject,\n complete: () => {\n if (hasConfig) {\n resolve(config.defaultValue);\n } else {\n reject(new EmptyError());\n }\n }\n });\n source.subscribe(subscriber);\n });\n} //# sourceMappingURL=firstValueFrom.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { mergeMap } from './mergeMap';\nimport { isFunction } from '../util/isFunction';\nexport function mergeMapTo(innerObservable, resultSelector, concurrent = Infinity) {\n if (isFunction(resultSelector)) {\n return mergeMap(() => innerObservable, resultSelector, concurrent);\n }\n\n if (typeof resultSelector === 'number') {\n concurrent = resultSelector;\n }\n\n return mergeMap(() => innerObservable, concurrent);\n} //# sourceMappingURL=mergeMapTo.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { scanInternals } from './scanInternals';\nimport { operate } from '../util/lift';\nexport function reduce(accumulator, seed) {\n return operate(scanInternals(accumulator, seed, arguments.length >= 2, false, true));\n} //# sourceMappingURL=reduce.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import _asyncToGenerator from \"/Users/rene/dev/eufy-plugin/publish/plugin/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { ConfigOptionsInterpreter } from '../config-options-interpreter';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../plugin.service\";\nimport * as i2 from \"@angular/forms\";\nimport * as i3 from \"@angular/common\";\n\nfunction TalkbackComponent_div_6_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 5);\n i0.ɵɵtext(1, \" Talkback will not work while 'RTSP Streaming' is enabled! \");\n i0.ɵɵelementEnd();\n }\n}\n\nexport let TalkbackComponent = /*#__PURE__*/(() => {\n class TalkbackComponent extends ConfigOptionsInterpreter {\n constructor(pluginService) {\n super(pluginService);\n this.value = false;\n this.rtspIsEnabled = false;\n }\n\n ngOnInit() {\n this.readValue();\n this.pluginService.addEventListener('configChanged', () => this.readValue()); // look for changes of rtsp setting\n }\n\n readValue() {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n var _a;\n\n const config = yield _this.getCameraConfig(((_a = _this.accessory) === null || _a === void 0 ? void 0 : _a.uniqueId) || '');\n\n if (config && Object.prototype.hasOwnProperty.call(config, 'talkback')) {\n _this.value = config['talkback'];\n }\n\n if (config && Object.prototype.hasOwnProperty.call(config, 'rtsp')) {\n _this.rtspIsEnabled = config['rtsp'];\n }\n })();\n }\n\n update() {\n this.updateConfig({\n talkback: this.value\n }, this.accessory);\n }\n\n }\n\n TalkbackComponent.ɵfac = function TalkbackComponent_Factory(t) {\n return new (t || TalkbackComponent)(i0.ɵɵdirectiveInject(i1.PluginService));\n };\n\n TalkbackComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: TalkbackComponent,\n selectors: [[\"app-talkback\"]],\n inputs: {\n accessory: \"accessory\"\n },\n features: [i0.ɵɵInheritDefinitionFeature],\n decls: 13,\n vars: 2,\n consts: [[1, \"settingsItem\", \"row\", \"p-3\"], [1, \"d-flex\", \"justify-content-between\", \"align-items-center\", \"mb-2\"], [1, \"form-check\", \"form-switch\"], [\"type\", \"checkbox\", \"role\", \"switch\", \"id\", \"flexSwitchCheckDefault\", 1, \"form-check-input\", 3, \"ngModel\", \"ngModelChange\", \"change\"], [\"class\", \"alert alert-danger\", \"role\", \"alert\", 4, \"ngIf\"], [\"role\", \"alert\", 1, \"alert\", \"alert-danger\"]],\n template: function TalkbackComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 0)(1, \"div\", 1)(2, \"span\");\n i0.ɵɵtext(3, \"Enable Talkback (Two way communication)\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 2)(5, \"input\", 3);\n i0.ɵɵlistener(\"ngModelChange\", function TalkbackComponent_Template_input_ngModelChange_5_listener($event) {\n return ctx.value = $event;\n })(\"change\", function TalkbackComponent_Template_input_change_5_listener() {\n return ctx.update();\n });\n i0.ɵɵelementEnd()()();\n i0.ɵɵtemplate(6, TalkbackComponent_div_6_Template, 2, 0, \"div\", 4);\n i0.ɵɵelementStart(7, \"small\")(8, \"i\");\n i0.ɵɵtext(9, \" Enables you to talk with someone infront of the camera while streaming. \");\n i0.ɵɵelement(10, \"p\");\n i0.ɵɵtext(11, \" Please be advised that this setting is in an early development stage. If you're experiencing issues while streaming, it is recommened to disable this setting.\");\n i0.ɵɵelement(12, \"br\");\n i0.ɵɵelementEnd()()();\n }\n\n if (rf & 2) {\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"ngModel\", ctx.value);\n i0.ɵɵadvance(1);\n i0.ɵɵproperty(\"ngIf\", ctx.rtspIsEnabled && ctx.value);\n }\n },\n directives: [i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgModel, i3.NgIf],\n encapsulation: 2\n });\n return TalkbackComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Subject } from '../Subject';\nimport { Subscription } from '../Subscription';\nimport { operate } from '../util/lift';\nimport { innerFrom } from '../observable/innerFrom';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { noop } from '../util/noop';\nimport { arrRemove } from '../util/arrRemove';\nexport function windowToggle(openings, closingSelector) {\n return operate((source, subscriber) => {\n const windows = [];\n\n const handleError = err => {\n while (0 < windows.length) {\n windows.shift().error(err);\n }\n\n subscriber.error(err);\n };\n\n innerFrom(openings).subscribe(createOperatorSubscriber(subscriber, openValue => {\n const window = new Subject();\n windows.push(window);\n const closingSubscription = new Subscription();\n\n const closeWindow = () => {\n arrRemove(windows, window);\n window.complete();\n closingSubscription.unsubscribe();\n };\n\n let closingNotifier;\n\n try {\n closingNotifier = innerFrom(closingSelector(openValue));\n } catch (err) {\n handleError(err);\n return;\n }\n\n subscriber.next(window.asObservable());\n closingSubscription.add(closingNotifier.subscribe(createOperatorSubscriber(subscriber, closeWindow, noop, handleError)));\n }, noop));\n source.subscribe(createOperatorSubscriber(subscriber, value => {\n const windowsCopy = windows.slice();\n\n for (const window of windowsCopy) {\n window.next(value);\n }\n }, () => {\n while (0 < windows.length) {\n windows.shift().complete();\n }\n\n subscriber.complete();\n }, handleError, () => {\n while (0 < windows.length) {\n windows.shift().unsubscribe();\n }\n }));\n });\n} //# sourceMappingURL=windowToggle.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/router\";\nexport let ResetPluginComponent = /*#__PURE__*/(() => {\n class ResetPluginComponent {}\n\n ResetPluginComponent.ɵfac = function ResetPluginComponent_Factory(t) {\n return new (t || ResetPluginComponent)();\n };\n\n ResetPluginComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: ResetPluginComponent,\n selectors: [[\"app-reset-plugin\"]],\n decls: 9,\n vars: 0,\n consts: [[1, \"settingsItem\", \"row\", \"p-3\"], [1, \"d-flex\", \"flex-column\", \"flex-sm-row\", \"justify-content-between\", \"align-items-center\", \"mb-2\"], [1, \"mb-3\", \"mb-sm-0\"], [\"routerLink\", \"/reset\", 1, \"btn\", \"btn-danger\", \"col-12\", \"col-sm-4\"]],\n template: function ResetPluginComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 0)(1, \"div\", 1)(2, \"span\", 2);\n i0.ɵɵtext(3, \"Reset Plugin\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"a\", 3);\n i0.ɵɵtext(5, \"Remove everything\");\n i0.ɵɵelementEnd()();\n i0.ɵɵelementStart(6, \"small\")(7, \"i\");\n i0.ɵɵtext(8, \" This will delete the plugin settings and files. Please be aware that this will not delete any cached accessories from homebridge. You'll have to remove these manually via the homebridge UI. \");\n i0.ɵɵelementEnd()()();\n }\n },\n directives: [i1.RouterLinkWithHref],\n encapsulation: 2\n });\n return ResetPluginComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { createErrorClass } from './createErrorClass';\nexport const ObjectUnsubscribedError = createErrorClass(_super => function ObjectUnsubscribedErrorImpl() {\n _super(this);\n\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n}); //# sourceMappingURL=ObjectUnsubscribedError.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nexport function takeWhile(predicate, inclusive = false) {\n return operate((source, subscriber) => {\n let index = 0;\n source.subscribe(createOperatorSubscriber(subscriber, value => {\n const result = predicate(value, index++);\n (result || inclusive) && subscriber.next(value);\n !result && subscriber.complete();\n }));\n });\n} //# sourceMappingURL=takeWhile.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Subject } from '../Subject';\nimport { asyncScheduler } from '../scheduler/async';\nimport { Subscription } from '../Subscription';\nimport { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { arrRemove } from '../util/arrRemove';\nimport { popScheduler } from '../util/args';\nimport { executeSchedule } from '../util/executeSchedule';\nexport function windowTime(windowTimeSpan, ...otherArgs) {\n var _a, _b;\n\n const scheduler = (_a = popScheduler(otherArgs)) !== null && _a !== void 0 ? _a : asyncScheduler;\n const windowCreationInterval = (_b = otherArgs[0]) !== null && _b !== void 0 ? _b : null;\n const maxWindowSize = otherArgs[1] || Infinity;\n return operate((source, subscriber) => {\n let windowRecords = [];\n let restartOnClose = false;\n\n const closeWindow = record => {\n const {\n window,\n subs\n } = record;\n window.complete();\n subs.unsubscribe();\n arrRemove(windowRecords, record);\n restartOnClose && startWindow();\n };\n\n const startWindow = () => {\n if (windowRecords) {\n const subs = new Subscription();\n subscriber.add(subs);\n const window = new Subject();\n const record = {\n window,\n subs,\n seen: 0\n };\n windowRecords.push(record);\n subscriber.next(window.asObservable());\n executeSchedule(subs, scheduler, () => closeWindow(record), windowTimeSpan);\n }\n };\n\n if (windowCreationInterval !== null && windowCreationInterval >= 0) {\n executeSchedule(subscriber, scheduler, startWindow, windowCreationInterval, true);\n } else {\n restartOnClose = true;\n }\n\n startWindow();\n\n const loop = cb => windowRecords.slice().forEach(cb);\n\n const terminate = cb => {\n loop(({\n window\n }) => cb(window));\n cb(subscriber);\n subscriber.unsubscribe();\n };\n\n source.subscribe(createOperatorSubscriber(subscriber, value => {\n loop(record => {\n record.window.next(value);\n maxWindowSize <= ++record.seen && closeWindow(record);\n });\n }, () => terminate(consumer => consumer.complete()), err => terminate(consumer => consumer.error(err))));\n return () => {\n windowRecords = null;\n };\n });\n} //# sourceMappingURL=windowTime.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { operate } from '../util/lift';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { innerFrom } from '../observable/innerFrom';\nimport { noop } from '../util/noop';\nexport function takeUntil(notifier) {\n return operate((source, subscriber) => {\n innerFrom(notifier).subscribe(createOperatorSubscriber(subscriber, () => subscriber.complete(), noop));\n !subscriber.closed && source.subscribe(subscriber);\n });\n} //# sourceMappingURL=takeUntil.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { not } from '../util/not';\nimport { filter } from '../operators/filter';\nimport { innerFrom } from './innerFrom';\nexport function partition(source, predicate, thisArg) {\n return [filter(predicate, thisArg)(innerFrom(source)), filter(not(predicate, thisArg))(innerFrom(source))];\n} //# sourceMappingURL=partition.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export { default as applyStyles } from \"./applyStyles.js\";\nexport { default as arrow } from \"./arrow.js\";\nexport { default as computeStyles } from \"./computeStyles.js\";\nexport { default as eventListeners } from \"./eventListeners.js\";\nexport { default as flip } from \"./flip.js\";\nexport { default as hide } from \"./hide.js\";\nexport { default as offset } from \"./offset.js\";\nexport { default as popperOffsets } from \"./popperOffsets.js\";\nexport { default as preventOverflow } from \"./preventOverflow.js\";","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Subscriber } from '../Subscriber';\nexport function createOperatorSubscriber(destination, onNext, onComplete, onError, onFinalize) {\n return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);\n}\nexport class OperatorSubscriber extends Subscriber {\n constructor(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) {\n super(destination);\n this.onFinalize = onFinalize;\n this.shouldUnsubscribe = shouldUnsubscribe;\n this._next = onNext ? function (value) {\n try {\n onNext(value);\n } catch (err) {\n destination.error(err);\n }\n } : super._next;\n this._error = onError ? function (err) {\n try {\n onError(err);\n } catch (err) {\n destination.error(err);\n } finally {\n this.unsubscribe();\n }\n } : super._error;\n this._complete = onComplete ? function () {\n try {\n onComplete();\n } catch (err) {\n destination.error(err);\n } finally {\n this.unsubscribe();\n }\n } : super._complete;\n }\n\n unsubscribe() {\n var _a;\n\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n const {\n closed\n } = this;\n super.unsubscribe();\n !closed && ((_a = this.onFinalize) === null || _a === void 0 ? void 0 : _a.call(this));\n }\n }\n\n} //# sourceMappingURL=OperatorSubscriber.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { createOperatorSubscriber } from './OperatorSubscriber';\nexport function scanInternals(accumulator, seed, hasSeed, emitOnNext, emitBeforeComplete) {\n return (source, subscriber) => {\n let hasState = hasSeed;\n let state = seed;\n let index = 0;\n source.subscribe(createOperatorSubscriber(subscriber, value => {\n const i = index++;\n state = hasState ? accumulator(state, value, i) : (hasState = true, value);\n emitOnNext && subscriber.next(state);\n }, emitBeforeComplete && (() => {\n hasState && subscriber.next(state);\n subscriber.complete();\n })));\n };\n} //# sourceMappingURL=scanInternals.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"export const config = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false\n}; //# sourceMappingURL=config.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import _asyncToGenerator from \"/Users/rene/dev/eufy-plugin/publish/plugin/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\nimport { DEFAULT_CAMERACONFIG_VALUES } from '../../../app/util/default-config-values';\nimport { ConfigOptionsInterpreter } from '../config-options-interpreter';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../../app/plugin.service\";\nimport * as i2 from \"@angular/forms\";\nexport let DelayCameraSnapshotsComponent = /*#__PURE__*/(() => {\n class DelayCameraSnapshotsComponent extends ConfigOptionsInterpreter {\n constructor(pluginService) {\n super(pluginService);\n this.value = DEFAULT_CAMERACONFIG_VALUES.delayCameraSnapshot;\n }\n\n ngOnInit() {\n this.readValue();\n }\n\n readValue() {\n var _this = this;\n\n return _asyncToGenerator(function* () {\n var _a;\n\n const config = yield _this.getCameraConfig(((_a = _this.accessory) === null || _a === void 0 ? void 0 : _a.uniqueId) || '');\n\n if (config && Object.prototype.hasOwnProperty.call(config, 'delayCameraSnapshot')) {\n _this.value = config['delayCameraSnapshot'];\n }\n })();\n }\n\n update() {\n this.updateConfig({\n delayCameraSnapshot: this.value\n }, this.accessory);\n }\n\n }\n\n DelayCameraSnapshotsComponent.ɵfac = function DelayCameraSnapshotsComponent_Factory(t) {\n return new (t || DelayCameraSnapshotsComponent)(i0.ɵɵdirectiveInject(i1.PluginService));\n };\n\n DelayCameraSnapshotsComponent.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n type: DelayCameraSnapshotsComponent,\n selectors: [[\"app-delay-camera-snapshots\"]],\n inputs: {\n accessory: \"accessory\"\n },\n features: [i0.ɵɵInheritDefinitionFeature],\n decls: 12,\n vars: 1,\n consts: [[1, \"settingsItem\", \"row\", \"p-3\"], [1, \"d-flex\", \"justify-content-between\", \"align-items-center\", \"mb-2\"], [1, \"form-check\", \"form-switch\"], [\"type\", \"checkbox\", \"role\", \"switch\", \"id\", \"flexSwitchCheckDefault\", 1, \"form-check-input\", 3, \"ngModel\", \"ngModelChange\", \"change\"]],\n template: function DelayCameraSnapshotsComponent_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 0)(1, \"div\", 1)(2, \"span\");\n i0.ɵɵtext(3, \"Night-Vision Improvement for camera snapshots\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 2)(5, \"input\", 3);\n i0.ɵɵlistener(\"ngModelChange\", function DelayCameraSnapshotsComponent_Template_input_ngModelChange_5_listener($event) {\n return ctx.value = $event;\n })(\"change\", function DelayCameraSnapshotsComponent_Template_input_change_5_listener() {\n return ctx.update();\n });\n i0.ɵɵelementEnd()()();\n i0.ɵɵelementStart(6, \"small\")(7, \"i\");\n i0.ɵɵtext(8, \" Force night vision on dark snapshots to improve the image.\");\n i0.ɵɵelement(9, \"br\");\n i0.ɵɵelementStart(10, \"b\");\n i0.ɵɵtext(11, \"The snapshot request will be delayed by half a second if you enable this setting.\");\n i0.ɵɵelementEnd()()()();\n }\n\n if (rf & 2) {\n i0.ɵɵadvance(5);\n i0.ɵɵproperty(\"ngModel\", ctx.value);\n }\n },\n directives: [i2.CheckboxControlValueAccessor, i2.NgControlStatus, i2.NgModel],\n encapsulation: 2\n });\n return DelayCameraSnapshotsComponent;\n})();","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { mergeMap } from './mergeMap';\nimport { identity } from '../util/identity';\nexport function mergeAll(concurrent = Infinity) {\n return mergeMap(identity, concurrent);\n} //# sourceMappingURL=mergeAll.js.map","map":null,"metadata":{},"sourceType":"module"}
@@ -0,0 +1 @@
1
+ {"ast":null,"code":"import { Subject } from './Subject';\nexport class AsyncSubject extends Subject {\n constructor() {\n super(...arguments);\n this._value = null;\n this._hasValue = false;\n this._isComplete = false;\n }\n\n _checkFinalizedStatuses(subscriber) {\n const {\n hasError,\n _hasValue,\n _value,\n thrownError,\n isStopped,\n _isComplete\n } = this;\n\n if (hasError) {\n subscriber.error(thrownError);\n } else if (isStopped || _isComplete) {\n _hasValue && subscriber.next(_value);\n subscriber.complete();\n }\n }\n\n next(value) {\n if (!this.isStopped) {\n this._value = value;\n this._hasValue = true;\n }\n }\n\n complete() {\n const {\n _hasValue,\n _value,\n _isComplete\n } = this;\n\n if (!_isComplete) {\n this._isComplete = true;\n _hasValue && super.next(_value);\n super.complete();\n }\n }\n\n} //# sourceMappingURL=AsyncSubject.js.map","map":null,"metadata":{},"sourceType":"module"}