homebridge-config-ui-x 5.0.0-beta.6 → 5.0.0-beta.61

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 (316) hide show
  1. package/CHANGELOG.md +385 -20
  2. package/CONTRIBUTING.md +5 -4
  3. package/LICENSE +1 -1
  4. package/config.schema.json +34 -144
  5. package/dist/bin/hb-service.d.ts +2 -2
  6. package/dist/bin/hb-service.js +51 -50
  7. package/dist/bin/hb-service.js.map +1 -1
  8. package/dist/bin/platforms/darwin.js +2 -2
  9. package/dist/bin/platforms/darwin.js.map +1 -1
  10. package/dist/bin/platforms/win32.js +4 -2
  11. package/dist/bin/platforms/win32.js.map +1 -1
  12. package/dist/bin/standalone.js +1 -0
  13. package/dist/bin/standalone.js.map +1 -1
  14. package/dist/core/auth/auth.controller.d.ts +2 -2
  15. package/dist/core/auth/auth.controller.js.map +1 -1
  16. package/dist/core/auth/auth.module.js +1 -1
  17. package/dist/core/auth/auth.module.js.map +1 -1
  18. package/dist/core/auth/auth.service.js +10 -10
  19. package/dist/core/auth/auth.service.js.map +1 -1
  20. package/dist/core/auth/jwt.strategy.d.ts +3 -1
  21. package/dist/core/config/config.service.d.ts +4 -6
  22. package/dist/core/config/config.service.js +9 -9
  23. package/dist/core/config/config.service.js.map +1 -1
  24. package/dist/core/config/config.startup.js +2 -2
  25. package/dist/core/config/config.startup.js.map +1 -1
  26. package/dist/core/homebridge-ipc/homebridge-ipc.service.js +3 -3
  27. package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
  28. package/dist/index.js +6 -77
  29. package/dist/index.js.map +1 -1
  30. package/dist/main.js +1 -1
  31. package/dist/main.js.map +1 -1
  32. package/dist/modules/accessories/accessories.controller.js +5 -5
  33. package/dist/modules/accessories/accessories.controller.js.map +1 -1
  34. package/dist/modules/accessories/accessories.service.js +8 -7
  35. package/dist/modules/accessories/accessories.service.js.map +1 -1
  36. package/dist/modules/backup/backup.controller.js +7 -7
  37. package/dist/modules/backup/backup.controller.js.map +1 -1
  38. package/dist/modules/backup/backup.service.d.ts +1 -0
  39. package/dist/modules/backup/backup.service.js +57 -89
  40. package/dist/modules/backup/backup.service.js.map +1 -1
  41. package/dist/modules/child-bridges/child-bridges.service.js +0 -7
  42. package/dist/modules/child-bridges/child-bridges.service.js.map +1 -1
  43. package/dist/modules/config-editor/config-editor.controller.d.ts +1 -1
  44. package/dist/modules/config-editor/config-editor.controller.js +8 -8
  45. package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
  46. package/dist/modules/config-editor/config-editor.service.d.ts +1 -1
  47. package/dist/modules/config-editor/config-editor.service.js +62 -64
  48. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  49. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.d.ts +1 -1
  50. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +13 -11
  51. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  52. package/dist/modules/log/log.gateway.d.ts +2 -1
  53. package/dist/modules/log/log.gateway.js.map +1 -1
  54. package/dist/modules/log/log.service.js +3 -3
  55. package/dist/modules/log/log.service.js.map +1 -1
  56. package/dist/modules/platform-tools/docker/docker.controller.js +3 -3
  57. package/dist/modules/platform-tools/docker/docker.controller.js.map +1 -1
  58. package/dist/modules/platform-tools/docker/docker.service.js +1 -1
  59. package/dist/modules/platform-tools/docker/docker.service.js.map +1 -1
  60. package/dist/modules/platform-tools/hb-service/hb-service.controller.js +3 -3
  61. package/dist/modules/platform-tools/hb-service/hb-service.controller.js.map +1 -1
  62. package/dist/modules/platform-tools/hb-service/hb-service.service.js +6 -6
  63. package/dist/modules/platform-tools/hb-service/hb-service.service.js.map +1 -1
  64. package/dist/modules/platform-tools/linux/linux.controller.js +2 -2
  65. package/dist/modules/platform-tools/linux/linux.controller.js.map +1 -1
  66. package/dist/modules/platform-tools/linux/linux.service.js +2 -2
  67. package/dist/modules/platform-tools/linux/linux.service.js.map +1 -1
  68. package/dist/modules/platform-tools/terminal/terminal.gateway.d.ts +2 -1
  69. package/dist/modules/platform-tools/terminal/terminal.gateway.js.map +1 -1
  70. package/dist/modules/platform-tools/terminal/terminal.service.js +2 -2
  71. package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
  72. package/dist/modules/plugins/plugins.controller.js +4 -4
  73. package/dist/modules/plugins/plugins.controller.js.map +1 -1
  74. package/dist/modules/plugins/plugins.service.d.ts +4 -1
  75. package/dist/modules/plugins/plugins.service.js +174 -103
  76. package/dist/modules/plugins/plugins.service.js.map +1 -1
  77. package/dist/modules/server/server.controller.d.ts +22 -2
  78. package/dist/modules/server/server.controller.js +86 -18
  79. package/dist/modules/server/server.controller.js.map +1 -1
  80. package/dist/modules/server/server.service.d.ts +24 -6
  81. package/dist/modules/server/server.service.js +186 -67
  82. package/dist/modules/server/server.service.js.map +1 -1
  83. package/dist/modules/status/status.controller.d.ts +0 -1
  84. package/dist/modules/status/status.controller.js +3 -4
  85. package/dist/modules/status/status.controller.js.map +1 -1
  86. package/dist/modules/status/status.gateway.d.ts +1 -1
  87. package/dist/modules/status/status.service.d.ts +1 -1
  88. package/dist/modules/status/status.service.js +17 -41
  89. package/dist/modules/status/status.service.js.map +1 -1
  90. package/dist/modules/users/users.controller.js +7 -7
  91. package/dist/modules/users/users.controller.js.map +1 -1
  92. package/dist/self-check.js +6 -6
  93. package/dist/self-check.js.map +1 -1
  94. package/package.json +45 -43
  95. package/public/3rdpartylicenses.txt +119 -62
  96. package/public/assets/hap-icons/airpurifier.svg +49 -16
  97. package/public/assets/hap-icons/airquality.svg +24 -13
  98. package/public/assets/hap-icons/co-sensor.svg +72 -0
  99. package/public/assets/hap-icons/co2-sensor.svg +72 -0
  100. package/public/assets/hap-icons/contactsensor-closed.svg +35 -2
  101. package/public/assets/hap-icons/contactsensor-open.svg +80 -2
  102. package/public/assets/hap-icons/door-closed.svg +32 -2
  103. package/public/assets/hap-icons/door-open.svg +48 -2
  104. package/public/assets/hap-icons/fan-off.svg +24 -13
  105. package/public/assets/hap-icons/fan-on.svg +24 -13
  106. package/public/assets/hap-icons/garagedoor.svg +24 -13
  107. package/public/assets/hap-icons/humidity.svg +24 -13
  108. package/public/assets/hap-icons/irrigation-system.svg +47 -18
  109. package/public/assets/hap-icons/leaksensor.svg +52 -2
  110. package/public/assets/hap-icons/light.svg +47 -28
  111. package/public/assets/hap-icons/lightbulb.svg +24 -13
  112. package/public/assets/hap-icons/lock-locked.svg +24 -13
  113. package/public/assets/hap-icons/lock-unlocked.svg +24 -13
  114. package/public/assets/hap-icons/motionsensor.svg +100 -2
  115. package/public/assets/hap-icons/occupancysensor.svg +97 -2
  116. package/public/assets/hap-icons/outlet.svg +24 -13
  117. package/public/assets/hap-icons/securitysystem-active.svg +102 -2
  118. package/public/assets/hap-icons/securitysystem-off.svg +68 -2
  119. package/public/assets/hap-icons/smokesensor.svg +42 -9
  120. package/public/assets/hap-icons/speaker.svg +29 -13
  121. package/public/assets/hap-icons/statelessprogrammableswitch.svg +51 -2
  122. package/public/assets/hap-icons/switch.svg +24 -13
  123. package/public/assets/hap-icons/television.svg +15 -4
  124. package/public/assets/hap-icons/temperature.svg +24 -13
  125. package/public/assets/hap-icons/unknown.svg +24 -13
  126. package/public/assets/hap-icons/valve-generic.svg +27 -16
  127. package/public/assets/hap-icons/valve-irrigation.svg +37 -21
  128. package/public/assets/hap-icons/valve-showerhead.svg +52 -0
  129. package/public/assets/hap-icons/valve-waterfaucet.svg +21 -0
  130. package/public/assets/hap-icons/window-closed.svg +85 -2
  131. package/public/assets/hap-icons/window-open.svg +136 -2
  132. package/public/assets/hap-icons/windowcovering-closed.svg +45 -49
  133. package/public/assets/hap-icons/windowcovering-open.svg +40 -44
  134. package/public/assets/homebridge-color-round.svg +36 -1
  135. package/public/assets/homebridge-logo.svg +11 -1
  136. package/public/assets/mask-icon.svg +5 -1
  137. package/public/{chunk-NWD4LL6Q.js → chunk-2GVOK6BI.js} +1 -1
  138. package/public/chunk-2P6JPHXI.js +1 -0
  139. package/public/{chunk-CCUID66K.js → chunk-3NAAMMFZ.js} +1 -1
  140. package/public/chunk-42UKUWDD.js +1 -0
  141. package/public/{chunk-BKUGARB4.js → chunk-44K5XVZH.js} +1 -1
  142. package/public/chunk-4OUX4UQY.js +1 -0
  143. package/public/chunk-4UVD743J.js +1 -0
  144. package/public/chunk-5LBWTKKF.js +1 -0
  145. package/public/chunk-5YIASUJW.js +8 -0
  146. package/public/{chunk-NW6AFAD7.js → chunk-6OMIETCH.js} +1 -1
  147. package/public/chunk-6ZN4TBLM.js +7 -0
  148. package/public/chunk-7EOOXP3I.js +1 -0
  149. package/public/chunk-7NE26EL6.js +1 -0
  150. package/public/{chunk-QE7DO6J3.js → chunk-AFY7IWPI.js} +2 -2
  151. package/public/chunk-B5HKUCMN.js +1 -0
  152. package/public/chunk-BC4ZZQWV.js +1 -0
  153. package/public/chunk-BKSSD45L.js +1 -0
  154. package/public/{chunk-4IKE4OKZ.js → chunk-BQUVVOUW.js} +1 -1
  155. package/public/chunk-C7E6RDLL.js +1 -0
  156. package/public/chunk-CGQPMOSR.js +1 -0
  157. package/public/chunk-CR3VDLLZ.js +1 -0
  158. package/public/{chunk-WNWWUCCZ.js → chunk-CUKPSGYS.js} +1 -1
  159. package/public/{chunk-WHJSVGC7.js → chunk-D33FRRVF.js} +1 -1
  160. package/public/chunk-DBUCH6BG.js +1 -0
  161. package/public/chunk-DS75GNAL.js +1 -0
  162. package/public/chunk-EIHOKU54.js +1 -0
  163. package/public/chunk-FETTFNJ2.js +1 -0
  164. package/public/chunk-FMZZARWY.js +1 -0
  165. package/public/chunk-FUIS42EJ.js +1 -0
  166. package/public/chunk-FYUKPIEK.js +1 -0
  167. package/public/{chunk-6TCHCTXZ.js → chunk-G5LGUOIC.js} +1 -1
  168. package/public/chunk-GDFC3M3E.js +2 -0
  169. package/public/chunk-H27SDDCX.js +1 -0
  170. package/public/chunk-I275JECR.js +1 -0
  171. package/public/chunk-I2KUIMJX.js +6 -0
  172. package/public/{chunk-JZZQRLNW.js → chunk-I6OD3CV4.js} +1 -1
  173. package/public/chunk-ICIZAF7G.js +1 -0
  174. package/public/chunk-IGIZ77E4.js +1 -0
  175. package/public/chunk-K7DJFJZD.js +1 -0
  176. package/public/{chunk-7EUQWCP5.js → chunk-KPW2P5T4.js} +1 -1
  177. package/public/chunk-KYMGPDQN.js +1 -0
  178. package/public/chunk-L3LMIZ4T.js +1 -0
  179. package/public/chunk-LU6OEQYJ.js +1 -0
  180. package/public/chunk-MB2NVLXB.js +1 -0
  181. package/public/chunk-MQZKICE2.js +1 -0
  182. package/public/chunk-N6XRSUIB.js +20 -0
  183. package/public/chunk-NEGHHJIS.js +1 -0
  184. package/public/chunk-NEXSHIYQ.js +5 -0
  185. package/public/chunk-NLNP7SCN.js +1 -0
  186. package/public/chunk-NO7W5YAI.js +1 -0
  187. package/public/chunk-OLDGAQOK.js +1 -0
  188. package/public/chunk-ORBSZVUF.js +1 -0
  189. package/public/chunk-OXOBBTSH.js +1 -0
  190. package/public/chunk-PSHNN4VH.js +1 -0
  191. package/public/{chunk-EA5J2VEJ.js → chunk-QCVDY2FW.js} +1 -1
  192. package/public/{chunk-QXT6R24L.js → chunk-QTDJ54JB.js} +1 -1
  193. package/public/{chunk-3KDOQQBM.js → chunk-R5EOKUDT.js} +2 -2
  194. package/public/chunk-RB6CGL2N.js +1 -0
  195. package/public/chunk-RHUPLSY4.js +1 -0
  196. package/public/chunk-ROUD4I2C.js +1 -0
  197. package/public/chunk-SQG276V4.js +1 -0
  198. package/public/chunk-SYFO7BL7.js +1 -0
  199. package/public/chunk-SZKL6WZ7.js +1 -0
  200. package/public/chunk-TEFE7EK6.js +1 -0
  201. package/public/chunk-TLED5FNX.js +1 -0
  202. package/public/chunk-TPASMSSI.js +23 -0
  203. package/public/chunk-UNATDMH5.js +1 -0
  204. package/public/chunk-UXKQ6PIP.js +32 -0
  205. package/public/chunk-VL3O4ILB.js +1 -0
  206. package/public/chunk-VPQE7WRP.js +1 -0
  207. package/public/chunk-W2INV3O5.js +5 -0
  208. package/public/chunk-X4AOTN7R.js +1 -0
  209. package/public/chunk-XJG5222J.js +14 -0
  210. package/public/chunk-XSS6G7LC.js +1 -0
  211. package/public/chunk-Y6GOOB57.js +1 -0
  212. package/public/chunk-YEVI6ERU.js +1 -0
  213. package/public/chunk-YM3UWZ6I.js +1 -0
  214. package/public/chunk-YRKSTZPV.js +1 -0
  215. package/public/chunk-YZCOAAJB.js +1 -0
  216. package/public/chunk-ZBSCV5KR.js +1 -0
  217. package/public/chunk-ZIXTTJ4W.js +1 -0
  218. package/public/chunk-ZPHQO57O.js +1 -0
  219. package/public/chunk-ZTOLTRNF.js +1 -0
  220. package/public/index.html +2 -2
  221. package/public/main-VCGHYJKU.js +1 -0
  222. package/public/media/fa-brands-400-Q3XCMWHQ.woff2 +0 -0
  223. package/public/media/{fa-brands-400-KOKGDU7E.ttf → fa-brands-400-R2XQZCET.ttf} +0 -0
  224. package/public/media/fa-regular-400-QSNYFYRT.woff2 +0 -0
  225. package/public/media/{fa-regular-400-IPMAEX5Y.ttf → fa-regular-400-XUOPSR7E.ttf} +0 -0
  226. package/public/media/fa-solid-900-5ZUYHGA7.woff2 +0 -0
  227. package/public/media/{fa-solid-900-SRFFQLRM.ttf → fa-solid-900-PJNKLK6W.ttf} +0 -0
  228. package/public/polyfills-JFMQVUE2.js +2 -0
  229. package/public/styles-6IKEC5B4.css +1 -0
  230. package/scripts/upgrade-install-plugin.sh +1 -1
  231. package/public/chunk-2J6XFH3T.js +0 -1
  232. package/public/chunk-2KNNQ3N3.js +0 -1
  233. package/public/chunk-3FKHRKWG.js +0 -1
  234. package/public/chunk-3IX3CLER.js +0 -1
  235. package/public/chunk-3YHN3VHA.js +0 -1
  236. package/public/chunk-4AVEC3ZU.js +0 -1
  237. package/public/chunk-5BHGCTWL.js +0 -5
  238. package/public/chunk-62ADZGBJ.js +0 -6
  239. package/public/chunk-6GHV2TKM.js +0 -1
  240. package/public/chunk-6SC3OCKT.js +0 -8
  241. package/public/chunk-BCHM64F4.js +0 -1
  242. package/public/chunk-BPMSJ2VF.js +0 -1
  243. package/public/chunk-C2ERQ3FX.js +0 -1
  244. package/public/chunk-C6NH5RUO.js +0 -1
  245. package/public/chunk-CUPS2NE5.js +0 -1
  246. package/public/chunk-D6EUS4KM.js +0 -1
  247. package/public/chunk-DNZYDCPW.js +0 -1
  248. package/public/chunk-E3OHYYGW.js +0 -23
  249. package/public/chunk-EMKXES77.js +0 -14
  250. package/public/chunk-G7AVJCRN.js +0 -1
  251. package/public/chunk-HSJSWZHD.js +0 -1
  252. package/public/chunk-HYBTNEG3.js +0 -1
  253. package/public/chunk-J34SI644.js +0 -1
  254. package/public/chunk-JD7YSN6P.js +0 -1
  255. package/public/chunk-JL3HH376.js +0 -1
  256. package/public/chunk-JN46TW24.js +0 -1
  257. package/public/chunk-JPWCYJWM.js +0 -1
  258. package/public/chunk-JQVXXNK7.js +0 -1
  259. package/public/chunk-JW6PX64L.js +0 -1
  260. package/public/chunk-JXEJU7V3.js +0 -1
  261. package/public/chunk-K53Q52AX.js +0 -1
  262. package/public/chunk-KD3Z24TB.js +0 -1
  263. package/public/chunk-KPCZLNW7.js +0 -1
  264. package/public/chunk-KQJ7ONUG.js +0 -1
  265. package/public/chunk-KUOCPYMN.js +0 -1
  266. package/public/chunk-KXMGIDLQ.js +0 -1
  267. package/public/chunk-KZLHFU5K.js +0 -1
  268. package/public/chunk-LJHUPCL3.js +0 -32
  269. package/public/chunk-MTMEA6JC.js +0 -1
  270. package/public/chunk-N5BZ3IQD.js +0 -1
  271. package/public/chunk-N5UE2QRB.js +0 -1
  272. package/public/chunk-NGAJQJ5T.js +0 -1
  273. package/public/chunk-NNATGODS.js +0 -1
  274. package/public/chunk-NZNNTHFQ.js +0 -1
  275. package/public/chunk-ORPWYWCL.js +0 -5
  276. package/public/chunk-OSDZN4BY.js +0 -1
  277. package/public/chunk-PREJ7FYU.js +0 -1
  278. package/public/chunk-QHPDGSZ6.js +0 -1
  279. package/public/chunk-RBHJOIVB.js +0 -1
  280. package/public/chunk-RRHDXAZE.js +0 -1
  281. package/public/chunk-T7MCUROV.js +0 -1
  282. package/public/chunk-TCSXGQNF.js +0 -1
  283. package/public/chunk-TTENUNEO.js +0 -1
  284. package/public/chunk-TXOB7R5K.js +0 -7
  285. package/public/chunk-UEX6RTZJ.js +0 -1
  286. package/public/chunk-UG5DK2RQ.js +0 -2
  287. package/public/chunk-UG6ZOHXY.js +0 -1
  288. package/public/chunk-UN5422JY.js +0 -1
  289. package/public/chunk-VAJZ7KCO.js +0 -1
  290. package/public/chunk-VBCYNIMT.js +0 -1
  291. package/public/chunk-WHJOLAED.js +0 -1
  292. package/public/chunk-WJFAG3CM.js +0 -20
  293. package/public/chunk-YN5SJ37A.js +0 -1
  294. package/public/chunk-YR3ETJZY.js +0 -1
  295. package/public/chunk-YRD5IXFM.js +0 -1
  296. package/public/chunk-Z4A7KLCA.js +0 -1
  297. package/public/chunk-ZT23DWNL.js +0 -1
  298. package/public/main-LYJIIXIC.js +0 -1
  299. package/public/media/01-RQ3S2L53.png +0 -0
  300. package/public/media/02-VNCG2I2A.png +0 -0
  301. package/public/media/03-HI42L4ZG.png +0 -0
  302. package/public/media/04-FJLL55LZ.png +0 -0
  303. package/public/media/05-V3EO6SPT.png +0 -0
  304. package/public/media/06-EOJZCQZN.png +0 -0
  305. package/public/media/07-KMKB5PBD.png +0 -0
  306. package/public/media/08-UQJRF6B2.png +0 -0
  307. package/public/media/09-2DJQFRHH.png +0 -0
  308. package/public/media/arrow_left-CQT7FZM7.svg +0 -4
  309. package/public/media/arrow_right-SBUDRR2G.svg +0 -4
  310. package/public/media/fa-brands-400-6PJPV6JM.woff2 +0 -0
  311. package/public/media/fa-regular-400-OHB6J4OK.woff2 +0 -0
  312. package/public/media/fa-solid-900-ABTK6BNK.woff2 +0 -0
  313. package/public/polyfills-C6JHVXJJ.js +0 -2
  314. package/public/scripts-6GVLYD7F.js +0 -62
  315. package/public/styles-EG5MFQEM.css +0 -1
  316. /package/public/assets/{bootstrap-4 → bootstrap-5}/cssframework/assets.json +0 -0
@@ -0,0 +1 @@
1
+ import{e as ft,m as gt}from"./chunk-GDFC3M3E.js";import{Da as Z,Ia as O,Ib as M,Jb as E,Kb as l,Lb as F,Nb as p,Qc as Q,Ub as h,Vb as m,Wb as j,Xb as U,Yb as Y,_b as K,a as u,ac as mt,b as T,bb as ht,bc as A,bd as J,cb as q,cc as c,e as xt,ga as C,gb as r,ha as lt,ja as ct,jb as dt,la as w,ma as _,mb as y,mc as f,n as g,na as ut,oc as b,tb as G,ua as V,ub as pt,va as z,za as N,zb as S}from"./chunk-6ZN4TBLM.js";var Tt=xt((De,Ut)=>{Ut.exports={name:"homebridge-config-ui-x",displayName:"Homebridge UI",version:"5.0.0-beta.61",description:"A web based management, configuration and control platform for Homebridge.",author:"oznu <dev@oz.nu>",license:"MIT",funding:[{type:"github",url:"https://github.com/sponsors/oznu"},{type:"paypal",url:"https://paypal.me/oznu"}],repository:{type:"git",url:"git+https://github.com/homebridge/homebridge-config-ui-x.git"},bugs:{url:"https://github.com/homebridge/homebridge-config-ui-x/issues"},keywords:["homebridge-plugin","ui","gui","web","homebridge","homebridge-config-ui-x","ui-x","config-ui-x","homebridge-x","homebridge server","homebridge ui","homebridge-ui","homebridge gui","homebridge-gui","web interface","config ui","management","config editor","linux","macOS","osx","windows","raspberry pi","accessory control","smart home","hb-service"],main:"./dist/index.js",bin:{"homebridge-config-ui-x":"dist/bin/standalone.js","hb-service":"dist/bin/hb-service.js"},engines:{node:"^20 || ^22",homebridge:"^1.8.0 || ^2.0.0-beta.0"},scripts:{build:"npm run build:server && npm run build:ui","build:server":"rimraf dist && tsc -p tsconfig.build.json","build:ui":"npm run build --prefix ui",check:"npm run check:server && npm run check:ui","check:server":"npm install && npm outdated","check:ui":"npm install --prefix ui && npm outdated --prefix ui","lang-sync":"ts-node scripts/lang-sync.ts",lint:"eslint . --max-warnings=0","lint:fix":"npm run lint -- --fix",prepublishOnly:"npm i --package-lock-only && npm run lint && npm run build",start:"ts-node -r tsconfig-paths/register src/main.ts",test:"vitest run","test-coverage":"npm run test -- --coverage","upgrade-install":"./scripts/upgrade-install.sh",watch:'concurrently "npm run watch:ui" "npm run watch:server"',"watch:server":"nodemon","watch:ui":"npm run start --prefix ui"},dependencies:{"@fastify/helmet":"13.0.1","@fastify/multipart":"9.0.3","@fastify/static":"8.2.0","@homebridge/hap-client":"2.1.0","@homebridge/node-pty-prebuilt-multiarch":"0.12.0","@nestjs/axios":"4.0.0","@nestjs/common":"11.1.1","@nestjs/core":"11.1.1","@nestjs/jwt":"11.0.0","@nestjs/passport":"11.0.5","@nestjs/platform-fastify":"11.1.1","@nestjs/platform-socket.io":"11.1.1","@nestjs/swagger":"11.2.0","@nestjs/websockets":"11.1.1",axios:"1.9.0","bash-color":"0.0.4","class-transformer":"0.5.1","class-validator":"0.14.2",commander:"14.0.0",dayjs:"1.11.13",fastify:"5.3.3","fs-extra":"11.3.0",jsonwebtoken:"9.0.2",lodash:"4.17.21","node-cache":"5.1.2","node-schedule":"2.1.1",ora:"5.4.1",otplib:"12.0.1","p-limit":"3.1.0",passport:"0.7.0","passport-jwt":"4.0.1","reflect-metadata":"0.2.2",rxjs:"7.8.2",semver:"7.7.2",systeminformation:"5.27.0",tail:"2.2.6",tar:"7.4.3","tcp-port-used":"1.0.2",unzipper:"0.12.3"},devDependencies:{"@antfu/eslint-config":"^4.13.2","@nestjs/testing":"^11.1.1","@prettier/plugin-xml":"^3.4.1","@types/fs-extra":"^11.0.4","@types/lodash":"^4.17.17","@types/node":"^22.15.21","@types/node-schedule":"^2.1.7","@types/passport-jwt":"^4.0.1","@types/semver":"^7.7.0","@types/tail":"^2.2.3","@types/tcp-port-used":"^1.0.4","@types/unzipper":"^0.10.11","@vitest/coverage-v8":"^3.1.4",concurrently:"^9.1.2","eslint-plugin-format":"^1.0.1","form-data":"^4.0.2",nodemon:"^3.1.10",rimraf:"^6.0.1","ts-loader":"^9.5.2","ts-node":"^10.9.2","tsconfig-paths":"^4.2.0",typescript:"^5.8.3","unplugin-swc":"^1.5.3",vitest:"^3.1.4"},maintainers:[{email:"bwp91@icloud.com",name:"bwp91"},{email:"dev@oz.nu",name:"oznu"},{email:"northern.man1@gmail.com",name:"northernman"},{email:"mail@anderl-bauer.de",name:"supereg"},{email:"khaos.tian@gmail.com",name:"khaost"},{email:"erik.baauw@xs4all.nl",name:"ebaauw"},{email:"donavan.becker@icloud.com",name:"donavanbecker"},{email:"dustin.greif@gmail.com",name:"dustin.greif"},{email:"nfarina@gmail.com",name:"nfarina"}],scarfSettings:{enabled:!1}}});var v=function(i){return i[i.State=0]="State",i[i.Transition=1]="Transition",i[i.Sequence=2]="Sequence",i[i.Group=3]="Group",i[i.Animate=4]="Animate",i[i.Keyframes=5]="Keyframes",i[i.Style=6]="Style",i[i.Trigger=7]="Trigger",i[i.Reference=8]="Reference",i[i.AnimateChild=9]="AnimateChild",i[i.AnimateRef=10]="AnimateRef",i[i.Query=11]="Query",i[i.Stagger=12]="Stagger",i}(v||{}),It="*";function tt(i,s){return{type:v.Trigger,name:i,definitions:s,options:{}}}function P(i,s=null){return{type:v.Animate,styles:s,timings:i}}function Yt(i,s=null){return{type:v.Sequence,steps:i,options:s}}function R(i){return{type:v.Style,styles:i,offset:null}}function H(i,s,t){return{type:v.State,name:i,styles:s,options:t}}function B(i,s,t=null){return{type:v.Transition,expr:i,animation:s,options:t}}var W=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(s=0,t=0){this.totalTime=s+t}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(s=>s()),this._onDoneFns=[])}onStart(s){this._originalOnStartFns.push(s),this._onStartFns.push(s)}onDone(s){this._originalOnDoneFns.push(s),this._onDoneFns.push(s)}onDestroy(s){this._onDestroyFns.push(s)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(s=>s()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(s=>s()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(s){this._position=this.totalTime?s*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(s){let t=s=="start"?this._onStartFns:this._onDoneFns;t.forEach(e=>e()),t.length=0}},X=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(s){this.players=s;let t=0,e=0,n=0,o=this.players.length;o==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(a=>{a.onDone(()=>{++t==o&&this._onFinish()}),a.onDestroy(()=>{++e==o&&this._onDestroy()}),a.onStart(()=>{++n==o&&this._onStart()})}),this.totalTime=this.players.reduce((a,d)=>Math.max(a,d.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(s=>s()),this._onDoneFns=[])}init(){this.players.forEach(s=>s.init())}onStart(s){this._onStartFns.push(s)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(s=>s()),this._onStartFns=[])}onDone(s){this._onDoneFns.push(s)}onDestroy(s){this._onDestroyFns.push(s)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(s=>s.play())}pause(){this.players.forEach(s=>s.pause())}restart(){this.players.forEach(s=>s.restart())}finish(){this._onFinish(),this.players.forEach(s=>s.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(s=>s.destroy()),this._onDestroyFns.forEach(s=>s()),this._onDestroyFns=[])}reset(){this.players.forEach(s=>s.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(s){let t=s*this.totalTime;this.players.forEach(e=>{let n=e.totalTime?Math.min(1,t/e.totalTime):1;e.setPosition(n)})}getPosition(){let s=this.players.reduce((t,e)=>t===null||e.totalTime>t.totalTime?e:t,null);return s!=null?s.getPosition():0}beforeDestroy(){this.players.forEach(s=>{s.beforeDestroy&&s.beforeDestroy()})}triggerCallback(s){let t=s=="start"?this._onStartFns:this._onDoneFns;t.forEach(e=>e()),t.length=0}},Ot="!";var _t=["toast-component",""];function Et(i,s){if(i&1){let t=K();h(0,"button",5),A("click",function(){V(t);let n=c();return z(n.remove())}),h(1,"span",6),f(2,"\xD7"),m()()}}function Ft(i,s){if(i&1&&(U(0),f(1),Y()),i&2){let t=c(2);r(),b("[",t.duplicatesCount+1,"]")}}function jt(i,s){if(i&1&&(h(0,"div"),f(1),S(2,Ft,2,1,"ng-container",4),m()),i&2){let t=c();p(t.options.titleClass),E("aria-label",t.title),r(),b(" ",t.title," "),r(),l("ngIf",t.duplicatesCount)}}function At(i,s){if(i&1&&j(0,"div",7),i&2){let t=c();p(t.options.messageClass),l("innerHTML",t.message,q)}}function Rt(i,s){if(i&1&&(h(0,"div",8),f(1),m()),i&2){let t=c();p(t.options.messageClass),E("aria-label",t.message),r(),b(" ",t.message," ")}}function Ht(i,s){if(i&1&&(h(0,"div"),j(1,"div",9),m()),i&2){let t=c();r(),F("width",t.width()+"%")}}function kt(i,s){if(i&1){let t=K();h(0,"button",5),A("click",function(){V(t);let n=c();return z(n.remove())}),h(1,"span",6),f(2,"\xD7"),m()()}}function Nt(i,s){if(i&1&&(U(0),f(1),Y()),i&2){let t=c(2);r(),b("[",t.duplicatesCount+1,"]")}}function Mt(i,s){if(i&1&&(h(0,"div"),f(1),S(2,Nt,2,1,"ng-container",4),m()),i&2){let t=c();p(t.options.titleClass),E("aria-label",t.title),r(),b(" ",t.title," "),r(),l("ngIf",t.duplicatesCount)}}function Pt(i,s){if(i&1&&j(0,"div",7),i&2){let t=c();p(t.options.messageClass),l("innerHTML",t.message,q)}}function Bt(i,s){if(i&1&&(h(0,"div",8),f(1),m()),i&2){let t=c();p(t.options.messageClass),E("aria-label",t.message),r(),b(" ",t.message," ")}}function $t(i,s){if(i&1&&(h(0,"div"),j(1,"div",9),m()),i&2){let t=c();r(),F("width",t.width()+"%")}}var et=class{_attachedHost;component;viewContainerRef;injector;constructor(s,t){this.component=s,this.injector=t}attach(s,t){return this._attachedHost=s,s.attach(this,t)}detach(){let s=this._attachedHost;if(s)return this._attachedHost=void 0,s.detach()}get isAttached(){return this._attachedHost!=null}setAttachedHost(s){this._attachedHost=s}},it=class{_attachedPortal;_disposeFn;attach(s,t){return this._attachedPortal=s,this.attachComponentPortal(s,t)}detach(){this._attachedPortal&&this._attachedPortal.setAttachedHost(),this._attachedPortal=void 0,this._disposeFn&&(this._disposeFn(),this._disposeFn=void 0)}setDisposeFn(s){this._disposeFn=s}},st=class{_overlayRef;componentInstance;duplicatesCount=0;_afterClosed=new g;_activate=new g;_manualClose=new g;_resetTimeout=new g;_countDuplicate=new g;constructor(s){this._overlayRef=s}manualClose(){this._manualClose.next(),this._manualClose.complete()}manualClosed(){return this._manualClose.asObservable()}timeoutReset(){return this._resetTimeout.asObservable()}countDuplicate(){return this._countDuplicate.asObservable()}close(){this._overlayRef.detach(),this._afterClosed.next(),this._manualClose.next(),this._afterClosed.complete(),this._manualClose.complete(),this._activate.complete(),this._resetTimeout.complete(),this._countDuplicate.complete()}afterClosed(){return this._afterClosed.asObservable()}isInactive(){return this._activate.isStopped}activate(){this._activate.next(),this._activate.complete()}afterActivate(){return this._activate.asObservable()}onDuplicate(s,t){s&&this._resetTimeout.next(),t&&this._countDuplicate.next(++this.duplicatesCount)}},D=class{toastId;config;message;title;toastType;toastRef;_onTap=new g;_onAction=new g;constructor(s,t,e,n,o,a){this.toastId=s,this.config=t,this.message=e,this.title=n,this.toastType=o,this.toastRef=a,this.toastRef.afterClosed().subscribe(()=>{this._onAction.complete(),this._onTap.complete()})}triggerTap(){this._onTap.next(),this.config.tapToDismiss&&this._onTap.complete()}onTap(){return this._onTap.asObservable()}triggerAction(s){this._onAction.next(s)}onAction(){return this._onAction.asObservable()}},vt={maxOpened:0,autoDismiss:!1,newestOnTop:!0,preventDuplicates:!1,countDuplicates:!1,resetTimeoutOnDuplicate:!1,includeTitleDuplicates:!1,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},closeButton:!1,disableTimeOut:!1,timeOut:5e3,extendedTimeOut:1e3,enableHtml:!1,progressBar:!1,toastClass:"ngx-toastr",positionClass:"toast-top-right",titleClass:"toast-title",messageClass:"toast-message",easing:"ease-in",easeTime:300,tapToDismiss:!0,onActivateTick:!1,progressAnimation:"decreasing"},yt=new ct("ToastConfig"),nt=class extends it{_hostDomElement;_componentFactoryResolver;_appRef;constructor(s,t,e){super(),this._hostDomElement=s,this._componentFactoryResolver=t,this._appRef=e}attachComponentPortal(s,t){let e=this._componentFactoryResolver.resolveComponentFactory(s.component),n;return n=e.create(s.injector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()}),t?this._hostDomElement.insertBefore(this._getComponentRootNode(n),this._hostDomElement.firstChild):this._hostDomElement.appendChild(this._getComponentRootNode(n)),n}_getComponentRootNode(s){return s.hostView.rootNodes[0]}},Lt=(()=>{class i{_document=_(Q);_containerElement;ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let t=this._document.createElement("div");t.classList.add("overlay-container"),t.setAttribute("aria-live","polite"),this._document.body.appendChild(t),this._containerElement=t}static \u0275fac=function(e){return new(e||i)};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),ot=class{_portalHost;constructor(s){this._portalHost=s}attach(s,t=!0){return this._portalHost.attach(s,t)}detach(){return this._portalHost.detach()}},Vt=(()=>{class i{_overlayContainer=_(Lt);_componentFactoryResolver=_(dt);_appRef=_(M);_document=_(Q);_paneElements=new Map;create(t,e){return this._createOverlayRef(this.getPaneElement(t,e))}getPaneElement(t="",e){return this._paneElements.get(e)||this._paneElements.set(e,{}),this._paneElements.get(e)[t]||(this._paneElements.get(e)[t]=this._createPaneElement(t,e)),this._paneElements.get(e)[t]}_createPaneElement(t,e){let n=this._document.createElement("div");return n.id="toast-container",n.classList.add(t),n.classList.add("toast-container"),e?e.getContainerElement().appendChild(n):this._overlayContainer.getContainerElement().appendChild(n),n}_createPortalHost(t){return new nt(t,this._componentFactoryResolver,this._appRef)}_createOverlayRef(t){return new ot(this._createPortalHost(t))}static \u0275fac=function(e){return new(e||i)};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),bt=(()=>{class i{overlay;_injector;sanitizer;ngZone;toastrConfig;currentlyActive=0;toasts=[];overlayContainer;previousToastMessage;index=0;constructor(t,e,n,o,a){this.overlay=e,this._injector=n,this.sanitizer=o,this.ngZone=a,this.toastrConfig=u(u({},t.default),t.config),t.config.iconClasses&&(this.toastrConfig.iconClasses=u(u({},t.default.iconClasses),t.config.iconClasses))}show(t,e,n={},o=""){return this._preBuildNotification(o,t,e,this.applyConfig(n))}success(t,e,n={}){let o=this.toastrConfig.iconClasses.success||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}error(t,e,n={}){let o=this.toastrConfig.iconClasses.error||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}info(t,e,n={}){let o=this.toastrConfig.iconClasses.info||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}warning(t,e,n={}){let o=this.toastrConfig.iconClasses.warning||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}clear(t){for(let e of this.toasts)if(t!==void 0){if(e.toastId===t){e.toastRef.manualClose();return}}else e.toastRef.manualClose()}remove(t){let e=this._findToast(t);if(!e||(e.activeToast.toastRef.close(),this.toasts.splice(e.index,1),this.currentlyActive=this.currentlyActive-1,!this.toastrConfig.maxOpened||!this.toasts.length))return!1;if(this.currentlyActive<this.toastrConfig.maxOpened&&this.toasts[this.currentlyActive]){let n=this.toasts[this.currentlyActive].toastRef;n.isInactive()||(this.currentlyActive=this.currentlyActive+1,n.activate())}return!0}findDuplicate(t="",e="",n,o){let{includeTitleDuplicates:a}=this.toastrConfig;for(let d of this.toasts){let k=a&&d.title===t;if((!a||k)&&d.message===e)return d.toastRef.onDuplicate(n,o),d}return null}applyConfig(t={}){return u(u({},this.toastrConfig),t)}_findToast(t){for(let e=0;e<this.toasts.length;e++)if(this.toasts[e].toastId===t)return{index:e,activeToast:this.toasts[e]};return null}_preBuildNotification(t,e,n,o){return o.onActivateTick?this.ngZone.run(()=>this._buildNotification(t,e,n,o)):this._buildNotification(t,e,n,o)}_buildNotification(t,e,n,o){if(!o.toastComponent)throw new Error("toastComponent required");let a=this.findDuplicate(n,e,this.toastrConfig.resetTimeoutOnDuplicate&&o.timeOut>0,this.toastrConfig.countDuplicates);if((this.toastrConfig.includeTitleDuplicates&&n||e)&&this.toastrConfig.preventDuplicates&&a!==null)return a;this.previousToastMessage=e;let d=!1;this.toastrConfig.maxOpened&&this.currentlyActive>=this.toastrConfig.maxOpened&&(d=!0,this.toastrConfig.autoDismiss&&this.clear(this.toasts[0].toastId));let k=this.overlay.create(o.positionClass,this.overlayContainer);this.index=this.index+1;let rt=e;e&&o.enableHtml&&(rt=this.sanitizer.sanitize(ht.HTML,e));let I=new st(k),$=new D(this.index,o,rt,n,t,I),Ct=[{provide:D,useValue:$}],wt=N.create({providers:Ct,parent:this._injector}),Dt=new et(o.toastComponent,wt),at=k.attach(Dt,o.newestOnTop);I.componentInstance=at.instance;let L={toastId:this.index,title:n||"",message:e||"",toastRef:I,onShown:I.afterActivate(),onHidden:I.afterClosed(),onTap:$.onTap(),onAction:$.onAction(),portal:at};return d||(this.currentlyActive=this.currentlyActive+1,setTimeout(()=>{L.toastRef.activate()})),this.toasts.push(L),L}static \u0275fac=function(e){return new(e||i)(w(yt),w(Vt),w(N),w(gt),w(Z))};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),zt=(()=>{class i{toastrService;toastPackage;ngZone;message;title;options;duplicatesCount;originalTimeout;width=O(-1);toastClasses="";state;get _state(){return this.state()}get displayStyle(){if(this.state().value==="inactive")return"none"}timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.ngZone=n,this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o}),this.state=O({value:"inactive",params:{easeTime:this.toastPackage.config.easeTime,easing:"ease-in"}})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.update(t=>T(u({},t),{value:"active"})),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.outsideTimeout(()=>this.remove(),this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let t=new Date().getTime(),e=this.hideTime-t;this.width.set(e/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(n=>100-n),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.update(t=>T(u({},t),{value:"active"})),this.outsideTimeout(()=>this.remove(),this.originalTimeout),this.options.timeOut=this.originalTimeout,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10)}remove(){this.state().value!=="removed"&&(clearTimeout(this.timeout),this.state.update(t=>T(u({},t),{value:"removed"})),this.outsideTimeout(()=>this.toastrService.remove(this.toastPackage.toastId),+this.toastPackage.config.easeTime))}tapToast(){this.state().value!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state().value!=="removed"&&this.options.disableTimeOut!=="extendedTimeOut"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state().value==="removed"||(this.outsideTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}outsideTimeout(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.timeout=setTimeout(()=>this.runInsideAngular(t),e)):this.timeout=setTimeout(()=>t(),e)}outsideInterval(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.intervalId=setInterval(()=>this.runInsideAngular(t),e)):this.intervalId=setInterval(()=>t(),e)}runInsideAngular(t){this.ngZone?this.ngZone.run(()=>t()):t()}static \u0275fac=function(e){return new(e||i)(y(bt),y(D),y(Z))};static \u0275cmp=G({type:i,selectors:[["","toast-component",""]],hostVars:5,hostBindings:function(e,n){e&1&&A("click",function(){return n.tapToast()})("mouseenter",function(){return n.stickAround()})("mouseleave",function(){return n.delayedHideToast()}),e&2&&(mt("@flyInOut",n._state),p(n.toastClasses),F("display",n.displayStyle))},attrs:_t,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(e,n){e&1&&S(0,Et,3,0,"button",0)(1,jt,3,5,"div",1)(2,At,1,3,"div",2)(3,Rt,2,4,"div",3)(4,Ht,2,2,"div",4),e&2&&(l("ngIf",n.options.closeButton),r(),l("ngIf",n.title),r(),l("ngIf",n.message&&n.options.enableHtml),r(),l("ngIf",n.message&&!n.options.enableHtml),r(),l("ngIf",n.options.progressBar))},dependencies:[J],encapsulation:2,data:{animation:[tt("flyInOut",[H("inactive",R({opacity:0})),H("active",R({opacity:1})),H("removed",R({opacity:0})),B("inactive => active",P("{{ easeTime }}ms {{ easing }}")),B("active => removed",P("{{ easeTime }}ms {{ easing }}"))])]},changeDetection:0})}return i})(),Zt=T(u({},vt),{toastComponent:zt}),qt=(i={})=>ut([{provide:yt,useValue:{default:Zt,config:i}}]),be=(()=>{class i{static forRoot(t={}){return{ngModule:i,providers:[qt(t)]}}static \u0275fac=function(e){return new(e||i)};static \u0275mod=pt({type:i});static \u0275inj=lt({})}return i})();var Gt=(()=>{class i{toastrService;toastPackage;appRef;message;title;options;duplicatesCount;originalTimeout;width=O(-1);toastClasses="";get displayStyle(){return this.state()==="inactive"?"none":null}state=O("inactive");timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.appRef=n,this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.set("active"),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.timeout=setTimeout(()=>{this.remove()},this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))),this.options.onActivateTick&&this.appRef.tick()}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let t=new Date().getTime(),e=this.hideTime-t;this.width.set(e/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(n=>100-n),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.set("active"),this.options.timeOut=this.originalTimeout,this.timeout=setTimeout(()=>this.remove(),this.originalTimeout),this.hideTime=new Date().getTime()+(this.originalTimeout||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))}remove(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.state.set("removed"),this.timeout=setTimeout(()=>this.toastrService.remove(this.toastPackage.toastId)))}tapToast(){this.state()!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state()==="removed"||(this.timeout=setTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10)))}static \u0275fac=function(e){return new(e||i)(y(bt),y(D),y(M))};static \u0275cmp=G({type:i,selectors:[["","toast-component",""]],hostVars:4,hostBindings:function(e,n){e&1&&A("click",function(){return n.tapToast()})("mouseenter",function(){return n.stickAround()})("mouseleave",function(){return n.delayedHideToast()}),e&2&&(p(n.toastClasses),F("display",n.displayStyle))},attrs:_t,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(e,n){e&1&&S(0,kt,3,0,"button",0)(1,Mt,3,5,"div",1)(2,Pt,1,3,"div",2)(3,Bt,2,4,"div",3)(4,$t,2,2,"div",4),e&2&&(l("ngIf",n.options.closeButton),r(),l("ngIf",n.title),r(),l("ngIf",n.message&&n.options.enableHtml),r(),l("ngIf",n.message&&!n.options.enableHtml),r(),l("ngIf",n.options.progressBar))},dependencies:[J],encapsulation:2,changeDetection:0})}return i})(),Te=T(u({},vt),{toastComponent:Gt});var x={serverTarget:Tt().version,production:!0,socket:"",api:{base:"/api",socket:`${window.location.protocol==="http:"?"ws://":"wss://"}${window.location.host}`,origin:window.location.origin},jwt:{tokenKey:"access_token",allowedDomains:[document.location.host],disallowedRoutes:[`${window.location.protocol}//${document.location.host}/api/auth/login`]},apiHttpOptions:{},owm:{appid:"fec67b55f7f74deaa28df89ba6a60821"}};var Fe=(()=>{class i{$http=_(ft);constructor(){}get(t,e){return this.$http.get(`${x.api.base}${t}`,e)}post(t,e,n){return this.$http.post(`${x.api.base}${t}`,e,n)}put(t,e,n){return this.$http.put(`${x.api.base}${t}`,e,n)}patch(t,e,n){return this.$http.patch(`${x.api.base}${t}`,e,n)}delete(t,e){return this.$http.delete(`${x.api.base}${t}`,e)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();export{v as a,It as b,Yt as c,R as d,W as e,X as f,Ot as g,bt as h,be as i,x as j,Fe as k};
@@ -0,0 +1 @@
1
+ import{d as i}from"./chunk-DBUCH6BG.js";import{c as s}from"./chunk-BQUVVOUW.js";import{h as o}from"./chunk-RHUPLSY4.js";import{a}from"./chunk-FETTFNJ2.js";import{ga as e,ma as r}from"./chunk-6ZN4TBLM.js";var v=(()=>{class t{$auth=r(s);$router=r(i);$translate=r(a);$toastr=r(o);constructor(){}canActivate(){return this.$auth.user&&this.$auth.user.admin?!0:(this.$toastr.error(this.$translate.instant("toast.no_auth"),this.$translate.instant("toast.title_error")),this.$router.navigate(["/"]),!1)}static \u0275fac=function(n){return new(n||t)};static \u0275prov=e({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{v as a};
@@ -0,0 +1 @@
1
+ import{a as V}from"./chunk-5YIASUJW.js";import{a as q}from"./chunk-ZIXTTJ4W.js";import{a as _}from"./chunk-TEFE7EK6.js";import{n as B,o as k}from"./chunk-W2INV3O5.js";import{h as D,k as F}from"./chunk-RHUPLSY4.js";import{a as z,b as E}from"./chunk-FETTFNJ2.js";import{Cc as i,Dc as r,Jb as b,Kb as h,Ub as s,Vb as l,Wb as p,_b as T,bc as d,fb as y,g as j,gb as m,h as w,jc as C,kc as x,ma as o,mc as I,n as v,nc as S,pb as $,tb as L,ua as u,va as f}from"./chunk-6ZN4TBLM.js";var H=j(q(),1);var A=["logoutput"],X=(()=>{class c{$api=o(F);$log=o(V);$modal=o(B);$toastr=o(D);$translate=o(z);termTarget=$("logoutput");resizeEvent=new v;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$log.startTerminal(this.termTarget(),{},this.resizeEvent)}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.$log.destroyTerminal()}downloadLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_download_log_file"),t.componentInstance.message=this.$translate.instant("logs.download_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_download"),t.componentInstance.faIconClass="fas fa-fw fa-user-secret primary-text",t.result.then(()=>{this.$api.get("/platform-tools/hb-service/log/download",{observe:"response",responseType:"blob"}).subscribe({next:e=>{(0,H.saveAs)(e.body,"homebridge.log.txt")},error:e=>w(this,null,function*(){let n;try{n=JSON.parse(yield e.error.text()).message}catch(a){console.error(a)}this.$toastr.error(n||this.$translate.instant("logs.download.error"),this.$translate.instant("toast.title_error"))})})}).catch(()=>{})}truncateLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_truncate_log_file"),t.componentInstance.message=this.$translate.instant("logs.truncate_log_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_delete"),t.componentInstance.confirmButtonClass="btn-danger",t.componentInstance.faIconClass="fas fa-fw fa-circle-exclamation primary-text",t.result.then(()=>{this.$api.put("/platform-tools/hb-service/log/truncate",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("logs.log_file_truncated"),this.$translate.instant("toast.title_success")),this.$log.term.clear()},error:e=>{console.error(e),this.$toastr.error(e.error.message||this.$translate.instant("logs.truncate.error"),this.$translate.instant("toast.title_error"))}})}).catch(()=>{})}static \u0275fac=function(e){return new(e||c)};static \u0275cmp=L({type:c,selectors:[["ng-component"]],viewQuery:function(e,n){e&1&&C(n.termTarget,A,5),e&2&&x()},hostBindings:function(e,n){e&1&&d("resize",function(g){return n.onWindowResize(g)},!1,y)},decls:17,vars:15,consts:[["logoutput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-download"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-0",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-trash-alt"],[1,"flex-column","d-flex","align-items-stretch","adjust-for-mobile"],["id","log-output",1,"align-self-end","w-100","h-100","mb-1"]],template:function(e,n){if(e&1){let a=T();s(0,"div",1)(1,"div",2)(2,"h3",3),I(3),i(4,"translate"),l()(),s(5,"div",4)(6,"button",5),i(7,"translate"),i(8,"translate"),d("click",function(){return u(a),f(n.downloadLogFile())}),p(9,"i",6),l(),s(10,"button",7),i(11,"translate"),i(12,"translate"),d("click",function(){return u(a),f(n.truncateLogFile())}),p(13,"i",8),l()()(),s(14,"div",9),p(15,"div",10,0),l()}e&2&&(m(3),S(r(4,5,"menu.linux.label_logs")),m(3),h("ngbTooltip",r(7,7,"form.button_download")),b("aria-label",r(8,9,"form.button_download")),m(4),h("ngbTooltip",r(11,11,"form.button_delete")),b("aria-label",r(12,13,"form.button_delete")))},dependencies:[k,E],encapsulation:2})}return c})();export{X as a};
@@ -0,0 +1 @@
1
+ import{a as ne}from"./chunk-AFY7IWPI.js";import{g as O,m as G,n as te}from"./chunk-W2INV3O5.js";import{b as Z,c as M,d as x,e as F,f as z,g as N,j as w,m as q,o as R,p as L,q as j,w as ee,y as V,z as A}from"./chunk-4UVD743J.js";import{b as ie}from"./chunk-DBUCH6BG.js";import{c as Q}from"./chunk-BQUVVOUW.js";import{a as ce}from"./chunk-EIHOKU54.js";import{h as U,k}from"./chunk-RHUPLSY4.js";import{a as S,b as $}from"./chunk-FETTFNJ2.js";import{$c as P,Cc as s,Dc as l,Ec as Y,Jb as u,Kb as f,Pb as g,Rb as K,Sb as W,Tb as X,Ub as i,Vb as n,Wb as p,_b as D,bc as b,cc as v,g as de,gb as e,ma as c,mc as m,nc as d,oc as C,tb as E,ua as B,va as T,yc as I,zb as h}from"./chunk-6ZN4TBLM.js";function ue(r,y){r&1&&(i(0,"ngb-alert",13)(1,"p",20),m(2),s(3,"translate"),n()()),r&2&&(f("dismissible",!1),e(2),d(l(3,2,"login.invalid_password")))}var re=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);formGroup=new N({password:new w("",[x.required])});invalidCredentials=!1;constructor(){}disable2fa(){this.invalidCredentials=!1,this.$api.post("/users/otp/deactivate",this.formGroup.value).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.setup_2fa_disable_success"),this.$translate.instant("toast.title_success"))},error:()=>{this.formGroup.setValue({password:""}),this.invalidCredentials=!0}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],decls:34,vars:27,consts:[[1,"modal-content",2,"min-height","300px"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["type","password","autocomplete","current-password",1,"form-control","custom-input",3,"formControl","placeholder"],["type","error",1,"mt-3","mb-0",3,"dismissible"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"mb-0"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),p(9,"i",6),n(),i(10,"ul",7)(11,"li"),m(12),s(13,"translate"),n()(),i(14,"ul",8)(15,"li",9)(16,"label",10),m(17),s(18,"translate"),n(),i(19,"div",11),p(20,"input",12),s(21,"translate"),n()()(),h(22,ue,4,4,"ngb-alert",13),n(),i(23,"div",14)(24,"div",15)(25,"button",16),s(26,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(27),s(28,"translate"),n()(),p(29,"div",17),i(30,"div",18)(31,"button",19),b("click",function(){return a.disable2fa()}),m(32),s(33,"translate"),n()()()()),o&2&&(e(3),d(l(4,11,"users.setup_2fa_disable")),e(2),u("aria-label",l(6,13,"form.button_close")),e(7),d(l(13,15,"users.setup_2fa_disable_current_password")),e(5),d(l(18,17,"users.label_password")),e(3),f("formControl",a.formGroup.controls.password)("placeholder",l(21,19,"users.label_password")),e(2),g(a.invalidCredentials&&!a.formGroup.controls.password.value?22:-1),e(3),u("aria-label",l(26,21,"form.button_close")),e(2),C(" ",l(28,23,"form.button_close")," "),e(4),f("disabled",a.formGroup.invalid),e(),C(" ",l(33,25,"form.button_disable")," "))},dependencies:[V,M,F,A,R,$,O],encapsulation:2})}return r})();var ae=de(ce(),1);var fe=r=>({timeDiffError:r});function be(r,y){r&1&&(i(0,"li"),m(1),s(2,"translate"),n()),r&2&&(e(),d(l(2,1,"users.setup_2fa_scan_qr_code")))}function _e(r,y){if(r&1&&(i(0,"ngb-alert",8)(1,"p",16),m(2),s(3,"translate"),n(),i(4,"p",17),m(5),s(6,"translate"),n()()),r&2){let t=v();f("dismissible",!1),e(2),d(l(3,3,"users.setup_2fa_cannot_setup_2fa")),e(3),d(Y(6,5,"users.setup_2fa_server_time_out",I(8,fe,t.timeDiffError)))}}function ve(r,y){if(r&1&&(i(0,"ul",9)(1,"li",18)(2,"div",19),p(3,"app-qrcode",20),n()(),i(4,"li",21)(5,"label",22),m(6),s(7,"translate"),n(),i(8,"div",23),p(9,"input",24),n()()()),r&2){let t=v();e(3),f("data",t.otpString),e(3),d(l(7,3,"users.setup_2fa_enter_code")),e(3),f("formControl",t.formGroup.controls.code)}}function xe(r,y){if(r&1){let t=D();i(0,"button",25),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function we(r,y){if(r&1){let t=D();i(0,"button",25),s(1,"translate"),b("click",function(){B(t);let a=v();return T(a.$activeModal.dismiss("Dismiss"))}),m(2),s(3,"translate"),n()}r&2&&(u("aria-label",l(1,2,"form.button_close")),e(2),C(" ",l(3,4,"form.button_close")," "))}function Ce(r,y){if(r&1){let t=D();i(0,"button",26),b("click",function(){B(t);let a=v();return T(a.enable2fa())}),m(1),s(2,"translate"),n()}if(r&2){let t=v();f("disabled",t.formGroup.invalid),e(),C(" ",l(2,2,"form.button_enable")," ")}}var oe=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);user;timeDiffError=null;otpString;formGroup=new N({code:new w("",[x.required,x.minLength(6),x.maxLength(6)])});constructor(){}ngOnInit(){this.$api.post("/users/otp/setup",{}).subscribe({next:t=>{this.checkTimeDiff(t.timestamp),this.timeDiffError||(this.otpString=t.otpauth)},error:t=>{this.$activeModal.dismiss(),console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_enable_error"),this.$translate.instant("toast.title_error"))}})}checkTimeDiff(t){let o=(0,ae.default)(t).diff(new Date,"millisecond");o<-5e3||o>5e3?this.timeDiffError=o:this.timeDiffError=null}enable2fa(){this.$api.post("/users/otp/activate",this.formGroup.value).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.setup_2fa_enabled_success"),this.$translate.instant("toast.title_success")),this.$activeModal.close()},error:t=>{console.error(t),this.$toastr.error(this.$translate.instant("users.setup_2fa_activate_error"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:24,vars:15,consts:[[1,"modal-content","setup2fa"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-key","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"list-group","list-group-box","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"disabled"],[1,"fw-bold","mb-1"],[1,"mb-0"],[1,"list-group-item","text-center"],[1,"text-center","w-100","d-flex","justify-content-center"],[1,"mx-auto",2,"width","175px","height","175px",3,"data"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","placeholder","eg. 123456","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*",1,"form-control","custom-input",3,"formControl"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),s(4,"translate"),n(),i(5,"button",3),s(6,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(7,"div",4)(8,"div",5),p(9,"i",6),n(),i(10,"ul",7)(11,"li"),m(12),s(13,"translate"),n(),h(14,be,3,3,"li"),n(),h(15,_e,7,10,"ngb-alert",8)(16,ve,10,5,"ul",9),n(),i(17,"div",10)(18,"div",11),h(19,xe,4,6,"button",12),n(),i(20,"div",13),h(21,we,4,6,"button",12),n(),i(22,"div",14),h(23,Ce,3,4,"button",15),n()()()),o&2&&(e(3),d(l(4,9,"users.setup_2fa")),e(2),u("aria-label",l(6,11,"form.button_close")),e(7),d(l(13,13,"users.setup_2fa_warning")),e(2),g(a.timeDiffError?-1:14),e(),g(a.timeDiffError?15:-1),e(),g(a.timeDiffError?-1:16),e(3),g(a.timeDiffError?-1:19),e(2),g(a.timeDiffError?21:-1),e(2),g(a.timeDiffError?-1:23))},dependencies:[O,ne,V,M,F,ee,A,R,j,$],encapsulation:2})}return r})();var se=r=>({"is-invalid":r}),le=(()=>{class r{$activeModal=c(G);$api=c(k);$toastr=c(U);$translate=c(S);form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w("",[x.compose([x.required,x.minLength(4)])]),passwordConfirm:new w("",[x.required]),admin:new w(!0)},this.matchPassword);page={title:"users.title_add_user",save:"users.button_add_new_user",password:"users.label_password"};constructor(){}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.post("/users",t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_added_new_user"),this.$translate.instant("toast.title_success"))},error:o=>{this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],decls:58,vars:50,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text"],["type","checkbox","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ms-3"],[1,"modal-footer","justify-content-between"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(8,"div",5)(9,"div",6),p(10,"i",7),n(),i(11,"ul",8)(12,"li",9)(13,"label",10),m(14),s(15,"translate"),n(),i(16,"div",11),p(17,"input",12),s(18,"translate"),n()(),i(19,"li",9)(20,"label",13),m(21),s(22,"translate"),n(),i(23,"div",11),p(24,"input",14),s(25,"translate"),n()(),i(26,"li",9)(27,"label",15),m(28),s(29,"translate"),n(),i(30,"div",11),p(31,"input",16),s(32,"translate"),n()(),i(33,"li",9)(34,"label",17),m(35),s(36,"translate"),n(),i(37,"div",11),p(38,"input",18),s(39,"translate"),n()(),i(40,"li",19)(41,"span",20),m(42),s(43,"translate"),n(),i(44,"div",21),p(45,"input",22),s(46,"translate"),p(47,"label",23),n()()()(),i(48,"div",24)(49,"div",20)(50,"button",25),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(51),s(52,"translate"),n()(),p(53,"div",26),i(54,"div",27)(55,"button",28),m(56),s(57,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,18,"users.title_add_user")),e(2),u("aria-label",l(7,20,"form.button_close")),e(8),d(l(15,22,"users.label_username")),e(3),u("aria-label",l(18,24,"users.label_username")),e(4),d(l(22,26,"users.label_full_name")),e(3),u("aria-label",l(25,28,"users.label_full_name")),e(4),d(l(29,30,a.page.password)),e(3),f("ngClass",I(46,se,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(32,32,a.page.password)),e(4),d(l(36,34,"users.label_confirm_password")),e(3),f("ngClass",I(48,se,a.form.controls.passwordConfirm.dirty&&a.form.controls.passwordConfirm.errors)),u("aria-label",l(39,36,"users.label_confirm_password")),e(4),d(l(43,38,"users.label_admin_user")),e(3),u("aria-label",l(46,40,"users.label_admin_user")),e(6),C(" ",l(52,42,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(57,44,"form.button_save")," "))},dependencies:[V,q,M,F,z,A,L,j,P,$],encapsulation:2})}return r})();var me=r=>({"is-invalid":r});function ge(r,y){if(r&1&&(i(0,"li",9)(1,"label",27),m(2),s(3,"translate"),n(),i(4,"div",11),p(5,"input",28),s(6,"translate"),n()()),r&2){let t=v();e(2),d(l(3,3,"users.label_confirm_password")),e(3),f("ngClass",I(7,me,t.form.controls.passwordConfirm.dirty&&t.form.controls.passwordConfirm.errors)),u("aria-label",l(6,5,"users.label_confirm_password"))}}var pe=(()=>{class r{$activeModal=c(G);$api=c(k);$auth=c(Q);$toastr=c(U);$translate=c(S);user;form=new N({username:new w("",[x.required]),name:new w("",[x.required]),password:new w(""),passwordConfirm:new w(""),admin:new w(!0)},this.matchPassword);page={title:"users.title_edit_user",save:"form.button_save",password:"users.label_new_password"};isCurrentUser=!1;constructor(){}ngOnInit(){this.isCurrentUser=this.$auth.user.username===this.user.username,this.form.patchValue(this.user)}matchPassword(t){let o=t.get("password").value,a=t.get("passwordConfirm").value;if(o!==a)t.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onSubmit({value:t}){this.$api.patch(`/users/${this.user.id}`,t).subscribe({next:()=>{this.$activeModal.close(),this.$toastr.success(this.$translate.instant("users.toast_updated_user"),this.$translate.instant("toast.title_success")),this.isCurrentUser&&t.username!==this.$auth.user.username&&this.$auth.logout()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_add_user"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["ng-component"]],inputs:{user:"user"},decls:52,vars:42,consts:[[1,"modal-content"],["novalidate","",3,"ngSubmit","formGroup"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-user-pen","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-username",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["formControlName","username","type","text","id","form-username","autocomplete","off","autocapitalize","none",1,"form-control","custom-input"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","name","type","text","id","form-name","autocomplete","name",1,"form-control","custom-input"],["for","form-pass",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","password","type","password","autocomplete","new-password","id","form-pass",1,"form-control","custom-input",3,"ngClass"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text"],["type","checkbox","formControlName","admin","id","isAdmin",1,"rendux-input"],["for","isAdmin",1,"rendux-label","ms-3"],[1,"modal-footer","justify-content-between"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","submit",1,"btn","btn-primary",3,"disabled"],["for","form-pass-confirm",1,"mb-2","mb-md-0","w-100","w-md-50"],["formControlName","passwordConfirm","type","password","autocomplete","new-password","id","form-pass-confirm",1,"form-control","custom-input",3,"ngClass"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"form",1),b("ngSubmit",function(){return a.onSubmit(a.form)}),i(2,"div",2)(3,"h5",3),m(4),s(5,"translate"),n(),i(6,"button",4),s(7,"translate"),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),n()(),i(8,"div",5)(9,"div",6),p(10,"i",7),n(),i(11,"ul",8)(12,"li",9)(13,"label",10),m(14),s(15,"translate"),n(),i(16,"div",11),p(17,"input",12),s(18,"translate"),n()(),i(19,"li",9)(20,"label",13),m(21),s(22,"translate"),n(),i(23,"div",11),p(24,"input",14),s(25,"translate"),n()(),i(26,"li",9)(27,"label",15),m(28),s(29,"translate"),n(),i(30,"div",11),p(31,"input",16),s(32,"translate"),n()(),h(33,ge,7,9,"li",9),i(34,"li",17)(35,"span",18),m(36),s(37,"translate"),n(),i(38,"div",19),p(39,"input",20),s(40,"translate"),p(41,"label",21),n()()()(),i(42,"div",22)(43,"div",18)(44,"button",23),b("click",function(){return a.$activeModal.dismiss("Dismiss")}),m(45),s(46,"translate"),n()(),p(47,"div",24),i(48,"div",25)(49,"button",26),m(50),s(51,"translate"),n()()()()()),o&2&&(e(),f("formGroup",a.form),e(3),d(l(5,16,"users.title_edit_user")),e(2),u("aria-label",l(7,18,"form.button_close")),e(8),d(l(15,20,"users.label_username")),e(3),u("aria-label",l(18,22,"users.label_username")),e(4),d(l(22,24,"users.label_full_name")),e(3),u("aria-label",l(25,26,"users.label_full_name")),e(4),d(l(29,28,a.page.password)),e(3),f("ngClass",I(40,me,a.form.controls.password.dirty&&a.form.controls.password.errors)),u("aria-label",l(32,30,a.page.password)),e(2),g(a.form.controls.password.value?33:-1),e(3),d(l(37,32,"users.label_admin_user")),e(3),u("aria-label",l(40,34,"users.label_admin_user")),e(6),C(" ",l(46,36,"form.button_close")," "),e(4),f("disabled",!a.form.valid),e(),C(" ",l(51,38,"form.button_save")," "))},dependencies:[V,q,M,Z,F,z,A,L,j,P,$],encapsulation:2})}return r})();function he(r,y){if(r&1){let t=D();i(0,"button",21),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.setup2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),d(l(2,1,"users.setup_2fa")))}function ye(r,y){if(r&1){let t=D();i(0,"button",17),b("click",function(){B(t);let a=v().$implicit,_=v();return T(_.disable2fa(a))}),m(1),s(2,"translate"),n()}r&2&&(e(),C(" ",l(2,1,"users.setup_2fa_disable")," "))}function Ee(r,y){if(r&1){let t=D();i(0,"div",7)(1,"div",8)(2,"div",9)(3,"div",10)(4,"span",11),p(5,"h4",12)(6,"h5",13),n()(),i(7,"div",14),h(8,he,3,3,"button",15)(9,ye,3,3,"button",16),i(10,"div")(11,"button",17),s(12,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.openEditUser(a))}),p(13,"i",18),n(),i(14,"button",19),s(15,"translate"),b("click",function(){let a=B(t).$implicit,_=v();return T(_.deleteUser(a.id))}),p(16,"i",20),n()()()()()()}if(r&2){let t=y.$implicit,o=v();e(5),f("innerText",t.name),e(),f("innerText",t.username),e(2),g(o.$auth.user.username===t.username&&!t.otpActive?8:-1),e(),g(o.$auth.user.username===t.username&&t.otpActive?9:-1),e(2),u("aria-label",l(12,7,"form.button_edit")),e(3),f("disabled",o.$auth.user.username===t.username),u("aria-label",l(15,9,"form.button_delete"))}}var gt=(()=>{class r{$api=c(k);$auth=c(Q);$modal=c(te);$route=c(ie);$toastr=c(U);$translate=c(S);homebridgeUsers;constructor(){}ngOnInit(){this.$route.data.subscribe(t=>{this.homebridgeUsers=t.homebridgeUsers})}reloadUsers(){return this.$api.get("/users").subscribe(t=>{this.homebridgeUsers=t})}openAddNewUser(){this.$modal.open(le,{size:"lg",backdrop:"static"}).result.finally(()=>{this.reloadUsers()})}openEditUser(t){let o=this.$modal.open(pe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}deleteUser(t){this.$api.delete(`/users/${t}`).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("users.toast_user_deleted"),this.$translate.instant("toast.title_success")),this.reloadUsers()},error:o=>{console.error(o),this.$toastr.error(o.error.message||this.$translate.instant("users.toast_failed_to_delete_user"),this.$translate.instant("toast.title_error"))}})}setup2fa(t){let o=this.$modal.open(oe,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}disable2fa(t){let o=this.$modal.open(re,{size:"lg",backdrop:"static"});o.componentInstance.user=t,o.result.finally(()=>{this.reloadUsers()})}static \u0275fac=function(o){return new(o||r)};static \u0275cmp=E({type:r,selectors:[["app-users"]],decls:12,vars:6,consts:[[1,"row","mb-3"],[1,"col-9"],[1,"primary-text","m-0"],[1,"col-3","text-end"],[1,"btn","btn-elegant","waves-effect","m-0",3,"click"],[1,"fas","fa-fw","fa-user-plus"],[1,"row"],[1,"col-md-6","mb-4"],[1,"card","card-body"],[1,"d-flex","flex-column"],[1,"d-flex","flex-row","mb-3"],[1,"me-auto","my-0"],[3,"innerText"],[1,"small","text-truncate","primary-text",3,"innerText"],[1,"d-flex","flex-row","justify-content-between"],[1,"btn","btn-primary","m-0"],[1,"btn","btn-elegant","m-0"],[1,"btn","btn-elegant","m-0",3,"click"],[1,"fas","fa-fw","fa-user-pen"],[1,"btn","btn-danger","m-0","ms-2",3,"click","disabled"],[1,"fas","fa-fw","fa-trash"],[1,"btn","btn-primary","m-0",3,"click"]],template:function(o,a){o&1&&(i(0,"div",0)(1,"div",1)(2,"h3",2),m(3),s(4,"translate"),n()(),i(5,"div",3)(6,"button",4),s(7,"translate"),b("click",function(){return a.openAddNewUser()}),p(8,"i",5),n()()(),i(9,"div",6),W(10,Ee,17,11,"div",7,K),n()),o&2&&(e(3),d(l(4,2,"users.title_users")),e(3),u("aria-label",l(7,4,"users.button_add_user")),e(4),X(a.homebridgeUsers))},dependencies:[$],encapsulation:2})}return r})();export{re as a,oe as b,le as c,pe as d,gt as e};
@@ -0,0 +1 @@
1
+ import{h as w,k as S}from"./chunk-RHUPLSY4.js";import{a as _,b as h}from"./chunk-FETTFNJ2.js";import{Cc as s,Dc as m,Pb as d,Ub as i,Vb as n,Wb as u,cc as v,gb as e,ma as p,mc as o,nc as a,tb as x,zb as f}from"./chunk-6ZN4TBLM.js";function C(t,y){t&1&&(i(0,"p",7),o(1),s(2,"translate"),n()),t&2&&(e(),a(m(2,1,"platform.linux.server_will_power_down")))}function g(t,y){if(t&1&&(i(0,"div",8),o(1),n()),t&2){let r=v();e(),a(r.error)}}var B=(()=>{class t{$api=p(S);$toastr=p(w);$translate=p(_);error=!1;constructor(){}ngOnInit(){this.$api.put("/platform-tools/linux/shutdown-host",{}).subscribe({error:r=>{console.error(r),this.error=this.$translate.instant("platform.linux.server_restart_error"),this.$toastr.error(this.$translate.instant("platform.linux.server_restart_error"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(l){return new(l||t)};static \u0275cmp=x({type:t,selectors:[["ng-component"]],decls:13,vars:8,consts:[[1,"d-flex","justify-content-between"],[1,"primary-text","m-0"],[1,"my-4","align-items-center",2,"max-width","1000px","margin","auto"],[1,"w-100","text-center","primary-text","mb-5"],[1,"fas","fa-fw","fa-power-off",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"grey-text"],[1,"alert","alert-error","my-4"]],template:function(l,c){l&1&&(i(0,"div",0)(1,"h3",1),o(2),s(3,"translate"),n()(),i(4,"div",2)(5,"div",3),u(6,"i",4),n(),i(7,"div",5)(8,"h4",6),o(9),s(10,"translate"),n(),f(11,C,3,3,"p",7)(12,g,2,1,"div",8),n()()),l&2&&(e(2),a(m(3,4,"menu.restart.title")),e(7),a(m(10,6,"platform.linux.shutting_down_server")),e(2),d(c.error?-1:11),e(),d(c.error?12:-1))},dependencies:[h],encapsulation:2})}return t})();export{B as a};
@@ -0,0 +1 @@
1
+ import{m as g}from"./chunk-W2INV3O5.js";import{b as k}from"./chunk-FETTFNJ2.js";import{Cc as r,Dc as c,Jb as p,Kb as B,Ob as f,Pb as I,Ub as i,Vb as o,Wb as l,bc as s,cb as v,cc as M,gb as t,ma as C,mc as m,nc as y,oc as u,tb as _,zb as x}from"./chunk-6ZN4TBLM.js";function T(n,L){if(n&1&&l(0,"i",13),n&2){let d=M();f("fas fa-fw ",d.faIconClass," mb-3")}}var H=(()=>{class n{$activeModal=C(g);title;message;confirmButtonLabel;confirmButtonClass;faIconClass;constructor(){}static \u0275fac=function(a){return new(a||n)};static \u0275cmp=_({type:n,selectors:[["ng-component"]],inputs:{title:"title",message:"message",confirmButtonLabel:"confirmButtonLabel",confirmButtonClass:"confirmButtonClass",faIconClass:"faIconClass"},decls:19,vars:16,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center"],[2,"font-size","75px",3,"class"],[1,"mb-0","text-center",3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",3,"click"],[2,"font-size","75px"]],template:function(a,e){a&1&&(i(0,"div",0)(1,"div",1)(2,"h5",2),m(3),o(),i(4,"button",3),r(5,"translate"),s("click",function(){return e.$activeModal.dismiss("Dismiss")}),o()(),i(6,"div",4),x(7,T,1,3,"i",5),l(8,"p",6),o(),i(9,"div",7)(10,"div",8)(11,"button",9),r(12,"translate"),s("click",function(){return e.$activeModal.dismiss("Dismiss")}),m(13),r(14,"translate"),o()(),l(15,"div",10),i(16,"div",11)(17,"button",12),s("click",function(){return e.$activeModal.close()}),m(18),o()()()()),a&2&&(t(3),y(e.title),t(),p("aria-label",c(5,10,"form.button_close")),t(3),I(e.faIconClass?7:-1),t(),B("innerHTML",e.message,v),t(3),p("aria-label",c(12,12,"form.button_close")),t(2),u(" ",c(14,14,"form.button_close")," "),t(4),f("btn ",e.confirmButtonClass||"btn-primary",""),t(),u(" ",e.confirmButtonLabel," "))},dependencies:[k],encapsulation:2})}return n})();export{H as a};
@@ -0,0 +1 @@
1
+ import{a as te}from"./chunk-ZIXTTJ4W.js";import{a as Z,b as ee}from"./chunk-44K5XVZH.js";import{m as E,n as I,o as q}from"./chunk-W2INV3O5.js";import{a as J}from"./chunk-QTDJ54JB.js";import{d as G}from"./chunk-DBUCH6BG.js";import{h as M,k as D}from"./chunk-RHUPLSY4.js";import{c as O,d as U}from"./chunk-GDFC3M3E.js";import{a as R,b as F}from"./chunk-FETTFNJ2.js";import{$c as H,Cc as s,Dc as l,Ec as y,Jb as v,Kb as _,Pb as u,Rb as A,Sb as N,Tb as W,Ub as r,Vb as o,Wb as m,_b as T,bc as f,cc as d,g as P,gb as i,gd as j,h as $,ma as x,mc as c,nc as k,oc as h,tb as S,ua as C,va as B,yc as w,zb as g,zc as z}from"./chunk-6ZN4TBLM.js";var V=P(te(),1);var L=P(Z(),1),Q=P(ee(),1);var ne=t=>({maxBackupSizeText:t});function ae(t,p){if(t&1&&m(0,"input",10),t&2){let e=d(2);_("value",e.selectedBackup.fileName)}}function oe(t,p){if(t&1){let e=T();r(0,"input",12),f("change",function(a){C(e);let b=d(2);return B(b.handleRestoreFileInput(a.target.files))}),o()}}function re(t,p){if(t&1&&(r(0,"div",4)(1,"div",7),m(2,"i",8),o(),r(3,"ul",9)(4,"li"),c(5),s(6,"translate"),o(),r(7,"li"),c(8),s(9,"translate"),o(),r(10,"li"),c(11),s(12,"translate"),o(),r(13,"li"),c(14),s(15,"translate"),o()(),g(16,ae,1,1,"input",10)(17,oe,1,0,"input",11),o()),t&2){let e=d();i(5),k(l(6,6,"backup.restore_help_one")),i(3),k(l(9,8,"backup.restore_help_two")),i(3),k(y(12,10,"backup.restore_max_size",w(15,ne,e.maxFileSizeText))),i(3),k(l(15,13,"backup.restore_warning")),i(2),u(e.selectedBackup?16:-1),i(),u(e.selectedBackup?-1:17)}}function se(t,p){if(t&1){let e=T();r(0,"button",18),s(1,"translate"),f("click",function(){C(e);let a=d(2);return B(a.$activeModal.dismiss("Dismiss"))}),c(2),s(3,"translate"),o()}if(t&2){let e=d(2);_("disabled",e.clicked),v("aria-label",l(1,3,"form.button_close")),i(2),h(" ",l(3,5,"form.button_close")," ")}}function le(t,p){if(t&1){let e=T();r(0,"button",18),s(1,"translate"),f("click",function(){C(e);let a=d(2);return B(a.reopenBackupModal())}),c(2),s(3,"translate"),o()}if(t&2){let e=d(2);_("disabled",e.clicked),v("aria-label",l(1,3,"form.button_back")),i(2),h(" ",l(3,5,"form.button_back")," ")}}function ce(t,p){t&1&&m(0,"i",19)}function pe(t,p){if(t&1&&(r(0,"span"),c(1),o()),t&2){let e=d(3);i(),h("",e.uploadPercent,"% - ")}}function de(t,p){t&1&&(r(0,"span"),c(1," Extracting Archive"),o())}function me(t,p){t&1&&(r(0,"span"),c(1),s(2,"translate"),o()),t&2&&(i(),h(" ",l(2,1,"backup.label_uploading"),""))}function ue(t,p){if(t&1&&(r(0,"span"),g(1,ce,1,0,"i",19)(2,pe,2,1,"span")(3,de,2,0,"span")(4,me,3,3,"span"),o()),t&2){let e=d(2);i(),u(!e.uploadPercent||e.uploadPercent===100?1:-1),i(),u(e.uploadPercent&&e.uploadPercent!==100?2:-1),i(),u(e.uploadPercent===100?3:-1),i(),u(e.uploadPercent!==100?4:-1)}}function _e(t,p){t&1&&(c(0),s(1,"translate")),t&2&&h(" ",l(1,1,"form.button_restore")," ")}function be(t,p){if(t&1){let e=T();r(0,"div",6)(1,"div",13),g(2,se,4,7,"button",14)(3,le,4,7,"button",14),o(),m(4,"div",15),r(5,"div",16)(6,"button",17),f("click",function(){C(e);let a=d();return B(a.onRestoreBackupClick())}),g(7,ue,5,4,"span")(8,_e,2,3),o()()()}if(t&2){let e=d();i(2),u(e.setupWizardRestore?2:-1),i(),u(e.setupWizardRestore?-1:3),i(3),_("disabled",!e.selectedBackup&&!e.selectedFile||e.clicked),i(),u(e.clicked?7:-1),i(),u(e.clicked?-1:8)}}function ke(t,p){if(t&1){let e=T();r(0,"div",6),m(1,"div",13),r(2,"div",15)(3,"button",20),f("click",function(){C(e);let a=d();return B(a.postBackupRestart())}),c(4),s(5,"translate"),o()(),m(6,"div",16),o()}t&2&&(i(4),h(" ",l(5,1,"menu.hbrestart.title")," "))}var X=(()=>{class t{$activeModal=x(E);$api=x(D);$modal=x(I);$route=x(G);$toastr=x(M);$translate=x(R);$ws=x(J);setupWizardRestore=!1;selectedBackup=null;clicked=!1;maxFileSizeText=globalThis.backup.maxBackupSizeText;selectedFile;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;restoreArchiveType="homebridge";uploadPercent=0;term=new L.Terminal;termTarget;fitAddon=new Q.FitAddon;io;constructor(){}ngOnInit(){return $(this,null,function*(){this.io=this.$ws.connectToNamespace("backup"),this.termTarget=document.getElementById("plugin-log-output"),this.term.open(this.termTarget),this.fitAddon.fit(),this.io.socket.on("stdout",e=>{this.term.write(e)}),this.setupWizardRestore&&(this.restoreStarted=!0,this.restoreInProgress=!0,this.startRestore())})}onRestoreBackupClick(){this.selectedBackup?this.restoreScheduledBackup():this.restoreArchiveType==="homebridge"?this.uploadHomebridgeArchive():this.restoreArchiveType==="hbfx"&&this.uploadHbfxArchive()}uploadHomebridgeArchive(){this.term.reset(),this.clicked=!0;let e=new FormData;e.append("restoreArchive",this.selectedFile,this.selectedFile.name),this.$api.post("/backup/restore",e).subscribe({next:()=>{this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startRestore()},500),this.clicked=!1},error:n=>{var a;console.error(n),this.$toastr.error(((a=n.error)==null?void 0:a.message)||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error")),this.clicked=!1}})}restoreScheduledBackup(){return $(this,null,function*(){this.term.reset(),this.clicked=!0,this.$api.post(`/backup/scheduled-backups/${this.selectedBackup.id}/restore`,{}).subscribe({next:()=>{this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startRestore()},500),this.clicked=!1},error:e=>{var n;console.error(e),this.$toastr.error(((n=e.error)==null?void 0:n.message)||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error")),this.clicked=!1}})})}startRestore(){return $(this,null,function*(){this.io.request("do-restore").subscribe({next:()=>{this.restoreInProgress=!1,this.$toastr.success(this.$translate.instant("backup.backup_restored"),this.$translate.instant("toast.title_success")),this.setupWizardRestore&&this.postBackupRestart()},error:e=>{this.restoreFailed=!0,console.error(e),this.$toastr.error(this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})})}uploadHbfxArchive(){this.term.reset(),this.clicked=!0;let e=new FormData;e.append("restoreArchive",this.selectedFile,this.selectedFile.name),this.$api.post("/backup/restore/hbfx",e,{reportProgress:!0,observe:"events"}).subscribe({next:n=>{n.type===O.UploadProgress?this.uploadPercent=Math.round(100*n.loaded/n.total):n instanceof U&&(this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startHbfxRestore()},500),this.clicked=!1)},error:n=>{var a;this.clicked=!1,console.error(n),this.$toastr.error(((a=n.error)==null?void 0:a.message)||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})}startHbfxRestore(){return $(this,null,function*(){this.io.request("do-restore-hbfx").subscribe({next:()=>{this.restoreInProgress=!1,this.$toastr.success(this.$translate.instant("backup.backup_restored"),this.$translate.instant("toast.title_success"))},error:e=>{this.restoreFailed=!0,console.error(e),this.$toastr.error(this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})})}handleRestoreFileInput(e){e.length?(this.selectedFile=e[0],this.selectedFile.name.endsWith(".hbfx")?this.restoreArchiveType="hbfx":this.restoreArchiveType="homebridge"):delete this.selectedFile}postBackupRestart(){this.$api.put("/backup/restart",{}).subscribe({next:()=>{this.$activeModal.close(!0),this.$route.navigate(["/"])},error:()=>{}})}reopenBackupModal(){this.$activeModal.dismiss(),this.$modal.open(K,{size:"lg",backdrop:"static"})}ngOnDestroy(){this.io.end()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],inputs:{setupWizardRestore:"setupWizardRestore",selectedBackup:"selectedBackup"},decls:11,vars:11,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],["id","plugin-log-output",1,"modal-body",3,"hidden"],[1,"modal-footer","justify-content-between"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-hard-drive","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","text","disabled","",1,"form-control","custom-input",3,"value"],["type","file","id","restoreFileUpload","accept","application/gzip, .gz, .hbfx",1,"form-control"],["type","file","id","restoreFileUpload","accept","application/gzip, .gz, .hbfx",1,"form-control",3,"change"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"fa","fa-fw","fa-circle-notch","fa-spin"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click"]],template:function(n,a){n&1&&(r(0,"div",0)(1,"div",1)(2,"h5",2),c(3),s(4,"translate"),o(),r(5,"button",3),s(6,"translate"),f("click",function(){return a.$activeModal.dismiss("Dismiss")}),o()(),g(7,re,18,17,"div",4),m(8,"div",5),g(9,be,9,5,"div",6)(10,ke,7,3,"div",6),o()),n&2&&(i(3),k(l(4,7,"backup.title_backup")),i(2),_("disabled",a.restoreInProgress),v("aria-label",l(6,9,"form.button_close")),i(2),u(!a.restoreStarted&&!a.setupWizardRestore?7:-1),i(),_("hidden",!a.restoreStarted),i(),u(!a.restoreStarted||a.restoreFailed===!0?9:-1),i(),u(!a.restoreInProgress&&a.restoreStarted?10:-1))},dependencies:[F],encapsulation:2})}return t})();var fe=(t,p)=>({"fa-arrow-right":t,"fa-cog fa-spin":p}),he=t=>({backupTime:t,dayCount:7}),xe=(t,p)=>({"fa-trash":t,"fa-cog fa-spin":p}),ge=(t,p)=>({backupSize:t,maxBackupSizeText:p});function ve(t,p){if(t&1&&(c(0),s(1,"date"),s(2,"translate")),t&2){let e=d(2);h(" ",y(2,4,"backup.scheduled_backup_time",w(7,he,y(1,1,e.backupTime,"shortTime")))," ")}}function Ce(t,p){t&1&&(c(0),s(1,"translate")),t&2&&h(" ",l(1,1,"backup.scheduled_backup_disabled")," ")}function Be(t,p){if(t&1&&(r(0,"span",24),s(1,"translate"),m(2,"i",31),c(3),o()),t&2){let e=d().$implicit;_("ngbTooltip",y(1,2,"backup.backup_exceeds_max_size",z(5,ge,e.size+"MB",e.maxBackupSizeText))),i(3),h(" ",e.size,"MB ")}}function Te(t,p){if(t&1&&(r(0,"span"),c(1),o()),t&2){let e=d().$implicit;i(),h(" ",e.size,"MB ")}}function ye(t,p){if(t&1){let e=T();r(0,"li",9)(1,"span")(2,"span",23),c(3),s(4,"date"),o(),m(5,"br"),r(6,"small",10),c(7),s(8,"date"),g(9,Be,4,8,"span",24)(10,Te,2,1,"span"),o()(),r(11,"span",25)(12,"button",26),s(13,"translate"),s(14,"translate"),f("click",function(){let a=C(e).$implicit,b=d(2);return B(b.restore(a))}),m(15,"i",27),o(),r(16,"button",28),s(17,"translate"),s(18,"translate"),f("click",function(){let a=C(e).$implicit,b=d(2);return B(b.download(a))}),m(19,"i",29),o(),r(20,"button",30),s(21,"translate"),s(22,"translate"),f("click",function(){let a=C(e).$implicit,b=d(2);return B(b.delete(a))}),m(23,"i",12),o()()()}if(t&2){let e=p.$implicit,n=d(2);i(2),_("ngbTooltip",e.fileName),i(),h(" ",y(4,15,e.timestamp,"mediumDate")," "),i(4),h(" ",y(8,18,e.timestamp,"shortTime")," \xB7 "),i(2),u(e.size>e.maxBackupSize?9:-1),i(),u(e.size<=e.maxBackupSize?10:-1),i(2),_("disabled",n.clicked||n.deleting||e.size>e.maxBackupSize)("ngbTooltip",l(13,21,"form.button_restore")),v("aria-label",l(14,23,"form.button_restore")),i(4),_("disabled",n.clicked||n.deleting)("ngbTooltip",l(17,25,"form.button_download")),v("aria-label",l(18,27,"form.button_download")),i(4),_("disabled",n.clicked||n.deleting)("ngbTooltip",l(21,29,"form.button_delete")),v("aria-label",l(22,31,"form.button_delete")),i(3),_("ngClass",z(33,xe,e.id!==n.deleting,e.id===n.deleting))}}function $e(t,p){if(t&1&&(r(0,"ul",14)(1,"li",20)(2,"h6",21),c(3),s(4,"translate"),o(),r(5,"p",22),g(6,ve,3,9)(7,Ce,2,3),o()(),N(8,ye,24,36,"li",9,A),o()),t&2){let e=d();i(3),k(l(4,3,"backup.files_auto")),i(3),u(e.backupTime?6:-1),i(),u(e.backupTime?-1:7),i(),W(e.scheduledBackups)}}var K=(()=>{class t{$activeModal=x(E);$api=x(D);$modal=x(I);$toastr=x(M);$translate=x(R);clicked=!1;scheduledBackups=[];backupTime;deleting=null;constructor(){}ngOnInit(){this.getScheduledBackups(),this.getNextBackup()}getScheduledBackups(){this.$api.get("/backup/scheduled-backups").subscribe({next:e=>{this.scheduledBackups=e},error:e=>console.error(e)})}getNextBackup(){this.$api.get("/backup/scheduled-backups/next").subscribe({next:e=>{this.backupTime=e.next},error:e=>{console.error(e)}})}download(e){this.$api.get(`/backup/scheduled-backups/${e.id}`,{observe:"response",responseType:"blob"}).subscribe({next:n=>{let a=e.fileName||"homebridge-backup.tar.gz",b=n.body.size;if(b>globalThis.backup.maxBackupSize){let Y=this.$translate.instant("backup.backup_exceeds_max_size",{maxBackupSizeText:globalThis.backup.maxBackupSizeText,size:`${(b/1048576).toFixed(1)}MB`});this.$toastr.warning(Y,this.$translate.instant("toast.title_warning"))}(0,V.saveAs)(n.body,a)},error:n=>{console.error(n),this.$toastr.error(this.$translate.instant("backup.backup_download_failed"),this.$translate.instant("toast.title_error"))}})}restore(e){this.$activeModal.close();let n=this.$modal.open(X,{size:"lg",backdrop:"static"});n.componentInstance.selectedBackup=e}delete(e){this.deleting=e.id,this.$api.delete(`/backup/scheduled-backups/${e.id}`).subscribe({next:()=>{this.getScheduledBackups(),this.deleting=null},error:n=>{this.deleting=null,console.error(n),this.$toastr.error(this.$translate.instant("backup.backup_delete_failed"),this.$translate.instant("toast.title_error"))}})}onDownloadBackupClick(){return $(this,null,function*(){this.clicked=!0,this.$api.get("/backup/download",{observe:"response",responseType:"blob"}).subscribe({next:e=>{let n=e.headers.get("File-Name")||"homebridge-backup.tar.gz";this.clicked=!1;let a=e.body.size;if(a>globalThis.backup.maxBackupSize){let b=this.$translate.instant("backup.backup_exceeds_max_size",{maxBackupSizeText:globalThis.backup.maxBackupSizeText,size:`${(a/1048576).toFixed(1)}MB`});this.$toastr.warning(b,this.$translate.instant("toast.title_warning"))}(0,V.saveAs)(e.body,n)},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("backup.backup_download_failed"),this.$translate.instant("toast.title_error"))}})})}Date=Date;static \u0275fac=function(n){return new(n||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],decls:53,vars:45,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","fa-hard-drive","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"btn","btn-primary","m-0","ms-3",3,"click","disabled"],[1,"fas","fa-fw",3,"ngClass"],[1,"fas","fa-fw","fa-arrow-right"],[1,"list-group","list-group-box","mt-3","mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-end"],[1,"list-group-item"],[1,"mb-1","text-center"],[1,"small","grey-text","mb-0","text-center"],["container","modal","openDelay","150","triggers","hover",3,"ngbTooltip"],["container","modal","openDelay","150","triggers","hover",1,"red-text",3,"ngbTooltip"],[2,"display","flex","flex-wrap","nowrap"],["placement","bottom","container","modal","openDelay","150","triggers","hover",1,"btn","btn-primary","m-0","ms-3",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-history"],["placement","bottom","container","modal","openDelay","150","triggers","hover",1,"btn","btn-primary","m-0","ms-2",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-download"],["placement","bottom","container","modal","openDelay","150","triggers","hover",1,"btn","btn-danger","m-0","ms-2",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-exclamation-circle"]],template:function(n,a){n&1&&(r(0,"div",0)(1,"div",1)(2,"h5",2),c(3),s(4,"translate"),o(),r(5,"button",3),s(6,"translate"),f("click",function(){return a.$activeModal.dismiss("Dismiss")}),o()(),r(7,"div",4)(8,"div",5),m(9,"i",6),o(),r(10,"ul",7)(11,"li"),c(12),s(13,"translate"),o(),r(14,"li"),c(15),s(16,"translate"),o(),r(17,"li"),c(18),s(19,"translate"),o()(),r(20,"ul",8)(21,"li",9)(22,"div")(23,"span"),c(24),s(25,"translate"),o(),m(26,"br"),r(27,"small",10),c(28),s(29,"translate"),o()(),r(30,"button",11),s(31,"translate"),f("click",function(){return a.onDownloadBackupClick()}),m(32,"i",12),o()(),r(33,"li",9)(34,"div")(35,"span"),c(36),s(37,"translate"),o(),m(38,"br"),r(39,"small",10),c(40),s(41,"translate"),o()(),r(42,"button",11),s(43,"translate"),f("click",function(){return a.restore(null)}),m(44,"i",13),o()()(),g(45,$e,10,5,"ul",14),o(),r(46,"div",15),m(47,"div",16),r(48,"div",17)(49,"button",18),f("click",function(){return a.$activeModal.dismiss("Dismiss")}),c(50),s(51,"translate"),o()(),m(52,"div",19),o()()),n&2&&(i(3),k(l(4,18,"backup.title_backup")),i(2),_("disabled",a.clicked||a.deleting),v("aria-label",l(6,20,"form.button_close")),i(7),k(l(13,22,"backup.backup_help_one")),i(3),k(l(16,24,"backup.backup_help_two")),i(3),k(l(19,26,"backup.backup_warning")),i(6),k(l(25,28,"backup.backup_now")),i(4),k(l(29,30,"backup.backup_now_desc")),i(2),_("disabled",a.clicked),v("aria-label",l(31,32,"backup.backup_now")),i(2),_("ngClass",z(42,fe,!a.clicked,a.clicked)),i(4),k(l(37,34,"backup.restore_now")),i(4),k(l(41,36,"backup.restore_now_desc")),i(2),_("disabled",a.clicked),v("aria-label",l(43,38,"backup.restore_now")),i(3),u(a.scheduledBackups.length?45:-1),i(4),_("disabled",a.clicked||a.deleting),i(),h(" ",l(51,40,"form.button_close")," "))},dependencies:[q,H,j,F],encapsulation:2})}return t})();export{K as a,X as b};
@@ -0,0 +1,23 @@
1
+ import{a as dl}from"./chunk-L3LMIZ4T.js";import{b as Mr,c as tl,d as ut,e as ne,f as el,g as Fr,h as Wr,i as Re,j as Le,k as rl,l as il,m as ul,o as ol,p as sl,q as ll,r as fl,s as al,t as cl,u as hl,v as pl}from"./chunk-UXKQ6PIP.js";import{c as nl}from"./chunk-KPW2P5T4.js";import{b as Pr}from"./chunk-CUKPSGYS.js";import{q as Te}from"./chunk-W2INV3O5.js";import{y as Lr,z as Er}from"./chunk-4UVD743J.js";import{c as Or}from"./chunk-FETTFNJ2.js";import{Ga as vt,Ic as Rr,Jb as iu,Kb as Q,Mb as Se,Nb as Kn,Ub as yn,Vb as On,Wb as Zn,_b as Xs,a as qs,b as Gs,bc as Qs,bd as js,cb as jt,cc as xn,e as m_,g as v_,ga as Ie,gb as nn,ha as mt,id as xt,ja as zs,la as Ks,ma as zn,mc as Ft,n as $s,nc as Vs,qb as Js,ta as Sr,tb as Tr,ua as Zs,ub as wt,va as Ys,zb as yt}from"./chunk-6ZN4TBLM.js";var gl=m_((te,Ee)=>{(function(){var s,y="4.17.21",T=200,v="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",x="Expected a function",m="Invalid `variable` option passed into `_.template`",W="__lodash_hash_undefined__",B=500,$="__lodash_placeholder__",k=1,su=2,Wt=4,Pt=1,Me=2,Cn=1,Ct=2,lu=4,Hn=8,Dt=16,Un=32,Bt=64,Yn=128,ee=256,Dr=512,xl=30,Cl="...",bl=800,Al=16,fu=1,Il=2,Sl=3,bt=1/0,ot=9007199254740991,Tl=17976931348623157e292,Fe=NaN,kn=4294967295,Rl=kn-1,Ll=kn>>>1,El=[["ary",Yn],["bind",Cn],["bindKey",Ct],["curry",Hn],["curryRight",Dt],["flip",Dr],["partial",Un],["partialRight",Bt],["rearg",ee]],Nt="[object Arguments]",We="[object Array]",Ol="[object AsyncFunction]",re="[object Boolean]",ie="[object Date]",Ml="[object DOMException]",Pe="[object Error]",De="[object Function]",au="[object GeneratorFunction]",Mn="[object Map]",ue="[object Number]",Fl="[object Null]",Jn="[object Object]",cu="[object Promise]",Wl="[object Proxy]",oe="[object RegExp]",Fn="[object Set]",se="[object String]",Be="[object Symbol]",Pl="[object Undefined]",le="[object WeakMap]",Dl="[object WeakSet]",fe="[object ArrayBuffer]",Ht="[object DataView]",Br="[object Float32Array]",Nr="[object Float64Array]",Hr="[object Int8Array]",Ur="[object Int16Array]",kr="[object Int32Array]",qr="[object Uint8Array]",Gr="[object Uint8ClampedArray]",$r="[object Uint16Array]",zr="[object Uint32Array]",Bl=/\b__p \+= '';/g,Nl=/\b(__p \+=) '' \+/g,Hl=/(__e\(.*?\)|\b__t\)) \+\n'';/g,hu=/&(?:amp|lt|gt|quot|#39);/g,pu=/[&<>"']/g,Ul=RegExp(hu.source),kl=RegExp(pu.source),ql=/<%-([\s\S]+?)%>/g,Gl=/<%([\s\S]+?)%>/g,du=/<%=([\s\S]+?)%>/g,$l=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,zl=/^\w*$/,Kl=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Kr=/[\\^$.*+?()[\]{}|]/g,Zl=RegExp(Kr.source),Zr=/^\s+/,Yl=/\s/,Jl=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Xl=/\{\n\/\* \[wrapped with (.+)\] \*/,Ql=/,? & /,Vl=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,jl=/[()=,{}\[\]\/\s]/,nf=/\\(\\)?/g,tf=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,gu=/\w*$/,ef=/^[-+]0x[0-9a-f]+$/i,rf=/^0b[01]+$/i,uf=/^\[object .+?Constructor\]$/,of=/^0o[0-7]+$/i,sf=/^(?:0|[1-9]\d*)$/,lf=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Ne=/($^)/,ff=/['\n\r\u2028\u2029\\]/g,He="\\ud800-\\udfff",af="\\u0300-\\u036f",cf="\\ufe20-\\ufe2f",hf="\\u20d0-\\u20ff",_u=af+cf+hf,mu="\\u2700-\\u27bf",vu="a-z\\xdf-\\xf6\\xf8-\\xff",pf="\\xac\\xb1\\xd7\\xf7",df="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",gf="\\u2000-\\u206f",_f=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",wu="A-Z\\xc0-\\xd6\\xd8-\\xde",yu="\\ufe0e\\ufe0f",xu=pf+df+gf+_f,Yr="['\u2019]",mf="["+He+"]",Cu="["+xu+"]",Ue="["+_u+"]",bu="\\d+",vf="["+mu+"]",Au="["+vu+"]",Iu="[^"+He+xu+bu+mu+vu+wu+"]",Jr="\\ud83c[\\udffb-\\udfff]",wf="(?:"+Ue+"|"+Jr+")",Su="[^"+He+"]",Xr="(?:\\ud83c[\\udde6-\\uddff]){2}",Qr="[\\ud800-\\udbff][\\udc00-\\udfff]",Ut="["+wu+"]",Tu="\\u200d",Ru="(?:"+Au+"|"+Iu+")",yf="(?:"+Ut+"|"+Iu+")",Lu="(?:"+Yr+"(?:d|ll|m|re|s|t|ve))?",Eu="(?:"+Yr+"(?:D|LL|M|RE|S|T|VE))?",Ou=wf+"?",Mu="["+yu+"]?",xf="(?:"+Tu+"(?:"+[Su,Xr,Qr].join("|")+")"+Mu+Ou+")*",Cf="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",bf="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Fu=Mu+Ou+xf,Af="(?:"+[vf,Xr,Qr].join("|")+")"+Fu,If="(?:"+[Su+Ue+"?",Ue,Xr,Qr,mf].join("|")+")",Sf=RegExp(Yr,"g"),Tf=RegExp(Ue,"g"),Vr=RegExp(Jr+"(?="+Jr+")|"+If+Fu,"g"),Rf=RegExp([Ut+"?"+Au+"+"+Lu+"(?="+[Cu,Ut,"$"].join("|")+")",yf+"+"+Eu+"(?="+[Cu,Ut+Ru,"$"].join("|")+")",Ut+"?"+Ru+"+"+Lu,Ut+"+"+Eu,bf,Cf,bu,Af].join("|"),"g"),Lf=RegExp("["+Tu+He+_u+yu+"]"),Ef=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Of=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Mf=-1,z={};z[Br]=z[Nr]=z[Hr]=z[Ur]=z[kr]=z[qr]=z[Gr]=z[$r]=z[zr]=!0,z[Nt]=z[We]=z[fe]=z[re]=z[Ht]=z[ie]=z[Pe]=z[De]=z[Mn]=z[ue]=z[Jn]=z[oe]=z[Fn]=z[se]=z[le]=!1;var G={};G[Nt]=G[We]=G[fe]=G[Ht]=G[re]=G[ie]=G[Br]=G[Nr]=G[Hr]=G[Ur]=G[kr]=G[Mn]=G[ue]=G[Jn]=G[oe]=G[Fn]=G[se]=G[Be]=G[qr]=G[Gr]=G[$r]=G[zr]=!0,G[Pe]=G[De]=G[le]=!1;var Ff={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},Wf={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Pf={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},Df={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Bf=parseFloat,Nf=parseInt,Wu=typeof global=="object"&&global&&global.Object===Object&&global,Hf=typeof self=="object"&&self&&self.Object===Object&&self,tn=Wu||Hf||Function("return this")(),jr=typeof te=="object"&&te&&!te.nodeType&&te,At=jr&&typeof Ee=="object"&&Ee&&!Ee.nodeType&&Ee,Pu=At&&At.exports===jr,ni=Pu&&Wu.process,bn=function(){try{var a=At&&At.require&&At.require("util").types;return a||ni&&ni.binding&&ni.binding("util")}catch{}}(),Du=bn&&bn.isArrayBuffer,Bu=bn&&bn.isDate,Nu=bn&&bn.isMap,Hu=bn&&bn.isRegExp,Uu=bn&&bn.isSet,ku=bn&&bn.isTypedArray;function dn(a,p,h){switch(h.length){case 0:return a.call(p);case 1:return a.call(p,h[0]);case 2:return a.call(p,h[0],h[1]);case 3:return a.call(p,h[0],h[1],h[2])}return a.apply(p,h)}function Uf(a,p,h,C){for(var R=-1,N=a==null?0:a.length;++R<N;){var V=a[R];p(C,V,h(V),a)}return C}function An(a,p){for(var h=-1,C=a==null?0:a.length;++h<C&&p(a[h],h,a)!==!1;);return a}function kf(a,p){for(var h=a==null?0:a.length;h--&&p(a[h],h,a)!==!1;);return a}function qu(a,p){for(var h=-1,C=a==null?0:a.length;++h<C;)if(!p(a[h],h,a))return!1;return!0}function st(a,p){for(var h=-1,C=a==null?0:a.length,R=0,N=[];++h<C;){var V=a[h];p(V,h,a)&&(N[R++]=V)}return N}function ke(a,p){var h=a==null?0:a.length;return!!h&&kt(a,p,0)>-1}function ti(a,p,h){for(var C=-1,R=a==null?0:a.length;++C<R;)if(h(p,a[C]))return!0;return!1}function K(a,p){for(var h=-1,C=a==null?0:a.length,R=Array(C);++h<C;)R[h]=p(a[h],h,a);return R}function lt(a,p){for(var h=-1,C=p.length,R=a.length;++h<C;)a[R+h]=p[h];return a}function ei(a,p,h,C){var R=-1,N=a==null?0:a.length;for(C&&N&&(h=a[++R]);++R<N;)h=p(h,a[R],R,a);return h}function qf(a,p,h,C){var R=a==null?0:a.length;for(C&&R&&(h=a[--R]);R--;)h=p(h,a[R],R,a);return h}function ri(a,p){for(var h=-1,C=a==null?0:a.length;++h<C;)if(p(a[h],h,a))return!0;return!1}var Gf=ii("length");function $f(a){return a.split("")}function zf(a){return a.match(Vl)||[]}function Gu(a,p,h){var C;return h(a,function(R,N,V){if(p(R,N,V))return C=N,!1}),C}function qe(a,p,h,C){for(var R=a.length,N=h+(C?1:-1);C?N--:++N<R;)if(p(a[N],N,a))return N;return-1}function kt(a,p,h){return p===p?ra(a,p,h):qe(a,$u,h)}function Kf(a,p,h,C){for(var R=h-1,N=a.length;++R<N;)if(C(a[R],p))return R;return-1}function $u(a){return a!==a}function zu(a,p){var h=a==null?0:a.length;return h?oi(a,p)/h:Fe}function ii(a){return function(p){return p==null?s:p[a]}}function ui(a){return function(p){return a==null?s:a[p]}}function Ku(a,p,h,C,R){return R(a,function(N,V,q){h=C?(C=!1,N):p(h,N,V,q)}),h}function Zf(a,p){var h=a.length;for(a.sort(p);h--;)a[h]=a[h].value;return a}function oi(a,p){for(var h,C=-1,R=a.length;++C<R;){var N=p(a[C]);N!==s&&(h=h===s?N:h+N)}return h}function si(a,p){for(var h=-1,C=Array(a);++h<a;)C[h]=p(h);return C}function Yf(a,p){return K(p,function(h){return[h,a[h]]})}function Zu(a){return a&&a.slice(0,Qu(a)+1).replace(Zr,"")}function gn(a){return function(p){return a(p)}}function li(a,p){return K(p,function(h){return a[h]})}function ae(a,p){return a.has(p)}function Yu(a,p){for(var h=-1,C=a.length;++h<C&&kt(p,a[h],0)>-1;);return h}function Ju(a,p){for(var h=a.length;h--&&kt(p,a[h],0)>-1;);return h}function Jf(a,p){for(var h=a.length,C=0;h--;)a[h]===p&&++C;return C}var Xf=ui(Ff),Qf=ui(Wf);function Vf(a){return"\\"+Df[a]}function jf(a,p){return a==null?s:a[p]}function qt(a){return Lf.test(a)}function na(a){return Ef.test(a)}function ta(a){for(var p,h=[];!(p=a.next()).done;)h.push(p.value);return h}function fi(a){var p=-1,h=Array(a.size);return a.forEach(function(C,R){h[++p]=[R,C]}),h}function Xu(a,p){return function(h){return a(p(h))}}function ft(a,p){for(var h=-1,C=a.length,R=0,N=[];++h<C;){var V=a[h];(V===p||V===$)&&(a[h]=$,N[R++]=h)}return N}function Ge(a){var p=-1,h=Array(a.size);return a.forEach(function(C){h[++p]=C}),h}function ea(a){var p=-1,h=Array(a.size);return a.forEach(function(C){h[++p]=[C,C]}),h}function ra(a,p,h){for(var C=h-1,R=a.length;++C<R;)if(a[C]===p)return C;return-1}function ia(a,p,h){for(var C=h+1;C--;)if(a[C]===p)return C;return C}function Gt(a){return qt(a)?oa(a):Gf(a)}function Wn(a){return qt(a)?sa(a):$f(a)}function Qu(a){for(var p=a.length;p--&&Yl.test(a.charAt(p)););return p}var ua=ui(Pf);function oa(a){for(var p=Vr.lastIndex=0;Vr.test(a);)++p;return p}function sa(a){return a.match(Vr)||[]}function la(a){return a.match(Rf)||[]}var fa=function a(p){p=p==null?tn:at.defaults(tn.Object(),p,at.pick(tn,Of));var h=p.Array,C=p.Date,R=p.Error,N=p.Function,V=p.Math,q=p.Object,ai=p.RegExp,aa=p.String,In=p.TypeError,$e=h.prototype,ca=N.prototype,$t=q.prototype,ze=p["__core-js_shared__"],Ke=ca.toString,U=$t.hasOwnProperty,ha=0,Vu=function(){var n=/[^.]+$/.exec(ze&&ze.keys&&ze.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),Ze=$t.toString,pa=Ke.call(q),da=tn._,ga=ai("^"+Ke.call(U).replace(Kr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ye=Pu?p.Buffer:s,ct=p.Symbol,Je=p.Uint8Array,ju=Ye?Ye.allocUnsafe:s,Xe=Xu(q.getPrototypeOf,q),no=q.create,to=$t.propertyIsEnumerable,Qe=$e.splice,eo=ct?ct.isConcatSpreadable:s,ce=ct?ct.iterator:s,It=ct?ct.toStringTag:s,Ve=function(){try{var n=Et(q,"defineProperty");return n({},"",{}),n}catch{}}(),_a=p.clearTimeout!==tn.clearTimeout&&p.clearTimeout,ma=C&&C.now!==tn.Date.now&&C.now,va=p.setTimeout!==tn.setTimeout&&p.setTimeout,je=V.ceil,nr=V.floor,ci=q.getOwnPropertySymbols,wa=Ye?Ye.isBuffer:s,ro=p.isFinite,ya=$e.join,xa=Xu(q.keys,q),j=V.max,un=V.min,Ca=C.now,ba=p.parseInt,io=V.random,Aa=$e.reverse,hi=Et(p,"DataView"),he=Et(p,"Map"),pi=Et(p,"Promise"),zt=Et(p,"Set"),pe=Et(p,"WeakMap"),de=Et(q,"create"),tr=pe&&new pe,Kt={},Ia=Ot(hi),Sa=Ot(he),Ta=Ot(pi),Ra=Ot(zt),La=Ot(pe),er=ct?ct.prototype:s,ge=er?er.valueOf:s,uo=er?er.toString:s;function u(n){if(Y(n)&&!L(n)&&!(n instanceof P)){if(n instanceof Sn)return n;if(U.call(n,"__wrapped__"))return ss(n)}return new Sn(n)}var Zt=function(){function n(){}return function(t){if(!Z(t))return{};if(no)return no(t);n.prototype=t;var e=new n;return n.prototype=s,e}}();function rr(){}function Sn(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=s}u.templateSettings={escape:ql,evaluate:Gl,interpolate:du,variable:"",imports:{_:u}},u.prototype=rr.prototype,u.prototype.constructor=u,Sn.prototype=Zt(rr.prototype),Sn.prototype.constructor=Sn;function P(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=kn,this.__views__=[]}function Ea(){var n=new P(this.__wrapped__);return n.__actions__=an(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=an(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=an(this.__views__),n}function Oa(){if(this.__filtered__){var n=new P(this);n.__dir__=-1,n.__filtered__=!0}else n=this.clone(),n.__dir__*=-1;return n}function Ma(){var n=this.__wrapped__.value(),t=this.__dir__,e=L(n),r=t<0,i=e?n.length:0,o=$c(0,i,this.__views__),l=o.start,f=o.end,c=f-l,d=r?f:l-1,g=this.__iteratees__,_=g.length,w=0,b=un(c,this.__takeCount__);if(!e||!r&&i==c&&b==c)return Eo(n,this.__actions__);var I=[];n:for(;c--&&w<b;){d+=t;for(var O=-1,S=n[d];++O<_;){var F=g[O],D=F.iteratee,vn=F.type,fn=D(S);if(vn==Il)S=fn;else if(!fn){if(vn==fu)continue n;break n}}I[w++]=S}return I}P.prototype=Zt(rr.prototype),P.prototype.constructor=P;function St(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Fa(){this.__data__=de?de(null):{},this.size=0}function Wa(n){var t=this.has(n)&&delete this.__data__[n];return this.size-=t?1:0,t}function Pa(n){var t=this.__data__;if(de){var e=t[n];return e===W?s:e}return U.call(t,n)?t[n]:s}function Da(n){var t=this.__data__;return de?t[n]!==s:U.call(t,n)}function Ba(n,t){var e=this.__data__;return this.size+=this.has(n)?0:1,e[n]=de&&t===s?W:t,this}St.prototype.clear=Fa,St.prototype.delete=Wa,St.prototype.get=Pa,St.prototype.has=Da,St.prototype.set=Ba;function Xn(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Na(){this.__data__=[],this.size=0}function Ha(n){var t=this.__data__,e=ir(t,n);if(e<0)return!1;var r=t.length-1;return e==r?t.pop():Qe.call(t,e,1),--this.size,!0}function Ua(n){var t=this.__data__,e=ir(t,n);return e<0?s:t[e][1]}function ka(n){return ir(this.__data__,n)>-1}function qa(n,t){var e=this.__data__,r=ir(e,n);return r<0?(++this.size,e.push([n,t])):e[r][1]=t,this}Xn.prototype.clear=Na,Xn.prototype.delete=Ha,Xn.prototype.get=Ua,Xn.prototype.has=ka,Xn.prototype.set=qa;function Qn(n){var t=-1,e=n==null?0:n.length;for(this.clear();++t<e;){var r=n[t];this.set(r[0],r[1])}}function Ga(){this.size=0,this.__data__={hash:new St,map:new(he||Xn),string:new St}}function $a(n){var t=_r(this,n).delete(n);return this.size-=t?1:0,t}function za(n){return _r(this,n).get(n)}function Ka(n){return _r(this,n).has(n)}function Za(n,t){var e=_r(this,n),r=e.size;return e.set(n,t),this.size+=e.size==r?0:1,this}Qn.prototype.clear=Ga,Qn.prototype.delete=$a,Qn.prototype.get=za,Qn.prototype.has=Ka,Qn.prototype.set=Za;function Tt(n){var t=-1,e=n==null?0:n.length;for(this.__data__=new Qn;++t<e;)this.add(n[t])}function Ya(n){return this.__data__.set(n,W),this}function Ja(n){return this.__data__.has(n)}Tt.prototype.add=Tt.prototype.push=Ya,Tt.prototype.has=Ja;function Pn(n){var t=this.__data__=new Xn(n);this.size=t.size}function Xa(){this.__data__=new Xn,this.size=0}function Qa(n){var t=this.__data__,e=t.delete(n);return this.size=t.size,e}function Va(n){return this.__data__.get(n)}function ja(n){return this.__data__.has(n)}function nc(n,t){var e=this.__data__;if(e instanceof Xn){var r=e.__data__;if(!he||r.length<T-1)return r.push([n,t]),this.size=++e.size,this;e=this.__data__=new Qn(r)}return e.set(n,t),this.size=e.size,this}Pn.prototype.clear=Xa,Pn.prototype.delete=Qa,Pn.prototype.get=Va,Pn.prototype.has=ja,Pn.prototype.set=nc;function oo(n,t){var e=L(n),r=!e&&Mt(n),i=!e&&!r&&_t(n),o=!e&&!r&&!i&&Qt(n),l=e||r||i||o,f=l?si(n.length,aa):[],c=f.length;for(var d in n)(t||U.call(n,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||o&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||tt(d,c)))&&f.push(d);return f}function so(n){var t=n.length;return t?n[Ai(0,t-1)]:s}function tc(n,t){return mr(an(n),Rt(t,0,n.length))}function ec(n){return mr(an(n))}function di(n,t,e){(e!==s&&!Dn(n[t],e)||e===s&&!(t in n))&&Vn(n,t,e)}function _e(n,t,e){var r=n[t];(!(U.call(n,t)&&Dn(r,e))||e===s&&!(t in n))&&Vn(n,t,e)}function ir(n,t){for(var e=n.length;e--;)if(Dn(n[e][0],t))return e;return-1}function rc(n,t,e,r){return ht(n,function(i,o,l){t(r,i,e(i),l)}),r}function lo(n,t){return n&&Gn(t,en(t),n)}function ic(n,t){return n&&Gn(t,hn(t),n)}function Vn(n,t,e){t=="__proto__"&&Ve?Ve(n,t,{configurable:!0,enumerable:!0,value:e,writable:!0}):n[t]=e}function gi(n,t){for(var e=-1,r=t.length,i=h(r),o=n==null;++e<r;)i[e]=o?s:Ji(n,t[e]);return i}function Rt(n,t,e){return n===n&&(e!==s&&(n=n<=e?n:e),t!==s&&(n=n>=t?n:t)),n}function Tn(n,t,e,r,i,o){var l,f=t&k,c=t&su,d=t&Wt;if(e&&(l=i?e(n,r,i,o):e(n)),l!==s)return l;if(!Z(n))return n;var g=L(n);if(g){if(l=Kc(n),!f)return an(n,l)}else{var _=on(n),w=_==De||_==au;if(_t(n))return Fo(n,f);if(_==Jn||_==Nt||w&&!i){if(l=c||w?{}:Vo(n),!f)return c?Pc(n,ic(l,n)):Wc(n,lo(l,n))}else{if(!G[_])return i?n:{};l=Zc(n,_,f)}}o||(o=new Pn);var b=o.get(n);if(b)return b;o.set(n,l),Ts(n)?n.forEach(function(S){l.add(Tn(S,t,e,S,n,o))}):Is(n)&&n.forEach(function(S,F){l.set(F,Tn(S,t,e,F,n,o))});var I=d?c?Pi:Wi:c?hn:en,O=g?s:I(n);return An(O||n,function(S,F){O&&(F=S,S=n[F]),_e(l,F,Tn(S,t,e,F,n,o))}),l}function uc(n){var t=en(n);return function(e){return fo(e,n,t)}}function fo(n,t,e){var r=e.length;if(n==null)return!r;for(n=q(n);r--;){var i=e[r],o=t[i],l=n[i];if(l===s&&!(i in n)||!o(l))return!1}return!0}function ao(n,t,e){if(typeof n!="function")throw new In(x);return be(function(){n.apply(s,e)},t)}function me(n,t,e,r){var i=-1,o=ke,l=!0,f=n.length,c=[],d=t.length;if(!f)return c;e&&(t=K(t,gn(e))),r?(o=ti,l=!1):t.length>=T&&(o=ae,l=!1,t=new Tt(t));n:for(;++i<f;){var g=n[i],_=e==null?g:e(g);if(g=r||g!==0?g:0,l&&_===_){for(var w=d;w--;)if(t[w]===_)continue n;c.push(g)}else o(t,_,r)||c.push(g)}return c}var ht=No(qn),co=No(mi,!0);function oc(n,t){var e=!0;return ht(n,function(r,i,o){return e=!!t(r,i,o),e}),e}function ur(n,t,e){for(var r=-1,i=n.length;++r<i;){var o=n[r],l=t(o);if(l!=null&&(f===s?l===l&&!mn(l):e(l,f)))var f=l,c=o}return c}function sc(n,t,e,r){var i=n.length;for(e=E(e),e<0&&(e=-e>i?0:i+e),r=r===s||r>i?i:E(r),r<0&&(r+=i),r=e>r?0:Ls(r);e<r;)n[e++]=t;return n}function ho(n,t){var e=[];return ht(n,function(r,i,o){t(r,i,o)&&e.push(r)}),e}function rn(n,t,e,r,i){var o=-1,l=n.length;for(e||(e=Jc),i||(i=[]);++o<l;){var f=n[o];t>0&&e(f)?t>1?rn(f,t-1,e,r,i):lt(i,f):r||(i[i.length]=f)}return i}var _i=Ho(),po=Ho(!0);function qn(n,t){return n&&_i(n,t,en)}function mi(n,t){return n&&po(n,t,en)}function or(n,t){return st(t,function(e){return et(n[e])})}function Lt(n,t){t=dt(t,n);for(var e=0,r=t.length;n!=null&&e<r;)n=n[$n(t[e++])];return e&&e==r?n:s}function go(n,t,e){var r=t(n);return L(n)?r:lt(r,e(n))}function sn(n){return n==null?n===s?Pl:Fl:It&&It in q(n)?Gc(n):eh(n)}function vi(n,t){return n>t}function lc(n,t){return n!=null&&U.call(n,t)}function fc(n,t){return n!=null&&t in q(n)}function ac(n,t,e){return n>=un(t,e)&&n<j(t,e)}function wi(n,t,e){for(var r=e?ti:ke,i=n[0].length,o=n.length,l=o,f=h(o),c=1/0,d=[];l--;){var g=n[l];l&&t&&(g=K(g,gn(t))),c=un(g.length,c),f[l]=!e&&(t||i>=120&&g.length>=120)?new Tt(l&&g):s}g=n[0];var _=-1,w=f[0];n:for(;++_<i&&d.length<c;){var b=g[_],I=t?t(b):b;if(b=e||b!==0?b:0,!(w?ae(w,I):r(d,I,e))){for(l=o;--l;){var O=f[l];if(!(O?ae(O,I):r(n[l],I,e)))continue n}w&&w.push(I),d.push(b)}}return d}function cc(n,t,e,r){return qn(n,function(i,o,l){t(r,e(i),o,l)}),r}function ve(n,t,e){t=dt(t,n),n=es(n,t);var r=n==null?n:n[$n(Ln(t))];return r==null?s:dn(r,n,e)}function _o(n){return Y(n)&&sn(n)==Nt}function hc(n){return Y(n)&&sn(n)==fe}function pc(n){return Y(n)&&sn(n)==ie}function we(n,t,e,r,i){return n===t?!0:n==null||t==null||!Y(n)&&!Y(t)?n!==n&&t!==t:dc(n,t,e,r,we,i)}function dc(n,t,e,r,i,o){var l=L(n),f=L(t),c=l?We:on(n),d=f?We:on(t);c=c==Nt?Jn:c,d=d==Nt?Jn:d;var g=c==Jn,_=d==Jn,w=c==d;if(w&&_t(n)){if(!_t(t))return!1;l=!0,g=!1}if(w&&!g)return o||(o=new Pn),l||Qt(n)?Jo(n,t,e,r,i,o):kc(n,t,c,e,r,i,o);if(!(e&Pt)){var b=g&&U.call(n,"__wrapped__"),I=_&&U.call(t,"__wrapped__");if(b||I){var O=b?n.value():n,S=I?t.value():t;return o||(o=new Pn),i(O,S,e,r,o)}}return w?(o||(o=new Pn),qc(n,t,e,r,i,o)):!1}function gc(n){return Y(n)&&on(n)==Mn}function yi(n,t,e,r){var i=e.length,o=i,l=!r;if(n==null)return!o;for(n=q(n);i--;){var f=e[i];if(l&&f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++i<o;){f=e[i];var c=f[0],d=n[c],g=f[1];if(l&&f[2]){if(d===s&&!(c in n))return!1}else{var _=new Pn;if(r)var w=r(d,g,c,n,t,_);if(!(w===s?we(g,d,Pt|Me,r,_):w))return!1}}return!0}function mo(n){if(!Z(n)||Qc(n))return!1;var t=et(n)?ga:uf;return t.test(Ot(n))}function _c(n){return Y(n)&&sn(n)==oe}function mc(n){return Y(n)&&on(n)==Fn}function vc(n){return Y(n)&&br(n.length)&&!!z[sn(n)]}function vo(n){return typeof n=="function"?n:n==null?pn:typeof n=="object"?L(n)?xo(n[0],n[1]):yo(n):Us(n)}function xi(n){if(!Ce(n))return xa(n);var t=[];for(var e in q(n))U.call(n,e)&&e!="constructor"&&t.push(e);return t}function wc(n){if(!Z(n))return th(n);var t=Ce(n),e=[];for(var r in n)r=="constructor"&&(t||!U.call(n,r))||e.push(r);return e}function Ci(n,t){return n<t}function wo(n,t){var e=-1,r=cn(n)?h(n.length):[];return ht(n,function(i,o,l){r[++e]=t(i,o,l)}),r}function yo(n){var t=Bi(n);return t.length==1&&t[0][2]?ns(t[0][0],t[0][1]):function(e){return e===n||yi(e,n,t)}}function xo(n,t){return Hi(n)&&jo(t)?ns($n(n),t):function(e){var r=Ji(e,n);return r===s&&r===t?Xi(e,n):we(t,r,Pt|Me)}}function sr(n,t,e,r,i){n!==t&&_i(t,function(o,l){if(i||(i=new Pn),Z(o))yc(n,t,l,e,sr,r,i);else{var f=r?r(ki(n,l),o,l+"",n,t,i):s;f===s&&(f=o),di(n,l,f)}},hn)}function yc(n,t,e,r,i,o,l){var f=ki(n,e),c=ki(t,e),d=l.get(c);if(d){di(n,e,d);return}var g=o?o(f,c,e+"",n,t,l):s,_=g===s;if(_){var w=L(c),b=!w&&_t(c),I=!w&&!b&&Qt(c);g=c,w||b||I?L(f)?g=f:J(f)?g=an(f):b?(_=!1,g=Fo(c,!0)):I?(_=!1,g=Wo(c,!0)):g=[]:Ae(c)||Mt(c)?(g=f,Mt(f)?g=Es(f):(!Z(f)||et(f))&&(g=Vo(c))):_=!1}_&&(l.set(c,g),i(g,c,r,o,l),l.delete(c)),di(n,e,g)}function Co(n,t){var e=n.length;if(e)return t+=t<0?e:0,tt(t,e)?n[t]:s}function bo(n,t,e){t.length?t=K(t,function(o){return L(o)?function(l){return Lt(l,o.length===1?o[0]:o)}:o}):t=[pn];var r=-1;t=K(t,gn(A()));var i=wo(n,function(o,l,f){var c=K(t,function(d){return d(o)});return{criteria:c,index:++r,value:o}});return Zf(i,function(o,l){return Fc(o,l,e)})}function xc(n,t){return Ao(n,t,function(e,r){return Xi(n,r)})}function Ao(n,t,e){for(var r=-1,i=t.length,o={};++r<i;){var l=t[r],f=Lt(n,l);e(f,l)&&ye(o,dt(l,n),f)}return o}function Cc(n){return function(t){return Lt(t,n)}}function bi(n,t,e,r){var i=r?Kf:kt,o=-1,l=t.length,f=n;for(n===t&&(t=an(t)),e&&(f=K(n,gn(e)));++o<l;)for(var c=0,d=t[o],g=e?e(d):d;(c=i(f,g,c,r))>-1;)f!==n&&Qe.call(f,c,1),Qe.call(n,c,1);return n}function Io(n,t){for(var e=n?t.length:0,r=e-1;e--;){var i=t[e];if(e==r||i!==o){var o=i;tt(i)?Qe.call(n,i,1):Ti(n,i)}}return n}function Ai(n,t){return n+nr(io()*(t-n+1))}function bc(n,t,e,r){for(var i=-1,o=j(je((t-n)/(e||1)),0),l=h(o);o--;)l[r?o:++i]=n,n+=e;return l}function Ii(n,t){var e="";if(!n||t<1||t>ot)return e;do t%2&&(e+=n),t=nr(t/2),t&&(n+=n);while(t);return e}function M(n,t){return qi(ts(n,t,pn),n+"")}function Ac(n){return so(Vt(n))}function Ic(n,t){var e=Vt(n);return mr(e,Rt(t,0,e.length))}function ye(n,t,e,r){if(!Z(n))return n;t=dt(t,n);for(var i=-1,o=t.length,l=o-1,f=n;f!=null&&++i<o;){var c=$n(t[i]),d=e;if(c==="__proto__"||c==="constructor"||c==="prototype")return n;if(i!=l){var g=f[c];d=r?r(g,c,f):s,d===s&&(d=Z(g)?g:tt(t[i+1])?[]:{})}_e(f,c,d),f=f[c]}return n}var So=tr?function(n,t){return tr.set(n,t),n}:pn,Sc=Ve?function(n,t){return Ve(n,"toString",{configurable:!0,enumerable:!1,value:Vi(t),writable:!0})}:pn;function Tc(n){return mr(Vt(n))}function Rn(n,t,e){var r=-1,i=n.length;t<0&&(t=-t>i?0:i+t),e=e>i?i:e,e<0&&(e+=i),i=t>e?0:e-t>>>0,t>>>=0;for(var o=h(i);++r<i;)o[r]=n[r+t];return o}function Rc(n,t){var e;return ht(n,function(r,i,o){return e=t(r,i,o),!e}),!!e}function lr(n,t,e){var r=0,i=n==null?r:n.length;if(typeof t=="number"&&t===t&&i<=Ll){for(;r<i;){var o=r+i>>>1,l=n[o];l!==null&&!mn(l)&&(e?l<=t:l<t)?r=o+1:i=o}return i}return Si(n,t,pn,e)}function Si(n,t,e,r){var i=0,o=n==null?0:n.length;if(o===0)return 0;t=e(t);for(var l=t!==t,f=t===null,c=mn(t),d=t===s;i<o;){var g=nr((i+o)/2),_=e(n[g]),w=_!==s,b=_===null,I=_===_,O=mn(_);if(l)var S=r||I;else d?S=I&&(r||w):f?S=I&&w&&(r||!b):c?S=I&&w&&!b&&(r||!O):b||O?S=!1:S=r?_<=t:_<t;S?i=g+1:o=g}return un(o,Rl)}function To(n,t){for(var e=-1,r=n.length,i=0,o=[];++e<r;){var l=n[e],f=t?t(l):l;if(!e||!Dn(f,c)){var c=f;o[i++]=l===0?0:l}}return o}function Ro(n){return typeof n=="number"?n:mn(n)?Fe:+n}function _n(n){if(typeof n=="string")return n;if(L(n))return K(n,_n)+"";if(mn(n))return uo?uo.call(n):"";var t=n+"";return t=="0"&&1/n==-bt?"-0":t}function pt(n,t,e){var r=-1,i=ke,o=n.length,l=!0,f=[],c=f;if(e)l=!1,i=ti;else if(o>=T){var d=t?null:Hc(n);if(d)return Ge(d);l=!1,i=ae,c=new Tt}else c=t?[]:f;n:for(;++r<o;){var g=n[r],_=t?t(g):g;if(g=e||g!==0?g:0,l&&_===_){for(var w=c.length;w--;)if(c[w]===_)continue n;t&&c.push(_),f.push(g)}else i(c,_,e)||(c!==f&&c.push(_),f.push(g))}return f}function Ti(n,t){return t=dt(t,n),n=es(n,t),n==null||delete n[$n(Ln(t))]}function Lo(n,t,e,r){return ye(n,t,e(Lt(n,t)),r)}function fr(n,t,e,r){for(var i=n.length,o=r?i:-1;(r?o--:++o<i)&&t(n[o],o,n););return e?Rn(n,r?0:o,r?o+1:i):Rn(n,r?o+1:0,r?i:o)}function Eo(n,t){var e=n;return e instanceof P&&(e=e.value()),ei(t,function(r,i){return i.func.apply(i.thisArg,lt([r],i.args))},e)}function Ri(n,t,e){var r=n.length;if(r<2)return r?pt(n[0]):[];for(var i=-1,o=h(r);++i<r;)for(var l=n[i],f=-1;++f<r;)f!=i&&(o[i]=me(o[i]||l,n[f],t,e));return pt(rn(o,1),t,e)}function Oo(n,t,e){for(var r=-1,i=n.length,o=t.length,l={};++r<i;){var f=r<o?t[r]:s;e(l,n[r],f)}return l}function Li(n){return J(n)?n:[]}function Ei(n){return typeof n=="function"?n:pn}function dt(n,t){return L(n)?n:Hi(n,t)?[n]:os(H(n))}var Lc=M;function gt(n,t,e){var r=n.length;return e=e===s?r:e,!t&&e>=r?n:Rn(n,t,e)}var Mo=_a||function(n){return tn.clearTimeout(n)};function Fo(n,t){if(t)return n.slice();var e=n.length,r=ju?ju(e):new n.constructor(e);return n.copy(r),r}function Oi(n){var t=new n.constructor(n.byteLength);return new Je(t).set(new Je(n)),t}function Ec(n,t){var e=t?Oi(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.byteLength)}function Oc(n){var t=new n.constructor(n.source,gu.exec(n));return t.lastIndex=n.lastIndex,t}function Mc(n){return ge?q(ge.call(n)):{}}function Wo(n,t){var e=t?Oi(n.buffer):n.buffer;return new n.constructor(e,n.byteOffset,n.length)}function Po(n,t){if(n!==t){var e=n!==s,r=n===null,i=n===n,o=mn(n),l=t!==s,f=t===null,c=t===t,d=mn(t);if(!f&&!d&&!o&&n>t||o&&l&&c&&!f&&!d||r&&l&&c||!e&&c||!i)return 1;if(!r&&!o&&!d&&n<t||d&&e&&i&&!r&&!o||f&&e&&i||!l&&i||!c)return-1}return 0}function Fc(n,t,e){for(var r=-1,i=n.criteria,o=t.criteria,l=i.length,f=e.length;++r<l;){var c=Po(i[r],o[r]);if(c){if(r>=f)return c;var d=e[r];return c*(d=="desc"?-1:1)}}return n.index-t.index}function Do(n,t,e,r){for(var i=-1,o=n.length,l=e.length,f=-1,c=t.length,d=j(o-l,0),g=h(c+d),_=!r;++f<c;)g[f]=t[f];for(;++i<l;)(_||i<o)&&(g[e[i]]=n[i]);for(;d--;)g[f++]=n[i++];return g}function Bo(n,t,e,r){for(var i=-1,o=n.length,l=-1,f=e.length,c=-1,d=t.length,g=j(o-f,0),_=h(g+d),w=!r;++i<g;)_[i]=n[i];for(var b=i;++c<d;)_[b+c]=t[c];for(;++l<f;)(w||i<o)&&(_[b+e[l]]=n[i++]);return _}function an(n,t){var e=-1,r=n.length;for(t||(t=h(r));++e<r;)t[e]=n[e];return t}function Gn(n,t,e,r){var i=!e;e||(e={});for(var o=-1,l=t.length;++o<l;){var f=t[o],c=r?r(e[f],n[f],f,e,n):s;c===s&&(c=n[f]),i?Vn(e,f,c):_e(e,f,c)}return e}function Wc(n,t){return Gn(n,Ni(n),t)}function Pc(n,t){return Gn(n,Xo(n),t)}function ar(n,t){return function(e,r){var i=L(e)?Uf:rc,o=t?t():{};return i(e,n,A(r,2),o)}}function Yt(n){return M(function(t,e){var r=-1,i=e.length,o=i>1?e[i-1]:s,l=i>2?e[2]:s;for(o=n.length>3&&typeof o=="function"?(i--,o):s,l&&ln(e[0],e[1],l)&&(o=i<3?s:o,i=1),t=q(t);++r<i;){var f=e[r];f&&n(t,f,r,o)}return t})}function No(n,t){return function(e,r){if(e==null)return e;if(!cn(e))return n(e,r);for(var i=e.length,o=t?i:-1,l=q(e);(t?o--:++o<i)&&r(l[o],o,l)!==!1;);return e}}function Ho(n){return function(t,e,r){for(var i=-1,o=q(t),l=r(t),f=l.length;f--;){var c=l[n?f:++i];if(e(o[c],c,o)===!1)break}return t}}function Dc(n,t,e){var r=t&Cn,i=xe(n);function o(){var l=this&&this!==tn&&this instanceof o?i:n;return l.apply(r?e:this,arguments)}return o}function Uo(n){return function(t){t=H(t);var e=qt(t)?Wn(t):s,r=e?e[0]:t.charAt(0),i=e?gt(e,1).join(""):t.slice(1);return r[n]()+i}}function Jt(n){return function(t){return ei(Ns(Bs(t).replace(Sf,"")),n,"")}}function xe(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var e=Zt(n.prototype),r=n.apply(e,t);return Z(r)?r:e}}function Bc(n,t,e){var r=xe(n);function i(){for(var o=arguments.length,l=h(o),f=o,c=Xt(i);f--;)l[f]=arguments[f];var d=o<3&&l[0]!==c&&l[o-1]!==c?[]:ft(l,c);if(o-=d.length,o<e)return zo(n,t,cr,i.placeholder,s,l,d,s,s,e-o);var g=this&&this!==tn&&this instanceof i?r:n;return dn(g,this,l)}return i}function ko(n){return function(t,e,r){var i=q(t);if(!cn(t)){var o=A(e,3);t=en(t),e=function(f){return o(i[f],f,i)}}var l=n(t,e,r);return l>-1?i[o?t[l]:l]:s}}function qo(n){return nt(function(t){var e=t.length,r=e,i=Sn.prototype.thru;for(n&&t.reverse();r--;){var o=t[r];if(typeof o!="function")throw new In(x);if(i&&!l&&gr(o)=="wrapper")var l=new Sn([],!0)}for(r=l?r:e;++r<e;){o=t[r];var f=gr(o),c=f=="wrapper"?Di(o):s;c&&Ui(c[0])&&c[1]==(Yn|Hn|Un|ee)&&!c[4].length&&c[9]==1?l=l[gr(c[0])].apply(l,c[3]):l=o.length==1&&Ui(o)?l[f]():l.thru(o)}return function(){var d=arguments,g=d[0];if(l&&d.length==1&&L(g))return l.plant(g).value();for(var _=0,w=e?t[_].apply(this,d):g;++_<e;)w=t[_].call(this,w);return w}})}function cr(n,t,e,r,i,o,l,f,c,d){var g=t&Yn,_=t&Cn,w=t&Ct,b=t&(Hn|Dt),I=t&Dr,O=w?s:xe(n);function S(){for(var F=arguments.length,D=h(F),vn=F;vn--;)D[vn]=arguments[vn];if(b)var fn=Xt(S),wn=Jf(D,fn);if(r&&(D=Do(D,r,i,b)),o&&(D=Bo(D,o,l,b)),F-=wn,b&&F<d){var X=ft(D,fn);return zo(n,t,cr,S.placeholder,e,D,X,f,c,d-F)}var Bn=_?e:this,it=w?Bn[n]:n;return F=D.length,f?D=rh(D,f):I&&F>1&&D.reverse(),g&&c<F&&(D.length=c),this&&this!==tn&&this instanceof S&&(it=O||xe(it)),it.apply(Bn,D)}return S}function Go(n,t){return function(e,r){return cc(e,n,t(r),{})}}function hr(n,t){return function(e,r){var i;if(e===s&&r===s)return t;if(e!==s&&(i=e),r!==s){if(i===s)return r;typeof e=="string"||typeof r=="string"?(e=_n(e),r=_n(r)):(e=Ro(e),r=Ro(r)),i=n(e,r)}return i}}function Mi(n){return nt(function(t){return t=K(t,gn(A())),M(function(e){var r=this;return n(t,function(i){return dn(i,r,e)})})})}function pr(n,t){t=t===s?" ":_n(t);var e=t.length;if(e<2)return e?Ii(t,n):t;var r=Ii(t,je(n/Gt(t)));return qt(t)?gt(Wn(r),0,n).join(""):r.slice(0,n)}function Nc(n,t,e,r){var i=t&Cn,o=xe(n);function l(){for(var f=-1,c=arguments.length,d=-1,g=r.length,_=h(g+c),w=this&&this!==tn&&this instanceof l?o:n;++d<g;)_[d]=r[d];for(;c--;)_[d++]=arguments[++f];return dn(w,i?e:this,_)}return l}function $o(n){return function(t,e,r){return r&&typeof r!="number"&&ln(t,e,r)&&(e=r=s),t=rt(t),e===s?(e=t,t=0):e=rt(e),r=r===s?t<e?1:-1:rt(r),bc(t,e,r,n)}}function dr(n){return function(t,e){return typeof t=="string"&&typeof e=="string"||(t=En(t),e=En(e)),n(t,e)}}function zo(n,t,e,r,i,o,l,f,c,d){var g=t&Hn,_=g?l:s,w=g?s:l,b=g?o:s,I=g?s:o;t|=g?Un:Bt,t&=~(g?Bt:Un),t&lu||(t&=~(Cn|Ct));var O=[n,t,i,b,_,I,w,f,c,d],S=e.apply(s,O);return Ui(n)&&rs(S,O),S.placeholder=r,is(S,n,t)}function Fi(n){var t=V[n];return function(e,r){if(e=En(e),r=r==null?0:un(E(r),292),r&&ro(e)){var i=(H(e)+"e").split("e"),o=t(i[0]+"e"+(+i[1]+r));return i=(H(o)+"e").split("e"),+(i[0]+"e"+(+i[1]-r))}return t(e)}}var Hc=zt&&1/Ge(new zt([,-0]))[1]==bt?function(n){return new zt(n)}:tu;function Ko(n){return function(t){var e=on(t);return e==Mn?fi(t):e==Fn?ea(t):Yf(t,n(t))}}function jn(n,t,e,r,i,o,l,f){var c=t&Ct;if(!c&&typeof n!="function")throw new In(x);var d=r?r.length:0;if(d||(t&=~(Un|Bt),r=i=s),l=l===s?l:j(E(l),0),f=f===s?f:E(f),d-=i?i.length:0,t&Bt){var g=r,_=i;r=i=s}var w=c?s:Di(n),b=[n,t,e,r,i,g,_,o,l,f];if(w&&nh(b,w),n=b[0],t=b[1],e=b[2],r=b[3],i=b[4],f=b[9]=b[9]===s?c?0:n.length:j(b[9]-d,0),!f&&t&(Hn|Dt)&&(t&=~(Hn|Dt)),!t||t==Cn)var I=Dc(n,t,e);else t==Hn||t==Dt?I=Bc(n,t,f):(t==Un||t==(Cn|Un))&&!i.length?I=Nc(n,t,e,r):I=cr.apply(s,b);var O=w?So:rs;return is(O(I,b),n,t)}function Zo(n,t,e,r){return n===s||Dn(n,$t[e])&&!U.call(r,e)?t:n}function Yo(n,t,e,r,i,o){return Z(n)&&Z(t)&&(o.set(t,n),sr(n,t,s,Yo,o),o.delete(t)),n}function Uc(n){return Ae(n)?s:n}function Jo(n,t,e,r,i,o){var l=e&Pt,f=n.length,c=t.length;if(f!=c&&!(l&&c>f))return!1;var d=o.get(n),g=o.get(t);if(d&&g)return d==t&&g==n;var _=-1,w=!0,b=e&Me?new Tt:s;for(o.set(n,t),o.set(t,n);++_<f;){var I=n[_],O=t[_];if(r)var S=l?r(O,I,_,t,n,o):r(I,O,_,n,t,o);if(S!==s){if(S)continue;w=!1;break}if(b){if(!ri(t,function(F,D){if(!ae(b,D)&&(I===F||i(I,F,e,r,o)))return b.push(D)})){w=!1;break}}else if(!(I===O||i(I,O,e,r,o))){w=!1;break}}return o.delete(n),o.delete(t),w}function kc(n,t,e,r,i,o,l){switch(e){case Ht:if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)return!1;n=n.buffer,t=t.buffer;case fe:return!(n.byteLength!=t.byteLength||!o(new Je(n),new Je(t)));case re:case ie:case ue:return Dn(+n,+t);case Pe:return n.name==t.name&&n.message==t.message;case oe:case se:return n==t+"";case Mn:var f=fi;case Fn:var c=r&Pt;if(f||(f=Ge),n.size!=t.size&&!c)return!1;var d=l.get(n);if(d)return d==t;r|=Me,l.set(n,t);var g=Jo(f(n),f(t),r,i,o,l);return l.delete(n),g;case Be:if(ge)return ge.call(n)==ge.call(t)}return!1}function qc(n,t,e,r,i,o){var l=e&Pt,f=Wi(n),c=f.length,d=Wi(t),g=d.length;if(c!=g&&!l)return!1;for(var _=c;_--;){var w=f[_];if(!(l?w in t:U.call(t,w)))return!1}var b=o.get(n),I=o.get(t);if(b&&I)return b==t&&I==n;var O=!0;o.set(n,t),o.set(t,n);for(var S=l;++_<c;){w=f[_];var F=n[w],D=t[w];if(r)var vn=l?r(D,F,w,t,n,o):r(F,D,w,n,t,o);if(!(vn===s?F===D||i(F,D,e,r,o):vn)){O=!1;break}S||(S=w=="constructor")}if(O&&!S){var fn=n.constructor,wn=t.constructor;fn!=wn&&"constructor"in n&&"constructor"in t&&!(typeof fn=="function"&&fn instanceof fn&&typeof wn=="function"&&wn instanceof wn)&&(O=!1)}return o.delete(n),o.delete(t),O}function nt(n){return qi(ts(n,s,as),n+"")}function Wi(n){return go(n,en,Ni)}function Pi(n){return go(n,hn,Xo)}var Di=tr?function(n){return tr.get(n)}:tu;function gr(n){for(var t=n.name+"",e=Kt[t],r=U.call(Kt,t)?e.length:0;r--;){var i=e[r],o=i.func;if(o==null||o==n)return i.name}return t}function Xt(n){var t=U.call(u,"placeholder")?u:n;return t.placeholder}function A(){var n=u.iteratee||ji;return n=n===ji?vo:n,arguments.length?n(arguments[0],arguments[1]):n}function _r(n,t){var e=n.__data__;return Xc(t)?e[typeof t=="string"?"string":"hash"]:e.map}function Bi(n){for(var t=en(n),e=t.length;e--;){var r=t[e],i=n[r];t[e]=[r,i,jo(i)]}return t}function Et(n,t){var e=jf(n,t);return mo(e)?e:s}function Gc(n){var t=U.call(n,It),e=n[It];try{n[It]=s;var r=!0}catch{}var i=Ze.call(n);return r&&(t?n[It]=e:delete n[It]),i}var Ni=ci?function(n){return n==null?[]:(n=q(n),st(ci(n),function(t){return to.call(n,t)}))}:eu,Xo=ci?function(n){for(var t=[];n;)lt(t,Ni(n)),n=Xe(n);return t}:eu,on=sn;(hi&&on(new hi(new ArrayBuffer(1)))!=Ht||he&&on(new he)!=Mn||pi&&on(pi.resolve())!=cu||zt&&on(new zt)!=Fn||pe&&on(new pe)!=le)&&(on=function(n){var t=sn(n),e=t==Jn?n.constructor:s,r=e?Ot(e):"";if(r)switch(r){case Ia:return Ht;case Sa:return Mn;case Ta:return cu;case Ra:return Fn;case La:return le}return t});function $c(n,t,e){for(var r=-1,i=e.length;++r<i;){var o=e[r],l=o.size;switch(o.type){case"drop":n+=l;break;case"dropRight":t-=l;break;case"take":t=un(t,n+l);break;case"takeRight":n=j(n,t-l);break}}return{start:n,end:t}}function zc(n){var t=n.match(Xl);return t?t[1].split(Ql):[]}function Qo(n,t,e){t=dt(t,n);for(var r=-1,i=t.length,o=!1;++r<i;){var l=$n(t[r]);if(!(o=n!=null&&e(n,l)))break;n=n[l]}return o||++r!=i?o:(i=n==null?0:n.length,!!i&&br(i)&&tt(l,i)&&(L(n)||Mt(n)))}function Kc(n){var t=n.length,e=new n.constructor(t);return t&&typeof n[0]=="string"&&U.call(n,"index")&&(e.index=n.index,e.input=n.input),e}function Vo(n){return typeof n.constructor=="function"&&!Ce(n)?Zt(Xe(n)):{}}function Zc(n,t,e){var r=n.constructor;switch(t){case fe:return Oi(n);case re:case ie:return new r(+n);case Ht:return Ec(n,e);case Br:case Nr:case Hr:case Ur:case kr:case qr:case Gr:case $r:case zr:return Wo(n,e);case Mn:return new r;case ue:case se:return new r(n);case oe:return Oc(n);case Fn:return new r;case Be:return Mc(n)}}function Yc(n,t){var e=t.length;if(!e)return n;var r=e-1;return t[r]=(e>1?"& ":"")+t[r],t=t.join(e>2?", ":" "),n.replace(Jl,`{
2
+ /* [wrapped with `+t+`] */
3
+ `)}function Jc(n){return L(n)||Mt(n)||!!(eo&&n&&n[eo])}function tt(n,t){var e=typeof n;return t=t==null?ot:t,!!t&&(e=="number"||e!="symbol"&&sf.test(n))&&n>-1&&n%1==0&&n<t}function ln(n,t,e){if(!Z(e))return!1;var r=typeof t;return(r=="number"?cn(e)&&tt(t,e.length):r=="string"&&t in e)?Dn(e[t],n):!1}function Hi(n,t){if(L(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||mn(n)?!0:zl.test(n)||!$l.test(n)||t!=null&&n in q(t)}function Xc(n){var t=typeof n;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?n!=="__proto__":n===null}function Ui(n){var t=gr(n),e=u[t];if(typeof e!="function"||!(t in P.prototype))return!1;if(n===e)return!0;var r=Di(e);return!!r&&n===r[0]}function Qc(n){return!!Vu&&Vu in n}var Vc=ze?et:ru;function Ce(n){var t=n&&n.constructor,e=typeof t=="function"&&t.prototype||$t;return n===e}function jo(n){return n===n&&!Z(n)}function ns(n,t){return function(e){return e==null?!1:e[n]===t&&(t!==s||n in q(e))}}function jc(n){var t=xr(n,function(r){return e.size===B&&e.clear(),r}),e=t.cache;return t}function nh(n,t){var e=n[1],r=t[1],i=e|r,o=i<(Cn|Ct|Yn),l=r==Yn&&e==Hn||r==Yn&&e==ee&&n[7].length<=t[8]||r==(Yn|ee)&&t[7].length<=t[8]&&e==Hn;if(!(o||l))return n;r&Cn&&(n[2]=t[2],i|=e&Cn?0:lu);var f=t[3];if(f){var c=n[3];n[3]=c?Do(c,f,t[4]):f,n[4]=c?ft(n[3],$):t[4]}return f=t[5],f&&(c=n[5],n[5]=c?Bo(c,f,t[6]):f,n[6]=c?ft(n[5],$):t[6]),f=t[7],f&&(n[7]=f),r&Yn&&(n[8]=n[8]==null?t[8]:un(n[8],t[8])),n[9]==null&&(n[9]=t[9]),n[0]=t[0],n[1]=i,n}function th(n){var t=[];if(n!=null)for(var e in q(n))t.push(e);return t}function eh(n){return Ze.call(n)}function ts(n,t,e){return t=j(t===s?n.length-1:t,0),function(){for(var r=arguments,i=-1,o=j(r.length-t,0),l=h(o);++i<o;)l[i]=r[t+i];i=-1;for(var f=h(t+1);++i<t;)f[i]=r[i];return f[t]=e(l),dn(n,this,f)}}function es(n,t){return t.length<2?n:Lt(n,Rn(t,0,-1))}function rh(n,t){for(var e=n.length,r=un(t.length,e),i=an(n);r--;){var o=t[r];n[r]=tt(o,e)?i[o]:s}return n}function ki(n,t){if(!(t==="constructor"&&typeof n[t]=="function")&&t!="__proto__")return n[t]}var rs=us(So),be=va||function(n,t){return tn.setTimeout(n,t)},qi=us(Sc);function is(n,t,e){var r=t+"";return qi(n,Yc(r,ih(zc(r),e)))}function us(n){var t=0,e=0;return function(){var r=Ca(),i=Al-(r-e);if(e=r,i>0){if(++t>=bl)return arguments[0]}else t=0;return n.apply(s,arguments)}}function mr(n,t){var e=-1,r=n.length,i=r-1;for(t=t===s?r:t;++e<t;){var o=Ai(e,i),l=n[o];n[o]=n[e],n[e]=l}return n.length=t,n}var os=jc(function(n){var t=[];return n.charCodeAt(0)===46&&t.push(""),n.replace(Kl,function(e,r,i,o){t.push(i?o.replace(nf,"$1"):r||e)}),t});function $n(n){if(typeof n=="string"||mn(n))return n;var t=n+"";return t=="0"&&1/n==-bt?"-0":t}function Ot(n){if(n!=null){try{return Ke.call(n)}catch{}try{return n+""}catch{}}return""}function ih(n,t){return An(El,function(e){var r="_."+e[0];t&e[1]&&!ke(n,r)&&n.push(r)}),n.sort()}function ss(n){if(n instanceof P)return n.clone();var t=new Sn(n.__wrapped__,n.__chain__);return t.__actions__=an(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function uh(n,t,e){(e?ln(n,t,e):t===s)?t=1:t=j(E(t),0);var r=n==null?0:n.length;if(!r||t<1)return[];for(var i=0,o=0,l=h(je(r/t));i<r;)l[o++]=Rn(n,i,i+=t);return l}function oh(n){for(var t=-1,e=n==null?0:n.length,r=0,i=[];++t<e;){var o=n[t];o&&(i[r++]=o)}return i}function sh(){var n=arguments.length;if(!n)return[];for(var t=h(n-1),e=arguments[0],r=n;r--;)t[r-1]=arguments[r];return lt(L(e)?an(e):[e],rn(t,1))}var lh=M(function(n,t){return J(n)?me(n,rn(t,1,J,!0)):[]}),fh=M(function(n,t){var e=Ln(t);return J(e)&&(e=s),J(n)?me(n,rn(t,1,J,!0),A(e,2)):[]}),ah=M(function(n,t){var e=Ln(t);return J(e)&&(e=s),J(n)?me(n,rn(t,1,J,!0),s,e):[]});function ch(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===s?1:E(t),Rn(n,t<0?0:t,r)):[]}function hh(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===s?1:E(t),t=r-t,Rn(n,0,t<0?0:t)):[]}function ph(n,t){return n&&n.length?fr(n,A(t,3),!0,!0):[]}function dh(n,t){return n&&n.length?fr(n,A(t,3),!0):[]}function gh(n,t,e,r){var i=n==null?0:n.length;return i?(e&&typeof e!="number"&&ln(n,t,e)&&(e=0,r=i),sc(n,t,e,r)):[]}function ls(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=e==null?0:E(e);return i<0&&(i=j(r+i,0)),qe(n,A(t,3),i)}function fs(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=r-1;return e!==s&&(i=E(e),i=e<0?j(r+i,0):un(i,r-1)),qe(n,A(t,3),i,!0)}function as(n){var t=n==null?0:n.length;return t?rn(n,1):[]}function _h(n){var t=n==null?0:n.length;return t?rn(n,bt):[]}function mh(n,t){var e=n==null?0:n.length;return e?(t=t===s?1:E(t),rn(n,t)):[]}function vh(n){for(var t=-1,e=n==null?0:n.length,r={};++t<e;){var i=n[t];r[i[0]]=i[1]}return r}function cs(n){return n&&n.length?n[0]:s}function wh(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=e==null?0:E(e);return i<0&&(i=j(r+i,0)),kt(n,t,i)}function yh(n){var t=n==null?0:n.length;return t?Rn(n,0,-1):[]}var xh=M(function(n){var t=K(n,Li);return t.length&&t[0]===n[0]?wi(t):[]}),Ch=M(function(n){var t=Ln(n),e=K(n,Li);return t===Ln(e)?t=s:e.pop(),e.length&&e[0]===n[0]?wi(e,A(t,2)):[]}),bh=M(function(n){var t=Ln(n),e=K(n,Li);return t=typeof t=="function"?t:s,t&&e.pop(),e.length&&e[0]===n[0]?wi(e,s,t):[]});function Ah(n,t){return n==null?"":ya.call(n,t)}function Ln(n){var t=n==null?0:n.length;return t?n[t-1]:s}function Ih(n,t,e){var r=n==null?0:n.length;if(!r)return-1;var i=r;return e!==s&&(i=E(e),i=i<0?j(r+i,0):un(i,r-1)),t===t?ia(n,t,i):qe(n,$u,i,!0)}function Sh(n,t){return n&&n.length?Co(n,E(t)):s}var Th=M(hs);function hs(n,t){return n&&n.length&&t&&t.length?bi(n,t):n}function Rh(n,t,e){return n&&n.length&&t&&t.length?bi(n,t,A(e,2)):n}function Lh(n,t,e){return n&&n.length&&t&&t.length?bi(n,t,s,e):n}var Eh=nt(function(n,t){var e=n==null?0:n.length,r=gi(n,t);return Io(n,K(t,function(i){return tt(i,e)?+i:i}).sort(Po)),r});function Oh(n,t){var e=[];if(!(n&&n.length))return e;var r=-1,i=[],o=n.length;for(t=A(t,3);++r<o;){var l=n[r];t(l,r,n)&&(e.push(l),i.push(r))}return Io(n,i),e}function Gi(n){return n==null?n:Aa.call(n)}function Mh(n,t,e){var r=n==null?0:n.length;return r?(e&&typeof e!="number"&&ln(n,t,e)?(t=0,e=r):(t=t==null?0:E(t),e=e===s?r:E(e)),Rn(n,t,e)):[]}function Fh(n,t){return lr(n,t)}function Wh(n,t,e){return Si(n,t,A(e,2))}function Ph(n,t){var e=n==null?0:n.length;if(e){var r=lr(n,t);if(r<e&&Dn(n[r],t))return r}return-1}function Dh(n,t){return lr(n,t,!0)}function Bh(n,t,e){return Si(n,t,A(e,2),!0)}function Nh(n,t){var e=n==null?0:n.length;if(e){var r=lr(n,t,!0)-1;if(Dn(n[r],t))return r}return-1}function Hh(n){return n&&n.length?To(n):[]}function Uh(n,t){return n&&n.length?To(n,A(t,2)):[]}function kh(n){var t=n==null?0:n.length;return t?Rn(n,1,t):[]}function qh(n,t,e){return n&&n.length?(t=e||t===s?1:E(t),Rn(n,0,t<0?0:t)):[]}function Gh(n,t,e){var r=n==null?0:n.length;return r?(t=e||t===s?1:E(t),t=r-t,Rn(n,t<0?0:t,r)):[]}function $h(n,t){return n&&n.length?fr(n,A(t,3),!1,!0):[]}function zh(n,t){return n&&n.length?fr(n,A(t,3)):[]}var Kh=M(function(n){return pt(rn(n,1,J,!0))}),Zh=M(function(n){var t=Ln(n);return J(t)&&(t=s),pt(rn(n,1,J,!0),A(t,2))}),Yh=M(function(n){var t=Ln(n);return t=typeof t=="function"?t:s,pt(rn(n,1,J,!0),s,t)});function Jh(n){return n&&n.length?pt(n):[]}function Xh(n,t){return n&&n.length?pt(n,A(t,2)):[]}function Qh(n,t){return t=typeof t=="function"?t:s,n&&n.length?pt(n,s,t):[]}function $i(n){if(!(n&&n.length))return[];var t=0;return n=st(n,function(e){if(J(e))return t=j(e.length,t),!0}),si(t,function(e){return K(n,ii(e))})}function ps(n,t){if(!(n&&n.length))return[];var e=$i(n);return t==null?e:K(e,function(r){return dn(t,s,r)})}var Vh=M(function(n,t){return J(n)?me(n,t):[]}),jh=M(function(n){return Ri(st(n,J))}),np=M(function(n){var t=Ln(n);return J(t)&&(t=s),Ri(st(n,J),A(t,2))}),tp=M(function(n){var t=Ln(n);return t=typeof t=="function"?t:s,Ri(st(n,J),s,t)}),ep=M($i);function rp(n,t){return Oo(n||[],t||[],_e)}function ip(n,t){return Oo(n||[],t||[],ye)}var up=M(function(n){var t=n.length,e=t>1?n[t-1]:s;return e=typeof e=="function"?(n.pop(),e):s,ps(n,e)});function ds(n){var t=u(n);return t.__chain__=!0,t}function op(n,t){return t(n),n}function vr(n,t){return t(n)}var sp=nt(function(n){var t=n.length,e=t?n[0]:0,r=this.__wrapped__,i=function(o){return gi(o,n)};return t>1||this.__actions__.length||!(r instanceof P)||!tt(e)?this.thru(i):(r=r.slice(e,+e+(t?1:0)),r.__actions__.push({func:vr,args:[i],thisArg:s}),new Sn(r,this.__chain__).thru(function(o){return t&&!o.length&&o.push(s),o}))});function lp(){return ds(this)}function fp(){return new Sn(this.value(),this.__chain__)}function ap(){this.__values__===s&&(this.__values__=Rs(this.value()));var n=this.__index__>=this.__values__.length,t=n?s:this.__values__[this.__index__++];return{done:n,value:t}}function cp(){return this}function hp(n){for(var t,e=this;e instanceof rr;){var r=ss(e);r.__index__=0,r.__values__=s,t?i.__wrapped__=r:t=r;var i=r;e=e.__wrapped__}return i.__wrapped__=n,t}function pp(){var n=this.__wrapped__;if(n instanceof P){var t=n;return this.__actions__.length&&(t=new P(this)),t=t.reverse(),t.__actions__.push({func:vr,args:[Gi],thisArg:s}),new Sn(t,this.__chain__)}return this.thru(Gi)}function dp(){return Eo(this.__wrapped__,this.__actions__)}var gp=ar(function(n,t,e){U.call(n,e)?++n[e]:Vn(n,e,1)});function _p(n,t,e){var r=L(n)?qu:oc;return e&&ln(n,t,e)&&(t=s),r(n,A(t,3))}function mp(n,t){var e=L(n)?st:ho;return e(n,A(t,3))}var vp=ko(ls),wp=ko(fs);function yp(n,t){return rn(wr(n,t),1)}function xp(n,t){return rn(wr(n,t),bt)}function Cp(n,t,e){return e=e===s?1:E(e),rn(wr(n,t),e)}function gs(n,t){var e=L(n)?An:ht;return e(n,A(t,3))}function _s(n,t){var e=L(n)?kf:co;return e(n,A(t,3))}var bp=ar(function(n,t,e){U.call(n,e)?n[e].push(t):Vn(n,e,[t])});function Ap(n,t,e,r){n=cn(n)?n:Vt(n),e=e&&!r?E(e):0;var i=n.length;return e<0&&(e=j(i+e,0)),Ar(n)?e<=i&&n.indexOf(t,e)>-1:!!i&&kt(n,t,e)>-1}var Ip=M(function(n,t,e){var r=-1,i=typeof t=="function",o=cn(n)?h(n.length):[];return ht(n,function(l){o[++r]=i?dn(t,l,e):ve(l,t,e)}),o}),Sp=ar(function(n,t,e){Vn(n,e,t)});function wr(n,t){var e=L(n)?K:wo;return e(n,A(t,3))}function Tp(n,t,e,r){return n==null?[]:(L(t)||(t=t==null?[]:[t]),e=r?s:e,L(e)||(e=e==null?[]:[e]),bo(n,t,e))}var Rp=ar(function(n,t,e){n[e?0:1].push(t)},function(){return[[],[]]});function Lp(n,t,e){var r=L(n)?ei:Ku,i=arguments.length<3;return r(n,A(t,4),e,i,ht)}function Ep(n,t,e){var r=L(n)?qf:Ku,i=arguments.length<3;return r(n,A(t,4),e,i,co)}function Op(n,t){var e=L(n)?st:ho;return e(n,Cr(A(t,3)))}function Mp(n){var t=L(n)?so:Ac;return t(n)}function Fp(n,t,e){(e?ln(n,t,e):t===s)?t=1:t=E(t);var r=L(n)?tc:Ic;return r(n,t)}function Wp(n){var t=L(n)?ec:Tc;return t(n)}function Pp(n){if(n==null)return 0;if(cn(n))return Ar(n)?Gt(n):n.length;var t=on(n);return t==Mn||t==Fn?n.size:xi(n).length}function Dp(n,t,e){var r=L(n)?ri:Rc;return e&&ln(n,t,e)&&(t=s),r(n,A(t,3))}var Bp=M(function(n,t){if(n==null)return[];var e=t.length;return e>1&&ln(n,t[0],t[1])?t=[]:e>2&&ln(t[0],t[1],t[2])&&(t=[t[0]]),bo(n,rn(t,1),[])}),yr=ma||function(){return tn.Date.now()};function Np(n,t){if(typeof t!="function")throw new In(x);return n=E(n),function(){if(--n<1)return t.apply(this,arguments)}}function ms(n,t,e){return t=e?s:t,t=n&&t==null?n.length:t,jn(n,Yn,s,s,s,s,t)}function vs(n,t){var e;if(typeof t!="function")throw new In(x);return n=E(n),function(){return--n>0&&(e=t.apply(this,arguments)),n<=1&&(t=s),e}}var zi=M(function(n,t,e){var r=Cn;if(e.length){var i=ft(e,Xt(zi));r|=Un}return jn(n,r,t,e,i)}),ws=M(function(n,t,e){var r=Cn|Ct;if(e.length){var i=ft(e,Xt(ws));r|=Un}return jn(t,r,n,e,i)});function ys(n,t,e){t=e?s:t;var r=jn(n,Hn,s,s,s,s,s,t);return r.placeholder=ys.placeholder,r}function xs(n,t,e){t=e?s:t;var r=jn(n,Dt,s,s,s,s,s,t);return r.placeholder=xs.placeholder,r}function Cs(n,t,e){var r,i,o,l,f,c,d=0,g=!1,_=!1,w=!0;if(typeof n!="function")throw new In(x);t=En(t)||0,Z(e)&&(g=!!e.leading,_="maxWait"in e,o=_?j(En(e.maxWait)||0,t):o,w="trailing"in e?!!e.trailing:w);function b(X){var Bn=r,it=i;return r=i=s,d=X,l=n.apply(it,Bn),l}function I(X){return d=X,f=be(F,t),g?b(X):l}function O(X){var Bn=X-c,it=X-d,ks=t-Bn;return _?un(ks,o-it):ks}function S(X){var Bn=X-c,it=X-d;return c===s||Bn>=t||Bn<0||_&&it>=o}function F(){var X=yr();if(S(X))return D(X);f=be(F,O(X))}function D(X){return f=s,w&&r?b(X):(r=i=s,l)}function vn(){f!==s&&Mo(f),d=0,r=c=i=f=s}function fn(){return f===s?l:D(yr())}function wn(){var X=yr(),Bn=S(X);if(r=arguments,i=this,c=X,Bn){if(f===s)return I(c);if(_)return Mo(f),f=be(F,t),b(c)}return f===s&&(f=be(F,t)),l}return wn.cancel=vn,wn.flush=fn,wn}var Hp=M(function(n,t){return ao(n,1,t)}),Up=M(function(n,t,e){return ao(n,En(t)||0,e)});function kp(n){return jn(n,Dr)}function xr(n,t){if(typeof n!="function"||t!=null&&typeof t!="function")throw new In(x);var e=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=e.cache;if(o.has(i))return o.get(i);var l=n.apply(this,r);return e.cache=o.set(i,l)||o,l};return e.cache=new(xr.Cache||Qn),e}xr.Cache=Qn;function Cr(n){if(typeof n!="function")throw new In(x);return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function qp(n){return vs(2,n)}var Gp=Lc(function(n,t){t=t.length==1&&L(t[0])?K(t[0],gn(A())):K(rn(t,1),gn(A()));var e=t.length;return M(function(r){for(var i=-1,o=un(r.length,e);++i<o;)r[i]=t[i].call(this,r[i]);return dn(n,this,r)})}),Ki=M(function(n,t){var e=ft(t,Xt(Ki));return jn(n,Un,s,t,e)}),bs=M(function(n,t){var e=ft(t,Xt(bs));return jn(n,Bt,s,t,e)}),$p=nt(function(n,t){return jn(n,ee,s,s,s,t)});function zp(n,t){if(typeof n!="function")throw new In(x);return t=t===s?t:E(t),M(n,t)}function Kp(n,t){if(typeof n!="function")throw new In(x);return t=t==null?0:j(E(t),0),M(function(e){var r=e[t],i=gt(e,0,t);return r&&lt(i,r),dn(n,this,i)})}function Zp(n,t,e){var r=!0,i=!0;if(typeof n!="function")throw new In(x);return Z(e)&&(r="leading"in e?!!e.leading:r,i="trailing"in e?!!e.trailing:i),Cs(n,t,{leading:r,maxWait:t,trailing:i})}function Yp(n){return ms(n,1)}function Jp(n,t){return Ki(Ei(t),n)}function Xp(){if(!arguments.length)return[];var n=arguments[0];return L(n)?n:[n]}function Qp(n){return Tn(n,Wt)}function Vp(n,t){return t=typeof t=="function"?t:s,Tn(n,Wt,t)}function jp(n){return Tn(n,k|Wt)}function nd(n,t){return t=typeof t=="function"?t:s,Tn(n,k|Wt,t)}function td(n,t){return t==null||fo(n,t,en(t))}function Dn(n,t){return n===t||n!==n&&t!==t}var ed=dr(vi),rd=dr(function(n,t){return n>=t}),Mt=_o(function(){return arguments}())?_o:function(n){return Y(n)&&U.call(n,"callee")&&!to.call(n,"callee")},L=h.isArray,id=Du?gn(Du):hc;function cn(n){return n!=null&&br(n.length)&&!et(n)}function J(n){return Y(n)&&cn(n)}function ud(n){return n===!0||n===!1||Y(n)&&sn(n)==re}var _t=wa||ru,od=Bu?gn(Bu):pc;function sd(n){return Y(n)&&n.nodeType===1&&!Ae(n)}function ld(n){if(n==null)return!0;if(cn(n)&&(L(n)||typeof n=="string"||typeof n.splice=="function"||_t(n)||Qt(n)||Mt(n)))return!n.length;var t=on(n);if(t==Mn||t==Fn)return!n.size;if(Ce(n))return!xi(n).length;for(var e in n)if(U.call(n,e))return!1;return!0}function fd(n,t){return we(n,t)}function ad(n,t,e){e=typeof e=="function"?e:s;var r=e?e(n,t):s;return r===s?we(n,t,s,e):!!r}function Zi(n){if(!Y(n))return!1;var t=sn(n);return t==Pe||t==Ml||typeof n.message=="string"&&typeof n.name=="string"&&!Ae(n)}function cd(n){return typeof n=="number"&&ro(n)}function et(n){if(!Z(n))return!1;var t=sn(n);return t==De||t==au||t==Ol||t==Wl}function As(n){return typeof n=="number"&&n==E(n)}function br(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=ot}function Z(n){var t=typeof n;return n!=null&&(t=="object"||t=="function")}function Y(n){return n!=null&&typeof n=="object"}var Is=Nu?gn(Nu):gc;function hd(n,t){return n===t||yi(n,t,Bi(t))}function pd(n,t,e){return e=typeof e=="function"?e:s,yi(n,t,Bi(t),e)}function dd(n){return Ss(n)&&n!=+n}function gd(n){if(Vc(n))throw new R(v);return mo(n)}function _d(n){return n===null}function md(n){return n==null}function Ss(n){return typeof n=="number"||Y(n)&&sn(n)==ue}function Ae(n){if(!Y(n)||sn(n)!=Jn)return!1;var t=Xe(n);if(t===null)return!0;var e=U.call(t,"constructor")&&t.constructor;return typeof e=="function"&&e instanceof e&&Ke.call(e)==pa}var Yi=Hu?gn(Hu):_c;function vd(n){return As(n)&&n>=-ot&&n<=ot}var Ts=Uu?gn(Uu):mc;function Ar(n){return typeof n=="string"||!L(n)&&Y(n)&&sn(n)==se}function mn(n){return typeof n=="symbol"||Y(n)&&sn(n)==Be}var Qt=ku?gn(ku):vc;function wd(n){return n===s}function yd(n){return Y(n)&&on(n)==le}function xd(n){return Y(n)&&sn(n)==Dl}var Cd=dr(Ci),bd=dr(function(n,t){return n<=t});function Rs(n){if(!n)return[];if(cn(n))return Ar(n)?Wn(n):an(n);if(ce&&n[ce])return ta(n[ce]());var t=on(n),e=t==Mn?fi:t==Fn?Ge:Vt;return e(n)}function rt(n){if(!n)return n===0?n:0;if(n=En(n),n===bt||n===-bt){var t=n<0?-1:1;return t*Tl}return n===n?n:0}function E(n){var t=rt(n),e=t%1;return t===t?e?t-e:t:0}function Ls(n){return n?Rt(E(n),0,kn):0}function En(n){if(typeof n=="number")return n;if(mn(n))return Fe;if(Z(n)){var t=typeof n.valueOf=="function"?n.valueOf():n;n=Z(t)?t+"":t}if(typeof n!="string")return n===0?n:+n;n=Zu(n);var e=rf.test(n);return e||of.test(n)?Nf(n.slice(2),e?2:8):ef.test(n)?Fe:+n}function Es(n){return Gn(n,hn(n))}function Ad(n){return n?Rt(E(n),-ot,ot):n===0?n:0}function H(n){return n==null?"":_n(n)}var Id=Yt(function(n,t){if(Ce(t)||cn(t)){Gn(t,en(t),n);return}for(var e in t)U.call(t,e)&&_e(n,e,t[e])}),Os=Yt(function(n,t){Gn(t,hn(t),n)}),Ir=Yt(function(n,t,e,r){Gn(t,hn(t),n,r)}),Sd=Yt(function(n,t,e,r){Gn(t,en(t),n,r)}),Td=nt(gi);function Rd(n,t){var e=Zt(n);return t==null?e:lo(e,t)}var Ld=M(function(n,t){n=q(n);var e=-1,r=t.length,i=r>2?t[2]:s;for(i&&ln(t[0],t[1],i)&&(r=1);++e<r;)for(var o=t[e],l=hn(o),f=-1,c=l.length;++f<c;){var d=l[f],g=n[d];(g===s||Dn(g,$t[d])&&!U.call(n,d))&&(n[d]=o[d])}return n}),Ed=M(function(n){return n.push(s,Yo),dn(Ms,s,n)});function Od(n,t){return Gu(n,A(t,3),qn)}function Md(n,t){return Gu(n,A(t,3),mi)}function Fd(n,t){return n==null?n:_i(n,A(t,3),hn)}function Wd(n,t){return n==null?n:po(n,A(t,3),hn)}function Pd(n,t){return n&&qn(n,A(t,3))}function Dd(n,t){return n&&mi(n,A(t,3))}function Bd(n){return n==null?[]:or(n,en(n))}function Nd(n){return n==null?[]:or(n,hn(n))}function Ji(n,t,e){var r=n==null?s:Lt(n,t);return r===s?e:r}function Hd(n,t){return n!=null&&Qo(n,t,lc)}function Xi(n,t){return n!=null&&Qo(n,t,fc)}var Ud=Go(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Ze.call(t)),n[t]=e},Vi(pn)),kd=Go(function(n,t,e){t!=null&&typeof t.toString!="function"&&(t=Ze.call(t)),U.call(n,t)?n[t].push(e):n[t]=[e]},A),qd=M(ve);function en(n){return cn(n)?oo(n):xi(n)}function hn(n){return cn(n)?oo(n,!0):wc(n)}function Gd(n,t){var e={};return t=A(t,3),qn(n,function(r,i,o){Vn(e,t(r,i,o),r)}),e}function $d(n,t){var e={};return t=A(t,3),qn(n,function(r,i,o){Vn(e,i,t(r,i,o))}),e}var zd=Yt(function(n,t,e){sr(n,t,e)}),Ms=Yt(function(n,t,e,r){sr(n,t,e,r)}),Kd=nt(function(n,t){var e={};if(n==null)return e;var r=!1;t=K(t,function(o){return o=dt(o,n),r||(r=o.length>1),o}),Gn(n,Pi(n),e),r&&(e=Tn(e,k|su|Wt,Uc));for(var i=t.length;i--;)Ti(e,t[i]);return e});function Zd(n,t){return Fs(n,Cr(A(t)))}var Yd=nt(function(n,t){return n==null?{}:xc(n,t)});function Fs(n,t){if(n==null)return{};var e=K(Pi(n),function(r){return[r]});return t=A(t),Ao(n,e,function(r,i){return t(r,i[0])})}function Jd(n,t,e){t=dt(t,n);var r=-1,i=t.length;for(i||(i=1,n=s);++r<i;){var o=n==null?s:n[$n(t[r])];o===s&&(r=i,o=e),n=et(o)?o.call(n):o}return n}function Xd(n,t,e){return n==null?n:ye(n,t,e)}function Qd(n,t,e,r){return r=typeof r=="function"?r:s,n==null?n:ye(n,t,e,r)}var Ws=Ko(en),Ps=Ko(hn);function Vd(n,t,e){var r=L(n),i=r||_t(n)||Qt(n);if(t=A(t,4),e==null){var o=n&&n.constructor;i?e=r?new o:[]:Z(n)?e=et(o)?Zt(Xe(n)):{}:e={}}return(i?An:qn)(n,function(l,f,c){return t(e,l,f,c)}),e}function jd(n,t){return n==null?!0:Ti(n,t)}function ng(n,t,e){return n==null?n:Lo(n,t,Ei(e))}function tg(n,t,e,r){return r=typeof r=="function"?r:s,n==null?n:Lo(n,t,Ei(e),r)}function Vt(n){return n==null?[]:li(n,en(n))}function eg(n){return n==null?[]:li(n,hn(n))}function rg(n,t,e){return e===s&&(e=t,t=s),e!==s&&(e=En(e),e=e===e?e:0),t!==s&&(t=En(t),t=t===t?t:0),Rt(En(n),t,e)}function ig(n,t,e){return t=rt(t),e===s?(e=t,t=0):e=rt(e),n=En(n),ac(n,t,e)}function ug(n,t,e){if(e&&typeof e!="boolean"&&ln(n,t,e)&&(t=e=s),e===s&&(typeof t=="boolean"?(e=t,t=s):typeof n=="boolean"&&(e=n,n=s)),n===s&&t===s?(n=0,t=1):(n=rt(n),t===s?(t=n,n=0):t=rt(t)),n>t){var r=n;n=t,t=r}if(e||n%1||t%1){var i=io();return un(n+i*(t-n+Bf("1e-"+((i+"").length-1))),t)}return Ai(n,t)}var og=Jt(function(n,t,e){return t=t.toLowerCase(),n+(e?Ds(t):t)});function Ds(n){return Qi(H(n).toLowerCase())}function Bs(n){return n=H(n),n&&n.replace(lf,Xf).replace(Tf,"")}function sg(n,t,e){n=H(n),t=_n(t);var r=n.length;e=e===s?r:Rt(E(e),0,r);var i=e;return e-=t.length,e>=0&&n.slice(e,i)==t}function lg(n){return n=H(n),n&&kl.test(n)?n.replace(pu,Qf):n}function fg(n){return n=H(n),n&&Zl.test(n)?n.replace(Kr,"\\$&"):n}var ag=Jt(function(n,t,e){return n+(e?"-":"")+t.toLowerCase()}),cg=Jt(function(n,t,e){return n+(e?" ":"")+t.toLowerCase()}),hg=Uo("toLowerCase");function pg(n,t,e){n=H(n),t=E(t);var r=t?Gt(n):0;if(!t||r>=t)return n;var i=(t-r)/2;return pr(nr(i),e)+n+pr(je(i),e)}function dg(n,t,e){n=H(n),t=E(t);var r=t?Gt(n):0;return t&&r<t?n+pr(t-r,e):n}function gg(n,t,e){n=H(n),t=E(t);var r=t?Gt(n):0;return t&&r<t?pr(t-r,e)+n:n}function _g(n,t,e){return e||t==null?t=0:t&&(t=+t),ba(H(n).replace(Zr,""),t||0)}function mg(n,t,e){return(e?ln(n,t,e):t===s)?t=1:t=E(t),Ii(H(n),t)}function vg(){var n=arguments,t=H(n[0]);return n.length<3?t:t.replace(n[1],n[2])}var wg=Jt(function(n,t,e){return n+(e?"_":"")+t.toLowerCase()});function yg(n,t,e){return e&&typeof e!="number"&&ln(n,t,e)&&(t=e=s),e=e===s?kn:e>>>0,e?(n=H(n),n&&(typeof t=="string"||t!=null&&!Yi(t))&&(t=_n(t),!t&&qt(n))?gt(Wn(n),0,e):n.split(t,e)):[]}var xg=Jt(function(n,t,e){return n+(e?" ":"")+Qi(t)});function Cg(n,t,e){return n=H(n),e=e==null?0:Rt(E(e),0,n.length),t=_n(t),n.slice(e,e+t.length)==t}function bg(n,t,e){var r=u.templateSettings;e&&ln(n,t,e)&&(t=s),n=H(n),t=Ir({},t,r,Zo);var i=Ir({},t.imports,r.imports,Zo),o=en(i),l=li(i,o),f,c,d=0,g=t.interpolate||Ne,_="__p += '",w=ai((t.escape||Ne).source+"|"+g.source+"|"+(g===du?tf:Ne).source+"|"+(t.evaluate||Ne).source+"|$","g"),b="//# sourceURL="+(U.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Mf+"]")+`
4
+ `;n.replace(w,function(S,F,D,vn,fn,wn){return D||(D=vn),_+=n.slice(d,wn).replace(ff,Vf),F&&(f=!0,_+=`' +
5
+ __e(`+F+`) +
6
+ '`),fn&&(c=!0,_+=`';
7
+ `+fn+`;
8
+ __p += '`),D&&(_+=`' +
9
+ ((__t = (`+D+`)) == null ? '' : __t) +
10
+ '`),d=wn+S.length,S}),_+=`';
11
+ `;var I=U.call(t,"variable")&&t.variable;if(!I)_=`with (obj) {
12
+ `+_+`
13
+ }
14
+ `;else if(jl.test(I))throw new R(m);_=(c?_.replace(Bl,""):_).replace(Nl,"$1").replace(Hl,"$1;"),_="function("+(I||"obj")+`) {
15
+ `+(I?"":`obj || (obj = {});
16
+ `)+"var __t, __p = ''"+(f?", __e = _.escape":"")+(c?`, __j = Array.prototype.join;
17
+ function print() { __p += __j.call(arguments, '') }
18
+ `:`;
19
+ `)+_+`return __p
20
+ }`;var O=Hs(function(){return N(o,b+"return "+_).apply(s,l)});if(O.source=_,Zi(O))throw O;return O}function Ag(n){return H(n).toLowerCase()}function Ig(n){return H(n).toUpperCase()}function Sg(n,t,e){if(n=H(n),n&&(e||t===s))return Zu(n);if(!n||!(t=_n(t)))return n;var r=Wn(n),i=Wn(t),o=Yu(r,i),l=Ju(r,i)+1;return gt(r,o,l).join("")}function Tg(n,t,e){if(n=H(n),n&&(e||t===s))return n.slice(0,Qu(n)+1);if(!n||!(t=_n(t)))return n;var r=Wn(n),i=Ju(r,Wn(t))+1;return gt(r,0,i).join("")}function Rg(n,t,e){if(n=H(n),n&&(e||t===s))return n.replace(Zr,"");if(!n||!(t=_n(t)))return n;var r=Wn(n),i=Yu(r,Wn(t));return gt(r,i).join("")}function Lg(n,t){var e=xl,r=Cl;if(Z(t)){var i="separator"in t?t.separator:i;e="length"in t?E(t.length):e,r="omission"in t?_n(t.omission):r}n=H(n);var o=n.length;if(qt(n)){var l=Wn(n);o=l.length}if(e>=o)return n;var f=e-Gt(r);if(f<1)return r;var c=l?gt(l,0,f).join(""):n.slice(0,f);if(i===s)return c+r;if(l&&(f+=c.length-f),Yi(i)){if(n.slice(f).search(i)){var d,g=c;for(i.global||(i=ai(i.source,H(gu.exec(i))+"g")),i.lastIndex=0;d=i.exec(g);)var _=d.index;c=c.slice(0,_===s?f:_)}}else if(n.indexOf(_n(i),f)!=f){var w=c.lastIndexOf(i);w>-1&&(c=c.slice(0,w))}return c+r}function Eg(n){return n=H(n),n&&Ul.test(n)?n.replace(hu,ua):n}var Og=Jt(function(n,t,e){return n+(e?" ":"")+t.toUpperCase()}),Qi=Uo("toUpperCase");function Ns(n,t,e){return n=H(n),t=e?s:t,t===s?na(n)?la(n):zf(n):n.match(t)||[]}var Hs=M(function(n,t){try{return dn(n,s,t)}catch(e){return Zi(e)?e:new R(e)}}),Mg=nt(function(n,t){return An(t,function(e){e=$n(e),Vn(n,e,zi(n[e],n))}),n});function Fg(n){var t=n==null?0:n.length,e=A();return n=t?K(n,function(r){if(typeof r[1]!="function")throw new In(x);return[e(r[0]),r[1]]}):[],M(function(r){for(var i=-1;++i<t;){var o=n[i];if(dn(o[0],this,r))return dn(o[1],this,r)}})}function Wg(n){return uc(Tn(n,k))}function Vi(n){return function(){return n}}function Pg(n,t){return n==null||n!==n?t:n}var Dg=qo(),Bg=qo(!0);function pn(n){return n}function ji(n){return vo(typeof n=="function"?n:Tn(n,k))}function Ng(n){return yo(Tn(n,k))}function Hg(n,t){return xo(n,Tn(t,k))}var Ug=M(function(n,t){return function(e){return ve(e,n,t)}}),kg=M(function(n,t){return function(e){return ve(n,e,t)}});function nu(n,t,e){var r=en(t),i=or(t,r);e==null&&!(Z(t)&&(i.length||!r.length))&&(e=t,t=n,n=this,i=or(t,en(t)));var o=!(Z(e)&&"chain"in e)||!!e.chain,l=et(n);return An(i,function(f){var c=t[f];n[f]=c,l&&(n.prototype[f]=function(){var d=this.__chain__;if(o||d){var g=n(this.__wrapped__),_=g.__actions__=an(this.__actions__);return _.push({func:c,args:arguments,thisArg:n}),g.__chain__=d,g}return c.apply(n,lt([this.value()],arguments))})}),n}function qg(){return tn._===this&&(tn._=da),this}function tu(){}function Gg(n){return n=E(n),M(function(t){return Co(t,n)})}var $g=Mi(K),zg=Mi(qu),Kg=Mi(ri);function Us(n){return Hi(n)?ii($n(n)):Cc(n)}function Zg(n){return function(t){return n==null?s:Lt(n,t)}}var Yg=$o(),Jg=$o(!0);function eu(){return[]}function ru(){return!1}function Xg(){return{}}function Qg(){return""}function Vg(){return!0}function jg(n,t){if(n=E(n),n<1||n>ot)return[];var e=kn,r=un(n,kn);t=A(t),n-=kn;for(var i=si(r,t);++e<n;)t(e);return i}function n_(n){return L(n)?K(n,$n):mn(n)?[n]:an(os(H(n)))}function t_(n){var t=++ha;return H(n)+t}var e_=hr(function(n,t){return n+t},0),r_=Fi("ceil"),i_=hr(function(n,t){return n/t},1),u_=Fi("floor");function o_(n){return n&&n.length?ur(n,pn,vi):s}function s_(n,t){return n&&n.length?ur(n,A(t,2),vi):s}function l_(n){return zu(n,pn)}function f_(n,t){return zu(n,A(t,2))}function a_(n){return n&&n.length?ur(n,pn,Ci):s}function c_(n,t){return n&&n.length?ur(n,A(t,2),Ci):s}var h_=hr(function(n,t){return n*t},1),p_=Fi("round"),d_=hr(function(n,t){return n-t},0);function g_(n){return n&&n.length?oi(n,pn):0}function __(n,t){return n&&n.length?oi(n,A(t,2)):0}return u.after=Np,u.ary=ms,u.assign=Id,u.assignIn=Os,u.assignInWith=Ir,u.assignWith=Sd,u.at=Td,u.before=vs,u.bind=zi,u.bindAll=Mg,u.bindKey=ws,u.castArray=Xp,u.chain=ds,u.chunk=uh,u.compact=oh,u.concat=sh,u.cond=Fg,u.conforms=Wg,u.constant=Vi,u.countBy=gp,u.create=Rd,u.curry=ys,u.curryRight=xs,u.debounce=Cs,u.defaults=Ld,u.defaultsDeep=Ed,u.defer=Hp,u.delay=Up,u.difference=lh,u.differenceBy=fh,u.differenceWith=ah,u.drop=ch,u.dropRight=hh,u.dropRightWhile=ph,u.dropWhile=dh,u.fill=gh,u.filter=mp,u.flatMap=yp,u.flatMapDeep=xp,u.flatMapDepth=Cp,u.flatten=as,u.flattenDeep=_h,u.flattenDepth=mh,u.flip=kp,u.flow=Dg,u.flowRight=Bg,u.fromPairs=vh,u.functions=Bd,u.functionsIn=Nd,u.groupBy=bp,u.initial=yh,u.intersection=xh,u.intersectionBy=Ch,u.intersectionWith=bh,u.invert=Ud,u.invertBy=kd,u.invokeMap=Ip,u.iteratee=ji,u.keyBy=Sp,u.keys=en,u.keysIn=hn,u.map=wr,u.mapKeys=Gd,u.mapValues=$d,u.matches=Ng,u.matchesProperty=Hg,u.memoize=xr,u.merge=zd,u.mergeWith=Ms,u.method=Ug,u.methodOf=kg,u.mixin=nu,u.negate=Cr,u.nthArg=Gg,u.omit=Kd,u.omitBy=Zd,u.once=qp,u.orderBy=Tp,u.over=$g,u.overArgs=Gp,u.overEvery=zg,u.overSome=Kg,u.partial=Ki,u.partialRight=bs,u.partition=Rp,u.pick=Yd,u.pickBy=Fs,u.property=Us,u.propertyOf=Zg,u.pull=Th,u.pullAll=hs,u.pullAllBy=Rh,u.pullAllWith=Lh,u.pullAt=Eh,u.range=Yg,u.rangeRight=Jg,u.rearg=$p,u.reject=Op,u.remove=Oh,u.rest=zp,u.reverse=Gi,u.sampleSize=Fp,u.set=Xd,u.setWith=Qd,u.shuffle=Wp,u.slice=Mh,u.sortBy=Bp,u.sortedUniq=Hh,u.sortedUniqBy=Uh,u.split=yg,u.spread=Kp,u.tail=kh,u.take=qh,u.takeRight=Gh,u.takeRightWhile=$h,u.takeWhile=zh,u.tap=op,u.throttle=Zp,u.thru=vr,u.toArray=Rs,u.toPairs=Ws,u.toPairsIn=Ps,u.toPath=n_,u.toPlainObject=Es,u.transform=Vd,u.unary=Yp,u.union=Kh,u.unionBy=Zh,u.unionWith=Yh,u.uniq=Jh,u.uniqBy=Xh,u.uniqWith=Qh,u.unset=jd,u.unzip=$i,u.unzipWith=ps,u.update=ng,u.updateWith=tg,u.values=Vt,u.valuesIn=eg,u.without=Vh,u.words=Ns,u.wrap=Jp,u.xor=jh,u.xorBy=np,u.xorWith=tp,u.zip=ep,u.zipObject=rp,u.zipObjectDeep=ip,u.zipWith=up,u.entries=Ws,u.entriesIn=Ps,u.extend=Os,u.extendWith=Ir,nu(u,u),u.add=e_,u.attempt=Hs,u.camelCase=og,u.capitalize=Ds,u.ceil=r_,u.clamp=rg,u.clone=Qp,u.cloneDeep=jp,u.cloneDeepWith=nd,u.cloneWith=Vp,u.conformsTo=td,u.deburr=Bs,u.defaultTo=Pg,u.divide=i_,u.endsWith=sg,u.eq=Dn,u.escape=lg,u.escapeRegExp=fg,u.every=_p,u.find=vp,u.findIndex=ls,u.findKey=Od,u.findLast=wp,u.findLastIndex=fs,u.findLastKey=Md,u.floor=u_,u.forEach=gs,u.forEachRight=_s,u.forIn=Fd,u.forInRight=Wd,u.forOwn=Pd,u.forOwnRight=Dd,u.get=Ji,u.gt=ed,u.gte=rd,u.has=Hd,u.hasIn=Xi,u.head=cs,u.identity=pn,u.includes=Ap,u.indexOf=wh,u.inRange=ig,u.invoke=qd,u.isArguments=Mt,u.isArray=L,u.isArrayBuffer=id,u.isArrayLike=cn,u.isArrayLikeObject=J,u.isBoolean=ud,u.isBuffer=_t,u.isDate=od,u.isElement=sd,u.isEmpty=ld,u.isEqual=fd,u.isEqualWith=ad,u.isError=Zi,u.isFinite=cd,u.isFunction=et,u.isInteger=As,u.isLength=br,u.isMap=Is,u.isMatch=hd,u.isMatchWith=pd,u.isNaN=dd,u.isNative=gd,u.isNil=md,u.isNull=_d,u.isNumber=Ss,u.isObject=Z,u.isObjectLike=Y,u.isPlainObject=Ae,u.isRegExp=Yi,u.isSafeInteger=vd,u.isSet=Ts,u.isString=Ar,u.isSymbol=mn,u.isTypedArray=Qt,u.isUndefined=wd,u.isWeakMap=yd,u.isWeakSet=xd,u.join=Ah,u.kebabCase=ag,u.last=Ln,u.lastIndexOf=Ih,u.lowerCase=cg,u.lowerFirst=hg,u.lt=Cd,u.lte=bd,u.max=o_,u.maxBy=s_,u.mean=l_,u.meanBy=f_,u.min=a_,u.minBy=c_,u.stubArray=eu,u.stubFalse=ru,u.stubObject=Xg,u.stubString=Qg,u.stubTrue=Vg,u.multiply=h_,u.nth=Sh,u.noConflict=qg,u.noop=tu,u.now=yr,u.pad=pg,u.padEnd=dg,u.padStart=gg,u.parseInt=_g,u.random=ug,u.reduce=Lp,u.reduceRight=Ep,u.repeat=mg,u.replace=vg,u.result=Jd,u.round=p_,u.runInContext=a,u.sample=Mp,u.size=Pp,u.snakeCase=wg,u.some=Dp,u.sortedIndex=Fh,u.sortedIndexBy=Wh,u.sortedIndexOf=Ph,u.sortedLastIndex=Dh,u.sortedLastIndexBy=Bh,u.sortedLastIndexOf=Nh,u.startCase=xg,u.startsWith=Cg,u.subtract=d_,u.sum=g_,u.sumBy=__,u.template=bg,u.times=jg,u.toFinite=rt,u.toInteger=E,u.toLength=Ls,u.toLower=Ag,u.toNumber=En,u.toSafeInteger=Ad,u.toString=H,u.toUpper=Ig,u.trim=Sg,u.trimEnd=Tg,u.trimStart=Rg,u.truncate=Lg,u.unescape=Eg,u.uniqueId=t_,u.upperCase=Og,u.upperFirst=Qi,u.each=gs,u.eachRight=_s,u.first=cs,nu(u,function(){var n={};return qn(u,function(t,e){U.call(u.prototype,e)||(n[e]=t)}),n}(),{chain:!1}),u.VERSION=y,An(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){u[n].placeholder=u}),An(["drop","take"],function(n,t){P.prototype[n]=function(e){e=e===s?1:j(E(e),0);var r=this.__filtered__&&!t?new P(this):this.clone();return r.__filtered__?r.__takeCount__=un(e,r.__takeCount__):r.__views__.push({size:un(e,kn),type:n+(r.__dir__<0?"Right":"")}),r},P.prototype[n+"Right"]=function(e){return this.reverse()[n](e).reverse()}}),An(["filter","map","takeWhile"],function(n,t){var e=t+1,r=e==fu||e==Sl;P.prototype[n]=function(i){var o=this.clone();return o.__iteratees__.push({iteratee:A(i,3),type:e}),o.__filtered__=o.__filtered__||r,o}}),An(["head","last"],function(n,t){var e="take"+(t?"Right":"");P.prototype[n]=function(){return this[e](1).value()[0]}}),An(["initial","tail"],function(n,t){var e="drop"+(t?"":"Right");P.prototype[n]=function(){return this.__filtered__?new P(this):this[e](1)}}),P.prototype.compact=function(){return this.filter(pn)},P.prototype.find=function(n){return this.filter(n).head()},P.prototype.findLast=function(n){return this.reverse().find(n)},P.prototype.invokeMap=M(function(n,t){return typeof n=="function"?new P(this):this.map(function(e){return ve(e,n,t)})}),P.prototype.reject=function(n){return this.filter(Cr(A(n)))},P.prototype.slice=function(n,t){n=E(n);var e=this;return e.__filtered__&&(n>0||t<0)?new P(e):(n<0?e=e.takeRight(-n):n&&(e=e.drop(n)),t!==s&&(t=E(t),e=t<0?e.dropRight(-t):e.take(t-n)),e)},P.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},P.prototype.toArray=function(){return this.take(kn)},qn(P.prototype,function(n,t){var e=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=u[r?"take"+(t=="last"?"Right":""):t],o=r||/^find/.test(t);i&&(u.prototype[t]=function(){var l=this.__wrapped__,f=r?[1]:arguments,c=l instanceof P,d=f[0],g=c||L(l),_=function(F){var D=i.apply(u,lt([F],f));return r&&w?D[0]:D};g&&e&&typeof d=="function"&&d.length!=1&&(c=g=!1);var w=this.__chain__,b=!!this.__actions__.length,I=o&&!w,O=c&&!b;if(!o&&g){l=O?l:new P(this);var S=n.apply(l,f);return S.__actions__.push({func:vr,args:[_],thisArg:s}),new Sn(S,w)}return I&&O?n.apply(this,f):(S=this.thru(_),I?r?S.value()[0]:S.value():S)})}),An(["pop","push","shift","sort","splice","unshift"],function(n){var t=$e[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);u.prototype[n]=function(){var i=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(L(o)?o:[],i)}return this[e](function(l){return t.apply(L(l)?l:[],i)})}}),qn(P.prototype,function(n,t){var e=u[t];if(e){var r=e.name+"";U.call(Kt,r)||(Kt[r]=[]),Kt[r].push({name:t,func:e})}}),Kt[cr(s,Ct).name]=[{name:"wrapper",func:s}],P.prototype.clone=Ea,P.prototype.reverse=Oa,P.prototype.value=Ma,u.prototype.at=sp,u.prototype.chain=lp,u.prototype.commit=fp,u.prototype.next=ap,u.prototype.plant=hp,u.prototype.reverse=pp,u.prototype.toJSON=u.prototype.valueOf=u.prototype.value=dp,u.prototype.first=u.prototype.head,ce&&(u.prototype[ce]=cp),u},at=fa();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(tn._=at,define(function(){return at})):At?((At.exports=at)._=at,jr._=at):tn._=at}).call(te)});var Nn=v_(gl(),1);function w_(s,y){if(s&1){let T=Xs();yn(0,"button",6),Qs("click",function(){Zs(T);let x=xn();return Ys(x.removeItem())}),yn(1,"span",7),Ft(2,"\xD7"),On(),yn(3,"span"),Ft(4,"Close"),On()()}if(s&2){let T=xn();Kn(T.widgetStyles().__remove_item__),nn(3),Kn(T.widgetStyles().__screen_reader__)}}function y_(s,y){if(s&1&&Zn(0,"p",8),s&2){let T=xn(2);Kn(T.widgetStyles().__help_block__),Q("innerHTML",T.options==null?null:T.options.helpBlock,jt)}}function x_(s,y){if(s&1&&(yn(0,"div"),yt(1,y_,1,3,"p",3),On()),s&2){let T=xn();nn(),Q("ngIf",T.options==null?null:T.options.helpBlock)}}function C_(s,y){if(s&1&&Zn(0,"label",8),s&2){let T,v=xn();Kn((v.options==null?null:v.options.labelHtmlClass)||""),Se("sr-only",v.options==null?null:v.options.notitle),Q("innerHTML",v.options==null?null:v.options.title,jt),iu("for","control"+((T=v.layoutNode())==null?null:T._id))}}function b_(s,y){if(s&1&&(yn(0,"p")(1,"strong"),Ft(2,"*"),On(),Ft(3," = required fields "),On()),s&2){let T=xn();nn(),Kn(T.widgetStyles().__required_asterisk__)}}function A_(s,y){if(s&1&&Zn(0,"span",8),s&2){let T=xn();Kn(T.widgetStyles().__field_addon_left__),Q("innerHTML",T.options==null?null:T.options.fieldAddonLeft,jt)}}function I_(s,y){if(s&1&&Zn(0,"span",8),s&2){let T=xn();Kn(T.widgetStyles().__field_addon_right__),Q("innerHTML",T.options==null?null:T.options.fieldAddonRight,jt)}}function S_(s,y){if(s&1&&Zn(0,"span",9),s&2){let T=xn();Se("glyphicon-ok",(T.options==null?null:T.options.enableSuccessState)&&!(T.formControl!=null&&T.formControl.errors))("glyphicon-remove",(T.options==null?null:T.options.enableErrorState)&&(T.formControl==null?null:T.formControl.errors))}}function T_(s,y){if(s&1&&Zn(0,"p",8),s&2){let T=xn(2);Kn(T.widgetStyles().__help_block__),Q("innerHTML",T.options==null?null:T.options.helpBlock,jt)}}function R_(s,y){if(s&1&&(yn(0,"div"),yt(1,T_,1,3,"p",3),On()),s&2){let T=xn();nn(),Q("ngIf",T.options==null?null:T.options.helpBlock)}}function L_(s,y){if(s&1&&(yn(0,"div"),Ft(1,"debug: "),yn(2,"pre"),Ft(3),On()()),s&2){let T=xn();nn(3),Vs(T.debugOutput)}}var Oe=(()=>{let y=class y{constructor(){this.frameworkThemeSubject=new $s,this.frameworkTheme$=this.frameworkThemeSubject.asObservable()}requestThemeChange(v){this.frameworkThemeSubject.next(v),this.activeRequestedTheme=v}getActiveRequestedTheme(){return this.activeRequestedTheme}};y.\u0275fac=function(x){return new(x||y)},y.\u0275prov=Ie({token:y,factory:y.\u0275fac,providedIn:"root"});let s=y;return s})(),ou=(()=>{let y=class y{applyCssClasses(v,x,m){let W=this.widgetStyles()[v];(!W||Nn.default.isEmpty(W))&&(W=this.widgetStyles().default),Object.keys(W).forEach(B=>{let $=W[B];$.length&&(x[B]=ut(x[B],$)),m&&(x[B]=ut(x[B],m))})}flattenWidgetStyles(v){var x={};let m=["__themes__"];return Object.keys(v).forEach(W=>{let B=v[W];if(m.indexOf(W)>=0){x[W]=B;return}Nn.default.isArray(B)&&(x[W]=B.join(" ")),Nn.default.isObject(B)&&(x[W]=x[W]||{},Object.keys(B).forEach($=>{let k=B[$];Nn.default.isArray(k)?x[W][$]=k.join(" "):x[W][$]=k})),Nn.default.isString(B)&&(x[W]=B)}),x}constructor(){var $;this.changeDetector=zn(Rr),this.jsf=zn(ne),this.jsfFLService=zn(Re),this.cssFWService=zn(Oe),this.frameworkInitialized=!1,this.formControl=null,this.debugOutput="",this.debug="",this.parentArray=null,this.isOrderable=!1,this.layoutNode=vt(void 0),this.layoutIndex=vt(void 0),this.dataIndex=vt(void 0),this.widgetStyles=Js(void 0),this.defaultStyling={array:{},default:{fieldHtmlClass:"cssfw-form-control"},__themes__:[{name:"notheme",text:"None"}],__remove_item__:"cssfw-remove-item",__array_item_nonref__:{htmlClass:"cssfw-array-item-nonref"},__active__:{activeClass:"cssfw-active"},__array__:{htmlClass:"cssfw-array"},__control_label__:{labelHtmlClass:"cssfw-control-label"},__form_group__:{htmlClass:"cssfw-form-group"},__field_addon_left__:"cssfw-addon-left",__field_addon_right__:"cssfw-addon-right",__help_block__:"cssfw-help-block",__required_asterisk__:"cssfw-required-astersisk",__screen_reader__:"cssfw-screen-reader"};let v=this.cssFWService,m=this.jsfFLService.activeFramework.config||{};this.widgetStyles.set(Object.assign(this.defaultStyling,m.widgetstyles));let W=this.widgetStyles().__themes__[0],B=v.activeRequestedTheme||W.name;this.theme=(($=this.options)==null?void 0:$.theme)||B,this.frameworkThemeSubs=v.frameworkTheme$.subscribe(k=>{this.theme=k})}ngOnDestroy(){this.frameworkThemeSubs.unsubscribe(),this.frameworkThemeSubs=null}get showRemoveButton(){let v=this.layoutNode();return!this.options.removable||this.options.readonly||v.type==="$ref"?!1:v.recursiveReference?!0:!v.arrayItem||!this.parentArray||this.parentArray.items.length-1<=this.parentArray.options.minItems?!1:v.arrayItemType==="list"?!0:this.layoutIndex()[this.layoutIndex().length-1]===this.parentArray.items.length-2}ngOnInit(){this.initializeFramework();let v=this.layoutNode();v.arrayItem&&v.type!=="$ref"&&(this.parentArray=this.jsf.getParentNode(this),this.parentArray&&(this.isOrderable=v.arrayItemType==="list"&&!this.options.readonly&&this.parentArray.options.orderable))}ngOnChanges(){this.frameworkInitialized||this.initializeFramework()}initializeFramework(){let v=this.layoutNode();if(v){if(this.options=(0,Nn.cloneDeep)(v.options),this.widgetLayoutNode=Gs(qs({},v),{options:(0,Nn.cloneDeep)(v.options)}),this.widgetOptions=this.widgetLayoutNode.options,this.formControl=this.jsf.getFormControl(this),this.options.isInputWidget=tl(v.type,["button","checkbox","checkboxes-inline","checkboxes","color","date","datetime-local","datetime","email","file","hidden","image","integer","month","number","password","radio","radiobuttons","radios-inline","radios","range","reset","search","select","submit","tel","text","textarea","time","url","week"]),this.options.title=this.setTitle(),this.options.htmlClass=ut(this.options.htmlClass,"schema-form-"+v.type),v.type==="array"?this.options.htmlClass=ut(this.options.htmlClass,this.widgetStyles().__array__.htmlClass):v.arrayItem&&v.type!=="$ref"?this.options.htmlClass=ut(this.options.htmlClass,this.widgetStyles().__array_item_nonref__.htmlClass):this.options.htmlClass=ut(this.options.htmlClass,this.widgetStyles().__form_group__.htmlClass),this.widgetOptions.htmlClass="",this.options.labelHtmlClass=ut(this.options.labelHtmlClass,this.widgetStyles().__control_label__.labelHtmlClass),this.widgetOptions.activeClass=ut(this.widgetOptions.activeClass,this.widgetStyles().__active__.activeClass),this.options.fieldAddonLeft=this.options.fieldAddonLeft||this.options.prepend,this.options.fieldAddonRight=this.options.fieldAddonRight||this.options.append,this.options.title&&v.type!=="tab"&&!this.options.notitle&&this.options.required&&!this.options.title.includes("*")){let x=this.widgetStyles().__required_asterisk__||"text-danger";this.options.title+=` <strong class="${x}">*</strong>`}if(v.type=="optionfieldset"&&(this.options.messageLocation="top"),this.applyCssClasses(v.type,this.widgetOptions,this.options.style),this.formControl&&(this.updateHelpBlock(this.formControl.status),this.formControl.statusChanges.subscribe(x=>this.updateHelpBlock(x)),this.options.debug)){let x=[];this.debugOutput=(0,Nn.map)(x,m=>JSON.stringify(m,null,2)).join(`
21
+ `)}this.frameworkInitialized=!0}}updateHelpBlock(v){this.options.helpBlock=v==="INVALID"&&this.options.enableErrorState&&this.formControl.errors&&(this.formControl.dirty||this.options.feedbackOnRender)?this.jsf.formatErrors(this.formControl.errors,this.options.validationMessages):this.options.description||this.options.help||null}setTitle(){switch(this.layoutNode().type){case"button":case"checkbox":case"section":case"help":case"msg":case"submit":case"message":case"tabarray":case"tabs":case"$ref":return null;case"advancedfieldset":return this.widgetOptions.expandable=!0,this.widgetOptions.title="Advanced options",null;case"authfieldset":return this.widgetOptions.expandable=!0,this.widgetOptions.title="Authentication settings",null;case"fieldset":return this.widgetOptions.title=this.options.title,null;case"array":return this.widgetOptions.title=this.options.title,null;default:return this.widgetOptions.title=null,this.jsf.setItemTitle(this)}}removeItem(){this.jsf.removeItem(this)}};y.\u0275fac=function(x){return new(x||y)},y.\u0275cmp=Tr({type:y,selectors:[["css-framework"]],inputs:{layoutNode:[1,"layoutNode"],layoutIndex:[1,"layoutIndex"],dataIndex:[1,"dataIndex"],widgetStyles:[1,"widgetStyles"]},outputs:{widgetStyles:"widgetStylesChange"},standalone:!1,features:[Sr],decls:12,vars:24,consts:[["type","button",3,"class","click",4,"ngIf"],[4,"ngIf"],[3,"class","sr-only","innerHTML",4,"ngIf"],[3,"class","innerHTML",4,"ngIf"],[3,"layoutNode","dataIndex","layoutIndex"],["aria-hidden","true","class","form-control-feedback glyphicon",3,"glyphicon-ok","glyphicon-remove",4,"ngIf"],["type","button",3,"click"],["aria-hidden","true"],[3,"innerHTML"],["aria-hidden","true",1,"form-control-feedback","glyphicon"]],template:function(x,m){if(x&1&&(yn(0,"div"),yt(1,w_,5,4,"button",0)(2,x_,2,1,"div",1)(3,C_,1,6,"label",2)(4,b_,4,2,"p",1),yn(5,"div"),yt(6,A_,1,3,"span",3),Zn(7,"select-widget-widget",4),yt(8,I_,1,3,"span",3),On(),yt(9,S_,1,4,"span",5)(10,R_,2,1,"div",1),On(),yt(11,L_,4,1,"div",1)),x&2){let W,B,$,k;Kn((m.options==null?null:m.options.htmlClass)||""),Se("has-feedback",(m.options==null?null:m.options.feedback)&&(m.options==null?null:m.options.isInputWidget)&&((m.formControl==null?null:m.formControl.dirty)||(m.options==null?null:m.options.feedbackOnRender)))("has-error",(m.options==null?null:m.options.enableErrorState)&&(m.formControl==null?null:m.formControl.errors)&&((m.formControl==null?null:m.formControl.dirty)||(m.options==null?null:m.options.feedbackOnRender)))("has-success",(m.options==null?null:m.options.enableSuccessState)&&!(m.formControl!=null&&m.formControl.errors)&&((m.formControl==null?null:m.formControl.dirty)||(m.options==null?null:m.options.feedbackOnRender))),iu("data-bs-theme",m.theme)("data-theme",m.theme),nn(),Q("ngIf",m.showRemoveButton),nn(),Q("ngIf",(m.options==null?null:m.options.messageLocation)==="top"&&((W=m.layoutNode())==null?null:W.type)!=="array"),nn(),Q("ngIf",(m.options==null?null:m.options.title)&&((B=m.layoutNode())==null?null:B.type)!=="tab"&&((B=m.layoutNode())==null?null:B.type)!=="array"),nn(),Q("ngIf",(($=m.layoutNode())==null?null:$.type)==="submit"&&(m.jsf==null||m.jsf.formOptions==null?null:m.jsf.formOptions.fieldsRequired)),nn(),Se("input-group",(m.options==null?null:m.options.fieldAddonLeft)||(m.options==null?null:m.options.fieldAddonRight)),nn(),Q("ngIf",m.options==null?null:m.options.fieldAddonLeft),nn(),Q("layoutNode",m.widgetLayoutNode)("dataIndex",m.dataIndex())("layoutIndex",m.layoutIndex()),nn(),Q("ngIf",m.options==null?null:m.options.fieldAddonRight),nn(),Q("ngIf",(m.options==null?null:m.options.feedback)&&(m.options==null?null:m.options.isInputWidget)&&!(m.options!=null&&m.options.fieldAddonRight)&&!m.layoutNode().arrayItem&&((m.formControl==null?null:m.formControl.dirty)||(m.options==null?null:m.options.feedbackOnRender))),nn(),Q("ngIf",(m.options==null?null:m.options.messageLocation)!=="top"&&((k=m.layoutNode())==null?null:k.type)!=="array"),nn(),Q("ngIf",m.debug&&m.debugOutput)}},dependencies:[el,js],styles:[`:host ::ng-deep .list-group-item .form-control-feedback{top:40px}:host ::ng-deep .checkbox,:host ::ng-deep .radio{margin-top:0;margin-bottom:0}:host ::ng-deep .checkbox-inline,:host ::ng-deep .checkbox-inline+.checkbox-inline,:host ::ng-deep .checkbox-inline+.radio-inline,:host ::ng-deep .radio-inline,:host ::ng-deep .radio-inline+.radio-inline,:host ::ng-deep .radio-inline+.checkbox-inline{margin-left:0;margin-right:10px}:host ::ng-deep .checkbox-inline:last-child,:host ::ng-deep .radio-inline:last-child{margin-right:0}:host ::ng-deep .ng-invalid.ng-touched{border:1px solid #f44336}.checkbox-inline,.checkbox-inline+.checkbox-inline,.checkbox-inline+.radio-inline,.radio-inline,.radio-inline+.radio-inline,.radio-inline+.checkbox-inline{margin-left:0;margin-right:10px}.checkbox-inline:last-child,.radio-inline:last-child{margin-right:0}.ng-invalid.ng-touched{border:1px solid #f44336}
22
+ `],encapsulation:2});let s=y;return s})(),E_=new zs("CSS_FRAMEWORK_CFG"),_l;(function(s){class y{}s.csscategories=y})(_l||(_l={}));var ml=(()=>{let y=class y{};y.\u0275fac=function(x){return new(x||y)},y.\u0275mod=wt({type:y}),y.\u0275inj=mt({providers:[ne,Re,Fr,Oe],imports:[Le,xt,Wr]});let s=y;return s})(),vl=(()=>{let y=class y extends Mr{constructor(v){super(),this.cssFWService=zn(Oe),this.name="css",this.framework=ou,this.name=v.name,this.text=v.text||this.name,this.stylesheets=v.stylesheets,this.scripts=v.scripts,this.config=v,this.widgets=v.widgets}getActiveTheme(){var W,B;let v=this.cssFWService.getActiveRequestedTheme(),x=(B=(W=this.config)==null?void 0:W.widgetstyles)==null?void 0:B.__themes__,m=x&&x[0];if(v&&(m={name:v,text:v},x)){let $=x.filter(k=>k.name==v);m=$&&$[0]||m}return m}requestThemeChange(v){this.cssFWService.requestThemeChange(v)}registerTheme(v,x=!0){var B,$;let W=((($=(B=this.config)==null?void 0:B.widgetstyles)==null?void 0:$.__themes__)||[]).filter(k=>v.name==k.name);if(W&&W[0]){if(x)return W[0].text=v.text,!0;if(!x)return!1}if(!W||W.length==0){let k=this.config;return k.widgetstyles=this.config.widgetstyles||{},k.widgetstyles.__themes__=k.widgetstyles.__themes__||[],k.widgetstyles.__themes__.push(v),!0}}unregisterTheme(v){var W,B;let x=(B=(W=this.config)==null?void 0:W.widgetstyles)==null?void 0:B.__themes__,m=-1;return x&&(x.forEach(($,k)=>{v==$.name&&(m=k)}),m>=0)?(x.splice(m,1),!0):!1}getConfig(){return this.config}};y.\u0275fac=function(x){return new(x||y)(Ks(E_))},y.\u0275prov=Ie({token:y,factory:y.\u0275fac});let s=y;return s})();var M_=(()=>{let y=class y{constructor(){this.changeDetector=zn(Rr),this.jsf=zn(ne),this.frameworkInitialized=!1,this.formControl=null,this.debugOutput="",this.debug="",this.parentArray=null,this.isOrderable=!1,this.layoutNode=vt(void 0),this.layoutIndex=vt(void 0),this.dataIndex=vt(void 0)}ngOnInit(){}ngOnChanges(){}};y.\u0275fac=function(x){return new(x||y)},y.\u0275cmp=Tr({type:y,selectors:[["bootstrap-5-framework"]],inputs:{layoutNode:[1,"layoutNode"],layoutIndex:[1,"layoutIndex"],dataIndex:[1,"dataIndex"]},standalone:!1,features:[Sr],decls:2,vars:3,consts:[[3,"layoutNode","layoutIndex","dataIndex"]],template:function(x,m){x&1&&(yn(0,"div"),Zn(1,"css-framework",0),On()),x&2&&(nn(),Q("layoutNode",m.layoutNode())("layoutIndex",m.layoutIndex())("dataIndex",m.dataIndex()))},dependencies:[ou],styles:[`:host ::ng-deep .list-group-item .list-group-item-hb .form-control-feedback{top:40px}:host ::ng-deep .checkbox,:host ::ng-deep .radio{margin-top:0;margin-bottom:0}:host ::ng-deep .checkbox-inline,:host ::ng-deep .checkbox-inline+.checkbox-inline,:host ::ng-deep .checkbox-inline+.radio-inline,:host ::ng-deep .radio-inline,:host ::ng-deep .radio-inline+.radio-inline,:host ::ng-deep .radio-inline+.checkbox-inline{margin-left:0;margin-right:10px}:host ::ng-deep .checkbox-inline:last-child,:host ::ng-deep .radio-inline:last-child{margin-right:0}:host ::ng-deep .ng-invalid.ng-touched{border:1px solid #f44336}.input-group .form-control:first-child,.input-group-text:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-text:first-child{border-right:0}.input-group .form-control:last-child,.input-group-text:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-text:last-child{border-left:0}.input-group .form-control:not(:first-child):not(:last-child),.input-group-text:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.btn-close>span:first-child{display:none}
23
+ `],encapsulation:2});let s=y;return s})(),F_={name:"bootstrap-5",text:"Bootstrap 5",scripts:["//cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js"],stylesheets:["//cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css"],widgetstyles:{__themes__:[{name:"bootstrap5_default",text:"Bootstrap5 default"},{name:"dark",text:"Dark"},{name:"light",text:"Light"}],$ref:{fieldHtmlClass:"btn float-end btn-primary"},__array_item_nonref__:{htmlClass:"list-group-item list-group-item-hb"},__form_group__:{htmlClass:"form-group"},__control_label__:{labelHtmlClass:"control-label"},__active__:{activeClass:"active"},__required_asterisk__:"text-danger",__screen_reader__:"visually-hidden",__remove_item__:"btn-close float-end",__help_block__:"help-block grey-text small",__field_addon_left__:"input-group-text",__field_addon_right__:"input-group-text","alt-date":{},"alt-datetime":{},__array__:{htmlClass:"list-group list-group-hb"},array:{},authfieldset:{},advancedfieldset:{},button:{fieldHtmlClass:"btn btn-sm btn-primary"},checkbox:{fieldHtmlClass:"checkbox"},checkboxes:{fieldHtmlClass:"checkbox"},checkboxbuttons:{fieldHtmlClass:"visually-hidden",htmlClass:"btn-group",itemLabelHtmlClass:"btn"},"checkboxes-inline":{htmlClass:"checkbox",itemLabelHtmlClass:"checkbox-inline"},date:{},"datetime-local":{},fieldset:{},integer:{},number:{},optionfieldset:{},password:{},radiobuttons:{fieldHtmlClass:"visually-hidden",htmlClass:"btn-group",itemLabelHtmlClass:"btn"},radio:{fieldHtmlClass:"radio"},radios:{fieldHtmlClass:"radio"},"radios-inline":{htmlClass:"radio",itemLabelHtmlClass:"radio-inline"},range:{},section:{},selectfieldset:{},select:{},submit:{fieldHtmlClass:"btn btn-primary"},text:{},tabs:{labelHtmlClass:"nav nav-tabs",htmlClass:"tab-content",fieldHtmlClass:"tab-pane"},tabarray:{labelHtmlClass:"nav nav-tabs",htmlClass:"tab-content",fieldHtmlClass:"tab-pane"},textarea:{},default:{fieldHtmlClass:"form-control"}}},W_=(()=>{let y=class y extends vl{constructor(){let v=zn(Oe);super(F_),this.framework=M_,this.cssFWService=v}};y.\u0275fac=function(x){return new(x||y)},y.\u0275prov=Ie({token:y,factory:y.\u0275fac});let s=y;return s})(),wl=(()=>{let y=class y{};y.\u0275fac=function(x){return new(x||y)},y.\u0275mod=wt({type:y}),y.\u0275inj=mt({providers:[ne,Re,Fr,{provide:Mr,useClass:W_,multi:!0}],imports:[Le,xt,Wr,ml,Le]});let s=y;return s})();var yl=(()=>{class s{static \u0275fac=function(v){return new(v||s)};static \u0275mod=wt({type:s});static \u0275inj=mt({providers:[ul],imports:[xt,Te,Lr,Er,Or.forChild(),wl,Pr,rl,il]})}return s})();var $0=(()=>{class s{static \u0275fac=function(v){return new(v||s)};static \u0275mod=wt({type:s});static \u0275inj=mt({providers:[pl],imports:[xt,Lr,Er,Or.forChild(),Te,Pr,nl,Te,yl,cl,ol,hl,al,ll,sl,fl,dl]})}return s})();export{$0 as a};