homebridge-config-ui-x 5.4.2-beta.2 → 5.4.2-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. package/CHANGELOG.md +1 -2
  2. package/package.json +9 -9
  3. package/public/3rdpartylicenses.txt +94 -68
  4. package/public/{chunk-FMHXNJHJ.js → chunk-2NAVB356.js} +1 -1
  5. package/public/{chunk-QX6BFGHZ.js → chunk-3DFE4GXY.js} +1 -1
  6. package/public/{chunk-JL4UQXPL.js → chunk-3UIJNMSW.js} +1 -1
  7. package/public/{chunk-PA5E2G2J.js → chunk-4CLVNAHT.js} +1 -1
  8. package/public/chunk-4UTOOZ43.js +1 -0
  9. package/public/{chunk-ZKQAULZM.js → chunk-5FLIEMLS.js} +1 -1
  10. package/public/{chunk-DFFTJVRY.js → chunk-5KFQUVTY.js} +1 -1
  11. package/public/{chunk-HT7KLIKB.js → chunk-65PMNYAH.js} +1 -1
  12. package/public/{chunk-KZKL7DGI.js → chunk-6FXNHKMA.js} +1 -1
  13. package/public/{chunk-H45DK7IX.js → chunk-6N2SOTOL.js} +1 -1
  14. package/public/{chunk-3POLSI6J.js → chunk-6PIVLJE3.js} +1 -1
  15. package/public/chunk-A7RVV6F7.js +12 -0
  16. package/public/{chunk-CN4SGKOR.js → chunk-AJ544VQP.js} +1 -1
  17. package/public/{chunk-ZLYGOSRJ.js → chunk-AM4V2PYB.js} +1 -1
  18. package/public/{chunk-IWFKJHPR.js → chunk-BEYU5GMW.js} +1 -1
  19. package/public/{chunk-WX32WZFA.js → chunk-BMCHWK5R.js} +1 -1
  20. package/public/{chunk-MHTCWHP3.js → chunk-BU7BW6HI.js} +1 -1
  21. package/public/chunk-C46JKCQN.js +49 -0
  22. package/public/{chunk-LXAXEGMX.js → chunk-CF5KPFXL.js} +1 -1
  23. package/public/{chunk-D7VCPH6W.js → chunk-CQKCDD3I.js} +1 -1
  24. package/public/{chunk-G3JSRG2Q.js → chunk-D6EXTZUP.js} +1 -1
  25. package/public/{chunk-2C3X2ESN.js → chunk-DD4UIDDU.js} +1 -1
  26. package/public/{chunk-FG5GS755.js → chunk-DNZDV4RS.js} +1 -1
  27. package/public/{chunk-WTDK2HE6.js → chunk-E5M5VUTV.js} +1 -1
  28. package/public/{chunk-GHMFFLJG.js → chunk-ECNGRFJK.js} +1 -1
  29. package/public/{chunk-NHNGZ4PI.js → chunk-EJDV7XKC.js} +1 -1
  30. package/public/{chunk-ZUTM7S4U.js → chunk-FVSVQWIM.js} +1 -1
  31. package/public/{chunk-FXJWZ2UF.js → chunk-G3CSSNW3.js} +1 -1
  32. package/public/{chunk-A5YMO7NI.js → chunk-GRIYVNF3.js} +1 -1
  33. package/public/{chunk-BO3HTTPA.js → chunk-HBAZZ6IF.js} +1 -1
  34. package/public/{chunk-R3KUMAWN.js → chunk-HRJPJKGB.js} +1 -1
  35. package/public/{chunk-7ZUAPFH6.js → chunk-IPDYD72M.js} +1 -1
  36. package/public/{chunk-FSWVJTPN.js → chunk-IQLQN2PI.js} +1 -1
  37. package/public/{chunk-SULJOYSB.js → chunk-KZ2GXUPY.js} +1 -1
  38. package/public/chunk-L2TPDZKX.js +1 -0
  39. package/public/{chunk-RZXCKXEZ.js → chunk-LRGNBIU3.js} +1 -1
  40. package/public/{chunk-CMOVUX6R.js → chunk-NFD7N6TO.js} +1 -1
  41. package/public/chunk-NUNQT5W4.js +1 -0
  42. package/public/{chunk-J6CJ26QN.js → chunk-OPYWX2UT.js} +1 -1
  43. package/public/{chunk-HWAWBYVQ.js → chunk-OUS4RGQP.js} +1 -1
  44. package/public/{chunk-WCOLHYTR.js → chunk-P5LYIXY6.js} +1 -1
  45. package/public/{chunk-TR3AIWBS.js → chunk-PJK6T327.js} +1 -1
  46. package/public/{chunk-FVKMBZOU.js → chunk-PMVD4FUJ.js} +1 -1
  47. package/public/{chunk-OA7Y3E5A.js → chunk-PP5MH7GY.js} +1 -1
  48. package/public/{chunk-FUTRU3DJ.js → chunk-PTKDVHHF.js} +1 -1
  49. package/public/{chunk-H5WTK5UT.js → chunk-QNF5ENQG.js} +1 -1
  50. package/public/chunk-S6BU4TS5.js +1 -0
  51. package/public/{chunk-NDBMU5RD.js → chunk-SOTPTYAE.js} +1 -1
  52. package/public/{chunk-QE27FJRU.js → chunk-TKDK5GOM.js} +1 -1
  53. package/public/{chunk-6CQ7JJUY.js → chunk-U36QM5TK.js} +1 -1
  54. package/public/{chunk-FCJZJIQL.js → chunk-UGTMSVFO.js} +1 -1
  55. package/public/{chunk-QVCO7S7N.js → chunk-UMJPLO77.js} +1 -1
  56. package/public/{chunk-OYULLXTP.js → chunk-UVNXQ7V7.js} +1 -1
  57. package/public/chunk-V2CLR7D3.js +4 -0
  58. package/public/{chunk-BG7RRQGG.js → chunk-WB2IGKUB.js} +1 -1
  59. package/public/{chunk-5E4D6S2D.js → chunk-WCMFALUQ.js} +1 -1
  60. package/public/chunk-WMIMAPZH.js +1 -0
  61. package/public/{chunk-NORBG6QU.js → chunk-XMBAELKQ.js} +1 -1
  62. package/public/{chunk-TWIBESLE.js → chunk-XP7ETORR.js} +1 -1
  63. package/public/{chunk-IOKYXV5M.js → chunk-XWYKEZQQ.js} +3 -3
  64. package/public/{chunk-SL5FI37R.js → chunk-YCP2AG74.js} +1 -1
  65. package/public/{chunk-Z2T4OZ7I.js → chunk-YERWTYFA.js} +1 -1
  66. package/public/{chunk-X5YIKTO6.js → chunk-YN2LC5EB.js} +1 -1
  67. package/public/{chunk-ZAIVLZNZ.js → chunk-YXBNP3EJ.js} +1 -1
  68. package/public/{chunk-5VJLO72Y.js → chunk-YXZNLKQN.js} +1 -1
  69. package/public/{chunk-WYMH5QZG.js → chunk-YZRL3CBQ.js} +1 -1
  70. package/public/{chunk-V6JVOQNN.js → chunk-ZM5B4KXN.js} +1 -1
  71. package/public/{chunk-6E4QOLAB.js → chunk-ZX5OT7EF.js} +1 -1
  72. package/public/{chunk-RHZTPEXE.js → chunk-ZZ26PFQM.js} +1 -1
  73. package/public/index.html +1 -1
  74. package/public/main-EG2RTPMA.js +1 -0
  75. package/public/assets/service-icons/air-purifier.svg +0 -50
  76. package/public/assets/service-icons/air-quality-sensor.svg +0 -30
  77. package/public/assets/service-icons/carbon-dioxide-sensor.svg +0 -53
  78. package/public/assets/service-icons/carbon-monoxide-sensor.svg +0 -53
  79. package/public/assets/service-icons/contact-sensor.svg +0 -45
  80. package/public/assets/service-icons/door.svg +0 -49
  81. package/public/assets/service-icons/doorbell.svg +0 -7
  82. package/public/assets/service-icons/fan.svg +0 -15
  83. package/public/assets/service-icons/filter-maintenance.svg +0 -54
  84. package/public/assets/service-icons/garage-door.svg +0 -120
  85. package/public/assets/service-icons/irrigation-system.svg +0 -34
  86. package/public/assets/service-icons/leak-sensor.svg +0 -42
  87. package/public/assets/service-icons/light-sensor.svg +0 -34
  88. package/public/assets/service-icons/lock-mechanism.svg +0 -39
  89. package/public/assets/service-icons/microphone.svg +0 -12
  90. package/public/assets/service-icons/motion-sensor.svg +0 -84
  91. package/public/assets/service-icons/occupancy-sensor.svg +0 -49
  92. package/public/assets/service-icons/robot-vacuum.svg +0 -76
  93. package/public/assets/service-icons/security-system.svg +0 -19
  94. package/public/assets/service-icons/smoke-sensor.svg +0 -38
  95. package/public/assets/service-icons/speaker.svg +0 -28
  96. package/public/assets/service-icons/stateless-programmable-switch.svg +0 -18
  97. package/public/assets/service-icons/television.svg +0 -17
  98. package/public/assets/service-icons/valve-faucet.svg +0 -22
  99. package/public/assets/service-icons/valve-generic.svg +0 -25
  100. package/public/assets/service-icons/valve-irrigation.svg +0 -34
  101. package/public/assets/service-icons/valve-shower-head.svg +0 -32
  102. package/public/assets/service-icons/washing-machine.svg +0 -34
  103. package/public/assets/service-icons/window-covering.svg +0 -44
  104. package/public/assets/service-icons/window.svg +0 -71
  105. package/public/chunk-2H6KO42L.js +0 -1
  106. package/public/chunk-3M6IUC74.js +0 -1
  107. package/public/chunk-5PN3M3TS.js +0 -1
  108. package/public/chunk-7EQFLCW4.js +0 -1
  109. package/public/chunk-BEPC7IPQ.js +0 -23
  110. package/public/chunk-JFPT3QXX.js +0 -30
  111. package/public/chunk-LDCR6K2U.js +0 -12
  112. package/public/chunk-Q3EG5UQP.js +0 -1
  113. package/public/main-ILQAVUPM.js +0 -1
@@ -1,19 +0,0 @@
1
- <svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- siren dome -->
3
- <path
4
- class="dome"
5
- d="M7 18 C7 5, 25 5, 25 18 V26 H7 V18 Z"
6
- fill="none"
7
- stroke="#7f7f7f"
8
- stroke-width="1.5"
9
- fill-opacity="0.5"
10
- />
11
-
12
- <!-- base -->
13
- <rect x="2" y="26" width="28" height="4" fill="none" stroke="#7f7f7f" stroke-width="1.5" rx="1" />
14
-
15
- <!-- light waves left to right -->
16
- <line class="ray" x1="6" y1="3" x2="10" y2="7" stroke-width="3" />
17
- <line class="ray" x1="16" y1="0" x2="16" y2="5" stroke-width="3" />
18
- <line class="ray" x1="26" y1="3" x2="22" y2="7" stroke-width="3" />
19
- </svg>
@@ -1,38 +0,0 @@
1
- <svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- outer casing -->
3
- <rect x="1" y="1" width="30" height="12" rx="1" stroke="#7f7f7f" fill="none" stroke-width="1.25" />
4
-
5
- <!-- alarm type -->
6
- <text
7
- class="type"
8
- text-anchor="middle"
9
- dominant-baseline="middle"
10
- font-family="Arial"
11
- font-size="7.5"
12
- x="16"
13
- y="7.7"
14
- fill="#7f7f7f"
15
- stroke-width="0.6"
16
- font-weight="900"
17
- >
18
- SMOKE
19
- </text>
20
-
21
- <!-- grille blue background -->
22
- <line x1="6" y1="14.5" x2="25.5" y2="14.5" stroke="#1976d2" stroke-opacity="0.5" stroke-width="2" />
23
-
24
- <!-- grille vertical lines -->
25
- <line stroke-linecap="round" x1="5" y1="13" x2="6.5" y2="16" stroke="#7f7f7f" stroke-width="1.25" />
26
- <line stroke-linecap="round" x1="11" y1="13" x2="11" y2="16" stroke="#7f7f7f" stroke-width="1" />
27
- <line stroke-linecap="round" x1="15.5" y1="13" x2="15.5" y2="16" stroke="#7f7f7f" stroke-width="1" />
28
- <line stroke-linecap="round" x1="20" y1="13" x2="20" y2="16" stroke="#7f7f7f" stroke-width="1" />
29
- <line stroke-linecap="round" x1="26" y1="13" x2="24.5" y2="16" stroke="#7f7f7f" stroke-width="1.25" />
30
-
31
- <!-- grille horizontal lines -->
32
- <line stroke-linecap="round" x1="6.5" y1="16" x2="24.5" y2="16" stroke="#7f7f7f" stroke-width="1.25" />
33
-
34
- <!-- left to right air lines -->
35
- <line stroke-linecap="round" x1="11" y1="21" x2="6" y2="27" stroke="#7f7f7f" stroke-width="1.25" class="air-line" />
36
- <line stroke-linecap="round" x1="16" y1="21" x2="16" y2="31" stroke="#7f7f7f" stroke-width="1.25" class="air-line" />
37
- <line stroke-linecap="round" x1="21" y1="21" x2="26" y2="27" stroke="#7f7f7f" stroke-width="1.25" class="air-line" />
38
- </svg>
@@ -1,28 +0,0 @@
1
- <svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- outer casing -->
3
- <rect x="6" y="1" width="20" height="30" rx="3" stroke="#7f7f7f" fill="none" stroke-width="1" />
4
-
5
- <!-- outer top speaker circle -->
6
- <circle cx="16" cy="9" r="4.5" stroke="#7f7f7f" stroke-width="0" fill="#7f7f7f" />
7
-
8
- <!-- inner top speaker circle -->
9
- <circle class="inner" cx="16" cy="9" r="1.5" stroke="#7f7f7f" stroke-width="0" fill="#e1e1e1" />
10
-
11
- <!-- outer bottom speaker circle -->
12
- <circle cx="16" cy="22" r="6" stroke="#7f7f7f" stroke-width="0" fill="#7f7f7f" />
13
-
14
- <!-- inner bottom speaker circle -->
15
- <circle class="inner" cx="16" cy="22" r="2" stroke="#7f7f7f" stroke-width="0" fill="#e1e1e1" />
16
-
17
- <!-- inner left sound wave -->
18
- <path class="wave-inner" d="M4,12 Q1,16 4,20" stroke="#1976d2" fill="none" stroke-width="1" stroke-opacity="0" />
19
-
20
- <!-- outer left sound wave -->
21
- <path class="wave-outer" d="M3,10 Q-2,16 3,22" stroke="#1976d2" fill="none" stroke-width="1" stroke-opacity="0" />
22
-
23
- <!-- inner right sound wave -->
24
- <path class="wave-inner" d="M28,12 Q31,16 28,20" stroke="#1976d2" fill="none" stroke-width="1" stroke-opacity="0" />
25
-
26
- <!-- outer right sound wave -->
27
- <path class="wave-outer" d="M29,10 Q34,16 29,22" stroke="#1976d2" fill="none" stroke-width="1" stroke-opacity="0" />
28
- </svg>
@@ -1,18 +0,0 @@
1
- <svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- frame -->
3
- <rect x="1" y="1" width="30" height="30" rx="3" stroke="#7f7f7f" fill="none" stroke-width="2" />
4
-
5
- <!-- single click -->
6
- <circle class="single" cx="8.5" cy="9.5" r="5" stroke="#7f7f7f" stroke-width="1" fill="none" fill-opacity="0.5" />
7
-
8
- <!-- double click, outer then inner -->
9
- <circle class="double" cx="23.5" cy="9.5" r="5" stroke="#7f7f7f" stroke-width="1" fill="none" fill-opacity="0.5" />
10
- <circle cx="23.5" cy="9.5" r="3" stroke="#7f7f7f" stroke-width="1" fill="none" />
11
-
12
- <!-- long click -->
13
- <circle class="long" cx="16" cy="23.5" r="5" stroke="#7f7f7f" stroke-width="1" fill="none" fill-opacity="0.5" />
14
-
15
- <!-- long click lies, left then right -->
16
- <line x1="5" y1="23.5" x2="11" y2="23.5" stroke="#7f7f7f" stroke-width="0.5" stroke-linecap="round" />
17
- <line x1="21" y1="23.5" x2="27" y2="23.5" stroke="#7f7f7f" stroke-width="0.5" stroke-linecap="round" />
18
- </svg>
@@ -1,17 +0,0 @@
1
- <svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- stand -->
3
- <line
4
- class="stand"
5
- x1="10"
6
- y1="27.25"
7
- x2="22"
8
- y2="27.25"
9
- stroke="#d32f2f"
10
- stroke-width="4"
11
- stroke-linecap="round"
12
- stroke-opacity="0.75"
13
- />
14
-
15
- <!-- frame -->
16
- <rect class="screen" x="1" y="6" width="30" height="20" rx="2" stroke="#7f7f7f" fill="#808080" stroke-width="1.5" />
17
- </svg>
@@ -1,22 +0,0 @@
1
- <svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- sink -->
3
- <rect class="sink" x="-3" y="28" width="21" height="6.5" fill="#7f7f7f" stroke-width="0" fill-opacity="0.5" />
4
-
5
- <!-- cold tap -->
6
- <line stroke-linecap="round" x1="24" y1="18" x2="26" y2="18" stroke="#1976d2" stroke-width="3" stroke-opacity="0.5" />
7
-
8
- <!-- hot tap -->
9
- <line stroke-linecap="round" x1="20" y1="18" x2="22" y2="18" stroke="#d32f2f" stroke-width="3" stroke-opacity="0.5" />
10
-
11
- <!-- tap outline -->
12
- <rect x="19" y="16.5" rx="1" width="8" height="3" fill="none" stroke-width="1" stroke="#7f7f7f" />
13
-
14
- <!-- tap shape -->
15
- <path d="M10 9 C10 -1, 23 -1, 23 10 V26" fill="none" stroke="#7f7f7f" stroke-width="2" />
16
-
17
- <!-- water -->
18
- <line class="stream" x1="10" y1="9" x2="10" y2="28" stroke="#1976d2" stroke-opacity="0" stroke-width="1.5" />
19
-
20
- <!-- tap base -->
21
- <line x1="20" y1="31" x2="26" y2="31" stroke="#7f7f7f" stroke-width="10" stroke-linecap="round" />
22
- </svg>
@@ -1,25 +0,0 @@
1
- <svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- top twister -->
3
- <line x1="8" y1="3" x2="14" y2="3" stroke="#7f7f7f" stroke-width="3" stroke-linecap="round" />
4
-
5
- <!-- twister to main pipe -->
6
- <line x1="11" y1="8" x2="11" y2="3" stroke="#7f7f7f" stroke-width="3" stroke-linecap="round" />
7
-
8
- <!-- main pipe -->
9
- <line x1="0" y1="9" x2="21" y2="9" stroke="#7f7f7f" stroke-width="4" stroke-linecap="round" />
10
-
11
- <!-- nozzle -->
12
- <line x1="21" y1="9" x2="21" y2="14" stroke="#7f7f7f" stroke-width="4" stroke-linecap="round" />
13
-
14
- <!-- top row of drops -->
15
- <circle class="drop drop-top" fill="#1976d2" fill-opacity="0" cx="21" cy="19" r="1.5" />
16
-
17
- <!-- middle row of drops -->
18
- <circle class="drop drop-middle" fill="#1976d2" fill-opacity="0" cx="17" cy="24" r="1.5" />
19
- <circle class="drop drop-middle" fill="#1976d2" fill-opacity="0" cx="25" cy="24" r="1.5" />
20
-
21
- <!-- bottom row of drops -->
22
- <circle class="drop drop-bottom" fill="#1976d2" fill-opacity="0" cx="13" cy="29" r="1.5" />
23
- <circle class="drop drop-bottom" fill="#1976d2" fill-opacity="0" cx="21" cy="29" r="1.5" />
24
- <circle class="drop drop-bottom" fill="#1976d2" fill-opacity="0" cx="29" cy="29" r="1.5" />
25
- </svg>
@@ -1,34 +0,0 @@
1
- <svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- small drops, left to right -->
3
- <circle class="drop drop-out" fill="#1976d2" fill-opacity="0" cx="1" cy="16" r="1" />
4
- <circle class="drop drop-out" fill="#1976d2" fill-opacity="0" cx="6" cy="8" r="1" />
5
- <circle class="drop drop-out" fill="#1976d2" fill-opacity="0" cx="16" cy="4" r="1" />
6
- <circle class="drop drop-out" fill="#1976d2" fill-opacity="0" cx="26" cy="8" r="1" />
7
- <circle class="drop drop-out" fill="#1976d2" fill-opacity="0" cx="31" cy="16" r="1" />
8
-
9
- <!-- large drops, left to right -->
10
- <circle class="drop drop-in" fill="#1976d2" fill-opacity="0" cx="7" cy="16" r="1.5" />
11
- <circle class="drop drop-in" fill="#1976d2" fill-opacity="0" cx="25" cy="16" r="1.5" />
12
- <circle class="drop drop-in" fill="#1976d2" fill-opacity="0" cx="10.5" cy="11.5" r="1.5" />
13
- <circle class="drop drop-in" fill="#1976d2" fill-opacity="0" cx="21.5" cy="11.5" r="1.5" />
14
- <circle class="drop drop-in" fill="#1976d2" fill-opacity="0" cx="16" cy="9" r="1.5" />
15
-
16
- <!-- vertical pipe -->
17
- <line x1="16" y1="16" x2="16" y2="31" stroke="#7f7f7f" stroke-width="2" stroke-linecap="round" />
18
-
19
- <!-- spout -->
20
- <line x1="14" y1="16" x2="18" y2="16" stroke="#7f7f7f" stroke-width="4" stroke-linecap="round" />
21
-
22
- <!-- grass -->
23
- <line
24
- class="grass"
25
- x1="4"
26
- y1="31"
27
- x2="28"
28
- y2="31"
29
- stroke="#7f7f7f"
30
- stroke-opacity="0.5"
31
- stroke-width="10"
32
- stroke-linecap="round"
33
- />
34
- </svg>
@@ -1,32 +0,0 @@
1
- <svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- top horizontal pipe -->
3
- <line x1="1" y1="1" x2="16" y2="1" stroke="#7f7f7f" stroke-width="2" stroke-linecap="round" />
4
-
5
- <!-- left vertical pipe -->
6
- <line x1="1" y1="1" x2="1" y2="31" stroke="#7f7f7f" stroke-width="2" stroke-linecap="round" />
7
-
8
- <!-- pipe to head -->
9
- <line x1="16" y1="1" x2="16" y2="3" stroke="#7f7f7f" stroke-width="2" stroke-linecap="round" />
10
-
11
- <!-- shower head -->
12
- <path d="M8 11 A8 7 0 0 1 24 11" fill="none" stroke="#7f7f7f" stroke-width="2" />
13
- <line x1="7" y1="11" x2="25" y2="11" stroke="#7f7f7f" stroke-width="2" stroke-linecap="round" />
14
-
15
- <!-- large drops, left to right -->
16
- <circle class="drop drop-top" fill="#1976d2" fill-opacity="0" cx="8" cy="16" r="1.25" />
17
- <circle class="drop drop-top" fill="#1976d2" fill-opacity="0" cx="13.3" cy="16" r="1.25" />
18
- <circle class="drop drop-top" fill="#1976d2" fill-opacity="0" cx="18.6" cy="16" r="1.25" />
19
- <circle class="drop drop-top" fill="#1976d2" fill-opacity="0" cx="24" cy="16" r="1.25" />
20
-
21
- <!-- middle drops, left to right -->
22
- <circle class="drop drop-middle" fill="#1976d2" fill-opacity="0" cx="8" cy="22" r="1" />
23
- <circle class="drop drop-middle" fill="#1976d2" fill-opacity="0" cx="13.3" cy="22" r="1" />
24
- <circle class="drop drop-middle" fill="#1976d2" fill-opacity="0" cx="18.6" cy="22" r="1" />
25
- <circle class="drop drop-middle" fill="#1976d2" fill-opacity="0" cx="24" cy="22" r="1" />
26
-
27
- <!-- small drops, left to right -->
28
- <circle class="drop drop-bottom" fill="#1976d2" fill-opacity="0" cx="8" cy="28" r="0.75" />
29
- <circle class="drop drop-bottom" fill="#1976d2" fill-opacity="0" cx="13.3" cy="28" r="0.75" />
30
- <circle class="drop drop-bottom" fill="#1976d2" fill-opacity="0" cx="18.6" cy="28" r="0.75" />
31
- <circle class="drop drop-bottom" fill="#1976d2" fill-opacity="0" cx="24" cy="28" r="0.75" />
32
- </svg>
@@ -1,34 +0,0 @@
1
- <svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- outer casing -->
3
- <rect x="3" y="1" width="25" height="30" rx="2" stroke="#7f7f7f" fill="none" stroke-width="1.2" />
4
-
5
- <!-- top drawer -->
6
- <rect x="6" y="4" width="5" rx="0.5" height="4" stroke="#7f7f7f" fill="none" stroke-width="0.5" />
7
- <rect x="7" y="6" width="3" rx="0.25" height="1" stroke="#7f7f7f" fill="none" stroke-width="0.25" />
8
-
9
- <!-- control panel + buttons -->
10
- <rect x="14" y="4" width="11" height="4" rx="0.5" fill="none" stroke="#7f7f7f" stroke-width="0.5" />
11
- <rect
12
- x="19"
13
- y="5"
14
- width="5"
15
- height="2"
16
- rx="0.25"
17
- fill="#1976d2"
18
- fill-opacity="0.5"
19
- stroke="#7f7f7f"
20
- stroke-width="0.25"
21
- />
22
- <rect x="15" y="5" width="1" height="1" rx="0.25" fill="none" stroke="#7f7f7f" stroke-width="0.25" />
23
- <rect x="16" y="5" width="1" height="1" rx="0.25" fill="none" stroke="#7f7f7f" stroke-width="0.25" />
24
- <rect x="17" y="5" width="1" height="1" rx="0.25" fill="none" stroke="#7f7f7f" stroke-width="0.25" />
25
- <rect x="15" y="6" width="1" height="1" rx="0.25" fill="none" stroke="#7f7f7f" stroke-width="0.25" />
26
- <rect x="16" y="6" width="1" height="1" rx="0.25" fill="none" stroke="#7f7f7f" stroke-width="0.25" />
27
- <rect x="17" y="6" width="1" height="1" rx="0.25" fill="none" stroke="#7f7f7f" stroke-width="0.25" />
28
-
29
- <!-- drum handle -->
30
- <rect class="handle" x="19" y="15.5" rx="1" width="3" height="3" fill="#7f7f7f" />
31
-
32
- <!-- drum -->
33
- <circle cx="15.5" cy="17" r="6.5" stroke="#7f7f7f" fill="none" stroke-width="1.2" />
34
- </svg>
@@ -1,44 +0,0 @@
1
- <svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- outer frame -->
3
- <rect x="1" y="0.8" width="30" height="30.2" rx="0.5" stroke="#7f7f7f" fill="none" stroke-width="1.5" />
4
-
5
- <!-- left window frame -->
6
- <rect x="2.8" y="2.6" width="12.4" height="26.6" stroke="#7f7f7f" fill="none" stroke-width="1" />
7
-
8
- <!-- left window divider -->
9
- <rect x="3.66" y="15.65" width="10.68" height="0.5" stroke="#7f7f7f" fill="none" stroke-width="0.5" rx="2" />
10
-
11
- <!-- right window frame -->
12
- <rect x="16.8" y="2.6" width="12.4" height="26.6" stroke="#7f7f7f" fill="none" stroke-width="1" />
13
-
14
- <!-- right window divider -->
15
- <rect x="17.66" y="15.65" width="10.68" height="0.5" stroke="#7f7f7f" fill="none" stroke-width="0.5" rx="2" />
16
-
17
- <!-- blind -->
18
- <rect
19
- class="c-blinds"
20
- x="2.3"
21
- y="2.1"
22
- width="27.4"
23
- height="27.6"
24
- stroke="#808080"
25
- fill="#808080"
26
- stroke-width="0.5"
27
- stroke-opacity="0.9"
28
- fill-opacity="0.9"
29
- />
30
-
31
- <!-- light -->
32
- <rect
33
- class="c-light"
34
- x="2.05"
35
- y="29.9"
36
- width="27.9"
37
- height="0"
38
- stroke="#ffffff"
39
- fill="#ffffff"
40
- stroke-width="0.5"
41
- stroke-opacity="0"
42
- fill-opacity="0.5"
43
- />
44
- </svg>
@@ -1,71 +0,0 @@
1
- <svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
- <!-- outer frame -->
3
- <rect x="1" y="0.8" width="30" height="30.2" rx="0.5" stroke="#7f7f7f" fill="none" stroke-width="1.5" />
4
-
5
- <!-- left window frame -->
6
- <rect class="outline-left" x="2.8" y="2.6" width="12.4" height="26.6" stroke="#7f7f7f" fill="none" stroke-width="1" />
7
-
8
- <!-- left window divider -->
9
- <rect
10
- class="divider-left"
11
- x="3.66"
12
- y="15.65"
13
- width="10.68"
14
- height="0.5"
15
- stroke="#7f7f7f"
16
- fill="none"
17
- stroke-width="0.5"
18
- ry="2"
19
- />
20
-
21
- <!-- left window handle -->
22
- <rect
23
- class="handle-left"
24
- x="15.16"
25
- y="13.6"
26
- width="0.1"
27
- height="4.6"
28
- stroke="#1976d2"
29
- fill="none"
30
- stroke-width="0.5"
31
- ry="2"
32
- />
33
-
34
- <!-- right window frame -->
35
- <rect
36
- class="outline-right"
37
- x="16.8"
38
- y="2.6"
39
- width="12.4"
40
- height="26.6"
41
- stroke="#7f7f7f"
42
- fill="none"
43
- stroke-width="1"
44
- />
45
-
46
- <!-- right window divider -->
47
- <rect
48
- class="divider-right"
49
- x="17.66"
50
- y="15.65"
51
- width="10.68"
52
- height="0.5"
53
- stroke="#7f7f7f"
54
- fill="none"
55
- stroke-width="0.5"
56
- ry="2"
57
- />
58
-
59
- <!-- right window handle -->
60
- <rect
61
- class="handle-right"
62
- x="16.76"
63
- y="13.6"
64
- width="0.1"
65
- height="4.6"
66
- stroke="#1976d2"
67
- fill="none"
68
- stroke-width="0.5"
69
- ry="2"
70
- />
71
- </svg>
@@ -1 +0,0 @@
1
- import{a as s}from"./chunk-6E4QOLAB.js";import"./chunk-BG7RRQGG.js";import"./chunk-FCJZJIQL.js";import"./chunk-J6CJ26QN.js";import"./chunk-IWFKJHPR.js";import"./chunk-7EQFLCW4.js";import"./chunk-GHMFFLJG.js";import"./chunk-BO3HTTPA.js";import{g as i}from"./chunk-DFFTJVRY.js";import"./chunk-HT7KLIKB.js";import"./chunk-5PN3M3TS.js";import"./chunk-KZKL7DGI.js";import"./chunk-OA7Y3E5A.js";import{ha as e,nb as t}from"./chunk-IOKYXV5M.js";var u=[{path:"",loadComponent:()=>import("./chunk-WX32WZFA.js").then(o=>o.AccessoriesComponent)}],c=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=t({type:o});static \u0275inj=e({imports:[i.forChild(u),i]})}return o})();var l=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=t({type:o});static \u0275inj=e({imports:[s,c]})}return o})();export{l as AccessoriesModule};
@@ -1 +0,0 @@
1
- import{a as n}from"./chunk-NHNGZ4PI.js";import"./chunk-BO3HTTPA.js";import{g as r}from"./chunk-DFFTJVRY.js";import"./chunk-HT7KLIKB.js";import"./chunk-5PN3M3TS.js";import"./chunk-KZKL7DGI.js";import"./chunk-OA7Y3E5A.js";import{ha as o,nb as e}from"./chunk-IOKYXV5M.js";var c=[{path:"",loadComponent:()=>import("./chunk-QE27FJRU.js").then(t=>t.SettingsComponent),canActivate:[n]}],m=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=e({type:t});static \u0275inj=o({imports:[r.forChild(c),r]})}return t})();var l=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=e({type:t});static \u0275inj=o({imports:[m]})}return t})();export{l as SettingsModule};
@@ -1 +0,0 @@
1
- import{e as ft,n as gt}from"./chunk-OA7Y3E5A.js";import{Gb as M,Hb as E,Ob as l,Pb as h,Qb as p,Rb as F,Vb as Y,Wa as ht,Wb as K,Xa as q,_b as Q,a as u,ab as r,ac as mt,b as T,bc as j,db as dt,dc as c,e as It,ga as C,gb as y,ha as lt,ja as ct,ka as w,la as _,ma as ut,mb as G,md as J,n as g,nb as pt,nc as A,pc as m,qc as f,ra as V,sa as z,sb as S,sc as b,ua as N,va as Z,vb as U,za as O}from"./chunk-IOKYXV5M.js";var Tt=It((De,Ut)=>{Ut.exports={name:"homebridge-config-ui-x",displayName:"Homebridge UI",version:"5.4.2-beta.2",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:{"hb-service":"dist/bin/hb-service.js"},engines:{node:"^20.19.0 || ^22.12.0 || ^24.0.0",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":"3.1.1","@homebridge/node-pty-prebuilt-multiarch":"0.14.1-beta.1","@nestjs/axios":"4.0.1","@nestjs/common":"11.1.5","@nestjs/core":"11.1.5","@nestjs/jwt":"11.0.0","@nestjs/passport":"11.0.5","@nestjs/platform-fastify":"11.1.5","@nestjs/platform-socket.io":"11.1.5","@nestjs/swagger":"11.2.0","@nestjs/websockets":"11.1.5",axios:"1.11.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.4.0","fs-extra":"11.3.1",jsonwebtoken:"9.0.2",lodash:"4.17.21","node-cache":"5.1.2","node-schedule":"2.1.1",ora:"8.2.0",otplib:"12.0.1","p-limit":"6.2.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.7",tail:"2.2.6",tar:"7.4.3","tcp-port-used":"1.0.2",unzipper:"0.12.3"},devDependencies:{"@antfu/eslint-config":"^5.2.0","@nestjs/testing":"^11.1.5","@prettier/plugin-xml":"^3.4.2","@types/fs-extra":"^11.0.4","@types/lodash":"^4.17.20","@types/node":"^24.2.0","@types/node-schedule":"^2.1.8","@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.2.4",concurrently:"^9.2.0","eslint-plugin-format":"^1.0.1","form-data":"^4.0.4",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.9.2","unplugin-swc":"^1.5.5",vitest:"^3.2.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||{}),xt="*";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=Q();h(0,"button",5),j("click",function(){V(t);let n=c();return z(n.remove())}),h(1,"span",6),f(2,"\xD7"),p()()}}function Ft(i,s){if(i&1&&(Y(0),f(1),K()),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),p()),i&2){let t=c();m(t.options.titleClass),E("aria-label",t.title),r(),b(" ",t.title," "),r(),l("ngIf",t.duplicatesCount)}}function At(i,s){if(i&1&&F(0,"div",7),i&2){let t=c();m(t.options.messageClass),l("innerHTML",t.message,q)}}function Rt(i,s){if(i&1&&(h(0,"div",8),f(1),p()),i&2){let t=c();m(t.options.messageClass),E("aria-label",t.message),r(),b(" ",t.message," ")}}function Ht(i,s){if(i&1&&(h(0,"div"),F(1,"div",9),p()),i&2){let t=c();r(),A("width",t.width()+"%")}}function kt(i,s){if(i&1){let t=Q();h(0,"button",5),j("click",function(){V(t);let n=c();return z(n.remove())}),h(1,"span",6),f(2,"\xD7"),p()()}}function Nt(i,s){if(i&1&&(Y(0),f(1),K()),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),p()),i&2){let t=c();m(t.options.titleClass),E("aria-label",t.title),r(),b(" ",t.title," "),r(),l("ngIf",t.duplicatesCount)}}function Pt(i,s){if(i&1&&F(0,"div",7),i&2){let t=c();m(t.options.messageClass),l("innerHTML",t.message,q)}}function Bt(i,s){if(i&1&&(h(0,"div",8),f(1),p()),i&2){let t=c();m(t.options.messageClass),E("aria-label",t.message),r(),b(" ",t.message," ")}}function $t(i,s){if(i&1&&(h(0,"div"),F(1,"div",9),p()),i&2){let t=c();r(),A("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=_(Z);_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=_(Z);_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 x=new st(k),$=new D(this.index,o,rt,n,t,x),Ct=[{provide:D,useValue:$}],wt=N.create({providers:Ct,parent:this._injector}),Dt=new et(o.toastComponent,wt),at=k.attach(Dt,o.newestOnTop);x.componentInstance=at.instance;let L={toastId:this.index,title:n||"",message:e||"",toastRef:x,onShown:x.afterActivate(),onHidden:x.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(U))};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(U))};static \u0275cmp=G({type:i,selectors:[["","toast-component",""]],hostVars:5,hostBindings:function(e,n){e&1&&j("click",function(){return n.tapToast()})("mouseenter",function(){return n.stickAround()})("mouseleave",function(){return n.delayedHideToast()}),e&2&&(mt("@flyInOut",n._state),m(n.toastClasses),A("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&&j("click",function(){return n.tapToast()})("mouseenter",function(){return n.stickAround()})("mouseleave",function(){return n.delayedHideToast()}),e&2&&(m(n.toastClasses),A("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 I={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);get(t,e){return this.$http.get(`${I.api.base}${t}`,e)}post(t,e,n){return this.$http.post(`${I.api.base}${t}`,e,n)}put(t,e,n){return this.$http.put(`${I.api.base}${t}`,e,n)}patch(t,e,n){return this.$http.patch(`${I.api.base}${t}`,e,n)}delete(t,e){return this.$http.delete(`${I.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,xt as b,tt as c,P as d,Yt as e,R as f,B as g,W as h,X as i,Ot as j,bt as k,be as l,I as m,Fe as n};
@@ -1 +0,0 @@
1
- import{Bc as c,Ca as E,D as Se,Da as g,Db as xe,Fa as N,Gb as Pe,Hb as x,Pc as m,Qc as w,Wc as ce,Zc as he,a as h,ad as fe,b as f,bc as V,da as $,fa as d,fb as O,gb as o,ha as q,ja as A,la as z,n as we,nb as Z,ob as l,oc as de,q as Fe,qb as u,ub as C,wa as Ne,x as Ie,xb as Oe,za as M}from"./chunk-IOKYXV5M.js";var Le=(()=>{class n{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,i){this._renderer=e,this._elementRef=i}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(i){return new(i||n)(o(O),o(N))};static \u0275dir=l({type:n})}return n})(),H=(()=>{class n extends Le{static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,features:[u]})}return n})(),b=new A(""),pt={provide:b,useExisting:d(()=>mt),multi:!0},mt=(()=>{class n extends H{writeValue(e){this.setProperty("checked",e)}static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(i,r){i&1&&V("change",function(a){return r.onChange(a.target.checked)})("blur",function(){return r.onTouched()})},standalone:!1,features:[c([pt]),u]})}return n})(),_t={provide:b,useExisting:d(()=>We),multi:!0};function vt(){let n=fe()?fe().getUserAgent():"";return/android (\d+)/.test(n.toLowerCase())}var yt=new A(""),We=(()=>{class n extends Le{_compositionMode;_composing=!1;constructor(e,i,r){super(e,i),this._compositionMode=r,this._compositionMode==null&&(this._compositionMode=!vt())}writeValue(e){let i=e??"";this.setProperty("value",i)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(i){return new(i||n)(o(O),o(N),o(yt,8))};static \u0275dir=l({type:n,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,r){i&1&&V("input",function(a){return r._handleInput(a.target.value)})("blur",function(){return r.onTouched()})("compositionstart",function(){return r._compositionStart()})("compositionend",function(a){return r._compositionEnd(a.target.value)})},standalone:!1,features:[c([_t]),u]})}return n})();function me(n){return n==null||_e(n)===0}function _e(n){return n==null?null:Array.isArray(n)||typeof n=="string"?n.length:n instanceof Set?n.size:null}var y=new A(""),L=new A(""),Ct=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Re=class{static min(t){return $e(t)}static max(t){return qe(t)}static required(t){return ze(t)}static requiredTrue(t){return Vt(t)}static email(t){return Dt(t)}static minLength(t){return bt(t)}static maxLength(t){return At(t)}static pattern(t){return Ze(t)}static nullValidator(t){return Y()}static compose(t){return et(t)}static composeAsync(t){return tt(t)}};function $e(n){return t=>{if(t.value==null||n==null)return null;let e=parseFloat(t.value);return!isNaN(e)&&e<n?{min:{min:n,actual:t.value}}:null}}function qe(n){return t=>{if(t.value==null||n==null)return null;let e=parseFloat(t.value);return!isNaN(e)&&e>n?{max:{max:n,actual:t.value}}:null}}function ze(n){return me(n.value)?{required:!0}:null}function Vt(n){return n.value===!0?null:{required:!0}}function Dt(n){return me(n.value)||Ct.test(n.value)?null:{email:!0}}function bt(n){return t=>{let e=t.value?.length??_e(t.value);return e===null||e===0?null:e<n?{minlength:{requiredLength:n,actualLength:e}}:null}}function At(n){return t=>{let e=t.value?.length??_e(t.value);return e!==null&&e>n?{maxlength:{requiredLength:n,actualLength:e}}:null}}function Ze(n){if(!n)return Y;let t,e;return typeof n=="string"?(e="",n.charAt(0)!=="^"&&(e+="^"),e+=n,n.charAt(n.length-1)!=="$"&&(e+="$"),t=new RegExp(e)):(e=n.toString(),t=n),i=>{if(me(i.value))return null;let r=i.value;return t.test(r)?null:{pattern:{requiredPattern:e,actualValue:r}}}}function Y(n){return null}function Xe(n){return n!=null}function Ye(n){return xe(n)?Fe(n):n}function Ke(n){let t={};return n.forEach(e=>{t=e!=null?h(h({},t),e):t}),Object.keys(t).length===0?null:t}function Je(n,t){return t.map(e=>e(n))}function Mt(n){return!n.validate}function Qe(n){return n.map(t=>Mt(t)?t:e=>t.validate(e))}function et(n){if(!n)return null;let t=n.filter(Xe);return t.length==0?null:function(e){return Ke(Je(e,t))}}function ve(n){return n!=null?et(Qe(n)):null}function tt(n){if(!n)return null;let t=n.filter(Xe);return t.length==0?null:function(e){let i=Je(e,t).map(Ye);return Se(i).pipe(Ie(Ke))}}function ye(n){return n!=null?tt(Qe(n)):null}function ke(n,t){return n===null?[t]:Array.isArray(n)?[...n,t]:[n,t]}function nt(n){return n._rawValidators}function it(n){return n._rawAsyncValidators}function ge(n){return n?Array.isArray(n)?n:[n]:[]}function K(n,t){return Array.isArray(n)?n.includes(t):n===t}function je(n,t){let e=ge(t);return ge(n).forEach(r=>{K(e,r)||e.push(r)}),e}function Ge(n,t){return ge(t).filter(e=>!K(n,e))}var J=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=ve(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=ye(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,e){return this.control?this.control.hasError(t,e):!1}getError(t,e){return this.control?this.control.getError(t,e):null}},_=class extends J{name;get formDirective(){return null}get path(){return null}},v=class extends J{_parent=null;name=null;valueAccessor=null},Q=class{_cd;constructor(t){this._cd=t}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}},Et={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},wn=f(h({},Et),{"[class.ng-submitted]":"isSubmitted"}),Fn=(()=>{class n extends Q{constructor(e){super(e)}static \u0275fac=function(i){return new(i||n)(o(v,2))};static \u0275dir=l({type:n,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,r){i&2&&de("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)},standalone:!1,features:[u]})}return n})(),In=(()=>{class n extends Q{constructor(e){super(e)}static \u0275fac=function(i){return new(i||n)(o(_,10))};static \u0275dir=l({type:n,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(i,r){i&2&&de("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)("ng-submitted",r.isSubmitted)},standalone:!1,features:[u]})}return n})();var P="VALID",X="INVALID",F="PENDING",R="DISABLED",D=class{},ee=class extends D{value;source;constructor(t,e){super(),this.value=t,this.source=e}},j=class extends D{pristine;source;constructor(t,e){super(),this.pristine=t,this.source=e}},G=class extends D{touched;source;constructor(t,e){super(),this.touched=t,this.source=e}},I=class extends D{status;source;constructor(t,e){super(),this.status=t,this.source=e}},te=class extends D{source;constructor(t){super(),this.source=t}},ne=class extends D{source;constructor(t){super(),this.source=t}};function Ce(n){return(oe(n)?n.validators:n)||null}function wt(n){return Array.isArray(n)?ve(n):n||null}function Ve(n,t){return(oe(t)?t.asyncValidators:n)||null}function Ft(n){return Array.isArray(n)?ye(n):n||null}function oe(n){return n!=null&&!Array.isArray(n)&&typeof n=="object"}function rt(n,t,e){let i=n.controls;if(!(t?Object.keys(i):i).length)throw new $(1e3,"");if(!i[e])throw new $(1001,"")}function st(n,t,e){n._forEachChild((i,r)=>{if(e[r]===void 0)throw new $(1002,"")})}var T=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(t,e){this._assignValidators(t),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get status(){return m(this.statusReactive)}set status(t){m(()=>this.statusReactive.set(t))}_status=w(()=>this.statusReactive());statusReactive=M(void 0);get valid(){return this.status===P}get invalid(){return this.status===X}get pending(){return this.status==F}get disabled(){return this.status===R}get enabled(){return this.status!==R}errors;get pristine(){return m(this.pristineReactive)}set pristine(t){m(()=>this.pristineReactive.set(t))}_pristine=w(()=>this.pristineReactive());pristineReactive=M(!0);get dirty(){return!this.pristine}get touched(){return m(this.touchedReactive)}set touched(t){m(()=>this.touchedReactive.set(t))}_touched=w(()=>this.touchedReactive());touchedReactive=M(!1);get untouched(){return!this.touched}_events=new we;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(je(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(je(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(Ge(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(Ge(t,this._rawAsyncValidators))}hasValidator(t){return K(this._rawValidators,t)}hasAsyncValidator(t){return K(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){let e=this.touched===!1;this.touched=!0;let i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsTouched(f(h({},t),{sourceControl:i})),e&&t.emitEvent!==!1&&this._events.next(new G(!0,i))}markAllAsDirty(t={}){this.markAsDirty({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsDirty(t))}markAllAsTouched(t={}){this.markAsTouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(t))}markAsUntouched(t={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let i=t.sourceControl??this;this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:i})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,i),e&&t.emitEvent!==!1&&this._events.next(new G(!1,i))}markAsDirty(t={}){let e=this.pristine===!0;this.pristine=!1;let i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsDirty(f(h({},t),{sourceControl:i})),e&&t.emitEvent!==!1&&this._events.next(new j(!1,i))}markAsPristine(t={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let i=t.sourceControl??this;this._forEachChild(r=>{r.markAsPristine({onlySelf:!0,emitEvent:t.emitEvent})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t,i),e&&t.emitEvent!==!1&&this._events.next(new j(!0,i))}markAsPending(t={}){this.status=F;let e=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new I(this.status,e)),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.markAsPending(f(h({},t),{sourceControl:e}))}disable(t={}){let e=this._parentMarkedDirty(t.onlySelf);this.status=R,this.errors=null,this._forEachChild(r=>{r.disable(f(h({},t),{onlySelf:!0}))}),this._updateValue();let i=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new ee(this.value,i)),this._events.next(new I(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(f(h({},t),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(r=>r(!0))}enable(t={}){let e=this._parentMarkedDirty(t.onlySelf);this.status=P,this._forEachChild(i=>{i.enable(f(h({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(f(h({},t),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(t,e){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine({},e),this._parent._updateTouched({},e))}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===P||this.status===F)&&this._runAsyncValidator(i,t.emitEvent)}let e=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new ee(this.value,e)),this._events.next(new I(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(f(h({},t),{sourceControl:e}))}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?R:P}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t,e){if(this.asyncValidator){this.status=F,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1,shouldHaveEmitted:t!==!1};let i=Ye(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(r=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(r,{emitEvent:e,shouldHaveEmitted:t})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let t=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,t}return!1}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(t){let e=t;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((i,r)=>i&&i._find(r),this)}getError(t,e){let i=e?this.get(e):this;return i&&i.errors?i.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t,e,i){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),(t||i)&&this._events.next(new I(this.status,e)),this._parent&&this._parent._updateControlsErrors(t,e,i)}_initObservables(){this.valueChanges=new C,this.statusChanges=new C}_calculateStatus(){return this._allControlsDisabled()?R:this.errors?X:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(F)?F:this._anyControlsHaveStatus(X)?X:P}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t,e){let i=!this._anyControlsDirty(),r=this.pristine!==i;this.pristine=i,this._parent&&!t.onlySelf&&this._parent._updatePristine(t,e),r&&this._events.next(new j(this.pristine,e))}_updateTouched(t={},e){this.touched=this._anyControlsTouched(),this._events.next(new G(this.touched,e)),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,e)}_onDisabledChange=[];_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){oe(t)&&t.updateOn!=null&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){let e=this._parent&&this._parent.dirty;return!t&&!!e&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=wt(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=Ft(this._rawAsyncValidators)}},B=class extends T{constructor(t,e,i){super(Ce(e),Ve(i,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e,i={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,i={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){st(this,!0,t),Object.keys(t).forEach(i=>{rt(this,!0,i),this.controls[i].setValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t!=null&&(Object.keys(t).forEach(i=>{let r=this.controls[i];r&&r.patchValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(t={},e={}){this._forEachChild((i,r)=>{i.reset(t?t[r]:null,{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,i)=>(t[i]=e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(e,i)=>i._syncPendingControls()?!0:e);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(e=>{let i=this.controls[e];i&&t(i,e)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(let[e,i]of Object.entries(this.controls))if(this.contains(e)&&t(i))return!0;return!1}_reduceValue(){let t={};return this._reduceChildren(t,(e,i,r)=>((i.enabled||this.disabled)&&(e[r]=i.value),e))}_reduceChildren(t,e){let i=t;return this._forEachChild((r,s)=>{i=e(i,r,s)}),i}_allControlsDisabled(){for(let t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return this.controls.hasOwnProperty(t)?this.controls[t]:null}};var Sn=B;var S=new A("",{providedIn:"root",factory:()=>ae}),ae="always";function ot(n,t){return[...t.path,n]}function U(n,t,e=ae){De(n,t),t.valueAccessor.writeValue(n.value),(n.disabled||e==="always")&&t.valueAccessor.setDisabledState?.(n.disabled),St(n,t),Ot(n,t),Nt(n,t),It(n,t)}function ie(n,t,e=!0){let i=()=>{};t.valueAccessor&&(t.valueAccessor.registerOnChange(i),t.valueAccessor.registerOnTouched(i)),se(n,t),n&&(t._invokeOnDestroyCallbacks(),n._registerOnCollectionChange(()=>{}))}function re(n,t){n.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function It(n,t){if(t.valueAccessor.setDisabledState){let e=i=>{t.valueAccessor.setDisabledState(i)};n.registerOnDisabledChange(e),t._registerOnDestroy(()=>{n._unregisterOnDisabledChange(e)})}}function De(n,t){let e=nt(n);t.validator!==null?n.setValidators(ke(e,t.validator)):typeof e=="function"&&n.setValidators([e]);let i=it(n);t.asyncValidator!==null?n.setAsyncValidators(ke(i,t.asyncValidator)):typeof i=="function"&&n.setAsyncValidators([i]);let r=()=>n.updateValueAndValidity();re(t._rawValidators,r),re(t._rawAsyncValidators,r)}function se(n,t){let e=!1;if(n!==null){if(t.validator!==null){let r=nt(n);if(Array.isArray(r)&&r.length>0){let s=r.filter(a=>a!==t.validator);s.length!==r.length&&(e=!0,n.setValidators(s))}}if(t.asyncValidator!==null){let r=it(n);if(Array.isArray(r)&&r.length>0){let s=r.filter(a=>a!==t.asyncValidator);s.length!==r.length&&(e=!0,n.setAsyncValidators(s))}}}let i=()=>{};return re(t._rawValidators,i),re(t._rawAsyncValidators,i),e}function St(n,t){t.valueAccessor.registerOnChange(e=>{n._pendingValue=e,n._pendingChange=!0,n._pendingDirty=!0,n.updateOn==="change"&&at(n,t)})}function Nt(n,t){t.valueAccessor.registerOnTouched(()=>{n._pendingTouched=!0,n.updateOn==="blur"&&n._pendingChange&&at(n,t),n.updateOn!=="submit"&&n.markAsTouched()})}function at(n,t){n._pendingDirty&&n.markAsDirty(),n.setValue(n._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(n._pendingValue),n._pendingChange=!1}function Ot(n,t){let e=(i,r)=>{t.valueAccessor.writeValue(i),r&&t.viewToModelUpdate(i)};n.registerOnChange(e),t._registerOnDestroy(()=>{n._unregisterOnChange(e)})}function lt(n,t){n==null,De(n,t)}function xt(n,t){return se(n,t)}function be(n,t){if(!n.hasOwnProperty("model"))return!1;let e=n.model;return e.isFirstChange()?!0:!Object.is(t,e.currentValue)}function Pt(n){return Object.getPrototypeOf(n.constructor)===H}function ut(n,t){n._syncPendingControls(),t.forEach(e=>{let i=e.control;i.updateOn==="submit"&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function Ae(n,t){if(!t)return null;Array.isArray(t);let e,i,r;return t.forEach(s=>{s.constructor===We?e=s:Pt(s)?i=s:r=s}),r||i||e||null}function Rt(n,t){let e=n.indexOf(t);e>-1&&n.splice(e,1)}var kt={provide:_,useExisting:d(()=>jt)},k=Promise.resolve(),jt=(()=>{class n extends _{callSetDisabledState;get submitted(){return m(this.submittedReactive)}_submitted=w(()=>this.submittedReactive());submittedReactive=M(!1);_directives=new Set;form;ngSubmit=new C;options;constructor(e,i,r){super(),this.callSetDisabledState=r,this.form=new B({},ve(e),ye(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){k.then(()=>{let i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),U(e.control,e,this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){k.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){k.then(()=>{let i=this._findContainer(e.path),r=new B({});lt(r,e),i.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){k.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){k.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),ut(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new te(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1),this.form._events.next(new ne(this.form))}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(i){return new(i||n)(o(y,10),o(L,10),o(S,8))};static \u0275dir=l({type:n,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,r){i&1&&V("submit",function(a){return r.onSubmit(a)})("reset",function(){return r.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[c([kt]),u]})}return n})();function Te(n,t){let e=n.indexOf(t);e>-1&&n.splice(e,1)}function Be(n){return typeof n=="object"&&n!==null&&Object.keys(n).length===2&&"value"in n&&"disabled"in n}var Me=class extends T{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(t=null,e,i){super(Ce(e),Ve(i,e)),this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),oe(e)&&(e.nonNullable||e.initialValueIsDefault)&&(Be(t)?this.defaultValue=t.value:this.defaultValue=t)}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(i=>i(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=this.defaultValue,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){Te(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){Te(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(t){Be(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}},On=Me,Gt=n=>n instanceof Me;var Tt={provide:v,useExisting:d(()=>Bt)},Ue=Promise.resolve(),Bt=(()=>{class n extends v{_changeDetectorRef;callSetDisabledState;control=new Me;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new C;constructor(e,i,r,s,a,p){super(),this._changeDetectorRef=a,this.callSetDisabledState=p,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=Ae(this,s)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),be(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){U(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){Ue.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let i=e.isDisabled.currentValue,r=i!==0&&he(i);Ue.then(()=>{r&&!this.control.disabled?this.control.disable():!r&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?ot(e,this._parent):[e]}static \u0275fac=function(i){return new(i||n)(o(_,9),o(y,10),o(L,10),o(b,10),o(ce,8),o(S,8))};static \u0275dir=l({type:n,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[c([Tt]),u,E]})}return n})();var xn=(()=>{class n{static \u0275fac=function(i){return new(i||n)};static \u0275dir=l({type:n,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return n})(),Ut={provide:b,useExisting:d(()=>Ht),multi:!0},Ht=(()=>{class n extends H{writeValue(e){let i=e??"";this.setProperty("value",i)}registerOnChange(e){this.onChange=i=>{e(i==""?null:parseFloat(i))}}static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(i,r){i&1&&V("input",function(a){return r.onChange(a.target.value)})("blur",function(){return r.onTouched()})},standalone:!1,features:[c([Ut]),u]})}return n})();var Ee=new A(""),Lt={provide:v,useExisting:d(()=>Wt)},Wt=(()=>{class n extends v{_ngModelWarningConfig;callSetDisabledState;viewModel;form;set isDisabled(e){}model;update=new C;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,s,a){super(),this._ngModelWarningConfig=s,this.callSetDisabledState=a,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=Ae(this,r)}ngOnChanges(e){if(this._isControlChanged(e)){let i=e.form.previousValue;i&&ie(i,this,!1),U(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}be(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&ie(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}static \u0275fac=function(i){return new(i||n)(o(y,10),o(L,10),o(b,10),o(Ee,8),o(S,8))};static \u0275dir=l({type:n,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],standalone:!1,features:[c([Lt]),u,E]})}return n})(),$t={provide:_,useExisting:d(()=>qt)},qt=(()=>{class n extends _{callSetDisabledState;get submitted(){return m(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}_submitted=w(()=>this._submittedReactive());_submittedReactive=M(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];form=null;ngSubmit=new C;constructor(e,i,r){super(),this.callSetDisabledState=r,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(se(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){let i=this.form.get(e.path);return U(i,e,this.callSetDisabledState),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){ie(e.control||null,e,!1),Rt(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this._submittedReactive.set(!0),ut(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new te(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0,i={}){this.form.reset(e,i),this._submittedReactive.set(!1),i?.emitEvent!==!1&&this.form._events.next(new ne(this.form))}_updateDomValue(){this.directives.forEach(e=>{let i=e.control,r=this.form.get(e.path);i!==r&&(ie(i||null,e),Gt(r)&&(U(r,e,this.callSetDisabledState),e.control=r))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){let i=this.form.get(e.path);lt(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){let i=this.form.get(e.path);i&&xt(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){De(this.form,this),this._oldForm&&se(this._oldForm,this)}static \u0275fac=function(i){return new(i||n)(o(y,10),o(L,10),o(S,8))};static \u0275dir=l({type:n,selectors:[["","formGroup",""]],hostBindings:function(i,r){i&1&&V("submit",function(a){return r.onSubmit(a)})("reset",function(){return r.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[c([$t]),u,E]})}return n})();var zt={provide:v,useExisting:d(()=>Zt)},Zt=(()=>{class n extends v{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(e){}model;update=new C;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,s,a){super(),this._ngModelWarningConfig=a,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=Ae(this,s)}ngOnChanges(e){this._added||this._setUpControl(),be(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return ot(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}static \u0275fac=function(i){return new(i||n)(o(_,13),o(y,10),o(L,10),o(b,10),o(Ee,8))};static \u0275dir=l({type:n,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[c([zt]),u,E]})}return n})();var Xt={provide:b,useExisting:d(()=>ct),multi:!0};function dt(n,t){return n==null?`${t}`:(t&&typeof t=="object"&&(t="Object"),`${n}: ${t}`.slice(0,50))}function Yt(n){return n.split(":")[0]}var ct=(()=>{class n extends H{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;appRefInjector=z(Pe).injector;destroyRef=z(Ne);cdr=z(ce);_queuedWrite=!1;_writeValueAfterRender(){this._queuedWrite||this.appRefInjector.destroyed||(this._queuedWrite=!0,Oe({write:()=>{this.destroyRef.destroyed||(this._queuedWrite=!1,this.writeValue(this.value))}},{injector:this.appRefInjector}))}writeValue(e){this.cdr.markForCheck(),this.value=e;let i=this._getOptionId(e),r=dt(i,e);this.setProperty("value",r)}registerOnChange(e){this.onChange=i=>{this.value=this._getOptionValue(i),e(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(e){for(let i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i),e))return i;return null}_getOptionValue(e){let i=Yt(e);return this._optionMap.has(i)?this._optionMap.get(i):e}static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(i,r){i&1&&V("change",function(a){return r.onChange(a.target.value)})("blur",function(){return r.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[c([Xt]),u]})}return n})(),Pn=(()=>{class n{_element;_renderer;_select;id;constructor(e,i,r){this._element=e,this._renderer=i,this._select=r,this._select&&(this.id=this._select._registerOption())}set ngValue(e){this._select!=null&&(this._select._optionMap.set(this.id,e),this._setElementValue(dt(this.id,e)),this._select._writeValueAfterRender())}set value(e){this._setElementValue(e),this._select&&this._select._writeValueAfterRender()}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select._writeValueAfterRender())}static \u0275fac=function(i){return new(i||n)(o(N),o(O),o(ct,9))};static \u0275dir=l({type:n,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return n})(),Kt={provide:b,useExisting:d(()=>ht),multi:!0};function He(n,t){return n==null?`${t}`:(typeof t=="string"&&(t=`'${t}'`),t&&typeof t=="object"&&(t="Object"),`${n}: ${t}`.slice(0,50))}function Jt(n){return n.split(":")[0]}var ht=(()=>{class n extends H{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;writeValue(e){this.value=e;let i;if(Array.isArray(e)){let r=e.map(s=>this._getOptionId(s));i=(s,a)=>{s._setSelected(r.indexOf(a.toString())>-1)}}else i=(r,s)=>{r._setSelected(!1)};this._optionMap.forEach(i)}registerOnChange(e){this.onChange=i=>{let r=[],s=i.selectedOptions;if(s!==void 0){let a=s;for(let p=0;p<a.length;p++){let W=a[p],ue=this._getOptionValue(W.value);r.push(ue)}}else{let a=i.options;for(let p=0;p<a.length;p++){let W=a[p];if(W.selected){let ue=this._getOptionValue(W.value);r.push(ue)}}}this.value=r,e(r)}}_registerOption(e){let i=(this._idCounter++).toString();return this._optionMap.set(i,e),i}_getOptionId(e){for(let i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i)._value,e))return i;return null}_getOptionValue(e){let i=Jt(e);return this._optionMap.has(i)?this._optionMap.get(i)._value:e}static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(i,r){i&1&&V("change",function(a){return r.onChange(a.target)})("blur",function(){return r.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[c([Kt]),u]})}return n})(),Rn=(()=>{class n{_element;_renderer;_select;id;_value;constructor(e,i,r){this._element=e,this._renderer=i,this._select=r,this._select&&(this.id=this._select._registerOption(this))}set ngValue(e){this._select!=null&&(this._value=e,this._setElementValue(He(this.id,e)),this._select.writeValue(this._select.value))}set value(e){this._select?(this._value=e,this._setElementValue(He(this.id,e)),this._select.writeValue(this._select.value)):this._setElementValue(e)}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}_setSelected(e){this._renderer.setProperty(this._element.nativeElement,"selected",e)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(i){return new(i||n)(o(N),o(O),o(ht,9))};static \u0275dir=l({type:n,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return n})();function ft(n){return typeof n=="number"?n:parseFloat(n)}var le=(()=>{class n{_validator=Y;_onChange;_enabled;ngOnChanges(e){if(this.inputName in e){let i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):Y,this._onChange&&this._onChange()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return e!=null}static \u0275fac=function(i){return new(i||n)};static \u0275dir=l({type:n,features:[E]})}return n})(),Qt={provide:y,useExisting:d(()=>en),multi:!0},en=(()=>{class n extends le{max;inputName="max";normalizeInput=e=>ft(e);createValidator=e=>qe(e);static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["input","type","number","max","","formControlName",""],["input","type","number","max","","formControl",""],["input","type","number","max","","ngModel",""]],hostVars:1,hostBindings:function(i,r){i&2&&x("max",r._enabled?r.max:null)},inputs:{max:"max"},standalone:!1,features:[c([Qt]),u]})}return n})(),tn={provide:y,useExisting:d(()=>nn),multi:!0},nn=(()=>{class n extends le{min;inputName="min";normalizeInput=e=>ft(e);createValidator=e=>$e(e);static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(i,r){i&2&&x("min",r._enabled?r.min:null)},inputs:{min:"min"},standalone:!1,features:[c([tn]),u]})}return n})(),rn={provide:y,useExisting:d(()=>sn),multi:!0};var sn=(()=>{class n extends le{required;inputName="required";normalizeInput=he;createValidator=e=>ze;enabled(e){return e}static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(i,r){i&2&&x("required",r._enabled?"":null)},inputs:{required:"required"},standalone:!1,features:[c([rn]),u]})}return n})();var on={provide:y,useExisting:d(()=>an),multi:!0},an=(()=>{class n extends le{pattern;inputName="pattern";normalizeInput=e=>e;createValidator=e=>Ze(e);static \u0275fac=(()=>{let e;return function(r){return(e||(e=g(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(i,r){i&2&&x("pattern",r._enabled?r.pattern:null)},inputs:{pattern:"pattern"},standalone:!1,features:[c([on]),u]})}return n})();var gt=(()=>{class n{static \u0275fac=function(i){return new(i||n)};static \u0275mod=Z({type:n});static \u0275inj=q({})}return n})(),pe=class extends T{constructor(t,e,i){super(Ce(e),Ve(i,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(t){return this.controls[this._adjustIndex(t)]}push(t,e={}){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(t,e,i={}){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:i.emitEvent})}removeAt(t,e={}){let i=this._adjustIndex(t);i<0&&(i=0),this.controls[i]&&this.controls[i]._registerOnCollectionChange(()=>{}),this.controls.splice(i,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(t,e,i={}){let r=this._adjustIndex(t);r<0&&(r=0),this.controls[r]&&this.controls[r]._registerOnCollectionChange(()=>{}),this.controls.splice(r,1),e&&(this.controls.splice(r,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){st(this,!1,t),t.forEach((i,r)=>{rt(this,!1,r),this.at(r).setValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t!=null&&(t.forEach((i,r)=>{this.at(r)&&this.at(r).patchValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(t=[],e={}){this._forEachChild((i,r)=>{i.reset(t[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t.getRawValue())}clear(t={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:t.emitEvent}))}_adjustIndex(t){return t<0?t+this.length:t}_syncPendingControls(){let t=this.controls.reduce((e,i)=>i._syncPendingControls()?!0:e,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){this.controls.forEach((e,i)=>{t(e,i)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_allControlsDisabled(){for(let t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}_find(t){return this.at(t)??null}},kn=pe;var jn=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:S,useValue:e.callSetDisabledState??ae}]}}static \u0275fac=function(i){return new(i||n)};static \u0275mod=Z({type:n});static \u0275inj=q({imports:[gt]})}return n})(),Gn=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:Ee,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:S,useValue:e.callSetDisabledState??ae}]}}static \u0275fac=function(i){return new(i||n)};static \u0275mod=Z({type:n});static \u0275inj=q({imports:[gt]})}return n})();export{b as a,mt as b,We as c,Re as d,Fn as e,In as f,B as g,Sn as h,jt as i,Me as j,On as k,Bt as l,xn as m,Ht as n,Wt as o,qt as p,Zt as q,ct as r,Pn as s,Rn as t,en as u,nn as v,sn as w,an as x,kn as y,jn as z,Gn as A};