168 KB
/home/fdroid/fdroiddata/tmp/com.superproductivity.superproductivity_1404010000.apk vs.
/home/fdroid/fdroiddata/tmp/sigcp_com.superproductivity.superproductivity_1404010000.apk
17.6 KB
zipinfo {}
    
Offset 130, 34 lines modifiedOffset 130, 36 lines modified
130 -rw-r--r--··0.0·unx·····3481·b-·defN·81-Jan-01·01:01·assets/public/chunk-22LI76K5.js.map130 -rw-r--r--··0.0·unx·····3481·b-·defN·81-Jan-01·01:01·assets/public/chunk-22LI76K5.js.map
131 -rw-r--r--··0.0·unx····43128·b-·defN·81-Jan-01·01:01·assets/public/chunk-27VDZFHK.js131 -rw-r--r--··0.0·unx····43128·b-·defN·81-Jan-01·01:01·assets/public/chunk-27VDZFHK.js
132 -rw-r--r--··0.0·unx···158051·b-·defN·81-Jan-01·01:01·assets/public/chunk-27VDZFHK.js.map132 -rw-r--r--··0.0·unx···158051·b-·defN·81-Jan-01·01:01·assets/public/chunk-27VDZFHK.js.map
133 -rw-r--r--··0.0·unx·····2044·b-·defN·81-Jan-01·01:01·assets/public/chunk-2NYJ54WT.js133 -rw-r--r--··0.0·unx·····2044·b-·defN·81-Jan-01·01:01·assets/public/chunk-2NYJ54WT.js
134 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-2NYJ54WT.js.map134 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-2NYJ54WT.js.map
135 -rw-r--r--··0.0·unx·····3934·b-·defN·81-Jan-01·01:01·assets/public/chunk-2PSKBIBQ.js135 -rw-r--r--··0.0·unx·····3934·b-·defN·81-Jan-01·01:01·assets/public/chunk-2PSKBIBQ.js
136 -rw-r--r--··0.0·unx····13802·b-·defN·81-Jan-01·01:01·assets/public/chunk-2PSKBIBQ.js.map136 -rw-r--r--··0.0·unx····13802·b-·defN·81-Jan-01·01:01·assets/public/chunk-2PSKBIBQ.js.map
137 -rw-r--r--··0.0·unx····59862·b-·defN·81-Jan-01·01:01·assets/public/chunk-2UKDQBTZ.js 
138 -rw-r--r--··0.0·unx···171728·b-·defN·81-Jan-01·01:01·assets/public/chunk-2UKDQBTZ.js.map 
139 -rw-r--r--··0.0·unx·····9276·b-·defN·81-Jan-01·01:01·assets/public/chunk-3E43H4SH.js137 -rw-r--r--··0.0·unx·····9276·b-·defN·81-Jan-01·01:01·assets/public/chunk-3E43H4SH.js
140 -rw-r--r--··0.0·unx····32056·b-·defN·81-Jan-01·01:01·assets/public/chunk-3E43H4SH.js.map138 -rw-r--r--··0.0·unx····32056·b-·defN·81-Jan-01·01:01·assets/public/chunk-3E43H4SH.js.map
141 -rw-r--r--··0.0·unx···254518·b-·defN·81-Jan-01·01:01·assets/public/chunk-3OJUPW43.js139 -rw-r--r--··0.0·unx···254518·b-·defN·81-Jan-01·01:01·assets/public/chunk-3ONJEEYJ.js
142 -rw-r--r--··0.0·unx···796800·b-·defN·81-Jan-01·01:01·assets/public/chunk-3OJUPW43.js.map140 -rw-r--r--··0.0·unx···796800·b-·defN·81-Jan-01·01:01·assets/public/chunk-3ONJEEYJ.js.map
143 -rw-r--r--··0.0·unx······615·b-·defN·81-Jan-01·01:01·assets/public/chunk-3UB54IM4.js141 -rw-r--r--··0.0·unx······615·b-·defN·81-Jan-01·01:01·assets/public/chunk-3UB54IM4.js
144 -rw-r--r--··0.0·unx·····2240·b-·defN·81-Jan-01·01:01·assets/public/chunk-3UB54IM4.js.map142 -rw-r--r--··0.0·unx·····2240·b-·defN·81-Jan-01·01:01·assets/public/chunk-3UB54IM4.js.map
145 -rw-r--r--··0.0·unx·····8847·b-·defN·81-Jan-01·01:01·assets/public/chunk-3ZJ6CWJV.js143 -rw-r--r--··0.0·unx·····8847·b-·defN·81-Jan-01·01:01·assets/public/chunk-3ZJ6CWJV.js
146 -rw-r--r--··0.0·unx····15671·b-·defN·81-Jan-01·01:01·assets/public/chunk-3ZJ6CWJV.js.map144 -rw-r--r--··0.0·unx····15671·b-·defN·81-Jan-01·01:01·assets/public/chunk-3ZJ6CWJV.js.map
 145 -rw-r--r--··0.0·unx······933·b-·defN·81-Jan-01·01:01·assets/public/chunk-4FRJBYL6.js
 146 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-4FRJBYL6.js.map
147 -rw-r--r--··0.0·unx······426·b-·defN·81-Jan-01·01:01·assets/public/chunk-4NE7ZGWJ.js147 -rw-r--r--··0.0·unx······426·b-·defN·81-Jan-01·01:01·assets/public/chunk-4NE7ZGWJ.js
148 -rw-r--r--··0.0·unx······949·b-·defN·81-Jan-01·01:01·assets/public/chunk-4NE7ZGWJ.js.map148 -rw-r--r--··0.0·unx······949·b-·defN·81-Jan-01·01:01·assets/public/chunk-4NE7ZGWJ.js.map
 149 -rw-r--r--··0.0·unx····63528·b-·defN·81-Jan-01·01:01·assets/public/chunk-4TOJ7IBO.js
 150 -rw-r--r--··0.0·unx···160634·b-·defN·81-Jan-01·01:01·assets/public/chunk-4TOJ7IBO.js.map
149 -rw-r--r--··0.0·unx·····4853·b-·defN·81-Jan-01·01:01·assets/public/chunk-4WKVJOAH.js151 -rw-r--r--··0.0·unx·····4853·b-·defN·81-Jan-01·01:01·assets/public/chunk-4WKVJOAH.js
150 -rw-r--r--··0.0·unx····56024·b-·defN·81-Jan-01·01:01·assets/public/chunk-4WKVJOAH.js.map152 -rw-r--r--··0.0·unx····56024·b-·defN·81-Jan-01·01:01·assets/public/chunk-4WKVJOAH.js.map
151 -rw-r--r--··0.0·unx·····3538·b-·defN·81-Jan-01·01:01·assets/public/chunk-4XFTMRPN.js153 -rw-r--r--··0.0·unx·····3538·b-·defN·81-Jan-01·01:01·assets/public/chunk-4XFTMRPN.js
152 -rw-r--r--··0.0·unx····10230·b-·defN·81-Jan-01·01:01·assets/public/chunk-4XFTMRPN.js.map154 -rw-r--r--··0.0·unx····10230·b-·defN·81-Jan-01·01:01·assets/public/chunk-4XFTMRPN.js.map
153 -rw-r--r--··0.0·unx······933·b-·defN·81-Jan-01·01:01·assets/public/chunk-5JG3MWPZ.js 
154 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-5JG3MWPZ.js.map 
155 -rw-r--r--··0.0·unx·····5592·b-·defN·81-Jan-01·01:01·assets/public/chunk-64RE54MC.js155 -rw-r--r--··0.0·unx·····5592·b-·defN·81-Jan-01·01:01·assets/public/chunk-64RE54MC.js
156 -rw-r--r--··0.0·unx····20482·b-·defN·81-Jan-01·01:01·assets/public/chunk-64RE54MC.js.map156 -rw-r--r--··0.0·unx····20482·b-·defN·81-Jan-01·01:01·assets/public/chunk-64RE54MC.js.map
 157 -rw-r--r--··0.0·unx·····1015·b-·defN·81-Jan-01·01:01·assets/public/chunk-6AABV2BL.js
 158 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-6AABV2BL.js.map
157 -rw-r--r--··0.0·unx····24103·b-·defN·81-Jan-01·01:01·assets/public/chunk-6FER4K4G.js159 -rw-r--r--··0.0·unx····24103·b-·defN·81-Jan-01·01:01·assets/public/chunk-6FER4K4G.js
158 -rw-r--r--··0.0·unx····97792·b-·defN·81-Jan-01·01:01·assets/public/chunk-6FER4K4G.js.map160 -rw-r--r--··0.0·unx····97792·b-·defN·81-Jan-01·01:01·assets/public/chunk-6FER4K4G.js.map
159 -rw-r--r--··0.0·unx····15719·b-·defN·81-Jan-01·01:01·assets/public/chunk-6SGTZSSB.js161 -rw-r--r--··0.0·unx····15719·b-·defN·81-Jan-01·01:01·assets/public/chunk-6SGTZSSB.js
160 -rw-r--r--··0.0·unx····30612·b-·defN·81-Jan-01·01:01·assets/public/chunk-6SGTZSSB.js.map162 -rw-r--r--··0.0·unx····30612·b-·defN·81-Jan-01·01:01·assets/public/chunk-6SGTZSSB.js.map
161 -rw-r--r--··0.0·unx·····1966·b-·defN·81-Jan-01·01:01·assets/public/chunk-7ECWYN3M.js163 -rw-r--r--··0.0·unx·····1966·b-·defN·81-Jan-01·01:01·assets/public/chunk-7ECWYN3M.js
162 -rw-r--r--··0.0·unx·····8032·b-·defN·81-Jan-01·01:01·assets/public/chunk-7ECWYN3M.js.map164 -rw-r--r--··0.0·unx·····8032·b-·defN·81-Jan-01·01:01·assets/public/chunk-7ECWYN3M.js.map
163 -rw-r--r--··0.0·unx····18901·b-·defN·81-Jan-01·01:01·assets/public/chunk-7VCCNOJ4.js165 -rw-r--r--··0.0·unx····18901·b-·defN·81-Jan-01·01:01·assets/public/chunk-7VCCNOJ4.js
Offset 174, 18 lines modifiedOffset 176, 18 lines modified
174 -rw-r--r--··0.0·unx····37882·b-·defN·81-Jan-01·01:01·assets/public/chunk-BFMY5LUL.js.map176 -rw-r--r--··0.0·unx····37882·b-·defN·81-Jan-01·01:01·assets/public/chunk-BFMY5LUL.js.map
175 -rw-r--r--··0.0·unx······997·b-·defN·81-Jan-01·01:01·assets/public/chunk-BOROUNNF.js177 -rw-r--r--··0.0·unx······997·b-·defN·81-Jan-01·01:01·assets/public/chunk-BOROUNNF.js
176 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-BOROUNNF.js.map178 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-BOROUNNF.js.map
177 -rw-r--r--··0.0·unx·····2830·b-·defN·81-Jan-01·01:01·assets/public/chunk-BSHZLOXP.js179 -rw-r--r--··0.0·unx·····2830·b-·defN·81-Jan-01·01:01·assets/public/chunk-BSHZLOXP.js
178 -rw-r--r--··0.0·unx·····4560·b-·defN·81-Jan-01·01:01·assets/public/chunk-BSHZLOXP.js.map180 -rw-r--r--··0.0·unx·····4560·b-·defN·81-Jan-01·01:01·assets/public/chunk-BSHZLOXP.js.map
179 -rw-r--r--··0.0·unx····19119·b-·defN·81-Jan-01·01:01·assets/public/chunk-BVYK26GV.js181 -rw-r--r--··0.0·unx····19119·b-·defN·81-Jan-01·01:01·assets/public/chunk-BVYK26GV.js
180 -rw-r--r--··0.0·unx····53621·b-·defN·81-Jan-01·01:01·assets/public/chunk-BVYK26GV.js.map182 -rw-r--r--··0.0·unx····53621·b-·defN·81-Jan-01·01:01·assets/public/chunk-BVYK26GV.js.map
 183 -rw-r--r--··0.0·unx·····3098·b-·defN·81-Jan-01·01:01·assets/public/chunk-C4L6BP5G.js
 184 -rw-r--r--··0.0·unx·····9576·b-·defN·81-Jan-01·01:01·assets/public/chunk-C4L6BP5G.js.map
181 -rw-r--r--··0.0·unx····35727·b-·defN·81-Jan-01·01:01·assets/public/chunk-C6AGMAVS.js185 -rw-r--r--··0.0·unx····35727·b-·defN·81-Jan-01·01:01·assets/public/chunk-C6AGMAVS.js
182 -rw-r--r--··0.0·unx···149379·b-·defN·81-Jan-01·01:01·assets/public/chunk-C6AGMAVS.js.map186 -rw-r--r--··0.0·unx···149379·b-·defN·81-Jan-01·01:01·assets/public/chunk-C6AGMAVS.js.map
183 -rw-r--r--··0.0·unx·····1015·b-·defN·81-Jan-01·01:01·assets/public/chunk-CNHATFKD.js 
184 -rw-r--r--··0.0·unx·······93·b-·defN·81-Jan-01·01:01·assets/public/chunk-CNHATFKD.js.map 
185 -rw-r--r--··0.0·unx·····4604·b-·defN·81-Jan-01·01:01·assets/public/chunk-CWU25N5W.js187 -rw-r--r--··0.0·unx·····4604·b-·defN·81-Jan-01·01:01·assets/public/chunk-CWU25N5W.js
186 -rw-r--r--··0.0·unx·····8705·b-·defN·81-Jan-01·01:01·assets/public/chunk-CWU25N5W.js.map188 -rw-r--r--··0.0·unx·····8705·b-·defN·81-Jan-01·01:01·assets/public/chunk-CWU25N5W.js.map
187 -rw-r--r--··0.0·unx······411·b-·defN·81-Jan-01·01:01·assets/public/chunk-D6IG2VFB.js189 -rw-r--r--··0.0·unx······411·b-·defN·81-Jan-01·01:01·assets/public/chunk-D6IG2VFB.js
188 -rw-r--r--··0.0·unx······938·b-·defN·81-Jan-01·01:01·assets/public/chunk-D6IG2VFB.js.map190 -rw-r--r--··0.0·unx······938·b-·defN·81-Jan-01·01:01·assets/public/chunk-D6IG2VFB.js.map
189 -rw-r--r--··0.0·unx···169723·b-·defN·81-Jan-01·01:01·assets/public/chunk-DJCPJPU4.js191 -rw-r--r--··0.0·unx···169723·b-·defN·81-Jan-01·01:01·assets/public/chunk-DJCPJPU4.js
190 -rw-r--r--··0.0·unx···535147·b-·defN·81-Jan-01·01:01·assets/public/chunk-DJCPJPU4.js.map192 -rw-r--r--··0.0·unx···535147·b-·defN·81-Jan-01·01:01·assets/public/chunk-DJCPJPU4.js.map
191 -rw-r--r--··0.0·unx····29737·b-·defN·81-Jan-01·01:01·assets/public/chunk-DRC7XXR7.js193 -rw-r--r--··0.0·unx····29737·b-·defN·81-Jan-01·01:01·assets/public/chunk-DRC7XXR7.js
Offset 194, 32 lines modifiedOffset 196, 30 lines modified
194 -rw-r--r--··0.0·unx···221484·b-·defN·81-Jan-01·01:01·assets/public/chunk-DRR7C75J.js.map196 -rw-r--r--··0.0·unx···221484·b-·defN·81-Jan-01·01:01·assets/public/chunk-DRR7C75J.js.map
195 -rw-r--r--··0.0·unx·····2001·b-·defN·81-Jan-01·01:01·assets/public/chunk-E35T7GOJ.js197 -rw-r--r--··0.0·unx·····2001·b-·defN·81-Jan-01·01:01·assets/public/chunk-E35T7GOJ.js
196 -rw-r--r--··0.0·unx·····3277·b-·defN·81-Jan-01·01:01·assets/public/chunk-E35T7GOJ.js.map198 -rw-r--r--··0.0·unx·····3277·b-·defN·81-Jan-01·01:01·assets/public/chunk-E35T7GOJ.js.map
197 -rw-r--r--··0.0·unx·····2173·b-·defN·81-Jan-01·01:01·assets/public/chunk-EOWSXWLV.js199 -rw-r--r--··0.0·unx·····2173·b-·defN·81-Jan-01·01:01·assets/public/chunk-EOWSXWLV.js
198 -rw-r--r--··0.0·unx·····8779·b-·defN·81-Jan-01·01:01·assets/public/chunk-EOWSXWLV.js.map200 -rw-r--r--··0.0·unx·····8779·b-·defN·81-Jan-01·01:01·assets/public/chunk-EOWSXWLV.js.map
199 -rw-r--r--··0.0·unx·····3030·b-·defN·81-Jan-01·01:01·assets/public/chunk-EWQSQEOW.js201 -rw-r--r--··0.0·unx·····3030·b-·defN·81-Jan-01·01:01·assets/public/chunk-EWQSQEOW.js
200 -rw-r--r--··0.0·unx····10699·b-·defN·81-Jan-01·01:01·assets/public/chunk-EWQSQEOW.js.map202 -rw-r--r--··0.0·unx····10699·b-·defN·81-Jan-01·01:01·assets/public/chunk-EWQSQEOW.js.map
201 -rw-r--r--··0.0·unx····30026·b-·defN·81-Jan-01·01:01·assets/public/chunk-F6MHL3EH.js 
202 -rw-r--r--··0.0·unx···109138·b-·defN·81-Jan-01·01:01·assets/public/chunk-F6MHL3EH.js.map 
203 -rw-r--r--··0.0·unx·····9966·b-·defN·81-Jan-01·01:01·assets/public/chunk-FFX5YGBA.js203 -rw-r--r--··0.0·unx·····9966·b-·defN·81-Jan-01·01:01·assets/public/chunk-FFX5YGBA.js
204 -rw-r--r--··0.0·unx····27757·b-·defN·81-Jan-01·01:01·assets/public/chunk-FFX5YGBA.js.map204 -rw-r--r--··0.0·unx····27757·b-·defN·81-Jan-01·01:01·assets/public/chunk-FFX5YGBA.js.map
205 -rw-r--r--··0.0·unx···196270·b-·defN·81-Jan-01·01:01·assets/public/chunk-FTMRA4NK.js205 -rw-r--r--··0.0·unx···196270·b-·defN·81-Jan-01·01:01·assets/public/chunk-FTMRA4NK.js
206 -rw-r--r--··0.0·unx···637071·b-·defN·81-Jan-01·01:01·assets/public/chunk-FTMRA4NK.js.map206 -rw-r--r--··0.0·unx···637071·b-·defN·81-Jan-01·01:01·assets/public/chunk-FTMRA4NK.js.map
207 -rw-r--r--··0.0·unx····31508·b-·defN·81-Jan-01·01:01·assets/public/chunk-GNF777TR.js207 -rw-r--r--··0.0·unx····31508·b-·defN·81-Jan-01·01:01·assets/public/chunk-GNF777TR.js
208 -rw-r--r--··0.0·unx····83949·b-·defN·81-Jan-01·01:01·assets/public/chunk-GNF777TR.js.map208 -rw-r--r--··0.0·unx····83949·b-·defN·81-Jan-01·01:01·assets/public/chunk-GNF777TR.js.map
209 -rw-r--r--··0.0·unx····51919·b-·defN·81-Jan-01·01:01·assets/public/chunk-H4W526L2.js209 -rw-r--r--··0.0·unx····51919·b-·defN·81-Jan-01·01:01·assets/public/chunk-H4W526L2.js
210 -rw-r--r--··0.0·unx···187498·b-·defN·81-Jan-01·01:01·assets/public/chunk-H4W526L2.js.map210 -rw-r--r--··0.0·unx···187498·b-·defN·81-Jan-01·01:01·assets/public/chunk-H4W526L2.js.map
211 -rw-r--r--··0.0·unx····51367·b-·defN·81-Jan-01·01:01·assets/public/chunk-HNY4F3UD.js211 -rw-r--r--··0.0·unx····51367·b-·defN·81-Jan-01·01:01·assets/public/chunk-HNY4F3UD.js
212 -rw-r--r--··0.0·unx···259551·b-·defN·81-Jan-01·01:01·assets/public/chunk-HNY4F3UD.js.map212 -rw-r--r--··0.0·unx···259551·b-·defN·81-Jan-01·01:01·assets/public/chunk-HNY4F3UD.js.map
 213 -rw-r--r--··0.0·unx···118238·b-·defN·81-Jan-01·01:01·assets/public/chunk-HUK2ZBHJ.js
 214 -rw-r--r--··0.0·unx···179172·b-·defN·81-Jan-01·01:01·assets/public/chunk-HUK2ZBHJ.js.map
213 -rw-r--r--··0.0·unx····10634·b-·defN·81-Jan-01·01:01·assets/public/chunk-HZHXOD3W.js215 -rw-r--r--··0.0·unx····10634·b-·defN·81-Jan-01·01:01·assets/public/chunk-HZHXOD3W.js
214 -rw-r--r--··0.0·unx····15729·b-·defN·81-Jan-01·01:01·assets/public/chunk-HZHXOD3W.js.map216 -rw-r--r--··0.0·unx····15729·b-·defN·81-Jan-01·01:01·assets/public/chunk-HZHXOD3W.js.map
215 -rw-r--r--··0.0·unx·····2220·b-·defN·81-Jan-01·01:01·assets/public/chunk-IDOOTQWM.js217 -rw-r--r--··0.0·unx·····2220·b-·defN·81-Jan-01·01:01·assets/public/chunk-IDOOTQWM.js
216 -rw-r--r--··0.0·unx·····4787·b-·defN·81-Jan-01·01:01·assets/public/chunk-IDOOTQWM.js.map218 -rw-r--r--··0.0·unx·····4787·b-·defN·81-Jan-01·01:01·assets/public/chunk-IDOOTQWM.js.map
217 -rw-r--r--··0.0·unx···118238·b-·defN·81-Jan-01·01:01·assets/public/chunk-IH33AVAS.js 
218 -rw-r--r--··0.0·unx···179172·b-·defN·81-Jan-01·01:01·assets/public/chunk-IH33AVAS.js.map 
219 -rw-r--r--··0.0·unx····23449·b-·defN·81-Jan-01·01:01·assets/public/chunk-IL2VGLHO.js219 -rw-r--r--··0.0·unx····23449·b-·defN·81-Jan-01·01:01·assets/public/chunk-IL2VGLHO.js
220 -rw-r--r--··0.0·unx····62268·b-·defN·81-Jan-01·01:01·assets/public/chunk-IL2VGLHO.js.map220 -rw-r--r--··0.0·unx····62268·b-·defN·81-Jan-01·01:01·assets/public/chunk-IL2VGLHO.js.map
221 -rw-r--r--··0.0·unx····49220·b-·defN·81-Jan-01·01:01·assets/public/chunk-KPTO6TA5.js221 -rw-r--r--··0.0·unx····49220·b-·defN·81-Jan-01·01:01·assets/public/chunk-KPTO6TA5.js
222 -rw-r--r--··0.0·unx···184328·b-·defN·81-Jan-01·01:01·assets/public/chunk-KPTO6TA5.js.map222 -rw-r--r--··0.0·unx···184328·b-·defN·81-Jan-01·01:01·assets/public/chunk-KPTO6TA5.js.map
223 -rw-r--r--··0.0·unx····54603·b-·defN·81-Jan-01·01:01·assets/public/chunk-LA6ZMQDQ.js223 -rw-r--r--··0.0·unx····54603·b-·defN·81-Jan-01·01:01·assets/public/chunk-LA6ZMQDQ.js
224 -rw-r--r--··0.0·unx···183846·b-·defN·81-Jan-01·01:01·assets/public/chunk-LA6ZMQDQ.js.map224 -rw-r--r--··0.0·unx···183846·b-·defN·81-Jan-01·01:01·assets/public/chunk-LA6ZMQDQ.js.map
225 -rw-r--r--··0.0·unx····55071·b-·defN·81-Jan-01·01:01·assets/public/chunk-LKH75HYX.js225 -rw-r--r--··0.0·unx····55071·b-·defN·81-Jan-01·01:01·assets/public/chunk-LKH75HYX.js
Offset 228, 28 lines modifiedOffset 228, 28 lines modified
228 -rw-r--r--··0.0·unx·····2945·b-·defN·81-Jan-01·01:01·assets/public/chunk-LWBQU4ZR.js.map228 -rw-r--r--··0.0·unx·····2945·b-·defN·81-Jan-01·01:01·assets/public/chunk-LWBQU4ZR.js.map
229 -rw-r--r--··0.0·unx·····1918·b-·defN·81-Jan-01·01:01·assets/public/chunk-LZU27IRJ.js229 -rw-r--r--··0.0·unx·····1918·b-·defN·81-Jan-01·01:01·assets/public/chunk-LZU27IRJ.js
230 -rw-r--r--··0.0·unx·····3262·b-·defN·81-Jan-01·01:01·assets/public/chunk-LZU27IRJ.js.map230 -rw-r--r--··0.0·unx·····3262·b-·defN·81-Jan-01·01:01·assets/public/chunk-LZU27IRJ.js.map
231 -rw-r--r--··0.0·unx·····4447·b-·defN·81-Jan-01·01:01·assets/public/chunk-MA6SG3MC.js231 -rw-r--r--··0.0·unx·····4447·b-·defN·81-Jan-01·01:01·assets/public/chunk-MA6SG3MC.js
232 -rw-r--r--··0.0·unx·····6897·b-·defN·81-Jan-01·01:01·assets/public/chunk-MA6SG3MC.js.map232 -rw-r--r--··0.0·unx·····6897·b-·defN·81-Jan-01·01:01·assets/public/chunk-MA6SG3MC.js.map
233 -rw-r--r--··0.0·unx······291·b-·defN·81-Jan-01·01:01·assets/public/chunk-MASHVMAF.js233 -rw-r--r--··0.0·unx······291·b-·defN·81-Jan-01·01:01·assets/public/chunk-MASHVMAF.js
234 -rw-r--r--··0.0·unx······959·b-·defN·81-Jan-01·01:01·assets/public/chunk-MASHVMAF.js.map234 -rw-r--r--··0.0·unx······959·b-·defN·81-Jan-01·01:01·assets/public/chunk-MASHVMAF.js.map
235 -rw-r--r--··0.0·unx····11454·b-·defN·81-Jan-01·01:01·assets/public/chunk-MBY5JUUL.js 
236 -rw-r--r--··0.0·unx····22568·b-·defN·81-Jan-01·01:01·assets/public/chunk-MBY5JUUL.js.map 
237 -rw-r--r--··0.0·unx····33021·b-·defN·81-Jan-01·01:01·assets/public/chunk-MEFA5NNS.js235 -rw-r--r--··0.0·unx····33021·b-·defN·81-Jan-01·01:01·assets/public/chunk-MEFA5NNS.js
238 -rw-r--r--··0.0·unx···112433·b-·defN·81-Jan-01·01:01·assets/public/chunk-MEFA5NNS.js.map236 -rw-r--r--··0.0·unx···112433·b-·defN·81-Jan-01·01:01·assets/public/chunk-MEFA5NNS.js.map
239 -rw-r--r--··0.0·unx······479·b-·defN·81-Jan-01·01:01·assets/public/chunk-MKQ5S2AR.js237 -rw-r--r--··0.0·unx······479·b-·defN·81-Jan-01·01:01·assets/public/chunk-MKQ5S2AR.js
240 -rw-r--r--··0.0·unx·····4619·b-·defN·81-Jan-01·01:01·assets/public/chunk-MKQ5S2AR.js.map238 -rw-r--r--··0.0·unx·····4619·b-·defN·81-Jan-01·01:01·assets/public/chunk-MKQ5S2AR.js.map
241 -rw-r--r--··0.0·unx·····2210·b-·defN·81-Jan-01·01:01·assets/public/chunk-MPAEDJRJ.js239 -rw-r--r--··0.0·unx·····2210·b-·defN·81-Jan-01·01:01·assets/public/chunk-MPAEDJRJ.js
242 -rw-r--r--··0.0·unx·····3017·b-·defN·81-Jan-01·01:01·assets/public/chunk-MPAEDJRJ.js.map240 -rw-r--r--··0.0·unx·····3017·b-·defN·81-Jan-01·01:01·assets/public/chunk-MPAEDJRJ.js.map
243 -rw-r--r--··0.0·unx····23637·b-·defN·81-Jan-01·01:01·assets/public/chunk-MZDWIDMZ.js241 -rw-r--r--··0.0·unx····23637·b-·defN·81-Jan-01·01:01·assets/public/chunk-MZDWIDMZ.js
244 -rw-r--r--··0.0·unx····41275·b-·defN·81-Jan-01·01:01·assets/public/chunk-MZDWIDMZ.js.map242 -rw-r--r--··0.0·unx····41275·b-·defN·81-Jan-01·01:01·assets/public/chunk-MZDWIDMZ.js.map
245 -rw-r--r--··0.0·unx·····3415·b-·defN·81-Jan-01·01:01·assets/public/chunk-N4Z426ER.js243 -rw-r--r--··0.0·unx·····3415·b-·defN·81-Jan-01·01:01·assets/public/chunk-N4Z426ER.js
246 -rw-r--r--··0.0·unx····16186·b-·defN·81-Jan-01·01:01·assets/public/chunk-N4Z426ER.js.map244 -rw-r--r--··0.0·unx····16186·b-·defN·81-Jan-01·01:01·assets/public/chunk-N4Z426ER.js.map
247 -rw-r--r--··0.0·unx·····4100·b-·defN·81-Jan-01·01:01·assets/public/chunk-N5W3JCRP.js245 -rw-r--r--··0.0·unx·····4100·b-·defN·81-Jan-01·01:01·assets/public/chunk-N5W3JCRP.js
248 -rw-r--r--··0.0·unx····10651·b-·defN·81-Jan-01·01:01·assets/public/chunk-N5W3JCRP.js.map246 -rw-r--r--··0.0·unx····10651·b-·defN·81-Jan-01·01:01·assets/public/chunk-N5W3JCRP.js.map
 247 -rw-r--r--··0.0·unx····59862·b-·defN·81-Jan-01·01:01·assets/public/chunk-NLK463OT.js
 248 -rw-r--r--··0.0·unx···171728·b-·defN·81-Jan-01·01:01·assets/public/chunk-NLK463OT.js.map
249 -rw-r--r--··0.0·unx·····1560·b-·defN·81-Jan-01·01:01·assets/public/chunk-NX5S5CTG.js249 -rw-r--r--··0.0·unx·····1560·b-·defN·81-Jan-01·01:01·assets/public/chunk-NX5S5CTG.js
250 -rw-r--r--··0.0·unx·····4533·b-·defN·81-Jan-01·01:01·assets/public/chunk-NX5S5CTG.js.map250 -rw-r--r--··0.0·unx·····4533·b-·defN·81-Jan-01·01:01·assets/public/chunk-NX5S5CTG.js.map
251 -rw-r--r--··0.0·unx·····2337·b-·defN·81-Jan-01·01:01·assets/public/chunk-O3C3UFG3.js251 -rw-r--r--··0.0·unx·····2337·b-·defN·81-Jan-01·01:01·assets/public/chunk-O3C3UFG3.js
252 -rw-r--r--··0.0·unx·····4992·b-·defN·81-Jan-01·01:01·assets/public/chunk-O3C3UFG3.js.map252 -rw-r--r--··0.0·unx·····4992·b-·defN·81-Jan-01·01:01·assets/public/chunk-O3C3UFG3.js.map
253 -rw-r--r--··0.0·unx·····3929·b-·defN·81-Jan-01·01:01·assets/public/chunk-OVAWK6DV.js253 -rw-r--r--··0.0·unx·····3929·b-·defN·81-Jan-01·01:01·assets/public/chunk-OVAWK6DV.js
254 -rw-r--r--··0.0·unx·····9310·b-·defN·81-Jan-01·01:01·assets/public/chunk-OVAWK6DV.js.map254 -rw-r--r--··0.0·unx·····9310·b-·defN·81-Jan-01·01:01·assets/public/chunk-OVAWK6DV.js.map
255 -rw-r--r--··0.0·unx·····3941·b-·defN·81-Jan-01·01:01·assets/public/chunk-OVDLEDOB.js255 -rw-r--r--··0.0·unx·····3941·b-·defN·81-Jan-01·01:01·assets/public/chunk-OVDLEDOB.js
Max diff block lines reached; 6804/18002 bytes (37.80%) of diff not shown.
14.0 KB
assets/public/ngsw.json
14.0 KB
Pretty-printed
Similarity: 0.9314456791364977% Differences: {"'assetGroups'": "{0: {'urls': {insert: [(5, '/chunk-3ONJEEYJ.js'), (8, '/chunk-4FRJBYL6.js'), " "(10, '/chunk-4TOJ7IBO.js'), (14, '/chunk-6AABV2BL.js'), (27, " "'/chunk-C4L6BP5G.js'), (42, '/chunk-HUK2ZBHJ.js'), (59, '/chunk-NLK463OT.js'), " "(74, '/chunk-SCVPPY5M.js'), (88, '/chunk-X774MRFF.js'), (98, " "'/main-F5T7ZAGY.js')], delete: [98, 89, 79, 53, 44, 36, 27, 12, 6, 4]}}}", "'hashTable'": "{'/index.html': 'ee9807c00ab99a58bb3d70 […]
    
Offset 9, 109 lines modifiedOffset 9, 109 lines modified
9 ············"patterns":·[],9 ············"patterns":·[],
10 ············"updateMode":·"prefetch",10 ············"updateMode":·"prefetch",
11 ············"urls":·[11 ············"urls":·[
12 ················"/chunk-22LI76K5.js",12 ················"/chunk-22LI76K5.js",
13 ················"/chunk-27VDZFHK.js",13 ················"/chunk-27VDZFHK.js",
14 ················"/chunk-2NYJ54WT.js",14 ················"/chunk-2NYJ54WT.js",
15 ················"/chunk-2PSKBIBQ.js",15 ················"/chunk-2PSKBIBQ.js",
16 ················"/chunk-2UKDQBTZ.js", 
17 ················"/chunk-3E43H4SH.js",16 ················"/chunk-3E43H4SH.js",
18 ················"/chunk-3OJUPW43.js",17 ················"/chunk-3ONJEEYJ.js",
19 ················"/chunk-3UB54IM4.js",18 ················"/chunk-3UB54IM4.js",
20 ················"/chunk-3ZJ6CWJV.js",19 ················"/chunk-3ZJ6CWJV.js",
 20 ················"/chunk-4FRJBYL6.js",
21 ················"/chunk-4NE7ZGWJ.js",21 ················"/chunk-4NE7ZGWJ.js",
 22 ················"/chunk-4TOJ7IBO.js",
22 ················"/chunk-4WKVJOAH.js",23 ················"/chunk-4WKVJOAH.js",
23 ················"/chunk-4XFTMRPN.js",24 ················"/chunk-4XFTMRPN.js",
24 ················"/chunk-5JG3MWPZ.js", 
25 ················"/chunk-64RE54MC.js",25 ················"/chunk-64RE54MC.js",
 26 ················"/chunk-6AABV2BL.js",
26 ················"/chunk-6FER4K4G.js",27 ················"/chunk-6FER4K4G.js",
27 ················"/chunk-6SGTZSSB.js",28 ················"/chunk-6SGTZSSB.js",
28 ················"/chunk-7ECWYN3M.js",29 ················"/chunk-7ECWYN3M.js",
29 ················"/chunk-7VCCNOJ4.js",30 ················"/chunk-7VCCNOJ4.js",
30 ················"/chunk-A5MBRGPF.js",31 ················"/chunk-A5MBRGPF.js",
31 ················"/chunk-A6QD6H33.js",32 ················"/chunk-A6QD6H33.js",
32 ················"/chunk-AG7XOE4R.js",33 ················"/chunk-AG7XOE4R.js",
33 ················"/chunk-AQDPSVQS.js",34 ················"/chunk-AQDPSVQS.js",
34 ················"/chunk-BFMY5LUL.js",35 ················"/chunk-BFMY5LUL.js",
35 ················"/chunk-BOROUNNF.js",36 ················"/chunk-BOROUNNF.js",
36 ················"/chunk-BSHZLOXP.js",37 ················"/chunk-BSHZLOXP.js",
37 ················"/chunk-BVYK26GV.js",38 ················"/chunk-BVYK26GV.js",
 39 ················"/chunk-C4L6BP5G.js",
38 ················"/chunk-C6AGMAVS.js",40 ················"/chunk-C6AGMAVS.js",
39 ················"/chunk-CNHATFKD.js", 
40 ················"/chunk-CWU25N5W.js",41 ················"/chunk-CWU25N5W.js",
41 ················"/chunk-D6IG2VFB.js",42 ················"/chunk-D6IG2VFB.js",
42 ················"/chunk-DJCPJPU4.js",43 ················"/chunk-DJCPJPU4.js",
43 ················"/chunk-DRC7XXR7.js",44 ················"/chunk-DRC7XXR7.js",
44 ················"/chunk-DRR7C75J.js",45 ················"/chunk-DRR7C75J.js",
45 ················"/chunk-E35T7GOJ.js",46 ················"/chunk-E35T7GOJ.js",
46 ················"/chunk-EOWSXWLV.js",47 ················"/chunk-EOWSXWLV.js",
47 ················"/chunk-EWQSQEOW.js",48 ················"/chunk-EWQSQEOW.js",
48 ················"/chunk-F6MHL3EH.js", 
49 ················"/chunk-FFX5YGBA.js",49 ················"/chunk-FFX5YGBA.js",
50 ················"/chunk-FTMRA4NK.js",50 ················"/chunk-FTMRA4NK.js",
51 ················"/chunk-GNF777TR.js",51 ················"/chunk-GNF777TR.js",
52 ················"/chunk-H4W526L2.js",52 ················"/chunk-H4W526L2.js",
53 ················"/chunk-HNY4F3UD.js",53 ················"/chunk-HNY4F3UD.js",
 54 ················"/chunk-HUK2ZBHJ.js",
54 ················"/chunk-HZHXOD3W.js",55 ················"/chunk-HZHXOD3W.js",
55 ················"/chunk-IDOOTQWM.js",56 ················"/chunk-IDOOTQWM.js",
56 ················"/chunk-IH33AVAS.js", 
57 ················"/chunk-IL2VGLHO.js",57 ················"/chunk-IL2VGLHO.js",
58 ················"/chunk-KPTO6TA5.js",58 ················"/chunk-KPTO6TA5.js",
59 ················"/chunk-LA6ZMQDQ.js",59 ················"/chunk-LA6ZMQDQ.js",
60 ················"/chunk-LKH75HYX.js",60 ················"/chunk-LKH75HYX.js",
61 ················"/chunk-LWBQU4ZR.js",61 ················"/chunk-LWBQU4ZR.js",
62 ················"/chunk-LZU27IRJ.js",62 ················"/chunk-LZU27IRJ.js",
63 ················"/chunk-MA6SG3MC.js",63 ················"/chunk-MA6SG3MC.js",
64 ················"/chunk-MASHVMAF.js",64 ················"/chunk-MASHVMAF.js",
65 ················"/chunk-MBY5JUUL.js", 
66 ················"/chunk-MEFA5NNS.js",65 ················"/chunk-MEFA5NNS.js",
67 ················"/chunk-MKQ5S2AR.js",66 ················"/chunk-MKQ5S2AR.js",
68 ················"/chunk-MPAEDJRJ.js",67 ················"/chunk-MPAEDJRJ.js",
69 ················"/chunk-MZDWIDMZ.js",68 ················"/chunk-MZDWIDMZ.js",
70 ················"/chunk-N4Z426ER.js",69 ················"/chunk-N4Z426ER.js",
71 ················"/chunk-N5W3JCRP.js",70 ················"/chunk-N5W3JCRP.js",
 71 ················"/chunk-NLK463OT.js",
72 ················"/chunk-NX5S5CTG.js",72 ················"/chunk-NX5S5CTG.js",
73 ················"/chunk-O3C3UFG3.js",73 ················"/chunk-O3C3UFG3.js",
74 ················"/chunk-OVAWK6DV.js",74 ················"/chunk-OVAWK6DV.js",
75 ················"/chunk-OVDLEDOB.js",75 ················"/chunk-OVDLEDOB.js",
76 ················"/chunk-OXDOKNTF.js",76 ················"/chunk-OXDOKNTF.js",
77 ················"/chunk-PA3FMRZY.js",77 ················"/chunk-PA3FMRZY.js",
78 ················"/chunk-PEJGMLLQ.js",78 ················"/chunk-PEJGMLLQ.js",
79 ················"/chunk-PKF6HPLT.js",79 ················"/chunk-PKF6HPLT.js",
80 ················"/chunk-PPIIKUX7.js",80 ················"/chunk-PPIIKUX7.js",
81 ················"/chunk-PWEKLOIS.js",81 ················"/chunk-PWEKLOIS.js",
82 ················"/chunk-QN4RTAQO.js",82 ················"/chunk-QN4RTAQO.js",
83 ················"/chunk-QW2RXNGS.js",83 ················"/chunk-QW2RXNGS.js",
84 ················"/chunk-RGFA3YI4.js",84 ················"/chunk-RGFA3YI4.js",
85 ················"/chunk-RHU3AIGY.js",85 ················"/chunk-RHU3AIGY.js",
 86 ················"/chunk-SCVPPY5M.js",
86 ················"/chunk-SMGHBRM4.js",87 ················"/chunk-SMGHBRM4.js",
87 ················"/chunk-TQJNZHJI.js",88 ················"/chunk-TQJNZHJI.js",
88 ················"/chunk-TREYY5FU.js",89 ················"/chunk-TREYY5FU.js",
89 ················"/chunk-U233VVFY.js",90 ················"/chunk-U233VVFY.js",
90 ················"/chunk-U6IUKL2B.js",91 ················"/chunk-U6IUKL2B.js",
91 ················"/chunk-UBME6YAQ.js", 
92 ················"/chunk-UTPNDVXT.js",92 ················"/chunk-UTPNDVXT.js",
93 ················"/chunk-VALZJMB4.js",93 ················"/chunk-VALZJMB4.js",
94 ················"/chunk-VBLQP2EG.js",94 ················"/chunk-VBLQP2EG.js",
95 ················"/chunk-W3EHXDVY.js",95 ················"/chunk-W3EHXDVY.js",
96 ················"/chunk-WNVFNUNB.js",96 ················"/chunk-WNVFNUNB.js",
97 ················"/chunk-WWBZKKYW.js",97 ················"/chunk-WWBZKKYW.js",
98 ················"/chunk-WWFV7XQN.js",98 ················"/chunk-WWFV7XQN.js",
99 ················"/chunk-WXFYV6O6.js",99 ················"/chunk-WXFYV6O6.js",
 100 ················"/chunk-X774MRFF.js",
100 ················"/chunk-XU2E3I7U.js",101 ················"/chunk-XU2E3I7U.js",
101 ················"/chunk-XXBTMKPQ.js", 
102 ················"/chunk-YA43X3QN.js",102 ················"/chunk-YA43X3QN.js",
103 ················"/chunk-YOQAFCGZ.js",103 ················"/chunk-YOQAFCGZ.js",
104 ················"/chunk-YP3AOG3Z.js",104 ················"/chunk-YP3AOG3Z.js",
105 ················"/chunk-YS2BUNWQ.js",105 ················"/chunk-YS2BUNWQ.js",
106 ················"/chunk-YS7UBZGQ.js",106 ················"/chunk-YS7UBZGQ.js",
107 ················"/chunk-ZERYVBVX.js",107 ················"/chunk-ZERYVBVX.js",
108 ················"/favicon.ico",108 ················"/favicon.ico",
109 ················"/index.html",109 ················"/index.html",
110 ················"/main-VM7OSHFK.js",110 ················"/main-F5T7ZAGY.js",
111 ················"/manifest.json",111 ················"/manifest.json",
112 ················"/polyfills-D4CWKFPZ.js",112 ················"/polyfills-D4CWKFPZ.js",
113 ················"/styles-ZZGMVZDH.css",113 ················"/styles-ZZGMVZDH.css",
114 ················"/worker-FYKNRM5D.js"114 ················"/worker-FYKNRM5D.js"
115 ············]115 ············]
116 ········},116 ········},
117 ········{117 ········{
Offset 382, 109 lines modifiedOffset 382, 109 lines modified
382 ········"/assets/themes/nord-snow-storm.css":·"c402e6a53c388e4c04f99af3fba0ed465a25d240",382 ········"/assets/themes/nord-snow-storm.css":·"c402e6a53c388e4c04f99af3fba0ed465a25d240",
383 ········"/assets/themes/rainbow.css":·"186baf9b9791daff9c3b1a973e4a4e29b1f6536b",383 ········"/assets/themes/rainbow.css":·"186baf9b9791daff9c3b1a973e4a4e29b1f6536b",
384 ········"/assets/unicorn.png":·"0326afe4a8f85faa5c3a01fd38efeafeb58094a2",384 ········"/assets/unicorn.png":·"0326afe4a8f85faa5c3a01fd38efeafeb58094a2",
385 ········"/chunk-22LI76K5.js":·"d4a80793f7022cfb1573a4ff0f316d021e27c471",385 ········"/chunk-22LI76K5.js":·"d4a80793f7022cfb1573a4ff0f316d021e27c471",
386 ········"/chunk-27VDZFHK.js":·"988429cb65f10f7b099da9fc31de342475e3438f",386 ········"/chunk-27VDZFHK.js":·"988429cb65f10f7b099da9fc31de342475e3438f",
387 ········"/chunk-2NYJ54WT.js":·"6b2058100c2940dca4d746dd3f5d18ab6c115902",387 ········"/chunk-2NYJ54WT.js":·"6b2058100c2940dca4d746dd3f5d18ab6c115902",
388 ········"/chunk-2PSKBIBQ.js":·"e3e5fa974283b142c2d619205243af0cebc380e0",388 ········"/chunk-2PSKBIBQ.js":·"e3e5fa974283b142c2d619205243af0cebc380e0",
389 ········"/chunk-2UKDQBTZ.js":·"a4b31572e40933058a4a14aad22a41b34dc880fa", 
390 ········"/chunk-3E43H4SH.js":·"33caa87bbac6b8a44c021550f0bba30292886b0d",389 ········"/chunk-3E43H4SH.js":·"33caa87bbac6b8a44c021550f0bba30292886b0d",
Max diff block lines reached; 8211/13703 bytes (59.92%) of diff not shown.
2.36 KB
assets/public/index.html
    
Offset 6457, 29 lines modifiedOffset 6457, 29 lines modified
00019380:·7265·663d·2263·6875·6e6b·2d59·4f51·4146··ref="chunk-YOQAF00019380:·7265·663d·2263·6875·6e6b·2d59·4f51·4146··ref="chunk-YOQAF
00019390:·4347·5a2e·6a73·223e·3c6c·696e·6b20·7265··CGZ.js"><link·re00019390:·4347·5a2e·6a73·223e·3c6c·696e·6b20·7265··CGZ.js"><link·re
000193a0:·6c3d·226d·6f64·756c·6570·7265·6c6f·6164··l="modulepreload000193a0:·6c3d·226d·6f64·756c·6570·7265·6c6f·6164··l="modulepreload
000193b0:·2220·6872·6566·3d22·6368·756e·6b2d·3232··"·href="chunk-22000193b0:·2220·6872·6566·3d22·6368·756e·6b2d·3232··"·href="chunk-22
000193c0:·4c49·3736·4b35·2e6a·7322·3e3c·6c69·6e6b··LI76K5.js"><link000193c0:·4c49·3736·4b35·2e6a·7322·3e3c·6c69·6e6b··LI76K5.js"><link
000193d0:·2072·656c·3d22·6d6f·6475·6c65·7072·656c···rel="moduleprel000193d0:·2072·656c·3d22·6d6f·6475·6c65·7072·656c···rel="moduleprel
000193e0:·6f61·6422·2068·7265·663d·2263·6875·6e6b··oad"·href="chunk000193e0:·6f61·6422·2068·7265·663d·2263·6875·6e6b··oad"·href="chunk
000193f0:·2d4d·4259·354a·5555·4c2e·6a73·223e·3c6c··-MBY5JUUL.js"><l000193f0:·2d58·3737·344d·5246·462e·6a73·223e·3c6c··-X774MRFF.js"><l
00019400:·696e·6b20·7265·6c3d·226d·6f64·756c·6570··ink·rel="modulep00019400:·696e·6b20·7265·6c3d·226d·6f64·756c·6570··ink·rel="modulep
00019410:·7265·6c6f·6164·2220·6872·6566·3d22·6368··reload"·href="ch00019410:·7265·6c6f·6164·2220·6872·6566·3d22·6368··reload"·href="ch
00019420:·756e·6b2d·4256·594b·3236·4756·2e6a·7322··unk-BVYK26GV.js"00019420:·756e·6b2d·4256·594b·3236·4756·2e6a·7322··unk-BVYK26GV.js"
00019430:·3e3c·6c69·6e6b·2072·656c·3d22·6d6f·6475··><link·rel="modu00019430:·3e3c·6c69·6e6b·2072·656c·3d22·6d6f·6475··><link·rel="modu
00019440:·6c65·7072·656c·6f61·6422·2068·7265·663d··lepreload"·href=00019440:·6c65·7072·656c·6f61·6422·2068·7265·663d··lepreload"·href=
00019450:·2263·6875·6e6b·2d55·424d·4536·5941·512e··"chunk-UBME6YAQ.00019450:·2263·6875·6e6b·2d43·344c·3642·5035·472e··"chunk-C4L6BP5G.
00019460:·6a73·223e·3c6c·696e·6b20·7265·6c3d·226d··js"><link·rel="m00019460:·6a73·223e·3c6c·696e·6b20·7265·6c3d·226d··js"><link·rel="m
00019470:·6f64·756c·6570·7265·6c6f·6164·2220·6872··odulepreload"·hr00019470:·6f64·756c·6570·7265·6c6f·6164·2220·6872··odulepreload"·hr
00019480:·6566·3d22·6368·756e·6b2d·3355·4235·3449··ef="chunk-3UB54I00019480:·6566·3d22·6368·756e·6b2d·3355·4235·3449··ef="chunk-3UB54I
00019490:·4d34·2e6a·7322·3e3c·6c69·6e6b·2072·656c··M4.js"><link·rel00019490:·4d34·2e6a·7322·3e3c·6c69·6e6b·2072·656c··M4.js"><link·rel
000194a0:·3d22·6d6f·6475·6c65·7072·656c·6f61·6422··="modulepreload"000194a0:·3d22·6d6f·6475·6c65·7072·656c·6f61·6422··="modulepreload"
000194b0:·2068·7265·663d·2263·6875·6e6b·2d46·364d···href="chunk-F6M000194b0:·2068·7265·663d·2263·6875·6e6b·2d53·4356···href="chunk-SCV
000194c0:·484c·3345·482e·6a73·223e·3c73·6372·6970··HL3EH.js"><scrip000194c0:·5050·5935·4d2e·6a73·223e·3c73·6372·6970··PPY5M.js"><scrip
000194d0:·7420·7372·633d·2270·6f6c·7966·696c·6c73··t·src="polyfills000194d0:·7420·7372·633d·2270·6f6c·7966·696c·6c73··t·src="polyfills
000194e0:·2d44·3443·574b·4650·5a2e·6a73·2220·7479··-D4CWKFPZ.js"·ty000194e0:·2d44·3443·574b·4650·5a2e·6a73·2220·7479··-D4CWKFPZ.js"·ty
000194f0:·7065·3d22·6d6f·6475·6c65·223e·3c2f·7363··pe="module"></sc000194f0:·7065·3d22·6d6f·6475·6c65·223e·3c2f·7363··pe="module"></sc
00019500:·7269·7074·3e3c·7363·7269·7074·2073·7263··ript><script·src00019500:·7269·7074·3e3c·7363·7269·7074·2073·7263··ript><script·src
00019510:·3d22·6d61·696e·2d56·4d37·4f53·4846·4b2e··="main-VM7OSHFK.00019510:·3d22·6d61·696e·2d46·3554·375a·4147·592e··="main-F5T7ZAGY.
00019520:·6a73·2220·7479·7065·3d22·6d6f·6475·6c65··js"·type="module00019520:·6a73·2220·7479·7065·3d22·6d6f·6475·6c65··js"·type="module
00019530:·223e·3c2f·7363·7269·7074·3e3c·2f62·6f64··"></script></bod00019530:·223e·3c2f·7363·7269·7074·3e3c·2f62·6f64··"></script></bod
00019540:·793e·0a3c·2f68·746d·6c3e·0a··············y>.</html>.00019540:·793e·0a3c·2f68·746d·6c3e·0a··············y>.</html>.
109 B
assets/public/chunk-XXBTMKPQ.js.map vs.
assets/public/chunk-4TOJ7IBO.js.map
Files identical despite different names
109 B
assets/public/chunk-MBY5JUUL.js.map vs.
assets/public/chunk-X774MRFF.js.map
Files identical despite different names
644 B
assets/public/chunk-XXBTMKPQ.js vs.
assets/public/chunk-4TOJ7IBO.js
Files 0% similar despite different names
542 B
js-beautify {}
    
Offset 108, 15 lines modifiedOffset 108, 15 lines modified
108 import·{108 import·{
109 ····L·as·ji,109 ····L·as·ji,
110 ····M·as·fo,110 ····M·as·fo,
111 ····k·as·Ai,111 ····k·as·Ai,
112 ····l·as·yo,112 ····l·as·yo,
113 ····m·as·Bi,113 ····m·as·Bi,
114 ····n·as·go114 ····n·as·go
115 }·from·"./chunk-3OJUPW43.js";115 }·from·"./chunk-3ONJEEYJ.js";
116 import·"./chunk-LA6ZMQDQ.js";116 import·"./chunk-LA6ZMQDQ.js";
117 import·"./chunk-FTMRA4NK.js";117 import·"./chunk-FTMRA4NK.js";
118 import·{118 import·{
119 ····p·as·Di,119 ····p·as·Di,
120 ····q·as·co120 ····q·as·co
121 }·from·"./chunk-VBLQP2EG.js";121 }·from·"./chunk-VBLQP2EG.js";
122 import·{122 import·{
Offset 2216, 8 lines modifiedOffset 2216, 8 lines modified
2216 ········return·e2216 ········return·e
2217 ····})()2217 ····})()
2218 });2218 });
2219 tr();2219 tr();
2220 export·{2220 export·{
2221 ····Yl·as·DailySummaryComponent2221 ····Yl·as·DailySummaryComponent
2222 };2222 };
2223 //#·sourceMappingURL=chunk-XXBTMKPQ.js.map2223 //#·sourceMappingURL=chunk-4TOJ7IBO.js.map
761 B
assets/public/chunk-F6MHL3EH.js vs.
assets/public/chunk-SCVPPY5M.js
Files 0% similar despite different names
659 B
js-beautify {}
    
Offset 5, 21 lines modifiedOffset 5, 21 lines modified
5 ····f·as·Qe,5 ····f·as·Qe,
6 ····i·as·Ne,6 ····i·as·Ne,
7 ····j·as·et,7 ····j·as·et,
8 ····q·as·Ae,8 ····q·as·Ae,
9 ····r·as·tt,9 ····r·as·tt,
10 ····s·as·$e,10 ····s·as·$e,
11 ····t·as·it11 ····t·as·it
12 }·from·"./chunk-IH33AVAS.js";12 }·from·"./chunk-HUK2ZBHJ.js";
13 import·{13 import·{
14 ····B·as·Ce,14 ····B·as·Ce,
15 ····C·as·Je,15 ····C·as·Je,
16 ····c·as·Ie,16 ····c·as·Ie,
17 ····d·as·Xe17 ····d·as·Xe
18 }·from·"./chunk-3OJUPW43.js";18 }·from·"./chunk-3ONJEEYJ.js";
19 import·{19 import·{
20 ····a·as·fe,20 ····a·as·fe,
21 ····b·as·me,21 ····b·as·me,
22 ····c·as·Pe,22 ····c·as·Pe,
23 ····e·as·_e,23 ····e·as·_e,
24 ····f·as·Se,24 ····f·as·Se,
25 ····g·as·Ee,25 ····g·as·Ee,
Offset 1114, 8 lines modifiedOffset 1114, 8 lines modified
1114 ········}1114 ········}
1115 ········return·d1115 ········return·d
1116 ····})()1116 ····})()
1117 });1117 });
1118 export·{1118 export·{
1119 ····Te·as·a,·Le·as·b,·Z·as·c,·Y·as·d,·Oe·as·e,·oi·as·f,·nt·as·g1119 ····Te·as·a,·Le·as·b,·Z·as·c,·Y·as·d,·Oe·as·e,·oi·as·f,·nt·as·g
1120 };1120 };
1121 //#·sourceMappingURL=chunk-F6MHL3EH.js.map1121 //#·sourceMappingURL=chunk-SCVPPY5M.js.map
826 B
assets/public/chunk-MBY5JUUL.js vs.
assets/public/chunk-X774MRFF.js
Files 0% similar despite different names
724 B
js-beautify {}
    
Offset 1, 11 lines modifiedOffset 1, 11 lines modified
1 import·{1 import·{
2 ····f·as·ie,2 ····f·as·ie,
3 ····g·as·we3 ····g·as·we
4 }·from·"./chunk-F6MHL3EH.js";4 }·from·"./chunk-SCVPPY5M.js";
5 import·{5 import·{
6 ····a·as·re,6 ····a·as·re,
7 ····b·as·oe,7 ····b·as·oe,
8 ····c·as·ae,8 ····c·as·ae,
9 ····f·as·le,9 ····f·as·le,
10 ····g·as·Oe10 ····g·as·Oe
11 }·from·"./chunk-YP3AOG3Z.js";11 }·from·"./chunk-YP3AOG3Z.js";
Offset 14, 15 lines modifiedOffset 14, 15 lines modified
14 ····l·as·Ie,14 ····l·as·Ie,
15 ····m·as·Z,15 ····m·as·Z,
16 ····n·as·ee,16 ····n·as·ee,
17 ····o·as·te,17 ····o·as·te,
18 ····p·as·ve,18 ····p·as·ve,
19 ····q·as·ne,19 ····q·as·ne,
20 ····r·as·Me20 ····r·as·Me
21 }·from·"./chunk-IH33AVAS.js";21 }·from·"./chunk-HUK2ZBHJ.js";
22 import·{22 import·{
23 ····a·as·W,23 ····a·as·W,
24 ····b·as·xe24 ····b·as·xe
25 }·from·"./chunk-AQDPSVQS.js";25 }·from·"./chunk-AQDPSVQS.js";
26 import·{26 import·{
27 ····c·as·q,27 ····c·as·q,
28 ····d·as·N,28 ····d·as·N,
Offset 319, 8 lines modifiedOffset 319, 8 lines modified
319 ········}319 ········}
320 ········return·t320 ········return·t
321 ····})()321 ····})()
322 });322 });
323 export·{323 export·{
324 ····rt·as·a,·De·as·b324 ····rt·as·a,·De·as·b
325 };325 };
326 //#·sourceMappingURL=chunk-MBY5JUUL.js.map326 //#·sourceMappingURL=chunk-X774MRFF.js.map
119 KB
assets/public/chunk-3OJUPW43.js.map vs.
assets/public/chunk-3ONJEEYJ.js.map
Files 0% similar despite different names
119 KB
Pretty-printed
Similarity: 0.9981684981684982% Differences: {"'sourcesContent'": "{insert: [(60, '// This file is auto-generated by tools/load-env.js\\n// Do " 'not modify directly - edit .env file instead\\n// Generated at: ' '2025-09-04T10:12:58.584Z\\n\\n/**\\n * Environment variables loaded from ' '.env file\\n * Access these constants instead of process.env in your Angular ' 'app\\n */\\nexport const ENV = {\\n\\n} as const;\\n\\n// Type-safe helper ' 'to en […]
    
Offset 4076, 15 lines modifiedOffset 4076, 15 lines modified
4076 ········"<div\n··[@standardList]=\"field.fieldGroup?.length\"\n··class=\"list-wrapper\"\n>\n··@for·(innerField·of·field.fieldGroup;·track·trackByFn(i,·innerField);·let·i·=·$index)·{\n····<div·class=\"row\">\n······<formly-field\n········[field]=\"innerField\"\n········class=\"field\"\n······></formly-field>\n······<button\n········#triggerBtn\n········mat-mini-fab\n········color=\"\"\n········type=\"button\"\n········class=\"remove-btn\"\n······>\n········<mat-icon>more_vert</mat-icon>\n······</button>\n\n······<context-menu\n········[contextMenu]=\"contextMenu\"\n········[rightClickTriggerEl]=\"triggerBtn\"\n········[leftClickTriggerEl]=\"triggerBtn\"\n······></context-menu>\n\n······<ng-template·#contextMenu>\n········@if·(i·>·0)·{\n··········<button\n············mat-menu-item\n············(click)=\"moveItem(i,·i·-·1)\"\n··········>\n············<mat-icon>arrow_backward</mat-icon>\n············{{·T.G.MOVE_BACKWARD·|·translate·}}\n··········</button>\n········}\n········@if·(i·<·field.fieldGroup?.length·-·1)·{\n··········<button\n············mat-menu-item\n············(click)=\"moveItem(i,·i·+·1)\"\n··········>\n············<mat-icon>arrow_forward</mat-icon>\n············{{·T.G.MOVE_FORWARD·|·translate·}}\n··········</button>\n········}\n········<button\n··········mat-menu-item\n··········class=\"color-warn-i\"\n··········(click)=\"removeItem(i)\"\n········>\n··········<mat-icon·class=\"color-warn-i\">delete_forever</mat-icon>\n··········{{·T.G.DELETE·|·translate·}}\n········</button>\n······</ng-template>\n····</div>\n··}\n</div>\n\n<div·class=\"footer\">\n··<button\n····(click)=\"addItem()\"\n····mat-button\n····type=\"button\"\n··>\n····<mat-icon>add</mat-icon>\n····{{·to.addText·|·translate·}}\n··</button>\n</div>\n",4076 ········"<div\n··[@standardList]=\"field.fieldGroup?.length\"\n··class=\"list-wrapper\"\n>\n··@for·(innerField·of·field.fieldGroup;·track·trackByFn(i,·innerField);·let·i·=·$index)·{\n····<div·class=\"row\">\n······<formly-field\n········[field]=\"innerField\"\n········class=\"field\"\n······></formly-field>\n······<button\n········#triggerBtn\n········mat-mini-fab\n········color=\"\"\n········type=\"button\"\n········class=\"remove-btn\"\n······>\n········<mat-icon>more_vert</mat-icon>\n······</button>\n\n······<context-menu\n········[contextMenu]=\"contextMenu\"\n········[rightClickTriggerEl]=\"triggerBtn\"\n········[leftClickTriggerEl]=\"triggerBtn\"\n······></context-menu>\n\n······<ng-template·#contextMenu>\n········@if·(i·>·0)·{\n··········<button\n············mat-menu-item\n············(click)=\"moveItem(i,·i·-·1)\"\n··········>\n············<mat-icon>arrow_backward</mat-icon>\n············{{·T.G.MOVE_BACKWARD·|·translate·}}\n··········</button>\n········}\n········@if·(i·<·field.fieldGroup?.length·-·1)·{\n··········<button\n············mat-menu-item\n············(click)=\"moveItem(i,·i·+·1)\"\n··········>\n············<mat-icon>arrow_forward</mat-icon>\n············{{·T.G.MOVE_FORWARD·|·translate·}}\n··········</button>\n········}\n········<button\n··········mat-menu-item\n··········class=\"color-warn-i\"\n··········(click)=\"removeItem(i)\"\n········>\n··········<mat-icon·class=\"color-warn-i\">delete_forever</mat-icon>\n··········{{·T.G.DELETE·|·translate·}}\n········</button>\n······</ng-template>\n····</div>\n··}\n</div>\n\n<div·class=\"footer\">\n··<button\n····(click)=\"addItem()\"\n····mat-button\n····type=\"button\"\n··>\n····<mat-icon>add</mat-icon>\n····{{·to.addText·|·translate·}}\n··</button>\n</div>\n",
4077 ········"import·{·Directionality·}·from·'@angular/cdk/bidi';\nimport·{·Platform·}·from·'@angular/cdk/platform';\nimport·*·as·i0·from·'@angular/core';\nimport·{·InjectionToken,·inject,·ChangeDetectorRef,·NgZone,·Renderer2,·ElementRef,·Component,·ChangeDetectionStrategy,·ViewEncapsulation,·Input,·ViewChild,·booleanAttribute,·numberAttribute,·ViewChildren,·ContentChild,·ContentChildren,·forwardRef,·EventEmitter,·signal,·Directive,·Output,·NgModule·}·from·'@angular/core';\nimport·{·b·as·RippleState,·M·as·MatRipple,·a·as·MAT_RIPPLE_GLOBAL_OPTIONS·}·from·'./ripple-BMyyyLz2.mjs';\nimport·{·_CdkPrivateStyleLoader·}·from·'@angular/cdk/private';\nimport·{·_·as·_animationsDisabled·}·from·'./animation-ChQ1vjiF.mjs';\nimport·{·_·as·_StructuralStylesLoader·}·from·'./structural-styles-CObeNzjn.mjs';\nimport·{·NG_VALUE_ACCESSOR·}·from·'@angular/forms';\nimport·{·Subject·}·from·'rxjs';\nimport·{·M·as·MatCommonModule·}·from·'./common-module-cKSwHniA.mjs';\nimport·{·M·as·MatRippleModule·}·from·'./index-BRImSAOu.mjs';\nimport·'@angular/cdk/a11y';\nimport·'@angular/cdk/coercion';\nimport·'@angular/cdk/layout';\n\n/**\n·*·Thumb·types:·range·slider·has·two·thumbs·(START,·END)·whereas·single·point\n·*·slider·only·has·one·thumb·(END).\n·*/\nconst·_c0·=·[\"knob\"];\nconst·_c1·=·[\"valueIndicatorContainer\"];\nfunction·MatSliderVisualThumb_Conditional_0_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275elementStart(0,·\"div\",·2,·1)(2,·\"div\",·5)(3,·\"span\",·6);\n····i0.\u0275\u0275text(4);\n····i0.\u0275\u0275elementEnd()()();\n··}\n··if·(rf·&·2)·{\n····const·ctx_r0·=·i0.\u0275\u0275nextContext();\n····i0.\u0275\u0275advance(4);\n····i0.\u0275\u0275textInterpolate(ctx_r0.valueIndicatorText);\n··}\n}\nconst·_c2·=·[\"trackActive\"];\nconst·_c3·=·[\"*\"];\nfunction·MatSlider_Conditional_6_Conditional_2_For_1_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275element(0,·\"div\");\n··}\n··if·(rf·&·2)·{\n····const·tickMark_r1·=·ctx.$implicit;\n····const·\u0275$index_14_r2·=·ctx.$index;\n····const·ctx_r2·=·i0.\u0275\u0275nextContext(3);\n····i0.\u0275\u0275classMap(tickMark_r1·===·0·?·\"mdc-slider__tick-mark--active\"·:·\"mdc-slider__tick-mark--inactive\");\n····i0.\u0275\u0275styleProp(\"transform\",·ctx_r2._calcTickMarkTransform(\u0275$index_14_r2));\n··}\n}\nfunction·MatSlider_Conditional_6_Conditional_2_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275repeaterCreate(0,·MatSlider_Conditional_6_Conditional_2_For_1_Template,·1,·4,·\"div\",·8,·i0.\u0275\u0275repeaterTrackByIndex);\n··}\n··if·(rf·&·2)·{\n····const·ctx_r2·=·i0.\u0275\u0275nextContext(2);\n····i0.\u0275\u0275repeater(ctx_r2._tickMarks);\n··}\n}\nfunction·MatSlider_Conditional_6_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275elementStart(0,·\"div\",·6,·1);\n····i0.\u0275\u0275conditionalCreate(2,·MatSlider_Conditional_6_Conditional_2_Template,·2,·0);\n····i0.\u0275\u0275elementEnd();\n··}\n··if·(rf·&·2)·{\n····const·ctx_r2·=·i0.\u0275\u0275nextContext();\n····i0.\u0275\u0275advance(2);\n····i0.\u0275\u0275conditional(ctx_r2._cachedWidth·?·2·:·-1);\n··}\n}\nfunction·MatSlider_Conditional_7_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275element(0,·\"mat-slider-visual-thumb\",·7);\n··}\n··if·(rf·&·2)·{\n····const·ctx_r2·=·i0.\u0275\u0275nextContext();\n····i0.\u0275\u0275property(\"discrete\",·ctx_r2.discrete)(\"thumbPosition\",·1)(\"valueIndicatorText\",·ctx_r2.startValueIndicatorText);\n··}\n}\nvar·_MatThumb·=·/*#__PURE__*/function·(_MatThumb)·{\n··_MatThumb[_MatThumb[\"START\"]·=·1]·=·\"START\";\n··_MatThumb[_MatThumb[\"END\"]·=·2]·=·\"END\";\n··return·_MatThumb;\n}(_MatThumb·||·{});\n/**·Tick·mark·enum,·for·discrete·sliders.·*/\nvar·_MatTickMark·=·/*#__PURE__*/function·(_MatTickMark)·{\n··_MatTickMark[_MatTickMark[\"ACTIVE\"]·=·0]·=·\"ACTIVE\";\n··_MatTickMark[_MatTickMark[\"INACTIVE\"]·=·1]·=·\"INACTIVE\";\n··return·_MatTickMark;\n}(_MatTickMark·||·{});\n/**\n·*·Injection·token·that·can·be·used·for·a·`MatSlider`·to·provide·itself·as·a\n·*·parent·to·the·`MatSliderThumb`·and·`MatSliderRangeThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER·=·/*#__PURE__*/new·InjectionToken('_MatSlider');\n/**\n·*·Injection·token·that·can·be·used·to·query·for·a·`MatSliderThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_THUMB·=·/*#__PURE__*/new·InjectionToken('_MatSliderThumb');\n/**\n·*·Injection·token·that·can·be·used·to·query·for·a·`MatSliderRangeThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_RANGE_THUMB·=·/*#__PURE__*/new·InjectionToken('_MatSliderRangeThumb');\n/**\n·*·Injection·token·that·can·be·used·to·query·for·a·`MatSliderVisualThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_VISUAL_THUMB·=·/*#__PURE__*/new·InjectionToken('_MatSliderVisualThumb');\n/**\n·*·A·simple·change·event·emitted·by·the·MatSlider·component.\n·*·@deprecated·Use·event·bindings·directly·on·the·MatSliderThumbs·for·`change`·and·`input`·events.·See·https://v17.material.angular.dev/guide/mdc-migration·for·information·about·migrating.\n·*·@breaking-change·17.0.0\n·*/\nclass·MatSliderChange·{\n··/**·The·MatSliderThumb·that·was·interacted·with.·*/\n··source;\n··/**·The·MatSlider·that·was·interacted·with.·*/\n··parent;\n··/**·The·new·value·of·the·source·slider.·*/\n··value;\n}\n\n/**\n·*·The·visual·slider·thumb.\n·*\n·*·Handles·the·slider·thumb·ripple·states·(hover,·focus,·and·active),\n·*·and·displaying·the·value·tooltip·on·discrete·sliders.\n·*·@docs-private\n·*/\nlet·MatSliderVisualThumb·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderVisualThumb·{\n····_cdr·=·inject(ChangeDetectorRef);\n····_ngZone·=·inject(NgZone);\n····_slider·=·inject(MAT_SLIDER);\n····_renderer·=·inject(Renderer2);\n····_listenerCleanups;\n····/**·Whether·the·slider·displays·a·numeric·value·label·upon·pressing·the·thumb.·*/\n····discrete;\n····/**·Indicates·which·slider·thumb·this·input·corresponds·to.·*/\n····thumbPosition;\n····/**·The·display·value·of·the·slider·thumb.·*/\n····valueIndicatorText;\n····/**·The·MatRipple·for·this·slider·thumb.·*/\n····_ripple;\n····/**·The·slider·thumb·knob.·*/\n····_knob;\n····/**·The·slider·thumb·value·indicator·container.·*/\n····_valueIndicatorContainer;\n····/**·The·slider·input·corresponding·to·this·slider·thumb.·*/\n····_sliderInput;\n····/**·The·native·html·element·of·the·slider·input·corresponding·to·this·thumb.·*/\n····_sliderInputEl;\n····/**·The·RippleRef·for·the·slider·thumbs·hover·state.·*/\n····_hoverRippleRef;\n····/**·The·RippleRef·for·the·slider·thumbs·focus·state.·*/\n····_focusRippleRef;\n····/**·The·RippleRef·for·the·slider·thumbs·active·state.·*/\n····_activeRippleRef;\n····/**·Whether·the·slider·thumb·is·currently·being·hovered.·*/\n····_isHovered·=·false;\n····/**·Whether·the·slider·thumb·is·currently·being·pressed.·*/\n····_isActive·=·false;\n····/**·Whether·the·value·indicator·tooltip·is·visible.·*/\n····_isValueIndicatorVisible·=·false;\n····/**·The·host·native·HTML·input·element.·*/\n····_hostElement·=·inject(ElementRef).nativeElement;\n····_platform·=·inject(Platform);\n····constructor()·{}\n····ngAfterViewInit()·{\n······const·sliderInput·=·this._slider._getInput(this.thumbPosition);\n······//·No-op·if·the·slider·isn't·configured·properly.·`MatSlider`·will\n······//·throw·an·error·instructing·the·user·how·to·set·up·the·slider.\n······if·(!sliderInput)·{\n········return;\n······}\n······this._ripple.radius·=·24;\n······this._sliderInput·=·sliderInput;\n······this._sliderInputEl·=·this._sliderInput._hostElement;\n······//·These·listeners·don't·update·any·data·bindings·so·we·bind·them·outside\n······//·of·the·NgZone·to·prevent·Angular·from·needlessly·running·change·detection.\n······this._ngZone.runOutsideAngular(()·=>·{\n········const·input·=·this._sliderInputEl;\n········const·renderer·=·this._renderer;\n········this._listenerCleanups·=·[renderer.listen(input,·'pointermove',·this._onPointerMove),·renderer.listen(input,·'pointerdown',·this._onDragStart),·renderer.listen(input,·'pointerup',·this._onDragEnd),·renderer.listen(input,·'pointerleave',·this._onMouseLeave),·renderer.listen(input,·'focus',·this._onFocus),·renderer.listen(input,·'blur',·this._onBlur)];\n······});\n····}\n····ngOnDestroy()·{\n······this._listenerCleanups?.forEach(cleanup·=>·cleanup());\n····}\n····_onPointerMove·=·event·=>·{\n······if·(this._sliderInput._isFocused)·{\n········return;\n······}\n······const·rect·=·this._hostElement.getBoundingClientRect();\n······const·isHovered·=·this._slider._isCursorOnSliderThumb(event,·rect);\n······this._isHovered·=·isHovered;\n······if·(isHovered)·{\n········this._showHoverRipple();\n······}·else·{\n········this._hideRipple(this._hoverRippleRef);\n······}\n····};\n····_onMouseLeave·=·()·=>·{\n······this._isHovered·=·false;\n······this._hideRipple(this._hoverRippleRef);\n····};\n····_onFocus·=·()·=>·{\n······//·We·don't·want·to·show·the·hover·ripple·on·top·of·the·focus·ripple.\n······//·Happen·when·the·users·cursor·is·over·a·thumb·and·then·the·user·tabs·to·it.\n······this._hideRipple(this._hoverRippleRef);\n······this._showFocusRipple();\n······this._hostElement.classList.add('mdc-slider__thumb--focused');\n····};\n····_onBlur·=·()·=>·{\n······//·Happens·when·the·user·tabs·away·while·still·dragging·a·thumb.\n······if·(!this._isActive)·{\n········this._hideRipple(this._focusRippleRef);\n······}\n······//·Happens·when·the·user·tabs·away·from·a·thumb·but·their·cursor·is·still·over·it.\n······if·(this._isHovered)·{\n········this._showHoverRipple();\n······}\n······this._hostElement.classList.remove('mdc-slider__thumb--focused');\n····};\n····_onDragStart·=·event·=>·{\n······if·(event.button·!==·0)·{\n········return;\n······}\n······this._isActive·=·true;\n······this._showActiveRipple();\n····};\n····_onDragEnd·=·()·=>·{\n······this._isActive·=·false;\n······this._hideRipple(this._activeRippleRef);\n······//·Happens·when·the·user·starts·dragging·a·thumb,·tabs·away,·and·then·stops·dragging.\n······if·(!this._sliderInput._isFocused)·{\n········this._hideRipple(this._focusRippleRef);\n······}\n······//·On·Safari·we·need·to·immediately·re-show·the·hover·ripple·because\n······//·sliders·do·not·retain·focus·from·pointer·events·on·that·platform.\n······if·(this._platform.SAFARI)·{\n········this._showHoverRipple();\n······}\n····};\n····/**·Handles·displaying·the·hover·ripple.·*/\n····_showHoverRipple()·{\n······if·(!this._isShowingRipple(this._hoverRippleRef))·{\n········this._hoverRippleRef·=·this._showRipple({\n··········enterDuration:·0,\n··········exitDuration:·0\n········});\n········this._hoverRippleRef?.element.classList.add('mat-mdc-slider-hover-ripple');\n······}\n····}\n····/**·Handles·displaying·the·focus·ripple.·*/\n····_showFocusRipple()·{\n······//·Show·the·focus·ripple·event·if·noop·animations·are·enabled.\n······if·(!this._isShowingRipple(this._focusRippleRef))·{\n········this._focusRippleRef·=·this._showRipple({\n··········enterDuration:·0,\n··········exitDuration:·0\n········},·true);\n········this._focusRippleRef?.element.classList.add('mat-mdc-slider-focus-ripple');\n······}\n····}\n····/**·Handles·displaying·the·active·ripple.·*/\n····_showActiveRipple()·{\n······if·(!this._isShowingRipple(this._activeRippleRef))·{\n········this._activeRippleRef·=·this._showRipple({\n··········enterDuration:·225,\n··········exitDuration:·400\n········});\n········this._activeRippleRef?.element.classList.add('mat-mdc-slider-active-ripple');\n······}\n····}\n····/**·Whether·the·given·rippleRef·is·currently·fading·in·or·visible.·*/\n····_isShowingRipple(rippleRef)·{\n······return·rippleRef?.state·===·RippleState.FADING_IN·||·rippleRef?.state·===·RippleState.VISIBLE;\n····}\n····/**·Manually·launches·the·slider·thumb·ripple·using·the·specified·ripple·animation·config.·*/\n····_showRipple(animation,·ignoreGlobalRippleConfig)·{\n······if·(this._slider.disabled)·{\n········return;\n······}\n······this._showValueIndicator();\n······if·(this._slider._isRange)·{\n········const·sibling·=·this._slider._getThumb(this.thumbPosition·===·_MatThumb.START·?·_MatThumb.END·:·_MatThumb.START);\n········sibling._showValueIndicator();\n······}\n······if·(this._slider._globalRippleOptions?.disabled·&&·!ignoreGlobalRippleConfig)·{\n········return;\n······}\n······return·this._ripple.launch({\n········animation:·this._slider._noopAnimations·?·{\n··········enterDuration:·0,\n··········exitDuration:·0\n········}·:·animation,\n········centered:·true,\n········persistent:·true\n······});\n····}\n····/**\n·····*·Fades·out·the·given·ripple.\n·····*·Also·hides·the·value·indicator·if·no·ripple·is·showing.\n·····*/\n····_hideRipple(rippleRef)·{\n······rippleRef?.fadeOut();\n······if·(this._isShowingAnyRipple())·{\n········return;\n······}\n······if·(!this._slider._isRange)·{\n········this._hideValueIndicator();\n······}\n······const·sibling·=·this._getSibling();\n······if·(!sibling._isShowingAnyRipple())·{\n········this._hideValueIndicator();\n········sibling._hideValueIndicator();\n······}\n····}\n····/**·Shows·the·value·indicator·ui.·*/\n····_showValueIndicator()·{\n······this._hostElement.classList.add('mdc-slider__thumb--with-indicator');\n····}\n····/**·Hides·the·value·indicator·ui.·*/\n····_hideValueIndicator()·{\n······this._hostElement.classList.remove('mdc-slider__thumb--with-indicator');\n····}\n····_getSibling()·{\n······return·this._slider._getThumb(this.thumbPosition·===·_MatThumb.START·?·_MatThumb.END·:·_MatThumb.START);\n····}\n····/**·Gets·the·value·indicator·container's·native·HTML·element.·*/\n····_getValueIndicatorContainer()·{\n······return·this._valueIndicatorContainer?.nativeElement;\n····}\n····/**·Gets·the·native·HTML·element·of·the·slider·thumb·knob.·*/\n····_getKnob()·{\n······return·this._knob.nativeElement;\n····}\n····_isShowingAnyRipple()·{\n······return·this._isShowingRipple(this._hoverRippleRef)·||·this._isShowingRipple(this._focusRippleRef)·||·this._isShowingRipple(this._activeRippleRef);\n····}\n····static·\u0275fac·=·function·MatSliderVisualThumb_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderVisualThumb)();\n····};\n····static·\u0275cmp·=·/*·@__PURE__·*/i0.\u0275\u0275defineComponent({\n······type:·MatSliderVisualThumb,\n······selectors:·[[\"mat-slider-visual-thumb\"]],\n······viewQuery:·function·MatSliderVisualThumb_Query(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275viewQuery(MatRipple,·5);\n··········i0.\u0275\u0275viewQuery(_c0,·5);\n··········i0.\u0275\u0275viewQuery(_c1,·5);\n········}\n········if·(rf·&·2)·{\n··········let·_t;\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._ripple·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._knob·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._valueIndicatorContainer·=·_t.first);\n········}\n······},\n······hostAttrs:·[1,·\"mdc-slider__thumb\",·\"mat-mdc-slider-visual-thumb\"],\n······inputs:·{\n········discrete:·\"discrete\",\n········thumbPosition:·\"thumbPosition\",\n········valueIndicatorText:·\"valueIndicatorText\"\n······},\n······features:·[i0.\u0275\u0275ProvidersFeature([{\n········provide:·MAT_SLIDER_VISUAL_THUMB,\n········useExisting:·MatSliderVisualThumb\n······}])],\n······decls:·4,\n······vars:·2,\n······consts:·[[\"knob\",·\"\"],·[\"valueIndicatorContainer\",·\"\"],·[1,·\"mdc-slider__value-indicator-container\"],·[1,·\"mdc-slider__thumb-knob\"],·[\"matRipple\",·\"\",·1,·\"mat-focus-indicator\",·3,·\"matRippleDisabled\"],·[1,·\"mdc-slider__value-indicator\"],·[1,·\"mdc-slider__value-indicator-text\"]],\n······template:·function·MatSliderVisualThumb_Template(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275conditionalCreate(0,·MatSliderVisualThumb_Conditional_0_Template,·5,·1,·\"div\",·2);\n··········i0.\u0275\u0275element(1,·\"div\",·3,·0)(3,·\"div\",·4);\n········}\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275conditional(ctx.discrete·?·0·:·-1);\n··········i0.\u0275\u0275advance(3);\n··········i0.\u0275\u0275property(\"matRippleDisabled\",·true);\n········}\n······},\n······dependencies:·[MatRipple],\n······styles:·[\".mat-mdc-slider-visual-thumb·.mat-ripple{height:100%;width:100%}.mat-mdc-slider·.mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider·.mdc-slider__tick-marks·.mdc-slider__tick-mark--active,.mat-mdc-slider·.mdc-slider__tick-marks·.mdc-slider__tick-mark--inactive{position:absolute;left:2px}\\n\"],\n······encapsulation:·2,\n······changeDetection:·0\n····});\n··}\n··return·MatSliderVisualThumb;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n\n//·TODO(wagnermaciel):·maybe·handle·the·following·edge·case:\n//·1.·start·dragging·discrete·slider\n//·2.·tab·to·disable·checkbox\n//·3.·without·ending·drag,·disable·the·slider\n/**\n·*·Allows·users·to·select·from·a·range·of·values·by·moving·the·slider·thumb.·It·is·similar·in\n·*·behavior·to·the·native·`<input·type=\"range\">`·element.\n·*/\nlet·MatSlider·=·/*#__PURE__*/(()·=>·{\n··class·MatSlider·{\n····_ngZone·=·inject(NgZone);\n····_cdr·=·inject(ChangeDetectorRef);\n····_elementRef·=·inject(ElementRef);\n····_dir·=·inject(Directionality,·{\n······optional:·true\n····});\n····_globalRippleOptions·=·inject(MAT_RIPPLE_GLOBAL_OPTIONS,·{\n······optional:·true\n····});\n····/**·The·active·portion·of·the·slider·track.·*/\n····_trackActive;\n····/**·The·slider·thumb(s).·*/\n····_thumbs;\n····/**·The·sliders·hidden·range·input(s).·*/\n····_input;\n····/**·The·sliders·hidden·range·input(s).·*/\n····_inputs;\n····/**·Whether·the·slider·is·disabled.·*/\n····get·disabled()·{\n······return·this._disabled;\n····}\n····set·disabled(v)·{\n······this._disabled·=·v;\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······if·(endInput)·{\n········endInput.disabled·=·this._disabled;\n······}\n······if·(startInput)·{\n········startInput.disabled·=·this._disabled;\n······}\n····}\n····_disabled·=·false;\n····/**·Whether·the·slider·displays·a·numeric·value·label·upon·pressing·the·thumb.·*/\n····get·discrete()·{\n······return·this._discrete;\n····}\n····set·discrete(v)·{\n······this._discrete·=·v;\n······this._updateValueIndicatorUIs();\n····}\n····_discrete·=·false;\n····/**·Whether·the·slider·displays·tick·marks·along·the·slider·track.·*/\n····get·showTickMarks()·{\n······return·this._showTickMarks;\n····}\n····set·showTickMarks(value)·{\n······this._showTickMarks·=·value;\n······if·(this._hasViewInitialized)·{\n········this._updateTickMarkUI();\n········this._updateTickMarkTrackUI();\n······}\n····}\n····_showTickMarks·=·false;\n····/**·The·minimum·value·that·the·slider·can·have.·*/\n····get·min()·{\n······return·this._min;\n····}\n····set·min(v)·{\n······const·min·=·v·===·undefined·||·v·===·null·||·isNaN(v)·?·this._min·:·v;\n······if·(this._min·!==·min)·{\n········this._updateMin(min);\n······}\n····}\n····_min·=·0;\n····/**\n·····*·Theme·color·of·the·slider.·This·API·is·supported·in·M2·themes·only,·it\n·····*·has·no·effect·in·M3·themes.·For·color·customization·in·M3,·see·https://material.angular.dev/components/slider/styling.\n·····*\n·····*·For·information·on·applying·color·variants·in·M3,·see\n·····*·https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n·····*/\n····color;\n····/**·Whether·ripples·are·disabled·in·the·slider.·*/\n····disableRipple·=·false;\n····_updateMin(min)·{\n······const·prevMin·=·this._min;\n······this._min·=·min;\n······this._isRange·?·this._updateMinRange({\n········old:·prevMin,\n········new:·min\n······})·:·this._updateMinNonRange(min);\n······this._onMinMaxOrStepChange();\n····}\n····_updateMinRange(min)·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·oldEndValue·=·endInput.value;\n······const·oldStartValue·=·startInput.value;\n······startInput.min·=·min.new;\n······endInput.min·=·Math.max(min.new,·startInput.value);\n······startInput.max·=·Math.min(endInput.max,·endInput.value);\n······startInput._updateWidthInactive();\n······endInput._updateWidthInactive();\n······min.new·<·min.old·?·this._onTranslateXChangeBySideEffect(endInput,·startInput)·:·this._onTranslateXChangeBySideEffect(startInput,·endInput);\n······if·(oldEndValue·!==·endInput.value)·{\n········this._onValueChange(endInput);\n······}\n······if·(oldStartValue·!==·startInput.value)·{\n········this._onValueChange(startInput);\n······}\n····}\n····_updateMinNonRange(min)·{\n······const·input·=·this._getInput(_MatThumb.END);\n······if·(input)·{\n········const·oldValue·=·input.value;\n········input.min·=·min;\n········input._updateThumbUIByValue();\n········this._updateTrackUI(input);\n········if·(oldValue·!==·input.value)·{\n··········this._onValueChange(input);\n········}\n······}\n····}\n····/**·The·maximum·value·that·the·slider·can·have.·*/\n····get·max()·{\n······return·this._max;\n····}\n····set·max(v)·{\n······const·max·=·v·===·undefined·||·v·===·null·||·isNaN(v)·?·this._max·:·v;\n······if·(this._max·!==·max)·{\n········this._updateMax(max);\n······}\n····}\n····_max·=·100;\n····_updateMax(max)·{\n······const·prevMax·=·this._max;\n······this._max·=·max;\n······this._isRange·?·this._updateMaxRange({\n········old:·prevMax,\n········new:·max\n······})·:·this._updateMaxNonRange(max);\n······this._onMinMaxOrStepChange();\n····}\n····_updateMaxRange(max)·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·oldEndValue·=·endInput.value;\n······const·oldStartValue·=·startInput.value;\n······endInput.max·=·max.new;\n······startInput.max·=·Math.min(max.new,·endInput.value);\n······endInput.min·=·startInput.value;\n······endInput._updateWidthInactive();\n······startInput._updateWidthInactive();\n······max.new·>·max.old·?·this._onTranslateXChangeBySideEffect(startInput,·endInput)·:·this._onTranslateXChangeBySideEffect(endInput,·startInput);\n······if·(oldEndValue·!==·endInput.value)·{\n········this._onValueChange(endInput);\n······}\n······if·(oldStartValue·!==·startInput.value)·{\n········this._onValueChange(startInput);\n······}\n····}\n····_updateMaxNonRange(max)·{\n······const·input·=·this._getInput(_MatThumb.END);\n······if·(input)·{\n········const·oldValue·=·input.value;\n········input.max·=·max;\n········input._updateThumbUIByValue();\n········this._updateTrackUI(input);\n········if·(oldValue·!==·input.value)·{\n··········this._onValueChange(input);\n········}\n······}\n····}\n····/**·The·values·at·which·the·thumb·will·snap.·*/\n····get·step()·{\n······return·this._step;\n····}\n····set·step(v)·{\n······const·step·=·isNaN(v)·?·this._step·:·v;\n······if·(this._step·!==·step)·{\n········this._updateStep(step);\n······}\n····}\n····_step·=·1;\n····_updateStep(step)·{\n······this._step·=·step;\n······this._isRange·?·this._updateStepRange()·:·this._updateStepNonRange();\n······this._onMinMaxOrStepChange();\n····}\n····_updateStepRange()·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·oldEndValue·=·endInput.value;\n······const·oldStartValue·=·startInput.value;\n······const·prevStartValue·=·startInput.value;\n······endInput.min·=·this._min;\n······startInput.max·=·this._max;\n······endInput.step·=·this._step;\n······startInput.step·=·this._step;\n······if·(this._platform.SAFARI)·{\n········endInput.value·=·endInput.value;\n········startInput.value·=·startInput.value;\n······}\n······endInput.min·=·Math.max(this._min,·startInput.value);\n······startInput.max·=·Math.min(this._max,·endInput.value);\n······startInput._updateWidthInactive();\n······endInput._updateWidthInactive();\n······endInput.value·<·prevStartValue·?·this._onTranslateXChangeBySideEffect(startInput,·endInput)·:·this._onTranslateXChangeBySideEffect(endInput,·startInput);\n······if·(oldEndValue·!==·endInput.value)·{\n········this._onValueChange(endInput);\n······}\n······if·(oldStartValue·!==·startInput.value)·{\n········this._onValueChange(startInput);\n······}\n····}\n····_updateStepNonRange()·{\n······const·input·=·this._getInput(_MatThumb.END);\n······if·(input)·{\n········const·oldValue·=·input.value;\n········input.step·=·this._step;\n········if·(this._platform.SAFARI)·{\n··········input.value·=·input.value;\n········}\n········input._updateThumbUIByValue();\n········if·(oldValue·!==·input.value)·{\n··········this._onValueChange(input);\n········}\n······}\n····}\n····/**\n·····*·Function·that·will·be·used·to·format·the·value·before·it·is·displayed\n·····*·in·the·thumb·label.·Can·be·used·to·format·very·large·number·in·order\n·····*·for·them·to·fit·into·the·slider·thumb.\n·····*/\n····displayWith·=·value·=>·`${value}`;\n····/**·Used·to·keep·track·of·&·render·the·active·&·inactive·tick·marks·on·the·slider·track.·*/\n····_tickMarks;\n····/**·Whether·animations·have·been·disabled.·*/\n····_noopAnimations·=·_animationsDisabled();\n····/**·Subscription·to·changes·to·the·directionality·(LTR·/·RTL)·context·for·the·application.·*/\n····_dirChangeSubscription;\n····/**·Observer·used·to·monitor·size·changes·in·the·slider.·*/\n····_resizeObserver;\n····//·Stored·dimensions·to·avoid·calling·getBoundingClientRect·redundantly.\n····_cachedWidth;\n····_cachedLeft;\n····_rippleRadius·=·24;\n····//·The·value·indicator·tooltip·text·for·the·visual·slider·thumb(s).\n····/**·@docs-private·*/\n····startValueIndicatorText·=·'';\n····/**·@docs-private·*/\n····endValueIndicatorText·=·'';\n····//·Used·to·control·the·translateX·of·the·visual·slider·thumb(s).\n····_endThumbTransform;\n····_startThumbTransform;\n····_isRange·=·false;\n····/**·Whether·the·slider·is·rtl.·*/\n····_isRtl·=·false;\n····_hasViewInitialized·=·false;\n····/**\n·····*·The·width·of·the·tick·mark·track.\n·····*·The·tick·mark·track·width·is·different·from·full·track·width\n·····*/\n····_tickMarkTrackWidth·=·0;\n····_hasAnimation·=·false;\n····_resizeTimer·=·null;\n····_platform·=·inject(Platform);\n····constructor()·{\n······inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);\n······if·(this._dir)·{\n········this._dirChangeSubscription·=·this._dir.change.subscribe(()·=>·this._onDirChange());\n········this._isRtl·=·this._dir.value·===·'rtl';\n······}\n····}\n····/**·The·radius·of·the·native·slider's·knob.·AFAIK·there·is·no·way·to·avoid·hardcoding·this.·*/\n····_knobRadius·=·8;\n····_inputPadding;\n····ngAfterViewInit()·{\n······if·(this._platform.isBrowser)·{\n········this._updateDimensions();\n······}\n······const·eInput·=·this._getInput(_MatThumb.END);\n······const·sInput·=·this._getInput(_MatThumb.START);\n······this._isRange·=·!!eInput·&&·!!sInput;\n······this._cdr.detectChanges();\n······if·(typeof·ngDevMode·===·'undefined'·||·ngDevMode)·{\n········_validateInputs(this._isRange,·this._getInput(_MatThumb.END),·this._getInput(_MatThumb.START));\n······}\n······const·thumb·=·this._getThumb(_MatThumb.END);\n······this._rippleRadius·=·thumb._ripple.radius;\n······this._inputPadding·=·this._rippleRadius·-·this._knobRadius;\n······this._isRange·?·this._initUIRange(eInput,·sInput)·:·this._initUINonRange(eInput);\n······this._updateTrackUI(eInput);\n······this._updateTickMarkUI();\n······this._updateTickMarkTrackUI();\n······this._observeHostResize();\n······this._cdr.detectChanges();\n····}\n····_initUINonRange(eInput)·{\n······eInput.initProps();\n······eInput.initUI();\n······this._updateValueIndicatorUI(eInput);\n······this._hasViewInitialized·=·true;\n······eInput._updateThumbUIByValue();\n····}\n····_initUIRange(eInput,·sInput)·{\n······eInput.initProps();\n······eInput.initUI();\n······sInput.initProps();\n······sInput.initUI();\n······eInput._updateMinMax();\n······sInput._updateMinMax();\n······eInput._updateStaticStyles();\n······sInput._updateStaticStyles();\n······this._updateValueIndicatorUIs();\n······this._hasViewInitialized·=·true;\n······eInput._updateThumbUIByValue();\n······sInput._updateThumbUIByValue();\n····}\n····ngOnDestroy()·{\n······this._dirChangeSubscription.unsubscribe();\n······this._resizeObserver?.disconnect();\n······this._resizeObserver·=·null;\n····}\n····/**·Handles·updating·the·slider·ui·after·a·dir·change.·*/\n····_onDirChange()·{\n······this._isRtl·=·this._dir?.value·===·'rtl';\n······this._isRange·?·this._onDirChangeRange()·:·this._onDirChangeNonRange();\n······this._updateTickMarkUI();\n····}\n····_onDirChangeRange()·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······endInput._setIsLeftThumb();\n······startInput._setIsLeftThumb();\n······endInput.translateX·=·endInput._calcTranslateXByValue();\n······startInput.translateX·=·startInput._calcTranslateXByValue();\n······endInput._updateStaticStyles();\n······startInput._updateStaticStyles();\n······endInput._updateWidthInactive();\n······startInput._updateWidthInactive();\n······endInput._updateThumbUIByValue();\n······startInput._updateThumbUIByValue();\n····}\n····_onDirChangeNonRange()·{\n······const·input·=·this._getInput(_MatThumb.END);\n······input._updateThumbUIByValue();\n····}\n····/**·Starts·observing·and·updating·the·slider·if·the·host·changes·its·size.·*/\n····_observeHostResize()·{\n······if·(typeof·ResizeObserver·===·'undefined'·||·!ResizeObserver)·{\n········return;\n······}\n······this._ngZone.runOutsideAngular(()·=>·{\n········this._resizeObserver·=·new·ResizeObserver(()·=>·{\n··········if·(this._isActive())·{\n············return;\n··········}\n··········if·(this._resizeTimer)·{\n············clearTimeout(this._resizeTimer);\n··········}\n··········this._onResize();\n········});\n········this._resizeObserver.observe(this._elementRef.nativeElement);\n······});\n····}\n····/**·Whether·any·of·the·thumbs·are·currently·active.·*/\n····_isActive()·{\n······return·this._getThumb(_MatThumb.START)._isActive·||·this._getThumb(_MatThumb.END)._isActive;\n····}\n····_getValue(thumbPosition·=·_MatThumb.END)·{\n······const·input·=·this._getInput(thumbPosition);\n······if·(!input)·{\n········return·this.min;\n······}\n······return·input.value;\n····}\n····_skipUpdate()·{\n······return·!!(this._getInput(_MatThumb.START)?._skipUIUpdate·||·this._getInput(_MatThumb.END)?._skipUIUpdate);\n····}\n····/**·Stores·the·slider·dimensions.·*/\n····_updateDimensions()·{\n······this._cachedWidth·=·this._elementRef.nativeElement.offsetWidth;\n······this._cachedLeft·=·this._elementRef.nativeElement.getBoundingClientRect().left;\n····}\n····/**·Sets·the·styles·for·the·active·portion·of·the·track.·*/\n····_setTrackActiveStyles(styles)·{\n······const·trackStyle·=·this._trackActive.nativeElement.style;\n······trackStyle.left·=·styles.left;\n······trackStyle.right·=·styles.right;\n······trackStyle.transformOrigin·=·styles.transformOrigin;\n······trackStyle.transform·=·styles.transform;\n····}\n····/**·Returns·the·translateX·positioning·for·a·tick·mark·based·on·it's·index.·*/\n····_calcTickMarkTransform(index)·{\n······//·TODO(wagnermaciel):·See·if·we·can·avoid·doing·this·and·just·using·flex·to·position·these.\n······const·offset·=·index·*·(this._tickMarkTrackWidth·/·(this._tickMarks.length·-·1));\n······const·translateX·=·this._isRtl·?·this._cachedWidth·-·6·-·offset·:·offset;\n······return·`translateX(${translateX}px`;\n····}\n····//·Handlers·for·updating·the·slider·ui.\n····_onTranslateXChange(source)·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateThumbUI(source);\n······this._updateTrackUI(source);\n······this._updateOverlappingThumbUI(source);\n····}\n····_onTranslateXChangeBySideEffect(input1,·input2)·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······input1._updateThumbUIByValue();\n······input2._updateThumbUIByValue();\n····}\n····_onValueChange(source)·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateValueIndicatorUI(source);\n······this._updateTickMarkUI();\n······this._cdr.detectChanges();\n····}\n····_onMinMaxOrStepChange()·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateTickMarkUI();\n······this._updateTickMarkTrackUI();\n······this._cdr.markForCheck();\n····}\n····_onResize()·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateDimensions();\n······if·(this._isRange)·{\n········const·eInput·=·this._getInput(_MatThumb.END);\n········const·sInput·=·this._getInput(_MatThumb.START);\n········eInput._updateThumbUIByValue();\n········sInput._updateThumbUIByValue();\n········eInput._updateStaticStyles();\n········sInput._updateStaticStyles();\n········eInput._updateMinMax();\n········sInput._updateMinMax();\n········eInput._updateWidthInactive();\n········sInput._updateWidthInactive();\n······}·else·{\n········const·eInput·=·this._getInput(_MatThumb.END);\n········if·(eInput)·{\n··········eInput._updateThumbUIByValue();\n········}\n······}\n······this._updateTickMarkUI();\n······this._updateTickMarkTrackUI();\n······this._cdr.detectChanges();\n····}\n····/**·Whether·or·not·the·slider·thumbs·overlap.·*/\n····_thumbsOverlap·=·false;\n····/**·Returns·true·if·the·slider·knobs·are·overlapping·one·another.·*/\n····_areThumbsOverlapping()·{\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·endInput·=·this._getInput(_MatThumb.END);\n······if·(!startInput·||·!endInput)·{\n········return·false;\n······}\n······return·endInput.translateX·-·startInput.translateX·<·20;\n····}\n····/**\n·····*·Updates·the·class·names·of·overlapping·slider·thumbs·so\n·····*·that·the·current·active·thumb·is·styled·to·be·on·\"top\".\n·····*/\n····_updateOverlappingThumbClassNames(source)·{\n······const·sibling·=·source.getSibling();\n······const·sourceThumb·=·this._getThumb(source.thumbPosition);\n······const·siblingThumb·=·this._getThumb(sibling.thumbPosition);\n······siblingThumb._hostElement.classList.remove('mdc-slider__thumb--top');\n······sourceThumb._hostElement.classList.toggle('mdc-slider__thumb--top',·this._thumbsOverlap);\n····}\n····/**·Updates·the·UI·of·slider·thumbs·when·they·begin·or·stop·overlapping.·*/\n····_updateOverlappingThumbUI(source)·{\n······if·(!this._isRange·||·this._skipUpdate())·{\n········return;\n······}\n······if·(this._thumbsOverlap·!==·this._areThumbsOverlapping())·{\n········this._thumbsOverlap·=·!this._thumbsOverlap;\n········this._updateOverlappingThumbClassNames(source);\n······}\n····}\n····//·_MatThumb·styles·update·conditions\n····//\n····//·1.·TranslateX,·resize,·or·dir·change\n····//····-·Reason:·The·thumb·styles·need·to·be·updated·according·to·the·new·translateX.\n····//·2.·Min,·max,·or·step\n····//····-·Reason:·The·value·may·have·silently·changed.\n····/**·Updates·the·translateX·of·the·given·thumb.·*/\n····_updateThumbUI(source)·{\n······if·(this._skipUpdate())·{\n········return;\n······}\n······const·thumb·=·this._getThumb(source.thumbPosition·===·_MatThumb.END·?·_MatThumb.END·:·_MatThumb.START);\n······thumb._hostElement.style.transform·=·`translateX(${source.translateX}px)`;\n····}\n····//·Value·indicator·text·update·conditions\n····//\n····//·1.·Value\n····//····-·Reason:·The·value·displayed·needs·to·be·updated.\n····//·2.·Min,·max,·or·step\n····//····-·Reason:·The·value·may·have·silently·changed.\n····/**·Updates·the·value·indicator·tooltip·ui·for·the·given·thumb.·*/\n····_updateValueIndicatorUI(source)·{\n······if·(this._skipUpdate())·{\n········return;\n······}\n······const·valuetext·=·this.displayWith(source.value);\n······this._hasViewInitialized·?·source._valuetext.set(valuetext)·:·source._hostElement.setAttribute('aria-valuetext',·valuetext);\n······if·(this.discrete)·{\n········source.thumbPosition·===·_MatThumb.START·?·this.startValueIndicatorText·=·valuetext·:·this.endValueIndicatorText·=·valuetext;\n········const·visualThumb·=·this._getThumb(source.thumbPosition);\n········valuetext.length·<·3·?·visualThumb._hostElement.classList.add('mdc-slider__thumb--short-value')·:·visualThumb._hostElement.classList.remove('mdc-slider__thumb--short-value');\n······}\n····}\n····/**·Updates·all·value·indicator·UIs·in·the·slider.·*/\n····_updateValueIndicatorUIs()·{\n······const·eInput·=·this._getInput(_MatThumb.END);\n······const·sInput·=·this._getInput(_MatThumb.START);\n······if·(eInput)·{\n········this._updateValueIndicatorUI(eInput);\n······}\n······if·(sInput)·{\n········this._updateValueIndicatorUI(sInput);\n······}\n····}\n····//·Update·Tick·Mark·Track·Width\n····//\n····//·1.·Min,·max,·or·step\n····//····-·Reason:·The·maximum·reachable·value·may·have·changed.\n····//····-·Side·note:·The·maximum·reachable·value·is·different·from·the·maximum·value·set·by·the\n····//······user.·For·example,·a·slider·with·[min:·5,·max:·100,·step:·10]·would·have·a·maximum\n····//······reachable·value·of·95.\n····//·2.·Resize\n····//····-·Reason:·The·position·for·the·maximum·reachable·value·needs·to·be·recalculated.\n····/**·Updates·the·width·of·the·tick·mark·track.·*/\n····_updateTickMarkTrackUI()·{\n······if·(!this.showTickMarks·||·this._skipUpdate())·{\n········return;\n······}\n······const·step·=·this._step·&&·this._step·>·0·?·this._step·:·1;\n······const·maxValue·=·Math.floor(this.max·/·step)·*·step;\n······const·percentage·=·(maxValue·-·this.min)·/·(this.max·-·this.min);\n······this._tickMarkTrackWidth·=·(this._cachedWidth·-·6)·*·percentage;\n····}\n····//·Track·active·update·conditions\n····//\n····//·1.·TranslateX\n····//····-·Reason:·The·track·active·should·line·up·with·the·new·thumb·position.\n····//·2.·Min·or·max\n····//····-·Reason·#1:·The·'active'·percentage·needs·to·be·recalculated.\n····//····-·Reason·#2:·The·value·may·have·silently·changed.\n····//·3.·Step\n····//····-·Reason:·The·value·may·have·silently·changed·causing·the·thumb(s)·to·shift.\n····//·4.·Dir·change\n····//····-·Reason:·The·track·active·will·need·to·be·updated·according·to·the·new·thumb·position(s).\n····//·5.·Resize\n····//····-·Reason:·The·total·width·the·'active'·tracks·translateX·is·based·on·has·changed.\n····/**·Updates·the·scale·on·the·active·portion·of·the·track.·*/\n····_updateTrackUI(source)·{\n······if·(this._skipUpdate())·{\n········return;\n······}\n······this._isRange·?·this._updateTrackUIRange(source)·:·this._updateTrackUINonRange(source);\n····}\n····_updateTrackUIRange(source)·{\n······const·sibling·=·source.getSibling();\n······if·(!sibling·||·!this._cachedWidth)·{\n········return;\n······}\n······const·activePercentage·=·Math.abs(sibling.translateX·-·source.translateX)·/·this._cachedWidth;\n······if·(source._isLeftThumb·&&·this._cachedWidth)·{\n········this._setTrackActiveStyles({\n··········left:·'auto',\n··········right:·`${this._cachedWidth·-·sibling.translateX}px`,\n··········transformOrigin:·'right',\n··········transform:·`scaleX(${activePercentage})`\n········});\n······}·else·{\n········this._setTrackActiveStyles({\n··········left:·`${sibling.translateX}px`,\n··········right:·'auto',\n··········transformOrigin:·'left',\n··········transform:·`scaleX(${activePercentage})`\n········});\n······}\n····}\n····_updateTrackUINonRange(source)·{\n······this._isRtl·?·this._setTrackActiveStyles({\n········left:·'auto',\n········right:·'0px',\n········transformOrigin:·'right',\n········transform:·`scaleX(${1·-·source.fillPercentage})`\n······})·:·this._setTrackActiveStyles({\n········left:·'0px',\n········right:·'auto',\n········transformOrigin:·'left',\n········transform:·`scaleX(${source.fillPercentage})`\n······});\n····}\n····//·Tick·mark·update·conditions\n····//\n····//·1.·Value\n····//····-·Reason:·a·tick·mark·which·was·once·active·might·now·be·inactive·or·vice·versa.\n····//·2.·Min,·max,·or·step\n····//····-·Reason·#1:·the·number·of·tick·marks·may·have·changed.\n····//····-·Reason·#2:·The·value·may·have·silently·changed.\n····/**·Updates·the·dots·along·the·slider·track.·*/\n····_updateTickMarkUI()·{\n······if·(!this.showTickMarks·||·this.step·===·undefined·||·this.min·===·undefined·||·this.max·===·undefined)·{\n········return;\n······}\n······const·step·=·this.step·>·0·?·this.step·:·1;\n······this._isRange·?·this._updateTickMarkUIRange(step)·:·this._updateTickMarkUINonRange(step);\n····}\n····_updateTickMarkUINonRange(step)·{\n······const·value·=·this._getValue();\n······let·numActive·=·Math.max(Math.round((value·-·this.min)·/·step),·0)·+·1;\n······let·numInactive·=·Math.max(Math.round((this.max·-·value)·/·step),·0)·-·1;\n······this._isRtl·?·numActive++·:·numInactive++;\n······this._tickMarks·=·Array(numActive).fill(_MatTickMark.ACTIVE).concat(Array(numInactive).fill(_MatTickMark.INACTIVE));\n····}\n····_updateTickMarkUIRange(step)·{\n······const·endValue·=·this._getValue();\n······const·startValue·=·this._getValue(_MatThumb.START);\n······const·numInactiveBeforeStartThumb·=·Math.max(Math.round((startValue·-·this.min)·/·step),·0);\n······const·numActive·=·Math.max(Math.round((endValue·-·startValue)·/·step)·+·1,·0);\n······const·numInactiveAfterEndThumb·=·Math.max(Math.round((this.max·-·endValue)·/·step),·0);\n······this._tickMarks·=·Array(numInactiveBeforeStartThumb).fill(_MatTickMark.INACTIVE).concat(Array(numActive).fill(_MatTickMark.ACTIVE),·Array(numInactiveAfterEndThumb).fill(_MatTickMark.INACTIVE));\n····}\n····/**·Gets·the·slider·thumb·input·of·the·given·thumb·position.·*/\n····_getInput(thumbPosition)·{\n······if·(thumbPosition·===·_MatThumb.END·&&·this._input)·{\n········return·this._input;\n······}\n······if·(this._inputs?.length)·{\n········return·thumbPosition·===·_MatThumb.START·?·this._inputs.first·:·this._inputs.last;\n······}\n······return;\n····}\n····/**·Gets·the·slider·thumb·HTML·input·element·of·the·given·thumb·position.·*/\n····_getThumb(thumbPosition)·{\n······return·thumbPosition·===·_MatThumb.END·?·this._thumbs?.last·:·this._thumbs?.first;\n····}\n····_setTransition(withAnimation)·{\n······this._hasAnimation·=·!this._platform.IOS·&&·withAnimation·&&·!this._noopAnimations;\n······this._elementRef.nativeElement.classList.toggle('mat-mdc-slider-with-animation',·this._hasAnimation);\n····}\n····/**·Whether·the·given·pointer·event·occurred·within·the·bounds·of·the·slider·pointer's·DOM·Rect.·*/\n····_isCursorOnSliderThumb(event,·rect)·{\n······const·radius·=·rect.width·/·2;\n······const·centerX·=·rect.x·+·radius;\n······const·centerY·=·rect.y·+·radius;\n······const·dx·=·event.clientX·-·centerX;\n······const·dy·=·event.clientY·-·centerY;\n······return·Math.pow(dx,·2)·+·Math.pow(dy,·2)·<·Math.pow(radius,·2);\n····}\n····static·\u0275fac·=·function·MatSlider_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSlider)();\n····};\n····static·\u0275cmp·=·/*·@__PURE__·*/i0.\u0275\u0275defineComponent({\n······type:·MatSlider,\n······selectors:·[[\"mat-slider\"]],\n······contentQueries:·function·MatSlider_ContentQueries(rf,·ctx,·dirIndex)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275contentQuery(dirIndex,·MAT_SLIDER_THUMB,·5);\n··········i0.\u0275\u0275contentQuery(dirIndex,·MAT_SLIDER_RANGE_THUMB,·4);\n········}\n········if·(rf·&·2)·{\n··········let·_t;\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._input·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._inputs·=·_t);\n········}\n······},\n······viewQuery:·function·MatSlider_Query(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275viewQuery(_c2,·5);\n··········i0.\u0275\u0275viewQuery(MAT_SLIDER_VISUAL_THUMB,·5);\n········}\n········if·(rf·&·2)·{\n··········let·_t;\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._trackActive·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._thumbs·=·_t);\n········}\n······},\n······hostAttrs:·[1,·\"mat-mdc-slider\",·\"mdc-slider\"],\n······hostVars:·12,\n······hostBindings:·function·MatSlider_HostBindings(rf,·ctx)·{\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275classMap(\"mat-\"·+·(ctx.color·||·\"primary\"));\n··········i0.\u0275\u0275classProp(\"mdc-slider--range\",·ctx._isRange)(\"mdc-slider--disabled\",·ctx.disabled)(\"mdc-slider--discrete\",·ctx.discrete)(\"mdc-slider--tick-marks\",·ctx.showTickMarks)(\"_mat-animation-noopable\",·ctx._noopAnimations);\n········}\n······},\n······inputs:·{\n········disabled:·[2,·\"disabled\",·\"disabled\",·booleanAttribute],\n········discrete:·[2,·\"discrete\",·\"discrete\",·booleanAttribute],\n········showTickMarks:·[2,·\"showTickMarks\",·\"showTickMarks\",·booleanAttribute],\n········min:·[2,·\"min\",·\"min\",·numberAttribute],\n········color:·\"color\",\n········disableRipple:·[2,·\"disableRipple\",·\"disableRipple\",·booleanAttribute],\n········max:·[2,·\"max\",·\"max\",·numberAttribute],\n········step:·[2,·\"step\",·\"step\",·numberAttribute],\n········displayWith:·\"displayWith\"\n······},\n······exportAs:·[\"matSlider\"],\n······features:·[i0.\u0275\u0275ProvidersFeature([{\n········provide:·MAT_SLIDER,\n········useExisting:·MatSlider\n······}])],\n······ngContentSelectors:·_c3,\n······decls:·9,\n······vars:·5,\n······consts:·[[\"trackActive\",·\"\"],·[\"tickMarkContainer\",·\"\"],·[1,·\"mdc-slider__track\"],·[1,·\"mdc-slider__track--inactive\"],·[1,·\"mdc-slider__track--active\"],·[1,·\"mdc-slider__track--active_fill\"],·[1,·\"mdc-slider__tick-marks\"],·[3,·\"discrete\",·\"thumbPosition\",·\"valueIndicatorText\"],·[3,·\"class\",·\"transform\"]],\n······template:·function·MatSlider_Template(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275projectionDef();\n··········i0.\u0275\u0275projection(0);\n··········i0.\u0275\u0275elementStart(1,·\"div\",·2);\n··········i0.\u0275\u0275element(2,·\"div\",·3);\n··········i0.\u0275\u0275elementStart(3,·\"div\",·4);\n··········i0.\u0275\u0275element(4,·\"div\",·5,·0);\n··········i0.\u0275\u0275elementEnd();\n··········i0.\u0275\u0275conditionalCreate(6,·MatSlider_Conditional_6_Template,·3,·1,·\"div\",·6);\n··········i0.\u0275\u0275elementEnd();\n··········i0.\u0275\u0275conditionalCreate(7,·MatSlider_Conditional_7_Template,·1,·3,·\"mat-slider-visual-thumb\",·7);\n··········i0.\u0275\u0275element(8,·\"mat-slider-visual-thumb\",·7);\n········}\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275advance(6);\n··········i0.\u0275\u0275conditional(ctx.showTickMarks·?·6·:·-1);\n··········i0.\u0275\u0275advance();\n··········i0.\u0275\u0275conditional(ctx._isRange·?·7·:·-1);\n··········i0.\u0275\u0275advance();\n··········i0.\u0275\u0275property(\"discrete\",·ctx.discrete)(\"thumbPosition\",·2)(\"valueIndicatorText\",·ctx.endValueIndicatorText);\n········}\n······},\n······dependencies:·[MatSliderVisualThumb],\n······styles:·[\".mdc-slider__track{position:absolute;top:50%;transform:translateY(-50%);width:100%;pointer-events:none;height:var(--mat-slider-inactive-track-height,·4px)}.mdc-slider__track--active,.mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider__track--active{overflow:hidden;border-radius:var(--mat-slider-active-track-shape,·var(--mat-sys-corner-full));height:var(--mat-slider-active-track-height,·4px);top:calc((var(--mat-slider-inactive-track-height,·4px)·-·var(--mat-slider-active-track-height,·4px))/2)}.mdc-slider__track--active_fill{border-top-style:solid;box-sizing:border-box;height:100%;width:100%;position:relative;transform-origin:left;transition:transform·80ms·ease;border-color:var(--mat-slider-active-track-color,·var(--mat-sys-primary));border-top-width:var(--mat-slider-active-track-height,·4px)}.mdc-slider--disabled·.mdc-slider__track--active_fill{border-color:var(--mat-slider-disabled-active-track-color,·var(--mat-sys-on-surface))}[dir=rtl]·.mdc-slider__track--active_fill{-webkit-transform-origin:right;transform-origin:right}.mdc-slider__track--inactive{left:0;top:0;opacity:.24;background-color:var(--mat-slider-inactive-track-color,·var(--mat-sys-surface-variant));height:var(--mat-slider-inactive-track-height,·4px);border-radius:var(--mat-slider-inactive-track-shape,·var(--mat-sys-corner-full))}.mdc-slider--disabled·.mdc-slider__track--inactive{background-color:var(--mat-slider-disabled-inactive-track-color,·var(--mat-sys-on-surface));opacity:.24}.mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px·solid·rgba(0,0,0,0);border-radius:inherit;content:\\\"\\\";pointer-events:none}@media(forced-colors:·active){.mdc-slider__track--inactive::before{border-color:CanvasText}}.mdc-slider__value-indicator-container{bottom:44px;left:50%;pointer-events:none;position:absolute;transform:var(--mat-slider-value-indicator-container-transform,·translateX(-50%)·rotate(-45deg))}.mdc-slider__thumb--with-indicator·.mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider__value-indicator{display:flex;align-items:center;transform:scale(0);transform-origin:bottom;transition:transform·100ms·cubic-bezier(0.4,·0,·1,·1);word-break:normal;background-color:var(--mat-slider-label-container-color,·var(--mat-sys-primary));color:var(--mat-slider-label-label-text-color,·var(--mat-sys-on-primary));width:var(--mat-slider-value-indicator-width,·28px);height:var(--mat-slider-value-indicator-height,·28px);padding:var(--mat-slider-value-indicator-padding,·0);opacity:var(--mat-slider-value-indicator-opacity,·1);border-radius:var(--mat-slider-value-indicator-border-radius,·50%·50%·50%·0)}.mdc-slider__thumb--with-indicator·.mdc-slider__value-indicator{transition:transform·100ms·cubic-bezier(0,·0,·0.2,·1);transform:scale(1)}.mdc-slider__value-indicator::before{border-left:6px·solid·rgba(0,0,0,0);border-right:6px·solid·rgba(0,0,0,0);border-top:6px·solid;bottom:-5px;content:\\\"\\\";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0;display:var(--mat-slider-value-indicator-caret-display,·none);border-top-color:var(--mat-slider-label-container-color,·var(--mat-sys-primary))}.mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px·solid·rgba(0,0,0,0);border-radius:inherit;content:\\\"\\\";pointer-events:none}@media(forced-colors:·active){.mdc-slider__value-indicator::after{border-color:CanvasText}}.mdc-slider__value-indicator-text{text-align:center;width:var(--mat-slider-value-indicator-width,·28px);transform:var(--mat-slider-value-indicator-text-transform,·rotate(45deg));font-family:var(--mat-slider-label-label-text-font,·var(--mat-sys-label-medium-font));font-size:var(--mat-slider-label-label-text-size,·var(--mat-sys-label-medium-size));font-weight:var(--mat-slider-label-label-text-weight,·var(--mat-sys-label-medium-weight));line-height:var(--mat-slider-label-label-text-line-height,·var(--mat-sys-label-medium-line-height));letter-spacing:var(--mat-slider-label-label-text-tracking,·var(--mat-sys-label-medium-tracking))}.mdc-slider__thumb{-webkit-user-select:none;user-select:none;display:flex;left:-24px;outline:none;position:absolute;height:48px;width:48px;pointer-events:none}.mdc-slider--discrete·.mdc-slider__thumb{transition:transform·80ms·ease}.mdc-slider--disabled·.mdc-slider__thumb{pointer-events:none}.mdc-slider__thumb--top{z-index:1}.mdc-slider__thumb-knob{position:absolute;box-sizing:border-box;left:50%;top:50%;transform:translate(-50%,·-50%);border-style:solid;width:var(--mat-slider-handle-width,·20px);height:var(--mat-slider-handle-height,·20px);border-width:calc(var(--mat-slider-handle-height,·20px)/2)·calc(var(--mat-slider-handle-width,·20px)/2);box-shadow:var(--mat-slider-handle-elevation,·var(--mat-sys-level1));background-color:var(--mat-slider-handle-color,·var(--mat-sys-primary));border-color:var(--mat-slider-handle-color,·var(--mat-sys-primary));border-radius:var(--mat-slider-handle-shape,·var(--mat-sys-corner-full))}.mdc-slider__thumb:hover·.mdc-slider__thumb-knob{background-color:var(--mat-slider-hover-handle-color,·var(--mat-sys-primary));border-color:var(--mat-slider-hover-handle-color,·var(--mat-sys-primary))}.mdc-slider__thumb--focused·.mdc-slider__thumb-knob{background-color:var(--mat-slider-focus-handle-color,·var(--mat-sys-primary));border-color:var(--mat-slider-focus-handle-color,·var(--mat-sys-primary))}.mdc-slider--disabled·.mdc-slider__thumb-knob{background-color:var(--mat-slider-disabled-handle-color,·var(--mat-sys-on-surface));border-color:var(--mat-slider-disabled-handle-color,·var(--mat-sys-on-surface))}.mdc-slider__thumb--top·.mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb:hover·.mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb--focused·.mdc-slider__thumb-knob{border:solid·1px·#fff;box-sizing:content-box;border-color:var(--mat-slider-with-overlap-handle-outline-color,·var(--mat-sys-on-primary));border-width:var(--mat-slider-with-overlap-handle-outline-width,·1px)}.mdc-slider__tick-marks{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:space-between;padding:0·1px;position:absolute;width:100%}.mdc-slider__tick-mark--active,.mdc-slider__tick-mark--inactive{width:var(--mat-slider-with-tick-marks-container-size,·2px);height:var(--mat-slider-with-tick-marks-container-size,·2px);border-radius:var(--mat-slider-with-tick-marks-container-shape,·var(--mat-sys-corner-full))}.mdc-slider__tick-mark--inactive{opacity:var(--mat-slider-with-tick-marks-inactive-container-opacity,·0.38);background-color:var(--mat-slider-with-tick-marks-inactive-container-color,·var(--mat-sys-on-surface-variant))}.mdc-slider--disabled·.mdc-slider__tick-mark--inactive{opacity:var(--mat-slider-with-tick-marks-inactive-container-opacity,·0.38);background-color:var(--mat-slider-with-tick-marks-disabled-container-color,·var(--mat-sys-on-surface))}.mdc-slider__tick-mark--active{opacity:var(--mat-slider-with-tick-marks-active-container-opacity,·0.38);background-color:var(--mat-slider-with-tick-marks-active-container-color,·var(--mat-sys-on-primary))}.mdc-slider__input{cursor:pointer;left:2px;margin:0;height:44px;opacity:0;position:absolute;top:2px;width:44px;box-sizing:content-box}.mdc-slider__input.mat-mdc-slider-input-no-pointer-events{pointer-events:none}.mdc-slider__input.mat-slider__right-input{left:auto;right:0}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;cursor:pointer;height:48px;margin:0·8px;position:relative;touch-action:pan-y;width:auto;min-width:112px;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-slider.mdc-slider--disabled{cursor:auto;opacity:.38}.mat-mdc-slider.mdc-slider--disabled·.mdc-slider__input{cursor:auto}.mat-mdc-slider·.mdc-slider__thumb,.mat-mdc-slider·.mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider.mdc-slider--discrete·.mdc-slider__thumb,.mat-mdc-slider.mdc-slider--discrete·.mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider·.mat-ripple·.mat-ripple-element{background-color:var(--mat-slider-ripple-color,·var(--mat-sys-primary))}.mat-mdc-slider·.mat-ripple·.mat-mdc-slider-hover-ripple{background-color:var(--mat-slider-hover-state-layer-color,·color-mix(in·srgb,·var(--mat-sys-primary)·5%,·transparent))}.mat-mdc-slider·.mat-ripple·.mat-mdc-slider-focus-ripple,.mat-mdc-slider·.mat-ripple·.mat-mdc-slider-active-ripple{background-color:var(--mat-slider-focus-state-layer-color,·color-mix(in·srgb,·var(--mat-sys-primary)·20%,·transparent))}.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete·.mdc-slider__thumb,.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete·.mdc-slider__track--active_fill,.mat-mdc-slider._mat-animation-noopable·.mdc-slider__value-indicator{transition:none}.mat-mdc-slider·.mat-focus-indicator::before{border-radius:50%}.mdc-slider__thumb--focused·.mat-focus-indicator::before{content:\\\"\\\"}\\n\"],\n······encapsulation:·2,\n······changeDetection:·0\n····});\n··}\n··return·MatSlider;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n/**·Ensures·that·there·is·not·an·invalid·configuration·for·the·slider·thumb·inputs.·*/\nfunction·_validateInputs(isRange,·endInputElement,·startInputElement)·{\n··const·startValid·=·!isRange·||·startInputElement?._hostElement.hasAttribute('matSliderStartThumb');\n··const·endValid·=·endInputElement?._hostElement.hasAttribute(isRange·?·'matSliderEndThumb'·:·'matSliderThumb');\n··if·(!startValid·||·!endValid)·{\n····_throwInvalidInputConfigurationError();\n··}\n}\nfunction·_throwInvalidInputConfigurationError()·{\n··throw·Error(`Invalid·slider·thumb·input·configuration!\n\n···Valid·configurations·are·as·follows:\n\n·····<mat-slider>\n·······<input·matSliderThumb>\n·····</mat-slider>\n\n·····or\n\n·····<mat-slider>\n·······<input·matSliderStartThumb>\n·······<input·matSliderEndThumb>\n·····</mat-slider>\n···`);\n}\n\n/**\n·*·Provider·that·allows·the·slider·thumb·to·register·as·a·ControlValueAccessor.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_THUMB_VALUE_ACCESSOR·=·{\n··provide:·NG_VALUE_ACCESSOR,\n··useExisting:·/*#__PURE__*/forwardRef(()·=>·MatSliderThumb),\n··multi:·true\n};\n/**\n·*·Provider·that·allows·the·range·slider·thumb·to·register·as·a·ControlValueAccessor.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_RANGE_THUMB_VALUE_ACCESSOR·=·{\n··provide:·NG_VALUE_ACCESSOR,\n··useExisting:·/*#__PURE__*/forwardRef(()·=>·MatSliderRangeThumb),\n··multi:·true\n};\n/**\n·*·Directive·that·adds·slider-specific·behaviors·to·an·input·element·inside·`<mat-slider>`.\n·*·Up·to·two·may·be·placed·inside·of·a·`<mat-slider>`.\n·*\n·*·If·one·is·used,·the·selector·`matSliderThumb`·must·be·used,·and·the·outcome·will·be·a·normal\n·*·slider.·If·two·are·used,·the·selectors·`matSliderStartThumb`·and·`matSliderEndThumb`·must·be\n·*·used,·and·the·outcome·will·be·a·range·slider·with·two·slider·thumbs.\n·*/\nlet·MatSliderThumb·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderThumb·{\n····_ngZone·=·inject(NgZone);\n····_elementRef·=·inject(ElementRef);\n····_cdr·=·inject(ChangeDetectorRef);\n····_slider·=·inject(MAT_SLIDER);\n····_platform·=·inject(Platform);\n····_listenerCleanups;\n····get·value()·{\n······return·numberAttribute(this._hostElement.value,·0);\n····}\n····set·value(value)·{\n······if·(value·===·null)·{\n········value·=·this._getDefaultValue();\n······}\n······value·=·isNaN(value)·?·0·:·value;\n······const·stringValue·=·value·+·'';\n······if·(!this._hasSetInitialValue)·{\n········this._initialValue·=·stringValue;\n········return;\n······}\n······if·(this._isActive)·{\n········return;\n······}\n······this._setValue(stringValue);\n····}\n····/**\n·····*·Handles·programmatic·value·setting.·This·has·been·split·out·to\n·····*·allow·the·range·thumb·to·override·it·and·add·additional·necessary·logic.\n·····*/\n····_setValue(value)·{\n······this._hostElement.value·=·value;\n······this._updateThumbUIByValue();\n······this._slider._onValueChange(this);\n······this._cdr.detectChanges();\n······this._slider._cdr.markForCheck();\n····}\n····/**·Event·emitted·when·the·`value`·is·changed.·*/\n····valueChange·=·new·EventEmitter();\n····/**·Event·emitted·when·the·slider·thumb·starts·being·dragged.·*/\n····dragStart·=·new·EventEmitter();\n····/**·Event·emitted·when·the·slider·thumb·stops·being·dragged.·*/\n····dragEnd·=·new·EventEmitter();\n····/**\n·····*·The·current·translateX·in·px·of·the·slider·visual·thumb.\n·····*·@docs-private\n·····*/\n····get·translateX()·{\n······if·(this._slider.min·>=·this._slider.max)·{\n········this._translateX·=·this._tickMarkOffset;\n········return·this._translateX;\n······}\n······if·(this._translateX·===·undefined)·{\n········this._translateX·=·this._calcTranslateXByValue();\n······}\n······return·this._translateX;\n····}\n····set·translateX(v)·{\n······this._translateX·=·v;\n····}\n····_translateX;\n····/**\n·····*·Indicates·whether·this·thumb·is·the·start·or·end·thumb.\n·····*·@docs-private\n·····*/\n····thumbPosition·=·_MatThumb.END;\n····/**·@docs-private·*/\n····get·min()·{\n······return·numberAttribute(this._hostElement.min,·0);\n····}\n····set·min(v)·{\n······this._hostElement.min·=·v·+·'';\n······this._cdr.detectChanges();\n····}\n····/**·@docs-private·*/\n····get·max()·{\n······return·numberAttribute(this._hostElement.max,·0);\n····}\n····set·max(v)·{\n······this._hostElement.max·=·v·+·'';\n······this._cdr.detectChanges();\n····}\n····get·step()·{\n······return·numberAttribute(this._hostElement.step,·0);\n····}\n····set·step(v)·{\n······this._hostElement.step·=·v·+·'';\n······this._cdr.detectChanges();\n····}\n····/**·@docs-private·*/\n····get·disabled()·{\n······return·booleanAttribute(this._hostElement.disabled);\n····}\n····set·disabled(v)·{\n······this._hostElement.disabled·=·v;\n······this._cdr.detectChanges();\n······if·(this._slider.disabled·!==·this.disabled)·{\n········this._slider.disabled·=·this.disabled;\n······}\n····}\n····/**·The·percentage·of·the·slider·that·coincides·with·the·value.·*/\n····get·percentage()·{\n······if·(this._slider.min·>=·this._slider.max)·{\n········return·this._slider._isRtl·?·1·:·0;\n······}\n······return·(this.value·-·this._slider.min)·/·(this._slider.max·-·this._slider.min);\n····}\n····/**·@docs-private·*/\n····get·fillPercentage()·{\n······if·(!this._slider._cachedWidth)·{\n········return·this._slider._isRtl·?·1·:·0;\n······}\n······if·(this._translateX·===·0)·{\n········return·0;\n······}\n······return·this.translateX·/·this._slider._cachedWidth;\n····}\n····/**·The·host·native·HTML·input·element.·*/\n····_hostElement·=·this._elementRef.nativeElement;\n····/**·The·aria-valuetext·string·representation·of·the·input's·value.·*/\n····_valuetext·=·signal('');\n····/**·The·radius·of·a·native·html·slider's·knob.·*/\n····_knobRadius·=·8;\n····/**·The·distance·in·px·from·the·start·of·the·slider·track·to·the·first·tick·mark.·*/\n····_tickMarkOffset·=·3;\n····/**·Whether·user's·cursor·is·currently·in·a·mouse·down·state·on·the·input.·*/\n····_isActive·=·false;\n····/**·Whether·the·input·is·currently·focused·(either·by·tab·or·after·clicking).·*/\n····_isFocused·=·false;\n····/**·Used·to·relay·updates·to·_isFocused·to·the·slider·visual·thumbs.·*/\n····_setIsFocused(v)·{\n······this._isFocused·=·v;\n····}\n····/**\n·····*·Whether·the·initial·value·has·been·set.\n·····*·This·exists·because·the·initial·value·cannot·be·immediately·set·because·the·min·and·max\n·····*·must·first·be·relayed·from·the·parent·MatSlider·component,·which·can·only·happen·later\n·····*·in·the·component·lifecycle.\n·····*/\n····_hasSetInitialValue·=·false;\n····/**·The·stored·initial·value.·*/\n····_initialValue;\n····/**·Defined·when·a·user·is·using·a·form·control·to·manage·slider·value·&·validation.·*/\n····_formControl;\n····/**·Emits·when·the·component·is·destroyed.·*/\n····_destroyed·=·new·Subject();\n····/**\n·····*·Indicates·whether·UI·updates·should·be·skipped.\n·····*\n·····*·This·flag·is·used·to·avoid·flickering\n·····*·when·correcting·values·on·pointer·up/down.\n·····*/\n····_skipUIUpdate·=·false;\n····/**·Callback·called·when·the·slider·input·value·changes.·*/\n····_onChangeFn;\n····/**·Callback·called·when·the·slider·input·has·been·touched.·*/\n····_onTouchedFn·=·()·=>·{};\n····/**\n·····*·Whether·the·NgModel·has·been·initialized.\n·····*\n·····*·This·flag·is·used·to·ignore·ghost·null·calls·to\n·····*·writeValue·which·can·break·slider·initialization.\n·····*\n·····*·See·https://github.com/angular/angular/issues/14988.\n·····*/\n····_isControlInitialized·=·false;\n····constructor()·{\n······const·renderer·=·inject(Renderer2);\n······this._ngZone.runOutsideAngular(()·=>·{\n········this._listenerCleanups·=·[renderer.listen(this._hostElement,·'pointerdown',·this._onPointerDown.bind(this)),·renderer.listen(this._hostElement,·'pointermove',·this._onPointerMove.bind(this)),·renderer.listen(this._hostElement,·'pointerup',·this._onPointerUp.bind(this))];\n······});\n····}\n····ngOnDestroy()·{\n······this._listenerCleanups.forEach(cleanup·=>·cleanup());\n······this._destroyed.next();\n······this._destroyed.complete();\n······this.dragStart.complete();\n······this.dragEnd.complete();\n····}\n····/**·@docs-private·*/\n····initProps()·{\n······this._updateWidthInactive();\n······//·If·this·or·the·parent·slider·is·disabled,·just·make·everything·disabled.\n······if·(this.disabled·!==·this._slider.disabled)·{\n········//·The·MatSlider·setter·for·disabled·will·relay·this·and·disable·both·inputs.\n········this._slider.disabled·=·true;\n······}\n······this.step·=·this._slider.step;\n······this.min·=·this._slider.min;\n······this.max·=·this._slider.max;\n······this._initValue();\n····}\n····/**·@docs-private·*/\n····initUI()·{\n······this._updateThumbUIByValue();\n····}\n····_initValue()·{\n······this._hasSetInitialValue·=·true;\n······if·(this._initialValue·===·undefined)·{\n········this.value·=·this._getDefaultValue();\n······}·else·{\n········this._hostElement.value·=·this._initialValue;\n········this._updateThumbUIByValue();\n········this._slider._onValueChange(this);\n········this._cdr.detectChanges();\n······}\n····}\n····_getDefaultValue()·{\n······return·this.min;\n····}\n····_onBlur()·{\n······this._setIsFocused(false);\n······this._onTouchedFn();\n····}\n····_onFocus()·{\n······this._slider._setTransition(false);\n······this._slider._updateTrackUI(this);\n······this._setIsFocused(true);\n····}\n····_onChange()·{\n······this.valueChange.emit(this.value);\n······//·only·used·to·handle·the·edge·case·where·user\n······//·mousedown·on·the·slider·then·uses·arrow·keys.\n······if·(this._isActive)·{\n········this._updateThumbUIByValue({\n··········withAnimation:·true\n········});\n······}\n····}\n····_onInput()·{\n······this._onChangeFn?.(this.value);\n······//·handles·arrowing·and·updating·the·value·when\n······//·a·step·is·defined.\n······if·(this._slider.step·||·!this._isActive)·{\n········this._updateThumbUIByValue({\n··········withAnimation:·true\n········});\n······}\n······this._slider._onValueChange(this);\n····}\n····_onNgControlValueChange()·{\n······//·only·used·to·handle·when·the·value·change\n······//·originates·outside·of·the·slider.\n······if·(!this._isActive·||·!this._isFocused)·{\n········this._slider._onValueChange(this);\n········this._updateThumbUIByValue();\n······}\n······this._slider.disabled·=·this._formControl.disabled;\n····}\n····_onPointerDown(event)·{\n······if·(this.disabled·||·event.button·!==·0)·{\n········return;\n······}\n······//·On·IOS,·dragging·only·works·if·the·pointer·down·happens·on·the\n······//·slider·thumb·and·the·slider·does·not·receive·focus·from·pointer·events.\n······if·(this._platform.IOS)·{\n········const·isCursorOnSliderThumb·=·this._slider._isCursorOnSliderThumb(event,·this._slider._getThumb(this.thumbPosition)._hostElement.getBoundingClientRect());\n········this._isActive·=·isCursorOnSliderThumb;\n········this._updateWidthActive();\n········this._slider._updateDimensions();\n········return;\n······}\n······this._isActive·=·true;\n······this._setIsFocused(true);\n······this._updateWidthActive();\n······this._slider._updateDimensions();\n······//·Does·nothing·if·a·step·is·defined·because·we\n······//·want·the·value·to·snap·to·the·values·on·input.\n······if·(!this._slider.step)·{\n········this._updateThumbUIByPointerEvent(event,·{\n··········withAnimation:·true\n········});\n······}\n······if·(!this.disabled)·{\n········this._handleValueCorrection(event);\n········this.dragStart.emit({\n··········source:·this,\n··········parent:·this._slider,\n··········value:·this.value\n········});\n······}\n····}\n····/**\n·····*·Corrects·the·value·of·the·slider·on·pointer·up/down.\n·····*\n·····*·Called·on·pointer·down·and·up·because·the·value·is·set·based\n·····*·on·the·inactive·width·instead·of·the·active·width.\n·····*/\n····_handleValueCorrection(event)·{\n······//·Don't·update·the·UI·with·the·current·value!·The·value·on·pointerdown\n······//·and·pointerup·is·calculated·in·the·split·second·before·the·input(s)\n······//·resize.·See·_updateWidthInactive()·and·_updateWidthActive()·for·more\n······//·details.\n······this._skipUIUpdate·=·true;\n······//·Note·that·this·function·gets·triggered·before·the·actual·value·of·the\n······//·slider·is·updated.·This·means·if·we·were·to·set·the·value·here,·it\n······//·would·immediately·be·overwritten.·Using·setTimeout·ensures·the·setting\n······//·of·the·value·happens·after·the·value·has·been·updated·by·the\n······//·pointerdown·event.\n······setTimeout(()·=>·{\n········this._skipUIUpdate·=·false;\n········this._fixValue(event);\n······},·0);\n····}\n····/**·Corrects·the·value·of·the·slider·based·on·the·pointer·event's·position.·*/\n····_fixValue(event)·{\n······const·xPos·=·event.clientX·-·this._slider._cachedLeft;\n······const·width·=·this._slider._cachedWidth;\n······const·step·=·this._slider.step·===·0·?·1·:·this._slider.step;\n······const·numSteps·=·Math.floor((this._slider.max·-·this._slider.min)·/·step);\n······const·percentage·=·this._slider._isRtl·?·1·-·xPos·/·width·:·xPos·/·width;\n······//·To·ensure·the·percentage·is·rounded·to·the·necessary·number·of·decimals.\n······const·fixedPercentage·=·Math.round(percentage·*·numSteps)·/·numSteps;\n······const·impreciseValue·=·fixedPercentage·*·(this._slider.max·-·this._slider.min)·+·this._slider.min;\n······const·value·=·Math.round(impreciseValue·/·step)·*·step;\n······const·prevValue·=·this.value;\n······if·(value·===·prevValue)·{\n········//·Because·we·prevented·UI·updates,·if·it·turns·out·that·the·race\n········//·condition·didn't·happen·and·the·value·is·already·correct,·we\n········//·have·to·apply·the·ui·updates·now.\n········this._slider._onValueChange(this);\n········this._slider.step·>·0·?·this._updateThumbUIByValue()·:·this._updateThumbUIByPointerEvent(event,·{\n··········withAnimation:·this._slider._hasAnimation\n········});\n········return;\n······}\n······this.value·=·value;\n······this.valueChange.emit(this.value);\n······this._onChangeFn?.(this.value);\n······this._slider._onValueChange(this);\n······this._slider.step·>·0·?·this._updateThumbUIByValue()·:·this._updateThumbUIByPointerEvent(event,·{\n········withAnimation:·this._slider._hasAnimation\n······});\n····}\n····_onPointerMove(event)·{\n······//·Again,·does·nothing·if·a·step·is·defined·because\n······//·we·want·the·value·to·snap·to·the·values·on·input.\n······if·(!this._slider.step·&&·this._isActive)·{\n········this._updateThumbUIByPointerEvent(event);\n······}\n····}\n····_onPointerUp()·{\n······if·(this._isActive)·{\n········this._isActive·=·false;\n········if·(this._platform.SAFARI)·{\n··········this._setIsFocused(false);\n········}\n········this.dragEnd.emit({\n··········source:·this,\n··········parent:·this._slider,\n··········value:·this.value\n········});\n········//·This·setTimeout·is·to·prevent·the·pointerup·from·triggering·a·value\n········//·change·on·the·input·based·on·the·inactive·width.·It's·not·clear·why\n········//·but·for·some·reason·on·IOS·this·race·condition·is·even·more·common·so\n········//·the·timeout·needs·to·be·increased.\n········setTimeout(()·=>·this._updateWidthInactive(),·this._platform.IOS·?·10·:·0);\n······}\n····}\n····_clamp(v)·{\n······const·min·=·this._tickMarkOffset;\n······const·max·=·this._slider._cachedWidth·-·this._tickMarkOffset;\n······return·Math.max(Math.min(v,·max),·min);\n····}\n····_calcTranslateXByValue()·{\n······if·(this._slider._isRtl)·{\n········return·(1·-·this.percentage)·*·(this._slider._cachedWidth·-·this._tickMarkOffset·*·2)·+·this._tickMarkOffset;\n······}\n······return·this.percentage·*·(this._slider._cachedWidth·-·this._tickMarkOffset·*·2)·+·this._tickMarkOffset;\n····}\n····_calcTranslateXByPointerEvent(event)·{\n······return·event.clientX·-·this._slider._cachedLeft;\n····}\n····/**\n·····*·Used·to·set·the·slider·width·to·the·correct\n·····*·dimensions·while·the·user·is·dragging.\n·····*/\n····_updateWidthActive()·{}\n····/**\n·····*·Sets·the·slider·input·to·disproportionate·dimensions·to·allow·for·touch\n·····*·events·to·be·captured·on·touch·devices.\n·····*/\n····_updateWidthInactive()·{\n······this._hostElement.style.padding·=·`0·${this._slider._inputPadding}px`;\n······this._hostElement.style.width·=·`calc(100%·+·${this._slider._inputPadding·-·this._tickMarkOffset·*·2}px)`;\n······this._hostElement.style.left·=·`-${this._slider._rippleRadius·-·this._tickMarkOffset}px`;\n····}\n····_updateThumbUIByValue(options)·{\n······this.translateX·=·this._clamp(this._calcTranslateXByValue());\n······this._updateThumbUI(options);\n····}\n····_updateThumbUIByPointerEvent(event,·options)·{\n······this.translateX·=·this._clamp(this._calcTranslateXByPointerEvent(event));\n······this._updateThumbUI(options);\n····}\n····_updateThumbUI(options)·{\n······this._slider._setTransition(!!options?.withAnimation);\n······this._slider._onTranslateXChange(this);\n····}\n····/**\n·····*·Sets·the·input's·value.\n·····*·@param·value·The·new·value·of·the·input\n·····*·@docs-private\n·····*/\n····writeValue(value)·{\n······if·(this._isControlInitialized·||·value·!==·null)·{\n········this.value·=·value;\n······}\n····}\n····/**\n·····*·Registers·a·callback·to·be·invoked·when·the·input's·value·changes·from·user·input.\n·····*·@param·fn·The·callback·to·register\n·····*·@docs-private\n·····*/\n····registerOnChange(fn)·{\n······this._onChangeFn·=·fn;\n······this._isControlInitialized·=·true;\n····}\n····/**\n·····*·Registers·a·callback·to·be·invoked·when·the·input·is·blurred·by·the·user.\n·····*·@param·fn·The·callback·to·register\n·····*·@docs-private\n·····*/\n····registerOnTouched(fn)·{\n······this._onTouchedFn·=·fn;\n····}\n····/**\n·····*·Sets·the·disabled·state·of·the·slider.\n·····*·@param·isDisabled·The·new·disabled·state\n·····*·@docs-private\n·····*/\n····setDisabledState(isDisabled)·{\n······this.disabled·=·isDisabled;\n····}\n····focus()·{\n······this._hostElement.focus();\n····}\n····blur()·{\n······this._hostElement.blur();\n····}\n····static·\u0275fac·=·function·MatSliderThumb_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderThumb)();\n····};\n····static·\u0275dir·=·/*·@__PURE__·*/i0.\u0275\u0275defineDirective({\n······type:·MatSliderThumb,\n······selectors:·[[\"input\",·\"matSliderThumb\",·\"\"]],\n······hostAttrs:·[\"type\",·\"range\",·1,·\"mdc-slider__input\"],\n······hostVars:·1,\n······hostBindings:·function·MatSliderThumb_HostBindings(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275listener(\"change\",·function·MatSliderThumb_change_HostBindingHandler()·{\n············return·ctx._onChange();\n··········})(\"input\",·function·MatSliderThumb_input_HostBindingHandler()·{\n············return·ctx._onInput();\n··········})(\"blur\",·function·MatSliderThumb_blur_HostBindingHandler()·{\n············return·ctx._onBlur();\n··········})(\"focus\",·function·MatSliderThumb_focus_HostBindingHandler()·{\n············return·ctx._onFocus();\n··········});\n········}\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275attribute(\"aria-valuetext\",·ctx._valuetext());\n········}\n······},\n······inputs:·{\n········value:·[2,·\"value\",·\"value\",·numberAttribute]\n······},\n······outputs:·{\n········valueChange:·\"valueChange\",\n········dragStart:·\"dragStart\",\n········dragEnd:·\"dragEnd\"\n······},\n······exportAs:·[\"matSliderThumb\"],\n······features:·[i0.\u0275\u0275ProvidersFeature([MAT_SLIDER_THUMB_VALUE_ACCESSOR,·{\n········provide:·MAT_SLIDER_THUMB,\n········useExisting:·MatSliderThumb\n······}])]\n····});\n··}\n··return·MatSliderThumb;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nlet·MatSliderRangeThumb·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderRangeThumb·extends·MatSliderThumb·{\n····_cdr·=·inject(ChangeDetectorRef);\n····/**·@docs-private·*/\n····getSibling()·{\n······if·(!this._sibling)·{\n········this._sibling·=·this._slider._getInput(this._isEndThumb·?·_MatThumb.START·:·_MatThumb.END);\n······}\n······return·this._sibling;\n····}\n····_sibling;\n····/**\n·····*·Returns·the·minimum·translateX·position·allowed·for·this·slider·input's·visual·thumb.\n·····*·@docs-private\n·····*/\n····getMinPos()·{\n······const·sibling·=·this.getSibling();\n······if·(!this._isLeftThumb·&&·sibling)·{\n········return·sibling.translateX;\n······}\n······return·this._tickMarkOffset;\n····}\n····/**\n·····*·Returns·the·maximum·translateX·position·allowed·for·this·slider·input's·visual·thumb.\n·····*·@docs-private\n·····*/\n····getMaxPos()·{\n······const·sibling·=·this.getSibling();\n······if·(this._isLeftThumb·&&·sibling)·{\n········return·sibling.translateX;\n······}\n······return·this._slider._cachedWidth·-·this._tickMarkOffset;\n····}\n····_setIsLeftThumb()·{\n······this._isLeftThumb·=·this._isEndThumb·&&·this._slider._isRtl·||·!this._isEndThumb·&&·!this._slider._isRtl;\n····}\n····/**·Whether·this·slider·corresponds·to·the·input·on·the·left·hand·side.·*/\n····_isLeftThumb;\n····/**·Whether·this·slider·corresponds·to·the·input·with·greater·value.·*/\n····_isEndThumb;\n····constructor()·{\n······super();\n······this._isEndThumb·=·this._hostElement.hasAttribute('matSliderEndThumb');\n······this._setIsLeftThumb();\n······this.thumbPosition·=·this._isEndThumb·?·_MatThumb.END·:·_MatThumb.START;\n····}\n····_getDefaultValue()·{\n······return·this._isEndThumb·&&·this._slider._isRange·?·this.max·:·this.min;\n····}\n····_onInput()·{\n······super._onInput();\n······this._updateSibling();\n······if·(!this._isActive)·{\n········this._updateWidthInactive();\n······}\n····}\n····_onNgControlValueChange()·{\n······super._onNgControlValueChange();\n······this.getSibling()?._updateMinMax();\n····}\n····_onPointerDown(event)·{\n······if·(this.disabled·||·event.button·!==·0)·{\n········return;\n······}\n······if·(this._sibling)·{\n········this._sibling._updateWidthActive();\n········this._sibling._hostElement.classList.add('mat-mdc-slider-input-no-pointer-events');\n······}\n······super._onPointerDown(event);\n····}\n····_onPointerUp()·{\n······super._onPointerUp();\n······if·(this._sibling)·{\n········setTimeout(()·=>·{\n··········this._sibling._updateWidthInactive();\n··········this._sibling._hostElement.classList.remove('mat-mdc-slider-input-no-pointer-events');\n········});\n······}\n····}\n····_onPointerMove(event)·{\n······super._onPointerMove(event);\n······if·(!this._slider.step·&&·this._isActive)·{\n········this._updateSibling();\n······}\n····}\n····_fixValue(event)·{\n······super._fixValue(event);\n······this._sibling?._updateMinMax();\n····}\n····_clamp(v)·{\n······return·Math.max(Math.min(v,·this.getMaxPos()),·this.getMinPos());\n····}\n····_updateMinMax()·{\n······const·sibling·=·this.getSibling();\n······if·(!sibling)·{\n········return;\n······}\n······if·(this._isEndThumb)·{\n········this.min·=·Math.max(this._slider.min,·sibling.value);\n········this.max·=·this._slider.max;\n······}·else·{\n········this.min·=·this._slider.min;\n········this.max·=·Math.min(this._slider.max,·sibling.value);\n······}\n····}\n····_updateWidthActive()·{\n······const·minWidth·=·this._slider._rippleRadius·*·2·-·this._slider._inputPadding·*·2;\n······const·maxWidth·=·this._slider._cachedWidth·+·this._slider._inputPadding·-·minWidth·-·this._tickMarkOffset·*·2;\n······const·percentage·=·this._slider.min·<·this._slider.max·?·(this.max·-·this.min)·/·(this._slider.max·-·this._slider.min)·:·1;\n······const·width·=·maxWidth·*·percentage·+·minWidth;\n······this._hostElement.style.width·=·`${width}px`;\n······this._hostElement.style.padding·=·`0·${this._slider._inputPadding}px`;\n····}\n····_updateWidthInactive()·{\n······const·sibling·=·this.getSibling();\n······if·(!sibling)·{\n········return;\n······}\n······const·maxWidth·=·this._slider._cachedWidth·-·this._tickMarkOffset·*·2;\n······const·midValue·=·this._isEndThumb·?·this.value·-·(this.value·-·sibling.value)·/·2·:·this.value·+·(sibling.value·-·this.value)·/·2;\n······const·_percentage·=·this._isEndThumb·?·(this.max·-·midValue)·/·(this._slider.max·-·this._slider.min)·:·(midValue·-·this.min)·/·(this._slider.max·-·this._slider.min);\n······const·percentage·=·this._slider.min·<·this._slider.max·?·_percentage·:·1;\n······//·Extend·the·native·input·width·by·the·radius·of·the·ripple\n······let·ripplePadding·=·this._slider._rippleRadius;\n······//·If·one·of·the·inputs·is·maximally·sized·(the·value·of·both·thumbs·is\n······//·equal·to·the·min·or·max),·make·that·input·take·up·all·of·the·width·and\n······//·make·the·other·unselectable.\n······if·(percentage·===·1)·{\n········ripplePadding·=·48;\n······}·else·if·(percentage·===·0)·{\n········ripplePadding·=·0;\n······}\n······const·width·=·maxWidth·*·percentage·+·ripplePadding;\n······this._hostElement.style.width·=·`${width}px`;\n······this._hostElement.style.padding·=·'0px';\n······if·(this._isLeftThumb)·{\n········this._hostElement.style.left·=·`-${this._slider._rippleRadius·-·this._tickMarkOffset}px`;\n········this._hostElement.style.right·=·'auto';\n······}·else·{\n········this._hostElement.style.left·=·'auto';\n········this._hostElement.style.right·=·`-${this._slider._rippleRadius·-·this._tickMarkOffset}px`;\n······}\n····}\n····_updateStaticStyles()·{\n······this._hostElement.classList.toggle('mat-slider__right-input',·!this._isLeftThumb);\n····}\n····_updateSibling()·{\n······const·sibling·=·this.getSibling();\n······if·(!sibling)·{\n········return;\n······}\n······sibling._updateMinMax();\n······if·(this._isActive)·{\n········sibling._updateWidthActive();\n······}·else·{\n········sibling._updateWidthInactive();\n······}\n····}\n····/**\n·····*·Sets·the·input's·value.\n·····*·@param·value·The·new·value·of·the·input\n·····*·@docs-private\n·····*/\n····writeValue(value)·{\n······if·(this._isControlInitialized·||·value·!==·null)·{\n········this.value·=·value;\n········this._updateWidthInactive();\n········this._updateSibling();\n······}\n····}\n····_setValue(value)·{\n······super._setValue(value);\n······this._updateWidthInactive();\n······this._updateSibling();\n····}\n····static·\u0275fac·=·function·MatSliderRangeThumb_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderRangeThumb)();\n····};\n····static·\u0275dir·=·/*·@__PURE__·*/i0.\u0275\u0275defineDirective({\n······type:·MatSliderRangeThumb,\n······selectors:·[[\"input\",·\"matSliderStartThumb\",·\"\"],·[\"input\",·\"matSliderEndThumb\",·\"\"]],\n······exportAs:·[\"matSliderRangeThumb\"],\n······features:·[i0.\u0275\u0275ProvidersFeature([MAT_SLIDER_RANGE_THUMB_VALUE_ACCESSOR,·{\n········provide:·MAT_SLIDER_RANGE_THUMB,\n········useExisting:·MatSliderRangeThumb\n······}]),·i0.\u0275\u0275InheritDefinitionFeature]\n····});\n··}\n··return·MatSliderRangeThumb;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nlet·MatSliderModule·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderModule·{\n····static·\u0275fac·=·function·MatSliderModule_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderModule)();\n····};\n····static·\u0275mod·=·/*·@__PURE__·*/i0.\u0275\u0275defineNgModule({\n······type:·MatSliderModule\n····});\n····static·\u0275inj·=·/*·@__PURE__·*/i0.\u0275\u0275defineInjector({\n······imports:·[MatCommonModule,·MatRippleModule]\n····});\n··}\n··return·MatSliderModule;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nexport·{·MatSlider,·MatSliderChange,·MatSliderModule,·MatSliderRangeThumb,·MatSliderThumb,·MatSliderVisualThumb·};\n",4077 ········"import·{·Directionality·}·from·'@angular/cdk/bidi';\nimport·{·Platform·}·from·'@angular/cdk/platform';\nimport·*·as·i0·from·'@angular/core';\nimport·{·InjectionToken,·inject,·ChangeDetectorRef,·NgZone,·Renderer2,·ElementRef,·Component,·ChangeDetectionStrategy,·ViewEncapsulation,·Input,·ViewChild,·booleanAttribute,·numberAttribute,·ViewChildren,·ContentChild,·ContentChildren,·forwardRef,·EventEmitter,·signal,·Directive,·Output,·NgModule·}·from·'@angular/core';\nimport·{·b·as·RippleState,·M·as·MatRipple,·a·as·MAT_RIPPLE_GLOBAL_OPTIONS·}·from·'./ripple-BMyyyLz2.mjs';\nimport·{·_CdkPrivateStyleLoader·}·from·'@angular/cdk/private';\nimport·{·_·as·_animationsDisabled·}·from·'./animation-ChQ1vjiF.mjs';\nimport·{·_·as·_StructuralStylesLoader·}·from·'./structural-styles-CObeNzjn.mjs';\nimport·{·NG_VALUE_ACCESSOR·}·from·'@angular/forms';\nimport·{·Subject·}·from·'rxjs';\nimport·{·M·as·MatCommonModule·}·from·'./common-module-cKSwHniA.mjs';\nimport·{·M·as·MatRippleModule·}·from·'./index-BRImSAOu.mjs';\nimport·'@angular/cdk/a11y';\nimport·'@angular/cdk/coercion';\nimport·'@angular/cdk/layout';\n\n/**\n·*·Thumb·types:·range·slider·has·two·thumbs·(START,·END)·whereas·single·point\n·*·slider·only·has·one·thumb·(END).\n·*/\nconst·_c0·=·[\"knob\"];\nconst·_c1·=·[\"valueIndicatorContainer\"];\nfunction·MatSliderVisualThumb_Conditional_0_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275elementStart(0,·\"div\",·2,·1)(2,·\"div\",·5)(3,·\"span\",·6);\n····i0.\u0275\u0275text(4);\n····i0.\u0275\u0275elementEnd()()();\n··}\n··if·(rf·&·2)·{\n····const·ctx_r0·=·i0.\u0275\u0275nextContext();\n····i0.\u0275\u0275advance(4);\n····i0.\u0275\u0275textInterpolate(ctx_r0.valueIndicatorText);\n··}\n}\nconst·_c2·=·[\"trackActive\"];\nconst·_c3·=·[\"*\"];\nfunction·MatSlider_Conditional_6_Conditional_2_For_1_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275element(0,·\"div\");\n··}\n··if·(rf·&·2)·{\n····const·tickMark_r1·=·ctx.$implicit;\n····const·\u0275$index_14_r2·=·ctx.$index;\n····const·ctx_r2·=·i0.\u0275\u0275nextContext(3);\n····i0.\u0275\u0275classMap(tickMark_r1·===·0·?·\"mdc-slider__tick-mark--active\"·:·\"mdc-slider__tick-mark--inactive\");\n····i0.\u0275\u0275styleProp(\"transform\",·ctx_r2._calcTickMarkTransform(\u0275$index_14_r2));\n··}\n}\nfunction·MatSlider_Conditional_6_Conditional_2_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275repeaterCreate(0,·MatSlider_Conditional_6_Conditional_2_For_1_Template,·1,·4,·\"div\",·8,·i0.\u0275\u0275repeaterTrackByIndex);\n··}\n··if·(rf·&·2)·{\n····const·ctx_r2·=·i0.\u0275\u0275nextContext(2);\n····i0.\u0275\u0275repeater(ctx_r2._tickMarks);\n··}\n}\nfunction·MatSlider_Conditional_6_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275elementStart(0,·\"div\",·6,·1);\n····i0.\u0275\u0275conditionalCreate(2,·MatSlider_Conditional_6_Conditional_2_Template,·2,·0);\n····i0.\u0275\u0275elementEnd();\n··}\n··if·(rf·&·2)·{\n····const·ctx_r2·=·i0.\u0275\u0275nextContext();\n····i0.\u0275\u0275advance(2);\n····i0.\u0275\u0275conditional(ctx_r2._cachedWidth·?·2·:·-1);\n··}\n}\nfunction·MatSlider_Conditional_7_Template(rf,·ctx)·{\n··if·(rf·&·1)·{\n····i0.\u0275\u0275element(0,·\"mat-slider-visual-thumb\",·7);\n··}\n··if·(rf·&·2)·{\n····const·ctx_r2·=·i0.\u0275\u0275nextContext();\n····i0.\u0275\u0275property(\"discrete\",·ctx_r2.discrete)(\"thumbPosition\",·1)(\"valueIndicatorText\",·ctx_r2.startValueIndicatorText);\n··}\n}\nvar·_MatThumb·=·/*#__PURE__*/function·(_MatThumb)·{\n··_MatThumb[_MatThumb[\"START\"]·=·1]·=·\"START\";\n··_MatThumb[_MatThumb[\"END\"]·=·2]·=·\"END\";\n··return·_MatThumb;\n}(_MatThumb·||·{});\n/**·Tick·mark·enum,·for·discrete·sliders.·*/\nvar·_MatTickMark·=·/*#__PURE__*/function·(_MatTickMark)·{\n··_MatTickMark[_MatTickMark[\"ACTIVE\"]·=·0]·=·\"ACTIVE\";\n··_MatTickMark[_MatTickMark[\"INACTIVE\"]·=·1]·=·\"INACTIVE\";\n··return·_MatTickMark;\n}(_MatTickMark·||·{});\n/**\n·*·Injection·token·that·can·be·used·for·a·`MatSlider`·to·provide·itself·as·a\n·*·parent·to·the·`MatSliderThumb`·and·`MatSliderRangeThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER·=·/*#__PURE__*/new·InjectionToken('_MatSlider');\n/**\n·*·Injection·token·that·can·be·used·to·query·for·a·`MatSliderThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_THUMB·=·/*#__PURE__*/new·InjectionToken('_MatSliderThumb');\n/**\n·*·Injection·token·that·can·be·used·to·query·for·a·`MatSliderRangeThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_RANGE_THUMB·=·/*#__PURE__*/new·InjectionToken('_MatSliderRangeThumb');\n/**\n·*·Injection·token·that·can·be·used·to·query·for·a·`MatSliderVisualThumb`.\n·*·Used·primarily·to·avoid·circular·imports.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_VISUAL_THUMB·=·/*#__PURE__*/new·InjectionToken('_MatSliderVisualThumb');\n/**\n·*·A·simple·change·event·emitted·by·the·MatSlider·component.\n·*·@deprecated·Use·event·bindings·directly·on·the·MatSliderThumbs·for·`change`·and·`input`·events.·See·https://v17.material.angular.dev/guide/mdc-migration·for·information·about·migrating.\n·*·@breaking-change·17.0.0\n·*/\nclass·MatSliderChange·{\n··/**·The·MatSliderThumb·that·was·interacted·with.·*/\n··source;\n··/**·The·MatSlider·that·was·interacted·with.·*/\n··parent;\n··/**·The·new·value·of·the·source·slider.·*/\n··value;\n}\n\n/**\n·*·The·visual·slider·thumb.\n·*\n·*·Handles·the·slider·thumb·ripple·states·(hover,·focus,·and·active),\n·*·and·displaying·the·value·tooltip·on·discrete·sliders.\n·*·@docs-private\n·*/\nlet·MatSliderVisualThumb·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderVisualThumb·{\n····_cdr·=·inject(ChangeDetectorRef);\n····_ngZone·=·inject(NgZone);\n····_slider·=·inject(MAT_SLIDER);\n····_renderer·=·inject(Renderer2);\n····_listenerCleanups;\n····/**·Whether·the·slider·displays·a·numeric·value·label·upon·pressing·the·thumb.·*/\n····discrete;\n····/**·Indicates·which·slider·thumb·this·input·corresponds·to.·*/\n····thumbPosition;\n····/**·The·display·value·of·the·slider·thumb.·*/\n····valueIndicatorText;\n····/**·The·MatRipple·for·this·slider·thumb.·*/\n····_ripple;\n····/**·The·slider·thumb·knob.·*/\n····_knob;\n····/**·The·slider·thumb·value·indicator·container.·*/\n····_valueIndicatorContainer;\n····/**·The·slider·input·corresponding·to·this·slider·thumb.·*/\n····_sliderInput;\n····/**·The·native·html·element·of·the·slider·input·corresponding·to·this·thumb.·*/\n····_sliderInputEl;\n····/**·The·RippleRef·for·the·slider·thumbs·hover·state.·*/\n····_hoverRippleRef;\n····/**·The·RippleRef·for·the·slider·thumbs·focus·state.·*/\n····_focusRippleRef;\n····/**·The·RippleRef·for·the·slider·thumbs·active·state.·*/\n····_activeRippleRef;\n····/**·Whether·the·slider·thumb·is·currently·being·hovered.·*/\n····_isHovered·=·false;\n····/**·Whether·the·slider·thumb·is·currently·being·pressed.·*/\n····_isActive·=·false;\n····/**·Whether·the·value·indicator·tooltip·is·visible.·*/\n····_isValueIndicatorVisible·=·false;\n····/**·The·host·native·HTML·input·element.·*/\n····_hostElement·=·inject(ElementRef).nativeElement;\n····_platform·=·inject(Platform);\n····constructor()·{}\n····ngAfterViewInit()·{\n······const·sliderInput·=·this._slider._getInput(this.thumbPosition);\n······//·No-op·if·the·slider·isn't·configured·properly.·`MatSlider`·will\n······//·throw·an·error·instructing·the·user·how·to·set·up·the·slider.\n······if·(!sliderInput)·{\n········return;\n······}\n······this._ripple.radius·=·24;\n······this._sliderInput·=·sliderInput;\n······this._sliderInputEl·=·this._sliderInput._hostElement;\n······//·These·listeners·don't·update·any·data·bindings·so·we·bind·them·outside\n······//·of·the·NgZone·to·prevent·Angular·from·needlessly·running·change·detection.\n······this._ngZone.runOutsideAngular(()·=>·{\n········const·input·=·this._sliderInputEl;\n········const·renderer·=·this._renderer;\n········this._listenerCleanups·=·[renderer.listen(input,·'pointermove',·this._onPointerMove),·renderer.listen(input,·'pointerdown',·this._onDragStart),·renderer.listen(input,·'pointerup',·this._onDragEnd),·renderer.listen(input,·'pointerleave',·this._onMouseLeave),·renderer.listen(input,·'focus',·this._onFocus),·renderer.listen(input,·'blur',·this._onBlur)];\n······});\n····}\n····ngOnDestroy()·{\n······this._listenerCleanups?.forEach(cleanup·=>·cleanup());\n····}\n····_onPointerMove·=·event·=>·{\n······if·(this._sliderInput._isFocused)·{\n········return;\n······}\n······const·rect·=·this._hostElement.getBoundingClientRect();\n······const·isHovered·=·this._slider._isCursorOnSliderThumb(event,·rect);\n······this._isHovered·=·isHovered;\n······if·(isHovered)·{\n········this._showHoverRipple();\n······}·else·{\n········this._hideRipple(this._hoverRippleRef);\n······}\n····};\n····_onMouseLeave·=·()·=>·{\n······this._isHovered·=·false;\n······this._hideRipple(this._hoverRippleRef);\n····};\n····_onFocus·=·()·=>·{\n······//·We·don't·want·to·show·the·hover·ripple·on·top·of·the·focus·ripple.\n······//·Happen·when·the·users·cursor·is·over·a·thumb·and·then·the·user·tabs·to·it.\n······this._hideRipple(this._hoverRippleRef);\n······this._showFocusRipple();\n······this._hostElement.classList.add('mdc-slider__thumb--focused');\n····};\n····_onBlur·=·()·=>·{\n······//·Happens·when·the·user·tabs·away·while·still·dragging·a·thumb.\n······if·(!this._isActive)·{\n········this._hideRipple(this._focusRippleRef);\n······}\n······//·Happens·when·the·user·tabs·away·from·a·thumb·but·their·cursor·is·still·over·it.\n······if·(this._isHovered)·{\n········this._showHoverRipple();\n······}\n······this._hostElement.classList.remove('mdc-slider__thumb--focused');\n····};\n····_onDragStart·=·event·=>·{\n······if·(event.button·!==·0)·{\n········return;\n······}\n······this._isActive·=·true;\n······this._showActiveRipple();\n····};\n····_onDragEnd·=·()·=>·{\n······this._isActive·=·false;\n······this._hideRipple(this._activeRippleRef);\n······//·Happens·when·the·user·starts·dragging·a·thumb,·tabs·away,·and·then·stops·dragging.\n······if·(!this._sliderInput._isFocused)·{\n········this._hideRipple(this._focusRippleRef);\n······}\n······//·On·Safari·we·need·to·immediately·re-show·the·hover·ripple·because\n······//·sliders·do·not·retain·focus·from·pointer·events·on·that·platform.\n······if·(this._platform.SAFARI)·{\n········this._showHoverRipple();\n······}\n····};\n····/**·Handles·displaying·the·hover·ripple.·*/\n····_showHoverRipple()·{\n······if·(!this._isShowingRipple(this._hoverRippleRef))·{\n········this._hoverRippleRef·=·this._showRipple({\n··········enterDuration:·0,\n··········exitDuration:·0\n········});\n········this._hoverRippleRef?.element.classList.add('mat-mdc-slider-hover-ripple');\n······}\n····}\n····/**·Handles·displaying·the·focus·ripple.·*/\n····_showFocusRipple()·{\n······//·Show·the·focus·ripple·event·if·noop·animations·are·enabled.\n······if·(!this._isShowingRipple(this._focusRippleRef))·{\n········this._focusRippleRef·=·this._showRipple({\n··········enterDuration:·0,\n··········exitDuration:·0\n········},·true);\n········this._focusRippleRef?.element.classList.add('mat-mdc-slider-focus-ripple');\n······}\n····}\n····/**·Handles·displaying·the·active·ripple.·*/\n····_showActiveRipple()·{\n······if·(!this._isShowingRipple(this._activeRippleRef))·{\n········this._activeRippleRef·=·this._showRipple({\n··········enterDuration:·225,\n··········exitDuration:·400\n········});\n········this._activeRippleRef?.element.classList.add('mat-mdc-slider-active-ripple');\n······}\n····}\n····/**·Whether·the·given·rippleRef·is·currently·fading·in·or·visible.·*/\n····_isShowingRipple(rippleRef)·{\n······return·rippleRef?.state·===·RippleState.FADING_IN·||·rippleRef?.state·===·RippleState.VISIBLE;\n····}\n····/**·Manually·launches·the·slider·thumb·ripple·using·the·specified·ripple·animation·config.·*/\n····_showRipple(animation,·ignoreGlobalRippleConfig)·{\n······if·(this._slider.disabled)·{\n········return;\n······}\n······this._showValueIndicator();\n······if·(this._slider._isRange)·{\n········const·sibling·=·this._slider._getThumb(this.thumbPosition·===·_MatThumb.START·?·_MatThumb.END·:·_MatThumb.START);\n········sibling._showValueIndicator();\n······}\n······if·(this._slider._globalRippleOptions?.disabled·&&·!ignoreGlobalRippleConfig)·{\n········return;\n······}\n······return·this._ripple.launch({\n········animation:·this._slider._noopAnimations·?·{\n··········enterDuration:·0,\n··········exitDuration:·0\n········}·:·animation,\n········centered:·true,\n········persistent:·true\n······});\n····}\n····/**\n·····*·Fades·out·the·given·ripple.\n·····*·Also·hides·the·value·indicator·if·no·ripple·is·showing.\n·····*/\n····_hideRipple(rippleRef)·{\n······rippleRef?.fadeOut();\n······if·(this._isShowingAnyRipple())·{\n········return;\n······}\n······if·(!this._slider._isRange)·{\n········this._hideValueIndicator();\n······}\n······const·sibling·=·this._getSibling();\n······if·(!sibling._isShowingAnyRipple())·{\n········this._hideValueIndicator();\n········sibling._hideValueIndicator();\n······}\n····}\n····/**·Shows·the·value·indicator·ui.·*/\n····_showValueIndicator()·{\n······this._hostElement.classList.add('mdc-slider__thumb--with-indicator');\n····}\n····/**·Hides·the·value·indicator·ui.·*/\n····_hideValueIndicator()·{\n······this._hostElement.classList.remove('mdc-slider__thumb--with-indicator');\n····}\n····_getSibling()·{\n······return·this._slider._getThumb(this.thumbPosition·===·_MatThumb.START·?·_MatThumb.END·:·_MatThumb.START);\n····}\n····/**·Gets·the·value·indicator·container's·native·HTML·element.·*/\n····_getValueIndicatorContainer()·{\n······return·this._valueIndicatorContainer?.nativeElement;\n····}\n····/**·Gets·the·native·HTML·element·of·the·slider·thumb·knob.·*/\n····_getKnob()·{\n······return·this._knob.nativeElement;\n····}\n····_isShowingAnyRipple()·{\n······return·this._isShowingRipple(this._hoverRippleRef)·||·this._isShowingRipple(this._focusRippleRef)·||·this._isShowingRipple(this._activeRippleRef);\n····}\n····static·\u0275fac·=·function·MatSliderVisualThumb_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderVisualThumb)();\n····};\n····static·\u0275cmp·=·/*·@__PURE__·*/i0.\u0275\u0275defineComponent({\n······type:·MatSliderVisualThumb,\n······selectors:·[[\"mat-slider-visual-thumb\"]],\n······viewQuery:·function·MatSliderVisualThumb_Query(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275viewQuery(MatRipple,·5);\n··········i0.\u0275\u0275viewQuery(_c0,·5);\n··········i0.\u0275\u0275viewQuery(_c1,·5);\n········}\n········if·(rf·&·2)·{\n··········let·_t;\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._ripple·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._knob·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._valueIndicatorContainer·=·_t.first);\n········}\n······},\n······hostAttrs:·[1,·\"mdc-slider__thumb\",·\"mat-mdc-slider-visual-thumb\"],\n······inputs:·{\n········discrete:·\"discrete\",\n········thumbPosition:·\"thumbPosition\",\n········valueIndicatorText:·\"valueIndicatorText\"\n······},\n······features:·[i0.\u0275\u0275ProvidersFeature([{\n········provide:·MAT_SLIDER_VISUAL_THUMB,\n········useExisting:·MatSliderVisualThumb\n······}])],\n······decls:·4,\n······vars:·2,\n······consts:·[[\"knob\",·\"\"],·[\"valueIndicatorContainer\",·\"\"],·[1,·\"mdc-slider__value-indicator-container\"],·[1,·\"mdc-slider__thumb-knob\"],·[\"matRipple\",·\"\",·1,·\"mat-focus-indicator\",·3,·\"matRippleDisabled\"],·[1,·\"mdc-slider__value-indicator\"],·[1,·\"mdc-slider__value-indicator-text\"]],\n······template:·function·MatSliderVisualThumb_Template(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275conditionalCreate(0,·MatSliderVisualThumb_Conditional_0_Template,·5,·1,·\"div\",·2);\n··········i0.\u0275\u0275element(1,·\"div\",·3,·0)(3,·\"div\",·4);\n········}\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275conditional(ctx.discrete·?·0·:·-1);\n··········i0.\u0275\u0275advance(3);\n··········i0.\u0275\u0275property(\"matRippleDisabled\",·true);\n········}\n······},\n······dependencies:·[MatRipple],\n······styles:·[\".mat-mdc-slider-visual-thumb·.mat-ripple{height:100%;width:100%}.mat-mdc-slider·.mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider·.mdc-slider__tick-marks·.mdc-slider__tick-mark--active,.mat-mdc-slider·.mdc-slider__tick-marks·.mdc-slider__tick-mark--inactive{position:absolute;left:2px}\\n\"],\n······encapsulation:·2,\n······changeDetection:·0\n····});\n··}\n··return·MatSliderVisualThumb;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n\n//·TODO(wagnermaciel):·maybe·handle·the·following·edge·case:\n//·1.·start·dragging·discrete·slider\n//·2.·tab·to·disable·checkbox\n//·3.·without·ending·drag,·disable·the·slider\n/**\n·*·Allows·users·to·select·from·a·range·of·values·by·moving·the·slider·thumb.·It·is·similar·in\n·*·behavior·to·the·native·`<input·type=\"range\">`·element.\n·*/\nlet·MatSlider·=·/*#__PURE__*/(()·=>·{\n··class·MatSlider·{\n····_ngZone·=·inject(NgZone);\n····_cdr·=·inject(ChangeDetectorRef);\n····_elementRef·=·inject(ElementRef);\n····_dir·=·inject(Directionality,·{\n······optional:·true\n····});\n····_globalRippleOptions·=·inject(MAT_RIPPLE_GLOBAL_OPTIONS,·{\n······optional:·true\n····});\n····/**·The·active·portion·of·the·slider·track.·*/\n····_trackActive;\n····/**·The·slider·thumb(s).·*/\n····_thumbs;\n····/**·The·sliders·hidden·range·input(s).·*/\n····_input;\n····/**·The·sliders·hidden·range·input(s).·*/\n····_inputs;\n····/**·Whether·the·slider·is·disabled.·*/\n····get·disabled()·{\n······return·this._disabled;\n····}\n····set·disabled(v)·{\n······this._disabled·=·v;\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······if·(endInput)·{\n········endInput.disabled·=·this._disabled;\n······}\n······if·(startInput)·{\n········startInput.disabled·=·this._disabled;\n······}\n····}\n····_disabled·=·false;\n····/**·Whether·the·slider·displays·a·numeric·value·label·upon·pressing·the·thumb.·*/\n····get·discrete()·{\n······return·this._discrete;\n····}\n····set·discrete(v)·{\n······this._discrete·=·v;\n······this._updateValueIndicatorUIs();\n····}\n····_discrete·=·false;\n····/**·Whether·the·slider·displays·tick·marks·along·the·slider·track.·*/\n····get·showTickMarks()·{\n······return·this._showTickMarks;\n····}\n····set·showTickMarks(value)·{\n······this._showTickMarks·=·value;\n······if·(this._hasViewInitialized)·{\n········this._updateTickMarkUI();\n········this._updateTickMarkTrackUI();\n······}\n····}\n····_showTickMarks·=·false;\n····/**·The·minimum·value·that·the·slider·can·have.·*/\n····get·min()·{\n······return·this._min;\n····}\n····set·min(v)·{\n······const·min·=·v·===·undefined·||·v·===·null·||·isNaN(v)·?·this._min·:·v;\n······if·(this._min·!==·min)·{\n········this._updateMin(min);\n······}\n····}\n····_min·=·0;\n····/**\n·····*·Theme·color·of·the·slider.·This·API·is·supported·in·M2·themes·only,·it\n·····*·has·no·effect·in·M3·themes.·For·color·customization·in·M3,·see·https://material.angular.dev/components/slider/styling.\n·····*\n·····*·For·information·on·applying·color·variants·in·M3,·see\n·····*·https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n·····*/\n····color;\n····/**·Whether·ripples·are·disabled·in·the·slider.·*/\n····disableRipple·=·false;\n····_updateMin(min)·{\n······const·prevMin·=·this._min;\n······this._min·=·min;\n······this._isRange·?·this._updateMinRange({\n········old:·prevMin,\n········new:·min\n······})·:·this._updateMinNonRange(min);\n······this._onMinMaxOrStepChange();\n····}\n····_updateMinRange(min)·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·oldEndValue·=·endInput.value;\n······const·oldStartValue·=·startInput.value;\n······startInput.min·=·min.new;\n······endInput.min·=·Math.max(min.new,·startInput.value);\n······startInput.max·=·Math.min(endInput.max,·endInput.value);\n······startInput._updateWidthInactive();\n······endInput._updateWidthInactive();\n······min.new·<·min.old·?·this._onTranslateXChangeBySideEffect(endInput,·startInput)·:·this._onTranslateXChangeBySideEffect(startInput,·endInput);\n······if·(oldEndValue·!==·endInput.value)·{\n········this._onValueChange(endInput);\n······}\n······if·(oldStartValue·!==·startInput.value)·{\n········this._onValueChange(startInput);\n······}\n····}\n····_updateMinNonRange(min)·{\n······const·input·=·this._getInput(_MatThumb.END);\n······if·(input)·{\n········const·oldValue·=·input.value;\n········input.min·=·min;\n········input._updateThumbUIByValue();\n········this._updateTrackUI(input);\n········if·(oldValue·!==·input.value)·{\n··········this._onValueChange(input);\n········}\n······}\n····}\n····/**·The·maximum·value·that·the·slider·can·have.·*/\n····get·max()·{\n······return·this._max;\n····}\n····set·max(v)·{\n······const·max·=·v·===·undefined·||·v·===·null·||·isNaN(v)·?·this._max·:·v;\n······if·(this._max·!==·max)·{\n········this._updateMax(max);\n······}\n····}\n····_max·=·100;\n····_updateMax(max)·{\n······const·prevMax·=·this._max;\n······this._max·=·max;\n······this._isRange·?·this._updateMaxRange({\n········old:·prevMax,\n········new:·max\n······})·:·this._updateMaxNonRange(max);\n······this._onMinMaxOrStepChange();\n····}\n····_updateMaxRange(max)·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·oldEndValue·=·endInput.value;\n······const·oldStartValue·=·startInput.value;\n······endInput.max·=·max.new;\n······startInput.max·=·Math.min(max.new,·endInput.value);\n······endInput.min·=·startInput.value;\n······endInput._updateWidthInactive();\n······startInput._updateWidthInactive();\n······max.new·>·max.old·?·this._onTranslateXChangeBySideEffect(startInput,·endInput)·:·this._onTranslateXChangeBySideEffect(endInput,·startInput);\n······if·(oldEndValue·!==·endInput.value)·{\n········this._onValueChange(endInput);\n······}\n······if·(oldStartValue·!==·startInput.value)·{\n········this._onValueChange(startInput);\n······}\n····}\n····_updateMaxNonRange(max)·{\n······const·input·=·this._getInput(_MatThumb.END);\n······if·(input)·{\n········const·oldValue·=·input.value;\n········input.max·=·max;\n········input._updateThumbUIByValue();\n········this._updateTrackUI(input);\n········if·(oldValue·!==·input.value)·{\n··········this._onValueChange(input);\n········}\n······}\n····}\n····/**·The·values·at·which·the·thumb·will·snap.·*/\n····get·step()·{\n······return·this._step;\n····}\n····set·step(v)·{\n······const·step·=·isNaN(v)·?·this._step·:·v;\n······if·(this._step·!==·step)·{\n········this._updateStep(step);\n······}\n····}\n····_step·=·1;\n····_updateStep(step)·{\n······this._step·=·step;\n······this._isRange·?·this._updateStepRange()·:·this._updateStepNonRange();\n······this._onMinMaxOrStepChange();\n····}\n····_updateStepRange()·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·oldEndValue·=·endInput.value;\n······const·oldStartValue·=·startInput.value;\n······const·prevStartValue·=·startInput.value;\n······endInput.min·=·this._min;\n······startInput.max·=·this._max;\n······endInput.step·=·this._step;\n······startInput.step·=·this._step;\n······if·(this._platform.SAFARI)·{\n········endInput.value·=·endInput.value;\n········startInput.value·=·startInput.value;\n······}\n······endInput.min·=·Math.max(this._min,·startInput.value);\n······startInput.max·=·Math.min(this._max,·endInput.value);\n······startInput._updateWidthInactive();\n······endInput._updateWidthInactive();\n······endInput.value·<·prevStartValue·?·this._onTranslateXChangeBySideEffect(startInput,·endInput)·:·this._onTranslateXChangeBySideEffect(endInput,·startInput);\n······if·(oldEndValue·!==·endInput.value)·{\n········this._onValueChange(endInput);\n······}\n······if·(oldStartValue·!==·startInput.value)·{\n········this._onValueChange(startInput);\n······}\n····}\n····_updateStepNonRange()·{\n······const·input·=·this._getInput(_MatThumb.END);\n······if·(input)·{\n········const·oldValue·=·input.value;\n········input.step·=·this._step;\n········if·(this._platform.SAFARI)·{\n··········input.value·=·input.value;\n········}\n········input._updateThumbUIByValue();\n········if·(oldValue·!==·input.value)·{\n··········this._onValueChange(input);\n········}\n······}\n····}\n····/**\n·····*·Function·that·will·be·used·to·format·the·value·before·it·is·displayed\n·····*·in·the·thumb·label.·Can·be·used·to·format·very·large·number·in·order\n·····*·for·them·to·fit·into·the·slider·thumb.\n·····*/\n····displayWith·=·value·=>·`${value}`;\n····/**·Used·to·keep·track·of·&·render·the·active·&·inactive·tick·marks·on·the·slider·track.·*/\n····_tickMarks;\n····/**·Whether·animations·have·been·disabled.·*/\n····_noopAnimations·=·_animationsDisabled();\n····/**·Subscription·to·changes·to·the·directionality·(LTR·/·RTL)·context·for·the·application.·*/\n····_dirChangeSubscription;\n····/**·Observer·used·to·monitor·size·changes·in·the·slider.·*/\n····_resizeObserver;\n····//·Stored·dimensions·to·avoid·calling·getBoundingClientRect·redundantly.\n····_cachedWidth;\n····_cachedLeft;\n····_rippleRadius·=·24;\n····//·The·value·indicator·tooltip·text·for·the·visual·slider·thumb(s).\n····/**·@docs-private·*/\n····startValueIndicatorText·=·'';\n····/**·@docs-private·*/\n····endValueIndicatorText·=·'';\n····//·Used·to·control·the·translateX·of·the·visual·slider·thumb(s).\n····_endThumbTransform;\n····_startThumbTransform;\n····_isRange·=·false;\n····/**·Whether·the·slider·is·rtl.·*/\n····_isRtl·=·false;\n····_hasViewInitialized·=·false;\n····/**\n·····*·The·width·of·the·tick·mark·track.\n·····*·The·tick·mark·track·width·is·different·from·full·track·width\n·····*/\n····_tickMarkTrackWidth·=·0;\n····_hasAnimation·=·false;\n····_resizeTimer·=·null;\n····_platform·=·inject(Platform);\n····constructor()·{\n······inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);\n······if·(this._dir)·{\n········this._dirChangeSubscription·=·this._dir.change.subscribe(()·=>·this._onDirChange());\n········this._isRtl·=·this._dir.value·===·'rtl';\n······}\n····}\n····/**·The·radius·of·the·native·slider's·knob.·AFAIK·there·is·no·way·to·avoid·hardcoding·this.·*/\n····_knobRadius·=·8;\n····_inputPadding;\n····ngAfterViewInit()·{\n······if·(this._platform.isBrowser)·{\n········this._updateDimensions();\n······}\n······const·eInput·=·this._getInput(_MatThumb.END);\n······const·sInput·=·this._getInput(_MatThumb.START);\n······this._isRange·=·!!eInput·&&·!!sInput;\n······this._cdr.detectChanges();\n······if·(typeof·ngDevMode·===·'undefined'·||·ngDevMode)·{\n········_validateInputs(this._isRange,·this._getInput(_MatThumb.END),·this._getInput(_MatThumb.START));\n······}\n······const·thumb·=·this._getThumb(_MatThumb.END);\n······this._rippleRadius·=·thumb._ripple.radius;\n······this._inputPadding·=·this._rippleRadius·-·this._knobRadius;\n······this._isRange·?·this._initUIRange(eInput,·sInput)·:·this._initUINonRange(eInput);\n······this._updateTrackUI(eInput);\n······this._updateTickMarkUI();\n······this._updateTickMarkTrackUI();\n······this._observeHostResize();\n······this._cdr.detectChanges();\n····}\n····_initUINonRange(eInput)·{\n······eInput.initProps();\n······eInput.initUI();\n······this._updateValueIndicatorUI(eInput);\n······this._hasViewInitialized·=·true;\n······eInput._updateThumbUIByValue();\n····}\n····_initUIRange(eInput,·sInput)·{\n······eInput.initProps();\n······eInput.initUI();\n······sInput.initProps();\n······sInput.initUI();\n······eInput._updateMinMax();\n······sInput._updateMinMax();\n······eInput._updateStaticStyles();\n······sInput._updateStaticStyles();\n······this._updateValueIndicatorUIs();\n······this._hasViewInitialized·=·true;\n······eInput._updateThumbUIByValue();\n······sInput._updateThumbUIByValue();\n····}\n····ngOnDestroy()·{\n······this._dirChangeSubscription.unsubscribe();\n······this._resizeObserver?.disconnect();\n······this._resizeObserver·=·null;\n····}\n····/**·Handles·updating·the·slider·ui·after·a·dir·change.·*/\n····_onDirChange()·{\n······this._isRtl·=·this._dir?.value·===·'rtl';\n······this._isRange·?·this._onDirChangeRange()·:·this._onDirChangeNonRange();\n······this._updateTickMarkUI();\n····}\n····_onDirChangeRange()·{\n······const·endInput·=·this._getInput(_MatThumb.END);\n······const·startInput·=·this._getInput(_MatThumb.START);\n······endInput._setIsLeftThumb();\n······startInput._setIsLeftThumb();\n······endInput.translateX·=·endInput._calcTranslateXByValue();\n······startInput.translateX·=·startInput._calcTranslateXByValue();\n······endInput._updateStaticStyles();\n······startInput._updateStaticStyles();\n······endInput._updateWidthInactive();\n······startInput._updateWidthInactive();\n······endInput._updateThumbUIByValue();\n······startInput._updateThumbUIByValue();\n····}\n····_onDirChangeNonRange()·{\n······const·input·=·this._getInput(_MatThumb.END);\n······input._updateThumbUIByValue();\n····}\n····/**·Starts·observing·and·updating·the·slider·if·the·host·changes·its·size.·*/\n····_observeHostResize()·{\n······if·(typeof·ResizeObserver·===·'undefined'·||·!ResizeObserver)·{\n········return;\n······}\n······this._ngZone.runOutsideAngular(()·=>·{\n········this._resizeObserver·=·new·ResizeObserver(()·=>·{\n··········if·(this._isActive())·{\n············return;\n··········}\n··········if·(this._resizeTimer)·{\n············clearTimeout(this._resizeTimer);\n··········}\n··········this._onResize();\n········});\n········this._resizeObserver.observe(this._elementRef.nativeElement);\n······});\n····}\n····/**·Whether·any·of·the·thumbs·are·currently·active.·*/\n····_isActive()·{\n······return·this._getThumb(_MatThumb.START)._isActive·||·this._getThumb(_MatThumb.END)._isActive;\n····}\n····_getValue(thumbPosition·=·_MatThumb.END)·{\n······const·input·=·this._getInput(thumbPosition);\n······if·(!input)·{\n········return·this.min;\n······}\n······return·input.value;\n····}\n····_skipUpdate()·{\n······return·!!(this._getInput(_MatThumb.START)?._skipUIUpdate·||·this._getInput(_MatThumb.END)?._skipUIUpdate);\n····}\n····/**·Stores·the·slider·dimensions.·*/\n····_updateDimensions()·{\n······this._cachedWidth·=·this._elementRef.nativeElement.offsetWidth;\n······this._cachedLeft·=·this._elementRef.nativeElement.getBoundingClientRect().left;\n····}\n····/**·Sets·the·styles·for·the·active·portion·of·the·track.·*/\n····_setTrackActiveStyles(styles)·{\n······const·trackStyle·=·this._trackActive.nativeElement.style;\n······trackStyle.left·=·styles.left;\n······trackStyle.right·=·styles.right;\n······trackStyle.transformOrigin·=·styles.transformOrigin;\n······trackStyle.transform·=·styles.transform;\n····}\n····/**·Returns·the·translateX·positioning·for·a·tick·mark·based·on·it's·index.·*/\n····_calcTickMarkTransform(index)·{\n······//·TODO(wagnermaciel):·See·if·we·can·avoid·doing·this·and·just·using·flex·to·position·these.\n······const·offset·=·index·*·(this._tickMarkTrackWidth·/·(this._tickMarks.length·-·1));\n······const·translateX·=·this._isRtl·?·this._cachedWidth·-·6·-·offset·:·offset;\n······return·`translateX(${translateX}px`;\n····}\n····//·Handlers·for·updating·the·slider·ui.\n····_onTranslateXChange(source)·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateThumbUI(source);\n······this._updateTrackUI(source);\n······this._updateOverlappingThumbUI(source);\n····}\n····_onTranslateXChangeBySideEffect(input1,·input2)·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······input1._updateThumbUIByValue();\n······input2._updateThumbUIByValue();\n····}\n····_onValueChange(source)·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateValueIndicatorUI(source);\n······this._updateTickMarkUI();\n······this._cdr.detectChanges();\n····}\n····_onMinMaxOrStepChange()·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateTickMarkUI();\n······this._updateTickMarkTrackUI();\n······this._cdr.markForCheck();\n····}\n····_onResize()·{\n······if·(!this._hasViewInitialized)·{\n········return;\n······}\n······this._updateDimensions();\n······if·(this._isRange)·{\n········const·eInput·=·this._getInput(_MatThumb.END);\n········const·sInput·=·this._getInput(_MatThumb.START);\n········eInput._updateThumbUIByValue();\n········sInput._updateThumbUIByValue();\n········eInput._updateStaticStyles();\n········sInput._updateStaticStyles();\n········eInput._updateMinMax();\n········sInput._updateMinMax();\n········eInput._updateWidthInactive();\n········sInput._updateWidthInactive();\n······}·else·{\n········const·eInput·=·this._getInput(_MatThumb.END);\n········if·(eInput)·{\n··········eInput._updateThumbUIByValue();\n········}\n······}\n······this._updateTickMarkUI();\n······this._updateTickMarkTrackUI();\n······this._cdr.detectChanges();\n····}\n····/**·Whether·or·not·the·slider·thumbs·overlap.·*/\n····_thumbsOverlap·=·false;\n····/**·Returns·true·if·the·slider·knobs·are·overlapping·one·another.·*/\n····_areThumbsOverlapping()·{\n······const·startInput·=·this._getInput(_MatThumb.START);\n······const·endInput·=·this._getInput(_MatThumb.END);\n······if·(!startInput·||·!endInput)·{\n········return·false;\n······}\n······return·endInput.translateX·-·startInput.translateX·<·20;\n····}\n····/**\n·····*·Updates·the·class·names·of·overlapping·slider·thumbs·so\n·····*·that·the·current·active·thumb·is·styled·to·be·on·\"top\".\n·····*/\n····_updateOverlappingThumbClassNames(source)·{\n······const·sibling·=·source.getSibling();\n······const·sourceThumb·=·this._getThumb(source.thumbPosition);\n······const·siblingThumb·=·this._getThumb(sibling.thumbPosition);\n······siblingThumb._hostElement.classList.remove('mdc-slider__thumb--top');\n······sourceThumb._hostElement.classList.toggle('mdc-slider__thumb--top',·this._thumbsOverlap);\n····}\n····/**·Updates·the·UI·of·slider·thumbs·when·they·begin·or·stop·overlapping.·*/\n····_updateOverlappingThumbUI(source)·{\n······if·(!this._isRange·||·this._skipUpdate())·{\n········return;\n······}\n······if·(this._thumbsOverlap·!==·this._areThumbsOverlapping())·{\n········this._thumbsOverlap·=·!this._thumbsOverlap;\n········this._updateOverlappingThumbClassNames(source);\n······}\n····}\n····//·_MatThumb·styles·update·conditions\n····//\n····//·1.·TranslateX,·resize,·or·dir·change\n····//····-·Reason:·The·thumb·styles·need·to·be·updated·according·to·the·new·translateX.\n····//·2.·Min,·max,·or·step\n····//····-·Reason:·The·value·may·have·silently·changed.\n····/**·Updates·the·translateX·of·the·given·thumb.·*/\n····_updateThumbUI(source)·{\n······if·(this._skipUpdate())·{\n········return;\n······}\n······const·thumb·=·this._getThumb(source.thumbPosition·===·_MatThumb.END·?·_MatThumb.END·:·_MatThumb.START);\n······thumb._hostElement.style.transform·=·`translateX(${source.translateX}px)`;\n····}\n····//·Value·indicator·text·update·conditions\n····//\n····//·1.·Value\n····//····-·Reason:·The·value·displayed·needs·to·be·updated.\n····//·2.·Min,·max,·or·step\n····//····-·Reason:·The·value·may·have·silently·changed.\n····/**·Updates·the·value·indicator·tooltip·ui·for·the·given·thumb.·*/\n····_updateValueIndicatorUI(source)·{\n······if·(this._skipUpdate())·{\n········return;\n······}\n······const·valuetext·=·this.displayWith(source.value);\n······this._hasViewInitialized·?·source._valuetext.set(valuetext)·:·source._hostElement.setAttribute('aria-valuetext',·valuetext);\n······if·(this.discrete)·{\n········source.thumbPosition·===·_MatThumb.START·?·this.startValueIndicatorText·=·valuetext·:·this.endValueIndicatorText·=·valuetext;\n········const·visualThumb·=·this._getThumb(source.thumbPosition);\n········valuetext.length·<·3·?·visualThumb._hostElement.classList.add('mdc-slider__thumb--short-value')·:·visualThumb._hostElement.classList.remove('mdc-slider__thumb--short-value');\n······}\n····}\n····/**·Updates·all·value·indicator·UIs·in·the·slider.·*/\n····_updateValueIndicatorUIs()·{\n······const·eInput·=·this._getInput(_MatThumb.END);\n······const·sInput·=·this._getInput(_MatThumb.START);\n······if·(eInput)·{\n········this._updateValueIndicatorUI(eInput);\n······}\n······if·(sInput)·{\n········this._updateValueIndicatorUI(sInput);\n······}\n····}\n····//·Update·Tick·Mark·Track·Width\n····//\n····//·1.·Min,·max,·or·step\n····//····-·Reason:·The·maximum·reachable·value·may·have·changed.\n····//····-·Side·note:·The·maximum·reachable·value·is·different·from·the·maximum·value·set·by·the\n····//······user.·For·example,·a·slider·with·[min:·5,·max:·100,·step:·10]·would·have·a·maximum\n····//······reachable·value·of·95.\n····//·2.·Resize\n····//····-·Reason:·The·position·for·the·maximum·reachable·value·needs·to·be·recalculated.\n····/**·Updates·the·width·of·the·tick·mark·track.·*/\n····_updateTickMarkTrackUI()·{\n······if·(!this.showTickMarks·||·this._skipUpdate())·{\n········return;\n······}\n······const·step·=·this._step·&&·this._step·>·0·?·this._step·:·1;\n······const·maxValue·=·Math.floor(this.max·/·step)·*·step;\n······const·percentage·=·(maxValue·-·this.min)·/·(this.max·-·this.min);\n······this._tickMarkTrackWidth·=·(this._cachedWidth·-·6)·*·percentage;\n····}\n····//·Track·active·update·conditions\n····//\n····//·1.·TranslateX\n····//····-·Reason:·The·track·active·should·line·up·with·the·new·thumb·position.\n····//·2.·Min·or·max\n····//····-·Reason·#1:·The·'active'·percentage·needs·to·be·recalculated.\n····//····-·Reason·#2:·The·value·may·have·silently·changed.\n····//·3.·Step\n····//····-·Reason:·The·value·may·have·silently·changed·causing·the·thumb(s)·to·shift.\n····//·4.·Dir·change\n····//····-·Reason:·The·track·active·will·need·to·be·updated·according·to·the·new·thumb·position(s).\n····//·5.·Resize\n····//····-·Reason:·The·total·width·the·'active'·tracks·translateX·is·based·on·has·changed.\n····/**·Updates·the·scale·on·the·active·portion·of·the·track.·*/\n····_updateTrackUI(source)·{\n······if·(this._skipUpdate())·{\n········return;\n······}\n······this._isRange·?·this._updateTrackUIRange(source)·:·this._updateTrackUINonRange(source);\n····}\n····_updateTrackUIRange(source)·{\n······const·sibling·=·source.getSibling();\n······if·(!sibling·||·!this._cachedWidth)·{\n········return;\n······}\n······const·activePercentage·=·Math.abs(sibling.translateX·-·source.translateX)·/·this._cachedWidth;\n······if·(source._isLeftThumb·&&·this._cachedWidth)·{\n········this._setTrackActiveStyles({\n··········left:·'auto',\n··········right:·`${this._cachedWidth·-·sibling.translateX}px`,\n··········transformOrigin:·'right',\n··········transform:·`scaleX(${activePercentage})`\n········});\n······}·else·{\n········this._setTrackActiveStyles({\n··········left:·`${sibling.translateX}px`,\n··········right:·'auto',\n··········transformOrigin:·'left',\n··········transform:·`scaleX(${activePercentage})`\n········});\n······}\n····}\n····_updateTrackUINonRange(source)·{\n······this._isRtl·?·this._setTrackActiveStyles({\n········left:·'auto',\n········right:·'0px',\n········transformOrigin:·'right',\n········transform:·`scaleX(${1·-·source.fillPercentage})`\n······})·:·this._setTrackActiveStyles({\n········left:·'0px',\n········right:·'auto',\n········transformOrigin:·'left',\n········transform:·`scaleX(${source.fillPercentage})`\n······});\n····}\n····//·Tick·mark·update·conditions\n····//\n····//·1.·Value\n····//····-·Reason:·a·tick·mark·which·was·once·active·might·now·be·inactive·or·vice·versa.\n····//·2.·Min,·max,·or·step\n····//····-·Reason·#1:·the·number·of·tick·marks·may·have·changed.\n····//····-·Reason·#2:·The·value·may·have·silently·changed.\n····/**·Updates·the·dots·along·the·slider·track.·*/\n····_updateTickMarkUI()·{\n······if·(!this.showTickMarks·||·this.step·===·undefined·||·this.min·===·undefined·||·this.max·===·undefined)·{\n········return;\n······}\n······const·step·=·this.step·>·0·?·this.step·:·1;\n······this._isRange·?·this._updateTickMarkUIRange(step)·:·this._updateTickMarkUINonRange(step);\n····}\n····_updateTickMarkUINonRange(step)·{\n······const·value·=·this._getValue();\n······let·numActive·=·Math.max(Math.round((value·-·this.min)·/·step),·0)·+·1;\n······let·numInactive·=·Math.max(Math.round((this.max·-·value)·/·step),·0)·-·1;\n······this._isRtl·?·numActive++·:·numInactive++;\n······this._tickMarks·=·Array(numActive).fill(_MatTickMark.ACTIVE).concat(Array(numInactive).fill(_MatTickMark.INACTIVE));\n····}\n····_updateTickMarkUIRange(step)·{\n······const·endValue·=·this._getValue();\n······const·startValue·=·this._getValue(_MatThumb.START);\n······const·numInactiveBeforeStartThumb·=·Math.max(Math.round((startValue·-·this.min)·/·step),·0);\n······const·numActive·=·Math.max(Math.round((endValue·-·startValue)·/·step)·+·1,·0);\n······const·numInactiveAfterEndThumb·=·Math.max(Math.round((this.max·-·endValue)·/·step),·0);\n······this._tickMarks·=·Array(numInactiveBeforeStartThumb).fill(_MatTickMark.INACTIVE).concat(Array(numActive).fill(_MatTickMark.ACTIVE),·Array(numInactiveAfterEndThumb).fill(_MatTickMark.INACTIVE));\n····}\n····/**·Gets·the·slider·thumb·input·of·the·given·thumb·position.·*/\n····_getInput(thumbPosition)·{\n······if·(thumbPosition·===·_MatThumb.END·&&·this._input)·{\n········return·this._input;\n······}\n······if·(this._inputs?.length)·{\n········return·thumbPosition·===·_MatThumb.START·?·this._inputs.first·:·this._inputs.last;\n······}\n······return;\n····}\n····/**·Gets·the·slider·thumb·HTML·input·element·of·the·given·thumb·position.·*/\n····_getThumb(thumbPosition)·{\n······return·thumbPosition·===·_MatThumb.END·?·this._thumbs?.last·:·this._thumbs?.first;\n····}\n····_setTransition(withAnimation)·{\n······this._hasAnimation·=·!this._platform.IOS·&&·withAnimation·&&·!this._noopAnimations;\n······this._elementRef.nativeElement.classList.toggle('mat-mdc-slider-with-animation',·this._hasAnimation);\n····}\n····/**·Whether·the·given·pointer·event·occurred·within·the·bounds·of·the·slider·pointer's·DOM·Rect.·*/\n····_isCursorOnSliderThumb(event,·rect)·{\n······const·radius·=·rect.width·/·2;\n······const·centerX·=·rect.x·+·radius;\n······const·centerY·=·rect.y·+·radius;\n······const·dx·=·event.clientX·-·centerX;\n······const·dy·=·event.clientY·-·centerY;\n······return·Math.pow(dx,·2)·+·Math.pow(dy,·2)·<·Math.pow(radius,·2);\n····}\n····static·\u0275fac·=·function·MatSlider_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSlider)();\n····};\n····static·\u0275cmp·=·/*·@__PURE__·*/i0.\u0275\u0275defineComponent({\n······type:·MatSlider,\n······selectors:·[[\"mat-slider\"]],\n······contentQueries:·function·MatSlider_ContentQueries(rf,·ctx,·dirIndex)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275contentQuery(dirIndex,·MAT_SLIDER_THUMB,·5);\n··········i0.\u0275\u0275contentQuery(dirIndex,·MAT_SLIDER_RANGE_THUMB,·4);\n········}\n········if·(rf·&·2)·{\n··········let·_t;\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._input·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._inputs·=·_t);\n········}\n······},\n······viewQuery:·function·MatSlider_Query(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275viewQuery(_c2,·5);\n··········i0.\u0275\u0275viewQuery(MAT_SLIDER_VISUAL_THUMB,·5);\n········}\n········if·(rf·&·2)·{\n··········let·_t;\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._trackActive·=·_t.first);\n··········i0.\u0275\u0275queryRefresh(_t·=·i0.\u0275\u0275loadQuery())·&&·(ctx._thumbs·=·_t);\n········}\n······},\n······hostAttrs:·[1,·\"mat-mdc-slider\",·\"mdc-slider\"],\n······hostVars:·12,\n······hostBindings:·function·MatSlider_HostBindings(rf,·ctx)·{\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275classMap(\"mat-\"·+·(ctx.color·||·\"primary\"));\n··········i0.\u0275\u0275classProp(\"mdc-slider--range\",·ctx._isRange)(\"mdc-slider--disabled\",·ctx.disabled)(\"mdc-slider--discrete\",·ctx.discrete)(\"mdc-slider--tick-marks\",·ctx.showTickMarks)(\"_mat-animation-noopable\",·ctx._noopAnimations);\n········}\n······},\n······inputs:·{\n········disabled:·[2,·\"disabled\",·\"disabled\",·booleanAttribute],\n········discrete:·[2,·\"discrete\",·\"discrete\",·booleanAttribute],\n········showTickMarks:·[2,·\"showTickMarks\",·\"showTickMarks\",·booleanAttribute],\n········min:·[2,·\"min\",·\"min\",·numberAttribute],\n········color:·\"color\",\n········disableRipple:·[2,·\"disableRipple\",·\"disableRipple\",·booleanAttribute],\n········max:·[2,·\"max\",·\"max\",·numberAttribute],\n········step:·[2,·\"step\",·\"step\",·numberAttribute],\n········displayWith:·\"displayWith\"\n······},\n······exportAs:·[\"matSlider\"],\n······features:·[i0.\u0275\u0275ProvidersFeature([{\n········provide:·MAT_SLIDER,\n········useExisting:·MatSlider\n······}])],\n······ngContentSelectors:·_c3,\n······decls:·9,\n······vars:·5,\n······consts:·[[\"trackActive\",·\"\"],·[\"tickMarkContainer\",·\"\"],·[1,·\"mdc-slider__track\"],·[1,·\"mdc-slider__track--inactive\"],·[1,·\"mdc-slider__track--active\"],·[1,·\"mdc-slider__track--active_fill\"],·[1,·\"mdc-slider__tick-marks\"],·[3,·\"discrete\",·\"thumbPosition\",·\"valueIndicatorText\"],·[3,·\"class\",·\"transform\"]],\n······template:·function·MatSlider_Template(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275projectionDef();\n··········i0.\u0275\u0275projection(0);\n··········i0.\u0275\u0275elementStart(1,·\"div\",·2);\n··········i0.\u0275\u0275element(2,·\"div\",·3);\n··········i0.\u0275\u0275elementStart(3,·\"div\",·4);\n··········i0.\u0275\u0275element(4,·\"div\",·5,·0);\n··········i0.\u0275\u0275elementEnd();\n··········i0.\u0275\u0275conditionalCreate(6,·MatSlider_Conditional_6_Template,·3,·1,·\"div\",·6);\n··········i0.\u0275\u0275elementEnd();\n··········i0.\u0275\u0275conditionalCreate(7,·MatSlider_Conditional_7_Template,·1,·3,·\"mat-slider-visual-thumb\",·7);\n··········i0.\u0275\u0275element(8,·\"mat-slider-visual-thumb\",·7);\n········}\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275advance(6);\n··········i0.\u0275\u0275conditional(ctx.showTickMarks·?·6·:·-1);\n··········i0.\u0275\u0275advance();\n··········i0.\u0275\u0275conditional(ctx._isRange·?·7·:·-1);\n··········i0.\u0275\u0275advance();\n··········i0.\u0275\u0275property(\"discrete\",·ctx.discrete)(\"thumbPosition\",·2)(\"valueIndicatorText\",·ctx.endValueIndicatorText);\n········}\n······},\n······dependencies:·[MatSliderVisualThumb],\n······styles:·[\".mdc-slider__track{position:absolute;top:50%;transform:translateY(-50%);width:100%;pointer-events:none;height:var(--mat-slider-inactive-track-height,·4px)}.mdc-slider__track--active,.mdc-slider__track--inactive{display:flex;height:100%;position:absolute;width:100%}.mdc-slider__track--active{overflow:hidden;border-radius:var(--mat-slider-active-track-shape,·var(--mat-sys-corner-full));height:var(--mat-slider-active-track-height,·4px);top:calc((var(--mat-slider-inactive-track-height,·4px)·-·var(--mat-slider-active-track-height,·4px))/2)}.mdc-slider__track--active_fill{border-top-style:solid;box-sizing:border-box;height:100%;width:100%;position:relative;transform-origin:left;transition:transform·80ms·ease;border-color:var(--mat-slider-active-track-color,·var(--mat-sys-primary));border-top-width:var(--mat-slider-active-track-height,·4px)}.mdc-slider--disabled·.mdc-slider__track--active_fill{border-color:var(--mat-slider-disabled-active-track-color,·var(--mat-sys-on-surface))}[dir=rtl]·.mdc-slider__track--active_fill{-webkit-transform-origin:right;transform-origin:right}.mdc-slider__track--inactive{left:0;top:0;opacity:.24;background-color:var(--mat-slider-inactive-track-color,·var(--mat-sys-surface-variant));height:var(--mat-slider-inactive-track-height,·4px);border-radius:var(--mat-slider-inactive-track-shape,·var(--mat-sys-corner-full))}.mdc-slider--disabled·.mdc-slider__track--inactive{background-color:var(--mat-slider-disabled-inactive-track-color,·var(--mat-sys-on-surface));opacity:.24}.mdc-slider__track--inactive::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px·solid·rgba(0,0,0,0);border-radius:inherit;content:\\\"\\\";pointer-events:none}@media(forced-colors:·active){.mdc-slider__track--inactive::before{border-color:CanvasText}}.mdc-slider__value-indicator-container{bottom:44px;left:50%;pointer-events:none;position:absolute;transform:var(--mat-slider-value-indicator-container-transform,·translateX(-50%)·rotate(-45deg))}.mdc-slider__thumb--with-indicator·.mdc-slider__value-indicator-container{pointer-events:auto}.mdc-slider__value-indicator{display:flex;align-items:center;transform:scale(0);transform-origin:bottom;transition:transform·100ms·cubic-bezier(0.4,·0,·1,·1);word-break:normal;background-color:var(--mat-slider-label-container-color,·var(--mat-sys-primary));color:var(--mat-slider-label-label-text-color,·var(--mat-sys-on-primary));width:var(--mat-slider-value-indicator-width,·28px);height:var(--mat-slider-value-indicator-height,·28px);padding:var(--mat-slider-value-indicator-padding,·0);opacity:var(--mat-slider-value-indicator-opacity,·1);border-radius:var(--mat-slider-value-indicator-border-radius,·50%·50%·50%·0)}.mdc-slider__thumb--with-indicator·.mdc-slider__value-indicator{transition:transform·100ms·cubic-bezier(0,·0,·0.2,·1);transform:scale(1)}.mdc-slider__value-indicator::before{border-left:6px·solid·rgba(0,0,0,0);border-right:6px·solid·rgba(0,0,0,0);border-top:6px·solid;bottom:-5px;content:\\\"\\\";height:0;left:50%;position:absolute;transform:translateX(-50%);width:0;display:var(--mat-slider-value-indicator-caret-display,·none);border-top-color:var(--mat-slider-label-container-color,·var(--mat-sys-primary))}.mdc-slider__value-indicator::after{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px·solid·rgba(0,0,0,0);border-radius:inherit;content:\\\"\\\";pointer-events:none}@media(forced-colors:·active){.mdc-slider__value-indicator::after{border-color:CanvasText}}.mdc-slider__value-indicator-text{text-align:center;width:var(--mat-slider-value-indicator-width,·28px);transform:var(--mat-slider-value-indicator-text-transform,·rotate(45deg));font-family:var(--mat-slider-label-label-text-font,·var(--mat-sys-label-medium-font));font-size:var(--mat-slider-label-label-text-size,·var(--mat-sys-label-medium-size));font-weight:var(--mat-slider-label-label-text-weight,·var(--mat-sys-label-medium-weight));line-height:var(--mat-slider-label-label-text-line-height,·var(--mat-sys-label-medium-line-height));letter-spacing:var(--mat-slider-label-label-text-tracking,·var(--mat-sys-label-medium-tracking))}.mdc-slider__thumb{-webkit-user-select:none;user-select:none;display:flex;left:-24px;outline:none;position:absolute;height:48px;width:48px;pointer-events:none}.mdc-slider--discrete·.mdc-slider__thumb{transition:transform·80ms·ease}.mdc-slider--disabled·.mdc-slider__thumb{pointer-events:none}.mdc-slider__thumb--top{z-index:1}.mdc-slider__thumb-knob{position:absolute;box-sizing:border-box;left:50%;top:50%;transform:translate(-50%,·-50%);border-style:solid;width:var(--mat-slider-handle-width,·20px);height:var(--mat-slider-handle-height,·20px);border-width:calc(var(--mat-slider-handle-height,·20px)/2)·calc(var(--mat-slider-handle-width,·20px)/2);box-shadow:var(--mat-slider-handle-elevation,·var(--mat-sys-level1));background-color:var(--mat-slider-handle-color,·var(--mat-sys-primary));border-color:var(--mat-slider-handle-color,·var(--mat-sys-primary));border-radius:var(--mat-slider-handle-shape,·var(--mat-sys-corner-full))}.mdc-slider__thumb:hover·.mdc-slider__thumb-knob{background-color:var(--mat-slider-hover-handle-color,·var(--mat-sys-primary));border-color:var(--mat-slider-hover-handle-color,·var(--mat-sys-primary))}.mdc-slider__thumb--focused·.mdc-slider__thumb-knob{background-color:var(--mat-slider-focus-handle-color,·var(--mat-sys-primary));border-color:var(--mat-slider-focus-handle-color,·var(--mat-sys-primary))}.mdc-slider--disabled·.mdc-slider__thumb-knob{background-color:var(--mat-slider-disabled-handle-color,·var(--mat-sys-on-surface));border-color:var(--mat-slider-disabled-handle-color,·var(--mat-sys-on-surface))}.mdc-slider__thumb--top·.mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb:hover·.mdc-slider__thumb-knob,.mdc-slider__thumb--top.mdc-slider__thumb--focused·.mdc-slider__thumb-knob{border:solid·1px·#fff;box-sizing:content-box;border-color:var(--mat-slider-with-overlap-handle-outline-color,·var(--mat-sys-on-primary));border-width:var(--mat-slider-with-overlap-handle-outline-width,·1px)}.mdc-slider__tick-marks{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:space-between;padding:0·1px;position:absolute;width:100%}.mdc-slider__tick-mark--active,.mdc-slider__tick-mark--inactive{width:var(--mat-slider-with-tick-marks-container-size,·2px);height:var(--mat-slider-with-tick-marks-container-size,·2px);border-radius:var(--mat-slider-with-tick-marks-container-shape,·var(--mat-sys-corner-full))}.mdc-slider__tick-mark--inactive{opacity:var(--mat-slider-with-tick-marks-inactive-container-opacity,·0.38);background-color:var(--mat-slider-with-tick-marks-inactive-container-color,·var(--mat-sys-on-surface-variant))}.mdc-slider--disabled·.mdc-slider__tick-mark--inactive{opacity:var(--mat-slider-with-tick-marks-inactive-container-opacity,·0.38);background-color:var(--mat-slider-with-tick-marks-disabled-container-color,·var(--mat-sys-on-surface))}.mdc-slider__tick-mark--active{opacity:var(--mat-slider-with-tick-marks-active-container-opacity,·0.38);background-color:var(--mat-slider-with-tick-marks-active-container-color,·var(--mat-sys-on-primary))}.mdc-slider__input{cursor:pointer;left:2px;margin:0;height:44px;opacity:0;position:absolute;top:2px;width:44px;box-sizing:content-box}.mdc-slider__input.mat-mdc-slider-input-no-pointer-events{pointer-events:none}.mdc-slider__input.mat-slider__right-input{left:auto;right:0}.mat-mdc-slider{display:inline-block;box-sizing:border-box;outline:none;vertical-align:middle;cursor:pointer;height:48px;margin:0·8px;position:relative;touch-action:pan-y;width:auto;min-width:112px;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-slider.mdc-slider--disabled{cursor:auto;opacity:.38}.mat-mdc-slider.mdc-slider--disabled·.mdc-slider__input{cursor:auto}.mat-mdc-slider·.mdc-slider__thumb,.mat-mdc-slider·.mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider.mdc-slider--discrete·.mdc-slider__thumb,.mat-mdc-slider.mdc-slider--discrete·.mdc-slider__track--active_fill{transition-duration:0ms}.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__thumb,.mat-mdc-slider.mat-mdc-slider-with-animation·.mdc-slider__track--active_fill{transition-duration:80ms}.mat-mdc-slider·.mat-ripple·.mat-ripple-element{background-color:var(--mat-slider-ripple-color,·var(--mat-sys-primary))}.mat-mdc-slider·.mat-ripple·.mat-mdc-slider-hover-ripple{background-color:var(--mat-slider-hover-state-layer-color,·color-mix(in·srgb,·var(--mat-sys-primary)·5%,·transparent))}.mat-mdc-slider·.mat-ripple·.mat-mdc-slider-focus-ripple,.mat-mdc-slider·.mat-ripple·.mat-mdc-slider-active-ripple{background-color:var(--mat-slider-focus-state-layer-color,·color-mix(in·srgb,·var(--mat-sys-primary)·20%,·transparent))}.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete·.mdc-slider__thumb,.mat-mdc-slider._mat-animation-noopable.mdc-slider--discrete·.mdc-slider__track--active_fill,.mat-mdc-slider._mat-animation-noopable·.mdc-slider__value-indicator{transition:none}.mat-mdc-slider·.mat-focus-indicator::before{border-radius:50%}.mdc-slider__thumb--focused·.mat-focus-indicator::before{content:\\\"\\\"}\\n\"],\n······encapsulation:·2,\n······changeDetection:·0\n····});\n··}\n··return·MatSlider;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n/**·Ensures·that·there·is·not·an·invalid·configuration·for·the·slider·thumb·inputs.·*/\nfunction·_validateInputs(isRange,·endInputElement,·startInputElement)·{\n··const·startValid·=·!isRange·||·startInputElement?._hostElement.hasAttribute('matSliderStartThumb');\n··const·endValid·=·endInputElement?._hostElement.hasAttribute(isRange·?·'matSliderEndThumb'·:·'matSliderThumb');\n··if·(!startValid·||·!endValid)·{\n····_throwInvalidInputConfigurationError();\n··}\n}\nfunction·_throwInvalidInputConfigurationError()·{\n··throw·Error(`Invalid·slider·thumb·input·configuration!\n\n···Valid·configurations·are·as·follows:\n\n·····<mat-slider>\n·······<input·matSliderThumb>\n·····</mat-slider>\n\n·····or\n\n·····<mat-slider>\n·······<input·matSliderStartThumb>\n·······<input·matSliderEndThumb>\n·····</mat-slider>\n···`);\n}\n\n/**\n·*·Provider·that·allows·the·slider·thumb·to·register·as·a·ControlValueAccessor.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_THUMB_VALUE_ACCESSOR·=·{\n··provide:·NG_VALUE_ACCESSOR,\n··useExisting:·/*#__PURE__*/forwardRef(()·=>·MatSliderThumb),\n··multi:·true\n};\n/**\n·*·Provider·that·allows·the·range·slider·thumb·to·register·as·a·ControlValueAccessor.\n·*·@docs-private\n·*/\nconst·MAT_SLIDER_RANGE_THUMB_VALUE_ACCESSOR·=·{\n··provide:·NG_VALUE_ACCESSOR,\n··useExisting:·/*#__PURE__*/forwardRef(()·=>·MatSliderRangeThumb),\n··multi:·true\n};\n/**\n·*·Directive·that·adds·slider-specific·behaviors·to·an·input·element·inside·`<mat-slider>`.\n·*·Up·to·two·may·be·placed·inside·of·a·`<mat-slider>`.\n·*\n·*·If·one·is·used,·the·selector·`matSliderThumb`·must·be·used,·and·the·outcome·will·be·a·normal\n·*·slider.·If·two·are·used,·the·selectors·`matSliderStartThumb`·and·`matSliderEndThumb`·must·be\n·*·used,·and·the·outcome·will·be·a·range·slider·with·two·slider·thumbs.\n·*/\nlet·MatSliderThumb·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderThumb·{\n····_ngZone·=·inject(NgZone);\n····_elementRef·=·inject(ElementRef);\n····_cdr·=·inject(ChangeDetectorRef);\n····_slider·=·inject(MAT_SLIDER);\n····_platform·=·inject(Platform);\n····_listenerCleanups;\n····get·value()·{\n······return·numberAttribute(this._hostElement.value,·0);\n····}\n····set·value(value)·{\n······if·(value·===·null)·{\n········value·=·this._getDefaultValue();\n······}\n······value·=·isNaN(value)·?·0·:·value;\n······const·stringValue·=·value·+·'';\n······if·(!this._hasSetInitialValue)·{\n········this._initialValue·=·stringValue;\n········return;\n······}\n······if·(this._isActive)·{\n········return;\n······}\n······this._setValue(stringValue);\n····}\n····/**\n·····*·Handles·programmatic·value·setting.·This·has·been·split·out·to\n·····*·allow·the·range·thumb·to·override·it·and·add·additional·necessary·logic.\n·····*/\n····_setValue(value)·{\n······this._hostElement.value·=·value;\n······this._updateThumbUIByValue();\n······this._slider._onValueChange(this);\n······this._cdr.detectChanges();\n······this._slider._cdr.markForCheck();\n····}\n····/**·Event·emitted·when·the·`value`·is·changed.·*/\n····valueChange·=·new·EventEmitter();\n····/**·Event·emitted·when·the·slider·thumb·starts·being·dragged.·*/\n····dragStart·=·new·EventEmitter();\n····/**·Event·emitted·when·the·slider·thumb·stops·being·dragged.·*/\n····dragEnd·=·new·EventEmitter();\n····/**\n·····*·The·current·translateX·in·px·of·the·slider·visual·thumb.\n·····*·@docs-private\n·····*/\n····get·translateX()·{\n······if·(this._slider.min·>=·this._slider.max)·{\n········this._translateX·=·this._tickMarkOffset;\n········return·this._translateX;\n······}\n······if·(this._translateX·===·undefined)·{\n········this._translateX·=·this._calcTranslateXByValue();\n······}\n······return·this._translateX;\n····}\n····set·translateX(v)·{\n······this._translateX·=·v;\n····}\n····_translateX;\n····/**\n·····*·Indicates·whether·this·thumb·is·the·start·or·end·thumb.\n·····*·@docs-private\n·····*/\n····thumbPosition·=·_MatThumb.END;\n····/**·@docs-private·*/\n····get·min()·{\n······return·numberAttribute(this._hostElement.min,·0);\n····}\n····set·min(v)·{\n······this._hostElement.min·=·v·+·'';\n······this._cdr.detectChanges();\n····}\n····/**·@docs-private·*/\n····get·max()·{\n······return·numberAttribute(this._hostElement.max,·0);\n····}\n····set·max(v)·{\n······this._hostElement.max·=·v·+·'';\n······this._cdr.detectChanges();\n····}\n····get·step()·{\n······return·numberAttribute(this._hostElement.step,·0);\n····}\n····set·step(v)·{\n······this._hostElement.step·=·v·+·'';\n······this._cdr.detectChanges();\n····}\n····/**·@docs-private·*/\n····get·disabled()·{\n······return·booleanAttribute(this._hostElement.disabled);\n····}\n····set·disabled(v)·{\n······this._hostElement.disabled·=·v;\n······this._cdr.detectChanges();\n······if·(this._slider.disabled·!==·this.disabled)·{\n········this._slider.disabled·=·this.disabled;\n······}\n····}\n····/**·The·percentage·of·the·slider·that·coincides·with·the·value.·*/\n····get·percentage()·{\n······if·(this._slider.min·>=·this._slider.max)·{\n········return·this._slider._isRtl·?·1·:·0;\n······}\n······return·(this.value·-·this._slider.min)·/·(this._slider.max·-·this._slider.min);\n····}\n····/**·@docs-private·*/\n····get·fillPercentage()·{\n······if·(!this._slider._cachedWidth)·{\n········return·this._slider._isRtl·?·1·:·0;\n······}\n······if·(this._translateX·===·0)·{\n········return·0;\n······}\n······return·this.translateX·/·this._slider._cachedWidth;\n····}\n····/**·The·host·native·HTML·input·element.·*/\n····_hostElement·=·this._elementRef.nativeElement;\n····/**·The·aria-valuetext·string·representation·of·the·input's·value.·*/\n····_valuetext·=·signal('');\n····/**·The·radius·of·a·native·html·slider's·knob.·*/\n····_knobRadius·=·8;\n····/**·The·distance·in·px·from·the·start·of·the·slider·track·to·the·first·tick·mark.·*/\n····_tickMarkOffset·=·3;\n····/**·Whether·user's·cursor·is·currently·in·a·mouse·down·state·on·the·input.·*/\n····_isActive·=·false;\n····/**·Whether·the·input·is·currently·focused·(either·by·tab·or·after·clicking).·*/\n····_isFocused·=·false;\n····/**·Used·to·relay·updates·to·_isFocused·to·the·slider·visual·thumbs.·*/\n····_setIsFocused(v)·{\n······this._isFocused·=·v;\n····}\n····/**\n·····*·Whether·the·initial·value·has·been·set.\n·····*·This·exists·because·the·initial·value·cannot·be·immediately·set·because·the·min·and·max\n·····*·must·first·be·relayed·from·the·parent·MatSlider·component,·which·can·only·happen·later\n·····*·in·the·component·lifecycle.\n·····*/\n····_hasSetInitialValue·=·false;\n····/**·The·stored·initial·value.·*/\n····_initialValue;\n····/**·Defined·when·a·user·is·using·a·form·control·to·manage·slider·value·&·validation.·*/\n····_formControl;\n····/**·Emits·when·the·component·is·destroyed.·*/\n····_destroyed·=·new·Subject();\n····/**\n·····*·Indicates·whether·UI·updates·should·be·skipped.\n·····*\n·····*·This·flag·is·used·to·avoid·flickering\n·····*·when·correcting·values·on·pointer·up/down.\n·····*/\n····_skipUIUpdate·=·false;\n····/**·Callback·called·when·the·slider·input·value·changes.·*/\n····_onChangeFn;\n····/**·Callback·called·when·the·slider·input·has·been·touched.·*/\n····_onTouchedFn·=·()·=>·{};\n····/**\n·····*·Whether·the·NgModel·has·been·initialized.\n·····*\n·····*·This·flag·is·used·to·ignore·ghost·null·calls·to\n·····*·writeValue·which·can·break·slider·initialization.\n·····*\n·····*·See·https://github.com/angular/angular/issues/14988.\n·····*/\n····_isControlInitialized·=·false;\n····constructor()·{\n······const·renderer·=·inject(Renderer2);\n······this._ngZone.runOutsideAngular(()·=>·{\n········this._listenerCleanups·=·[renderer.listen(this._hostElement,·'pointerdown',·this._onPointerDown.bind(this)),·renderer.listen(this._hostElement,·'pointermove',·this._onPointerMove.bind(this)),·renderer.listen(this._hostElement,·'pointerup',·this._onPointerUp.bind(this))];\n······});\n····}\n····ngOnDestroy()·{\n······this._listenerCleanups.forEach(cleanup·=>·cleanup());\n······this._destroyed.next();\n······this._destroyed.complete();\n······this.dragStart.complete();\n······this.dragEnd.complete();\n····}\n····/**·@docs-private·*/\n····initProps()·{\n······this._updateWidthInactive();\n······//·If·this·or·the·parent·slider·is·disabled,·just·make·everything·disabled.\n······if·(this.disabled·!==·this._slider.disabled)·{\n········//·The·MatSlider·setter·for·disabled·will·relay·this·and·disable·both·inputs.\n········this._slider.disabled·=·true;\n······}\n······this.step·=·this._slider.step;\n······this.min·=·this._slider.min;\n······this.max·=·this._slider.max;\n······this._initValue();\n····}\n····/**·@docs-private·*/\n····initUI()·{\n······this._updateThumbUIByValue();\n····}\n····_initValue()·{\n······this._hasSetInitialValue·=·true;\n······if·(this._initialValue·===·undefined)·{\n········this.value·=·this._getDefaultValue();\n······}·else·{\n········this._hostElement.value·=·this._initialValue;\n········this._updateThumbUIByValue();\n········this._slider._onValueChange(this);\n········this._cdr.detectChanges();\n······}\n····}\n····_getDefaultValue()·{\n······return·this.min;\n····}\n····_onBlur()·{\n······this._setIsFocused(false);\n······this._onTouchedFn();\n····}\n····_onFocus()·{\n······this._slider._setTransition(false);\n······this._slider._updateTrackUI(this);\n······this._setIsFocused(true);\n····}\n····_onChange()·{\n······this.valueChange.emit(this.value);\n······//·only·used·to·handle·the·edge·case·where·user\n······//·mousedown·on·the·slider·then·uses·arrow·keys.\n······if·(this._isActive)·{\n········this._updateThumbUIByValue({\n··········withAnimation:·true\n········});\n······}\n····}\n····_onInput()·{\n······this._onChangeFn?.(this.value);\n······//·handles·arrowing·and·updating·the·value·when\n······//·a·step·is·defined.\n······if·(this._slider.step·||·!this._isActive)·{\n········this._updateThumbUIByValue({\n··········withAnimation:·true\n········});\n······}\n······this._slider._onValueChange(this);\n····}\n····_onNgControlValueChange()·{\n······//·only·used·to·handle·when·the·value·change\n······//·originates·outside·of·the·slider.\n······if·(!this._isActive·||·!this._isFocused)·{\n········this._slider._onValueChange(this);\n········this._updateThumbUIByValue();\n······}\n······this._slider.disabled·=·this._formControl.disabled;\n····}\n····_onPointerDown(event)·{\n······if·(this.disabled·||·event.button·!==·0)·{\n········return;\n······}\n······//·On·IOS,·dragging·only·works·if·the·pointer·down·happens·on·the\n······//·slider·thumb·and·the·slider·does·not·receive·focus·from·pointer·events.\n······if·(this._platform.IOS)·{\n········const·isCursorOnSliderThumb·=·this._slider._isCursorOnSliderThumb(event,·this._slider._getThumb(this.thumbPosition)._hostElement.getBoundingClientRect());\n········this._isActive·=·isCursorOnSliderThumb;\n········this._updateWidthActive();\n········this._slider._updateDimensions();\n········return;\n······}\n······this._isActive·=·true;\n······this._setIsFocused(true);\n······this._updateWidthActive();\n······this._slider._updateDimensions();\n······//·Does·nothing·if·a·step·is·defined·because·we\n······//·want·the·value·to·snap·to·the·values·on·input.\n······if·(!this._slider.step)·{\n········this._updateThumbUIByPointerEvent(event,·{\n··········withAnimation:·true\n········});\n······}\n······if·(!this.disabled)·{\n········this._handleValueCorrection(event);\n········this.dragStart.emit({\n··········source:·this,\n··········parent:·this._slider,\n··········value:·this.value\n········});\n······}\n····}\n····/**\n·····*·Corrects·the·value·of·the·slider·on·pointer·up/down.\n·····*\n·····*·Called·on·pointer·down·and·up·because·the·value·is·set·based\n·····*·on·the·inactive·width·instead·of·the·active·width.\n·····*/\n····_handleValueCorrection(event)·{\n······//·Don't·update·the·UI·with·the·current·value!·The·value·on·pointerdown\n······//·and·pointerup·is·calculated·in·the·split·second·before·the·input(s)\n······//·resize.·See·_updateWidthInactive()·and·_updateWidthActive()·for·more\n······//·details.\n······this._skipUIUpdate·=·true;\n······//·Note·that·this·function·gets·triggered·before·the·actual·value·of·the\n······//·slider·is·updated.·This·means·if·we·were·to·set·the·value·here,·it\n······//·would·immediately·be·overwritten.·Using·setTimeout·ensures·the·setting\n······//·of·the·value·happens·after·the·value·has·been·updated·by·the\n······//·pointerdown·event.\n······setTimeout(()·=>·{\n········this._skipUIUpdate·=·false;\n········this._fixValue(event);\n······},·0);\n····}\n····/**·Corrects·the·value·of·the·slider·based·on·the·pointer·event's·position.·*/\n····_fixValue(event)·{\n······const·xPos·=·event.clientX·-·this._slider._cachedLeft;\n······const·width·=·this._slider._cachedWidth;\n······const·step·=·this._slider.step·===·0·?·1·:·this._slider.step;\n······const·numSteps·=·Math.floor((this._slider.max·-·this._slider.min)·/·step);\n······const·percentage·=·this._slider._isRtl·?·1·-·xPos·/·width·:·xPos·/·width;\n······//·To·ensure·the·percentage·is·rounded·to·the·necessary·number·of·decimals.\n······const·fixedPercentage·=·Math.round(percentage·*·numSteps)·/·numSteps;\n······const·impreciseValue·=·fixedPercentage·*·(this._slider.max·-·this._slider.min)·+·this._slider.min;\n······const·value·=·Math.round(impreciseValue·/·step)·*·step;\n······const·prevValue·=·this.value;\n······if·(value·===·prevValue)·{\n········//·Because·we·prevented·UI·updates,·if·it·turns·out·that·the·race\n········//·condition·didn't·happen·and·the·value·is·already·correct,·we\n········//·have·to·apply·the·ui·updates·now.\n········this._slider._onValueChange(this);\n········this._slider.step·>·0·?·this._updateThumbUIByValue()·:·this._updateThumbUIByPointerEvent(event,·{\n··········withAnimation:·this._slider._hasAnimation\n········});\n········return;\n······}\n······this.value·=·value;\n······this.valueChange.emit(this.value);\n······this._onChangeFn?.(this.value);\n······this._slider._onValueChange(this);\n······this._slider.step·>·0·?·this._updateThumbUIByValue()·:·this._updateThumbUIByPointerEvent(event,·{\n········withAnimation:·this._slider._hasAnimation\n······});\n····}\n····_onPointerMove(event)·{\n······//·Again,·does·nothing·if·a·step·is·defined·because\n······//·we·want·the·value·to·snap·to·the·values·on·input.\n······if·(!this._slider.step·&&·this._isActive)·{\n········this._updateThumbUIByPointerEvent(event);\n······}\n····}\n····_onPointerUp()·{\n······if·(this._isActive)·{\n········this._isActive·=·false;\n········if·(this._platform.SAFARI)·{\n··········this._setIsFocused(false);\n········}\n········this.dragEnd.emit({\n··········source:·this,\n··········parent:·this._slider,\n··········value:·this.value\n········});\n········//·This·setTimeout·is·to·prevent·the·pointerup·from·triggering·a·value\n········//·change·on·the·input·based·on·the·inactive·width.·It's·not·clear·why\n········//·but·for·some·reason·on·IOS·this·race·condition·is·even·more·common·so\n········//·the·timeout·needs·to·be·increased.\n········setTimeout(()·=>·this._updateWidthInactive(),·this._platform.IOS·?·10·:·0);\n······}\n····}\n····_clamp(v)·{\n······const·min·=·this._tickMarkOffset;\n······const·max·=·this._slider._cachedWidth·-·this._tickMarkOffset;\n······return·Math.max(Math.min(v,·max),·min);\n····}\n····_calcTranslateXByValue()·{\n······if·(this._slider._isRtl)·{\n········return·(1·-·this.percentage)·*·(this._slider._cachedWidth·-·this._tickMarkOffset·*·2)·+·this._tickMarkOffset;\n······}\n······return·this.percentage·*·(this._slider._cachedWidth·-·this._tickMarkOffset·*·2)·+·this._tickMarkOffset;\n····}\n····_calcTranslateXByPointerEvent(event)·{\n······return·event.clientX·-·this._slider._cachedLeft;\n····}\n····/**\n·····*·Used·to·set·the·slider·width·to·the·correct\n·····*·dimensions·while·the·user·is·dragging.\n·····*/\n····_updateWidthActive()·{}\n····/**\n·····*·Sets·the·slider·input·to·disproportionate·dimensions·to·allow·for·touch\n·····*·events·to·be·captured·on·touch·devices.\n·····*/\n····_updateWidthInactive()·{\n······this._hostElement.style.padding·=·`0·${this._slider._inputPadding}px`;\n······this._hostElement.style.width·=·`calc(100%·+·${this._slider._inputPadding·-·this._tickMarkOffset·*·2}px)`;\n······this._hostElement.style.left·=·`-${this._slider._rippleRadius·-·this._tickMarkOffset}px`;\n····}\n····_updateThumbUIByValue(options)·{\n······this.translateX·=·this._clamp(this._calcTranslateXByValue());\n······this._updateThumbUI(options);\n····}\n····_updateThumbUIByPointerEvent(event,·options)·{\n······this.translateX·=·this._clamp(this._calcTranslateXByPointerEvent(event));\n······this._updateThumbUI(options);\n····}\n····_updateThumbUI(options)·{\n······this._slider._setTransition(!!options?.withAnimation);\n······this._slider._onTranslateXChange(this);\n····}\n····/**\n·····*·Sets·the·input's·value.\n·····*·@param·value·The·new·value·of·the·input\n·····*·@docs-private\n·····*/\n····writeValue(value)·{\n······if·(this._isControlInitialized·||·value·!==·null)·{\n········this.value·=·value;\n······}\n····}\n····/**\n·····*·Registers·a·callback·to·be·invoked·when·the·input's·value·changes·from·user·input.\n·····*·@param·fn·The·callback·to·register\n·····*·@docs-private\n·····*/\n····registerOnChange(fn)·{\n······this._onChangeFn·=·fn;\n······this._isControlInitialized·=·true;\n····}\n····/**\n·····*·Registers·a·callback·to·be·invoked·when·the·input·is·blurred·by·the·user.\n·····*·@param·fn·The·callback·to·register\n·····*·@docs-private\n·····*/\n····registerOnTouched(fn)·{\n······this._onTouchedFn·=·fn;\n····}\n····/**\n·····*·Sets·the·disabled·state·of·the·slider.\n·····*·@param·isDisabled·The·new·disabled·state\n·····*·@docs-private\n·····*/\n····setDisabledState(isDisabled)·{\n······this.disabled·=·isDisabled;\n····}\n····focus()·{\n······this._hostElement.focus();\n····}\n····blur()·{\n······this._hostElement.blur();\n····}\n····static·\u0275fac·=·function·MatSliderThumb_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderThumb)();\n····};\n····static·\u0275dir·=·/*·@__PURE__·*/i0.\u0275\u0275defineDirective({\n······type:·MatSliderThumb,\n······selectors:·[[\"input\",·\"matSliderThumb\",·\"\"]],\n······hostAttrs:·[\"type\",·\"range\",·1,·\"mdc-slider__input\"],\n······hostVars:·1,\n······hostBindings:·function·MatSliderThumb_HostBindings(rf,·ctx)·{\n········if·(rf·&·1)·{\n··········i0.\u0275\u0275listener(\"change\",·function·MatSliderThumb_change_HostBindingHandler()·{\n············return·ctx._onChange();\n··········})(\"input\",·function·MatSliderThumb_input_HostBindingHandler()·{\n············return·ctx._onInput();\n··········})(\"blur\",·function·MatSliderThumb_blur_HostBindingHandler()·{\n············return·ctx._onBlur();\n··········})(\"focus\",·function·MatSliderThumb_focus_HostBindingHandler()·{\n············return·ctx._onFocus();\n··········});\n········}\n········if·(rf·&·2)·{\n··········i0.\u0275\u0275attribute(\"aria-valuetext\",·ctx._valuetext());\n········}\n······},\n······inputs:·{\n········value:·[2,·\"value\",·\"value\",·numberAttribute]\n······},\n······outputs:·{\n········valueChange:·\"valueChange\",\n········dragStart:·\"dragStart\",\n········dragEnd:·\"dragEnd\"\n······},\n······exportAs:·[\"matSliderThumb\"],\n······features:·[i0.\u0275\u0275ProvidersFeature([MAT_SLIDER_THUMB_VALUE_ACCESSOR,·{\n········provide:·MAT_SLIDER_THUMB,\n········useExisting:·MatSliderThumb\n······}])]\n····});\n··}\n··return·MatSliderThumb;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nlet·MatSliderRangeThumb·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderRangeThumb·extends·MatSliderThumb·{\n····_cdr·=·inject(ChangeDetectorRef);\n····/**·@docs-private·*/\n····getSibling()·{\n······if·(!this._sibling)·{\n········this._sibling·=·this._slider._getInput(this._isEndThumb·?·_MatThumb.START·:·_MatThumb.END);\n······}\n······return·this._sibling;\n····}\n····_sibling;\n····/**\n·····*·Returns·the·minimum·translateX·position·allowed·for·this·slider·input's·visual·thumb.\n·····*·@docs-private\n·····*/\n····getMinPos()·{\n······const·sibling·=·this.getSibling();\n······if·(!this._isLeftThumb·&&·sibling)·{\n········return·sibling.translateX;\n······}\n······return·this._tickMarkOffset;\n····}\n····/**\n·····*·Returns·the·maximum·translateX·position·allowed·for·this·slider·input's·visual·thumb.\n·····*·@docs-private\n·····*/\n····getMaxPos()·{\n······const·sibling·=·this.getSibling();\n······if·(this._isLeftThumb·&&·sibling)·{\n········return·sibling.translateX;\n······}\n······return·this._slider._cachedWidth·-·this._tickMarkOffset;\n····}\n····_setIsLeftThumb()·{\n······this._isLeftThumb·=·this._isEndThumb·&&·this._slider._isRtl·||·!this._isEndThumb·&&·!this._slider._isRtl;\n····}\n····/**·Whether·this·slider·corresponds·to·the·input·on·the·left·hand·side.·*/\n····_isLeftThumb;\n····/**·Whether·this·slider·corresponds·to·the·input·with·greater·value.·*/\n····_isEndThumb;\n····constructor()·{\n······super();\n······this._isEndThumb·=·this._hostElement.hasAttribute('matSliderEndThumb');\n······this._setIsLeftThumb();\n······this.thumbPosition·=·this._isEndThumb·?·_MatThumb.END·:·_MatThumb.START;\n····}\n····_getDefaultValue()·{\n······return·this._isEndThumb·&&·this._slider._isRange·?·this.max·:·this.min;\n····}\n····_onInput()·{\n······super._onInput();\n······this._updateSibling();\n······if·(!this._isActive)·{\n········this._updateWidthInactive();\n······}\n····}\n····_onNgControlValueChange()·{\n······super._onNgControlValueChange();\n······this.getSibling()?._updateMinMax();\n····}\n····_onPointerDown(event)·{\n······if·(this.disabled·||·event.button·!==·0)·{\n········return;\n······}\n······if·(this._sibling)·{\n········this._sibling._updateWidthActive();\n········this._sibling._hostElement.classList.add('mat-mdc-slider-input-no-pointer-events');\n······}\n······super._onPointerDown(event);\n····}\n····_onPointerUp()·{\n······super._onPointerUp();\n······if·(this._sibling)·{\n········setTimeout(()·=>·{\n··········this._sibling._updateWidthInactive();\n··········this._sibling._hostElement.classList.remove('mat-mdc-slider-input-no-pointer-events');\n········});\n······}\n····}\n····_onPointerMove(event)·{\n······super._onPointerMove(event);\n······if·(!this._slider.step·&&·this._isActive)·{\n········this._updateSibling();\n······}\n····}\n····_fixValue(event)·{\n······super._fixValue(event);\n······this._sibling?._updateMinMax();\n····}\n····_clamp(v)·{\n······return·Math.max(Math.min(v,·this.getMaxPos()),·this.getMinPos());\n····}\n····_updateMinMax()·{\n······const·sibling·=·this.getSibling();\n······if·(!sibling)·{\n········return;\n······}\n······if·(this._isEndThumb)·{\n········this.min·=·Math.max(this._slider.min,·sibling.value);\n········this.max·=·this._slider.max;\n······}·else·{\n········this.min·=·this._slider.min;\n········this.max·=·Math.min(this._slider.max,·sibling.value);\n······}\n····}\n····_updateWidthActive()·{\n······const·minWidth·=·this._slider._rippleRadius·*·2·-·this._slider._inputPadding·*·2;\n······const·maxWidth·=·this._slider._cachedWidth·+·this._slider._inputPadding·-·minWidth·-·this._tickMarkOffset·*·2;\n······const·percentage·=·this._slider.min·<·this._slider.max·?·(this.max·-·this.min)·/·(this._slider.max·-·this._slider.min)·:·1;\n······const·width·=·maxWidth·*·percentage·+·minWidth;\n······this._hostElement.style.width·=·`${width}px`;\n······this._hostElement.style.padding·=·`0·${this._slider._inputPadding}px`;\n····}\n····_updateWidthInactive()·{\n······const·sibling·=·this.getSibling();\n······if·(!sibling)·{\n········return;\n······}\n······const·maxWidth·=·this._slider._cachedWidth·-·this._tickMarkOffset·*·2;\n······const·midValue·=·this._isEndThumb·?·this.value·-·(this.value·-·sibling.value)·/·2·:·this.value·+·(sibling.value·-·this.value)·/·2;\n······const·_percentage·=·this._isEndThumb·?·(this.max·-·midValue)·/·(this._slider.max·-·this._slider.min)·:·(midValue·-·this.min)·/·(this._slider.max·-·this._slider.min);\n······const·percentage·=·this._slider.min·<·this._slider.max·?·_percentage·:·1;\n······//·Extend·the·native·input·width·by·the·radius·of·the·ripple\n······let·ripplePadding·=·this._slider._rippleRadius;\n······//·If·one·of·the·inputs·is·maximally·sized·(the·value·of·both·thumbs·is\n······//·equal·to·the·min·or·max),·make·that·input·take·up·all·of·the·width·and\n······//·make·the·other·unselectable.\n······if·(percentage·===·1)·{\n········ripplePadding·=·48;\n······}·else·if·(percentage·===·0)·{\n········ripplePadding·=·0;\n······}\n······const·width·=·maxWidth·*·percentage·+·ripplePadding;\n······this._hostElement.style.width·=·`${width}px`;\n······this._hostElement.style.padding·=·'0px';\n······if·(this._isLeftThumb)·{\n········this._hostElement.style.left·=·`-${this._slider._rippleRadius·-·this._tickMarkOffset}px`;\n········this._hostElement.style.right·=·'auto';\n······}·else·{\n········this._hostElement.style.left·=·'auto';\n········this._hostElement.style.right·=·`-${this._slider._rippleRadius·-·this._tickMarkOffset}px`;\n······}\n····}\n····_updateStaticStyles()·{\n······this._hostElement.classList.toggle('mat-slider__right-input',·!this._isLeftThumb);\n····}\n····_updateSibling()·{\n······const·sibling·=·this.getSibling();\n······if·(!sibling)·{\n········return;\n······}\n······sibling._updateMinMax();\n······if·(this._isActive)·{\n········sibling._updateWidthActive();\n······}·else·{\n········sibling._updateWidthInactive();\n······}\n····}\n····/**\n·····*·Sets·the·input's·value.\n·····*·@param·value·The·new·value·of·the·input\n·····*·@docs-private\n·····*/\n····writeValue(value)·{\n······if·(this._isControlInitialized·||·value·!==·null)·{\n········this.value·=·value;\n········this._updateWidthInactive();\n········this._updateSibling();\n······}\n····}\n····_setValue(value)·{\n······super._setValue(value);\n······this._updateWidthInactive();\n······this._updateSibling();\n····}\n····static·\u0275fac·=·function·MatSliderRangeThumb_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderRangeThumb)();\n····};\n····static·\u0275dir·=·/*·@__PURE__·*/i0.\u0275\u0275defineDirective({\n······type:·MatSliderRangeThumb,\n······selectors:·[[\"input\",·\"matSliderStartThumb\",·\"\"],·[\"input\",·\"matSliderEndThumb\",·\"\"]],\n······exportAs:·[\"matSliderRangeThumb\"],\n······features:·[i0.\u0275\u0275ProvidersFeature([MAT_SLIDER_RANGE_THUMB_VALUE_ACCESSOR,·{\n········provide:·MAT_SLIDER_RANGE_THUMB,\n········useExisting:·MatSliderRangeThumb\n······}]),·i0.\u0275\u0275InheritDefinitionFeature]\n····});\n··}\n··return·MatSliderRangeThumb;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nlet·MatSliderModule·=·/*#__PURE__*/(()·=>·{\n··class·MatSliderModule·{\n····static·\u0275fac·=·function·MatSliderModule_Factory(__ngFactoryType__)·{\n······return·new·(__ngFactoryType__·||·MatSliderModule)();\n····};\n····static·\u0275mod·=·/*·@__PURE__·*/i0.\u0275\u0275defineNgModule({\n······type:·MatSliderModule\n····});\n····static·\u0275inj·=·/*·@__PURE__·*/i0.\u0275\u0275defineInjector({\n······imports:·[MatCommonModule,·MatRippleModule]\n····});\n··}\n··return·MatSliderModule;\n})();\n/*#__PURE__*/(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nexport·{·MatSlider,·MatSliderChange,·MatSliderModule,·MatSliderRangeThumb,·MatSliderThumb,·MatSliderVisualThumb·};\n",
4078 ········"import·*·as·i0·from·'@angular/core';\nimport·{·ChangeDetectionStrategy,·Component,·NgModule·}·from·'@angular/core';\nimport·{·FieldType,·FormlyMatFormFieldModule·}·from·'@ngx-formly/material/form-field';\nimport·*·as·i1·from·'@angular/forms';\nimport·{·ReactiveFormsModule·}·from·'@angular/forms';\nimport·*·as·i2·from·'@angular/material/slider';\nimport·{·MatSliderModule·}·from·'@angular/material/slider';\nimport·*·as·i3·from·'@ngx-formly/core';\nimport·{·FormlyModule·}·from·'@ngx-formly/core';\nimport·{·CommonModule·}·from·'@angular/common';\nimport·{·MatCommonModule,·MatRippleModule·}·from·'@angular/material/core';\nlet·FormlyFieldSlider·=·/*#__PURE__*/(()·=>·{\n··class·FormlyFieldSlider·extends·FieldType·{\n····constructor()·{\n······super(...arguments);\n······this.defaultOptions·=·{\n········props:·{\n··········hideFieldUnderline:·true,\n··········floatLabel:·'always',\n··········displayWith:·value·=>·`${value}`\n········}\n······};\n····}\n····static·{\n······this.\u0275fac·=·/*·@__PURE__·*/(()·=>·{\n········let·\u0275FormlyFieldSlider_BaseFactory;\n········return·function·FormlyFieldSlider_Factory(__ngFactoryType__)·{\n··········return·(\u0275FormlyFieldSlider_BaseFactory·||·(\u0275FormlyFieldSlider_BaseFactory·=·i0.\u0275\u0275getInheritedFactory(FormlyFieldSlider)))(__ngFactoryType__·||·FormlyFieldSlider);\n········};\n······})();\n····}\n····static·{\n······this.\u0275cmp·=·/*·@__PURE__·*/i0.\u0275\u0275defineComponent({\n········type:·FormlyFieldSlider,\n········selectors:·[[\"formly-field-mat-slider\"]],\n········standalone:·false,\n········features:·[i0.\u0275\u0275InheritDefinitionFeature],\n········decls:·2,\n········vars:·15,\n········consts:·[[3,·\"input\",·\"change\",·\"id\",·\"formlyAttributes\",·\"tabIndex\",·\"color\",·\"displayWith\",·\"max\",·\"min\",·\"step\",·\"discrete\",·\"showTickMarks\"],·[\"matSliderThumb\",·\"\",·3,·\"formControl\",·\"formlyAttributes\"]],\n········template:·function·FormlyFieldSlider_Template(rf,·ctx)·{\n··········if·(rf·&·1)·{\n············i0.\u0275\u0275elementStart(0,·\"mat-slider\",·0);\n············i0.\u0275\u0275listener(\"input\",·function·FormlyFieldSlider_Template_mat_slider_input_0_listener($event)·{\n··············return·ctx.props.input·&&·ctx.props.input(ctx.field,·$event);\n············})(\"change\",·function·FormlyFieldSlider_Template_mat_slider_change_0_listener($event)·{\n··············return·ctx.props.change·&&·ctx.props.change(ctx.field,·$event);\n············});\n············i0.\u0275\u0275element(1,·\"input\",·1);\n············i0.\u0275\u0275elementEnd();\n··········}\n··········if·(rf·&·2)·{\n············i0.\u0275\u0275styleProp(\"width\",·\"100%\");\n············i0.\u0275\u0275property(\"id\",·ctx.id)(\"formlyAttributes\",·ctx.field)(\"tabIndex\",·ctx.props.tabindex)(\"color\",·ctx.props.color)(\"displayWith\",·ctx.props.displayWith)(\"max\",·ctx.props.max)(\"min\",·ctx.props.min)(\"step\",·ctx.props.step)(\"discrete\",·ctx.props.discrete)(\"showTickMarks\",·ctx.props.showTickMarks)(\"step\",·ctx.props.step);\n············i0.\u0275\u0275advance();\n············i0.\u0275\u0275property(\"formControl\",·ctx.formControl)(\"formlyAttributes\",·ctx.field);\n··········}\n········},\n········dependencies:·[i1.DefaultValueAccessor,·i1.NgControlStatus,·i1.FormControlDirective,·i2.MatSlider,·i2.MatSliderThumb,·i3.LegacyFormlyAttributes],\n········encapsulation:·2,\n········changeDetection:·0\n······});\n····}\n··}\n··return·FormlyFieldSlider;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nfunction·withFormlyFieldSlider()·{\n··return·{\n····types:·[{\n······name:·'slider',\n······component:·FormlyFieldSlider,\n······wrappers:·['form-field']\n····}]\n··};\n}\nlet·FormlyMatSliderModule·=·/*#__PURE__*/(()·=>·{\n··class·FormlyMatSliderModule·{\n····static·{\n······this.\u0275fac·=·function·FormlyMatSliderModule_Factory(__ngFactoryType__)·{\n········return·new·(__ngFactoryType__·||·FormlyMatSliderModule)();\n······};\n····}\n····static·{\n······this.\u0275mod·=·/*·@__PURE__·*/i0.\u0275\u0275defineNgModule({\n········type:·FormlyMatSliderModule\n······});\n····}\n····static·{\n······this.\u0275inj·=·/*·@__PURE__·*/i0.\u0275\u0275defineInjector({\n········imports:·[CommonModule,·MatCommonModule,·MatRippleModule,·ReactiveFormsModule,·MatSliderModule,·FormlyMatFormFieldModule,·FormlyModule.forChild(withFormlyFieldSlider())]\n······});\n····}\n··}\n··return·FormlyMatSliderModule;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n\n/**\n·*·Generated·bundle·index.·Do·not·edit.\n·*/\n\nexport·{·FormlyFieldSlider,·FormlyMatSliderModule,·withFormlyFieldSlider·};\n",4078 ········"import·*·as·i0·from·'@angular/core';\nimport·{·ChangeDetectionStrategy,·Component,·NgModule·}·from·'@angular/core';\nimport·{·FieldType,·FormlyMatFormFieldModule·}·from·'@ngx-formly/material/form-field';\nimport·*·as·i1·from·'@angular/forms';\nimport·{·ReactiveFormsModule·}·from·'@angular/forms';\nimport·*·as·i2·from·'@angular/material/slider';\nimport·{·MatSliderModule·}·from·'@angular/material/slider';\nimport·*·as·i3·from·'@ngx-formly/core';\nimport·{·FormlyModule·}·from·'@ngx-formly/core';\nimport·{·CommonModule·}·from·'@angular/common';\nimport·{·MatCommonModule,·MatRippleModule·}·from·'@angular/material/core';\nlet·FormlyFieldSlider·=·/*#__PURE__*/(()·=>·{\n··class·FormlyFieldSlider·extends·FieldType·{\n····constructor()·{\n······super(...arguments);\n······this.defaultOptions·=·{\n········props:·{\n··········hideFieldUnderline:·true,\n··········floatLabel:·'always',\n··········displayWith:·value·=>·`${value}`\n········}\n······};\n····}\n····static·{\n······this.\u0275fac·=·/*·@__PURE__·*/(()·=>·{\n········let·\u0275FormlyFieldSlider_BaseFactory;\n········return·function·FormlyFieldSlider_Factory(__ngFactoryType__)·{\n··········return·(\u0275FormlyFieldSlider_BaseFactory·||·(\u0275FormlyFieldSlider_BaseFactory·=·i0.\u0275\u0275getInheritedFactory(FormlyFieldSlider)))(__ngFactoryType__·||·FormlyFieldSlider);\n········};\n······})();\n····}\n····static·{\n······this.\u0275cmp·=·/*·@__PURE__·*/i0.\u0275\u0275defineComponent({\n········type:·FormlyFieldSlider,\n········selectors:·[[\"formly-field-mat-slider\"]],\n········standalone:·false,\n········features:·[i0.\u0275\u0275InheritDefinitionFeature],\n········decls:·2,\n········vars:·15,\n········consts:·[[3,·\"input\",·\"change\",·\"id\",·\"formlyAttributes\",·\"tabIndex\",·\"color\",·\"displayWith\",·\"max\",·\"min\",·\"step\",·\"discrete\",·\"showTickMarks\"],·[\"matSliderThumb\",·\"\",·3,·\"formControl\",·\"formlyAttributes\"]],\n········template:·function·FormlyFieldSlider_Template(rf,·ctx)·{\n··········if·(rf·&·1)·{\n············i0.\u0275\u0275elementStart(0,·\"mat-slider\",·0);\n············i0.\u0275\u0275listener(\"input\",·function·FormlyFieldSlider_Template_mat_slider_input_0_listener($event)·{\n··············return·ctx.props.input·&&·ctx.props.input(ctx.field,·$event);\n············})(\"change\",·function·FormlyFieldSlider_Template_mat_slider_change_0_listener($event)·{\n··············return·ctx.props.change·&&·ctx.props.change(ctx.field,·$event);\n············});\n············i0.\u0275\u0275element(1,·\"input\",·1);\n············i0.\u0275\u0275elementEnd();\n··········}\n··········if·(rf·&·2)·{\n············i0.\u0275\u0275styleProp(\"width\",·\"100%\");\n············i0.\u0275\u0275property(\"id\",·ctx.id)(\"formlyAttributes\",·ctx.field)(\"tabIndex\",·ctx.props.tabindex)(\"color\",·ctx.props.color)(\"displayWith\",·ctx.props.displayWith)(\"max\",·ctx.props.max)(\"min\",·ctx.props.min)(\"step\",·ctx.props.step)(\"discrete\",·ctx.props.discrete)(\"showTickMarks\",·ctx.props.showTickMarks)(\"step\",·ctx.props.step);\n············i0.\u0275\u0275advance();\n············i0.\u0275\u0275property(\"formControl\",·ctx.formControl)(\"formlyAttributes\",·ctx.field);\n··········}\n········},\n········dependencies:·[i1.DefaultValueAccessor,·i1.NgControlStatus,·i1.FormControlDirective,·i2.MatSlider,·i2.MatSliderThumb,·i3.LegacyFormlyAttributes],\n········encapsulation:·2,\n········changeDetection:·0\n······});\n····}\n··}\n··return·FormlyFieldSlider;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nfunction·withFormlyFieldSlider()·{\n··return·{\n····types:·[{\n······name:·'slider',\n······component:·FormlyFieldSlider,\n······wrappers:·['form-field']\n····}]\n··};\n}\nlet·FormlyMatSliderModule·=·/*#__PURE__*/(()·=>·{\n··class·FormlyMatSliderModule·{\n····static·{\n······this.\u0275fac·=·function·FormlyMatSliderModule_Factory(__ngFactoryType__)·{\n········return·new·(__ngFactoryType__·||·FormlyMatSliderModule)();\n······};\n····}\n····static·{\n······this.\u0275mod·=·/*·@__PURE__·*/i0.\u0275\u0275defineNgModule({\n········type:·FormlyMatSliderModule\n······});\n····}\n····static·{\n······this.\u0275inj·=·/*·@__PURE__·*/i0.\u0275\u0275defineInjector({\n········imports:·[CommonModule,·MatCommonModule,·MatRippleModule,·ReactiveFormsModule,·MatSliderModule,·FormlyMatFormFieldModule,·FormlyModule.forChild(withFormlyFieldSlider())]\n······});\n····}\n··}\n··return·FormlyMatSliderModule;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n\n/**\n·*·Generated·bundle·index.·Do·not·edit.\n·*/\n\nexport·{·FormlyFieldSlider,·FormlyMatSliderModule,·withFormlyFieldSlider·};\n",
4079 ········"import·{·ChangeDetectionStrategy,·Component·}·from·'@angular/core';\nimport·{·FormsModule,·ReactiveFormsModule·}·from·'@angular/forms';\nimport·{·FieldType·}·from·'@ngx-formly/material';\nimport·{·FormlyFieldConfig,·FormlyModule·}·from·'@ngx-formly/core';\nimport·{·T·}·from·'src/app/t.const';\nimport·{·TagEditComponent·}·from·'../../features/tag/tag-edit/tag-edit.component';\n\n@Component({\n··selector:·'formly-tag-selection',\n··standalone:·true,\n··imports:·[FormsModule,·FormlyModule,·ReactiveFormsModule,·TagEditComponent],\n··templateUrl:·'./formly-tag-selection.component.html',\n··styleUrl:·'./formly-tag-selection.component.scss',\n··changeDetection:·ChangeDetectionStrategy.OnPush,\n})\nexport·class·FormlyTagSelectionComponent·extends·FieldType<FormlyFieldConfig>·{\n··T:·typeof·T·=·T;\n}\n",4079 ········"import·{·ChangeDetectionStrategy,·Component·}·from·'@angular/core';\nimport·{·FormsModule,·ReactiveFormsModule·}·from·'@angular/forms';\nimport·{·FieldType·}·from·'@ngx-formly/material';\nimport·{·FormlyFieldConfig,·FormlyModule·}·from·'@ngx-formly/core';\nimport·{·T·}·from·'src/app/t.const';\nimport·{·TagEditComponent·}·from·'../../features/tag/tag-edit/tag-edit.component';\n\n@Component({\n··selector:·'formly-tag-selection',\n··standalone:·true,\n··imports:·[FormsModule,·FormlyModule,·ReactiveFormsModule,·TagEditComponent],\n··templateUrl:·'./formly-tag-selection.component.html',\n··styleUrl:·'./formly-tag-selection.component.scss',\n··changeDetection:·ChangeDetectionStrategy.OnPush,\n})\nexport·class·FormlyTagSelectionComponent·extends·FieldType<FormlyFieldConfig>·{\n··T:·typeof·T·=·T;\n}\n",
4080 ········"<tag-edit\n··[isShowMyDayTag]=\"true\"\n··[tagIds]=\"value\"\n··[excludedTagIds]=\"field.templateOptions?.excludedTagIds\"\n··(tagUpdate)=\"formControl.setValue($event)\"\n></tag-edit>\n\n<!--<pre><code>{{value|json}}</code></pre>-->\n<!--<pre><code>{{field|json}}</code></pre>-->\n",4080 ········"<tag-edit\n··[isShowMyDayTag]=\"true\"\n··[tagIds]=\"value\"\n··[excludedTagIds]=\"field.templateOptions?.excludedTagIds\"\n··(tagUpdate)=\"formControl.setValue($event)\"\n></tag-edit>\n\n<!--<pre><code>{{value|json}}</code></pre>-->\n<!--<pre><code>{{field|json}}</code></pre>-->\n",
4081 ········"import·{·ChangeDetectionStrategy,·Component·}·from·'@angular/core';\nimport·{·FormlyFieldConfig,·FormlyModule·}·from·'@ngx-formly/core';\nimport·{·FieldType·}·from·'@ngx-formly/material';\nimport·{·MatButton·}·from·'@angular/material/button';\nimport·{·TranslatePipe·}·from·'@ngx-translate/core';\nimport·{·Log·}·from·'../../core/log';\n\n@Component({\n··selector:·'formly-btn',\n··templateUrl:·'./formly-btn.component.html',\n··styleUrl:·'./formly-btn.component.scss',\n··changeDetection:·ChangeDetectionStrategy.OnPush,\n··imports:·[FormlyModule,·MatButton,·TranslatePipe],\n})\nexport·class·FormlyBtnComponent·extends·FieldType<FormlyFieldConfig>·{\n··onClick():·void·{\n····if·(this.to.onClick)·{\n······const·r·=·this.to.onClick(this.field,·this.form,·this.model);\n······if·(r·&&·'then'·in·r)·{\n········r.then((v)·=>·{\n··········Log.log('update',·v,·this);\n··········this.formControl.setValue(v);\n··········this.form.markAsDirty();\n········});\n······}·else·{\n········this.formControl.setValue(r);\n······}\n····}\n··}\n}\n",4081 ········"import·{·ChangeDetectionStrategy,·Component·}·from·'@angular/core';\nimport·{·FormlyFieldConfig,·FormlyModule·}·from·'@ngx-formly/core';\nimport·{·FieldType·}·from·'@ngx-formly/material';\nimport·{·MatButton·}·from·'@angular/material/button';\nimport·{·TranslatePipe·}·from·'@ngx-translate/core';\nimport·{·Log·}·from·'../../core/log';\n\n@Component({\n··selector:·'formly-btn',\n··templateUrl:·'./formly-btn.component.html',\n··styleUrl:·'./formly-btn.component.scss',\n··changeDetection:·ChangeDetectionStrategy.OnPush,\n··imports:·[FormlyModule,·MatButton,·TranslatePipe],\n})\nexport·class·FormlyBtnComponent·extends·FieldType<FormlyFieldConfig>·{\n··onClick():·void·{\n····if·(this.to.onClick)·{\n······const·r·=·this.to.onClick(this.field,·this.form,·this.model);\n······if·(r·&&·'then'·in·r)·{\n········r.then((v)·=>·{\n··········Log.log('update',·v,·this);\n··········this.formControl.setValue(v);\n··········this.form.markAsDirty();\n········});\n······}·else·{\n········this.formControl.setValue(r);\n······}\n····}\n··}\n}\n",
4082 ········"@if·(value)·{\n··<div·class=\"value\">{{·value·}}</div>\n}\n<button\n··mat-flat-button\n··(click)=\"onClick()\"\n>\n··{{·(to.text·|·translate)·||·'Click·Me'·}}\n</button>\n",4082 ········"@if·(value)·{\n··<div·class=\"value\">{{·value·}}</div>\n}\n<button\n··mat-flat-button\n··(click)=\"onClick()\"\n>\n··{{·(to.text·|·translate)·||·'Click·Me'·}}\n</button>\n",
4083 ········"//·This·file·is·auto-generated·by·tools/load-env.js\n//·Do·not·modify·directly·-·edit·.env·file·instead\n//·Generated·at:·2025-09-02T09:08:38.515Z\n\n/**\n·*·Environment·variables·loaded·from·.env·file\n·*·Access·these·constants·instead·of·process.env·in·your·Angular·app\n·*/\nexport·const·ENV·=·{\n\n}·as·const;\n\n//·Type-safe·helper·to·ensure·all·expected·env·vars·are·defined\nexport·type·EnvVars·=·typeof·ENV;\n",4083 ········"//·This·file·is·auto-generated·by·tools/load-env.js\n//·Do·not·modify·directly·-·edit·.env·file·instead\n//·Generated·at:·2025-09-04T10:12:58.584Z\n\n/**\n·*·Environment·variables·loaded·from·.env·file\n·*·Access·these·constants·instead·of·process.env·in·your·Angular·app\n·*/\nexport·const·ENV·=·{\n\n}·as·const;\n\n//·Type-safe·helper·to·ensure·all·expected·env·vars·are·defined\nexport·type·EnvVars·=·typeof·ENV;\n",
4084 ········"/**\n·*·Pure·functions·for·accessing·environment·variables.\n·*·These·can·be·used·anywhere·in·the·codebase,·including·outside·Angular·context.\n·*/\n\n//·Import·the·generated·environment·constants\n//·This·file·is·auto-generated·from·.env·by·tools/load-env.js\nimport·{·ENV·}·from·'../config/env.generated';\n\n/**\n·*·Get·an·environment·variable·value.\n·*·Returns·undefined·if·the·variable·is·not·set.\n·*/\nexport·const·getEnv·=·(key:·keyof·typeof·ENV):·string·|·undefined·=>·{\n··return·ENV[key]·||·undefined;\n};\n\n/**\n·*·Get·an·optional·environment·variable·that·may·not·be·in·the·required·list.\n·*·Use·this·for·environment·variables·that·are·truly·optional·and·may·not·be·defined\n·*·in·the·REQUIRED_ENV_KEYS·list·in·load-env.js.\n·*·Returns·undefined·if·the·variable·is·not·set.\n·*/\nexport·const·getEnvOptional·=·(key:·string):·string·|·undefined·=>·{\n··return·(ENV·as·any)[key]·||·undefined;\n};\n\n/**\n·*·Get·an·environment·variable·as·a·number.\n·*·Returns·undefined·if·the·value·is·not·a·valid·number.\n·*/\nexport·const·getEnvNumber·=·(key:·keyof·typeof·ENV):·number·|·undefined·=>·{\n··const·value·=·getEnv(key);\n··if·(value·===·undefined)·return·undefined;\n··const·num·=·Number(value);\n··return·isNaN(num)·?·undefined·:·num;\n};\n\n/**\n·*·Get·all·environment·variables·as·an·object.\n·*·Useful·for·debugging·or·passing·multiple·values.\n·*/\nexport·const·getAllEnv·=·():·typeof·ENV·=>·ENV;\n",4084 ········"/**\n·*·Pure·functions·for·accessing·environment·variables.\n·*·These·can·be·used·anywhere·in·the·codebase,·including·outside·Angular·context.\n·*/\n\n//·Import·the·generated·environment·constants\n//·This·file·is·auto-generated·from·.env·by·tools/load-env.js\nimport·{·ENV·}·from·'../config/env.generated';\n\n/**\n·*·Get·an·environment·variable·value.\n·*·Returns·undefined·if·the·variable·is·not·set.\n·*/\nexport·const·getEnv·=·(key:·keyof·typeof·ENV):·string·|·undefined·=>·{\n··return·ENV[key]·||·undefined;\n};\n\n/**\n·*·Get·an·optional·environment·variable·that·may·not·be·in·the·required·list.\n·*·Use·this·for·environment·variables·that·are·truly·optional·and·may·not·be·defined\n·*·in·the·REQUIRED_ENV_KEYS·list·in·load-env.js.\n·*·Returns·undefined·if·the·variable·is·not·set.\n·*/\nexport·const·getEnvOptional·=·(key:·string):·string·|·undefined·=>·{\n··return·(ENV·as·any)[key]·||·undefined;\n};\n\n/**\n·*·Get·an·environment·variable·as·a·number.\n·*·Returns·undefined·if·the·value·is·not·a·valid·number.\n·*/\nexport·const·getEnvNumber·=·(key:·keyof·typeof·ENV):·number·|·undefined·=>·{\n··const·value·=·getEnv(key);\n··if·(value·===·undefined)·return·undefined;\n··const·num·=·Number(value);\n··return·isNaN(num)·?·undefined·:·num;\n};\n\n/**\n·*·Get·all·environment·variables·as·an·object.\n·*·Useful·for·debugging·or·passing·multiple·values.\n·*/\nexport·const·getAllEnv·=·():·typeof·ENV·=>·ENV;\n",
4085 ········"import·{·Injectable,·inject·}·from·'@angular/core';\nimport·{·HttpClient·}·from·'@angular/common/http';\nimport·{·Observable,·of·}·from·'rxjs';\nimport·{·catchError·}·from·'rxjs/operators';\nimport·{·getEnvOptional·}·from·'../../util/env';\n\nexport·interface·UnsplashPhoto·{\n··id:·string;\n··urls:·{\n····raw:·string;\n····full:·string;\n····regular:·string;\n····small:·string;\n····thumb:·string;\n··};\n··links?:·{\n····self?:·string;\n····html?:·string;\n····download?:·string;\n····download_location?:·string;\n··};\n··description:·string·|·null;\n··alt_description:·string·|·null;\n··user:·{\n····name:·string;\n····links?:·{\n······html?:·string;\n····};\n··};\n}\n\nexport·interface·UnsplashSearchResponse·{\n··results:·UnsplashPhoto[];\n··total:·number;\n··total_pages:·number;\n}\n\n@Injectable({\n··providedIn:·'root',\n})\nexport·class·UnsplashService·{\n··private·_http·=·inject(HttpClient);\n\n··private·readonly·API_URL·=·'https://api.unsplash.com';\n··//·Register·your·app·at·https://unsplash.com/developers?utm_source=super-productivity&utm_medium=referral&utm_campaign=api-credit·for·a·free·Access·Key·(50·req/hour)\n··//·The·Access·Key·is·used·with·\"Client-ID\"·prefix·in·the·Authorization·header\n··private·readonly·ACCESS_KEY·=·getEnvOptional('UNSPLASH_KEY');\n\n··isAvailable():·boolean·{\n····return·!!this.ACCESS_KEY;\n··}\n\n··searchPhotos(query:·string,·page·=·1):·Observable<UnsplashSearchResponse>·{\n····if·(!query·||·query.trim()·===·'')·{\n······return·of({·results:·[],·total:·0,·total_pages:·0·});\n····}\n\n····if·(!this.ACCESS_KEY)·{\n······console.warn(\n········'No·Unsplash·Access·Key·configured.·Register·at·https://unsplash.com/developers?utm_source=super-productivity&utm_medium=referral&utm_campaign=api-credit',\n······);\n······return·of({·results:·[],·total:·0,·total_pages:·0·});\n····}\n\n····const·params·=·{\n······query:·query.trim(),\n······page:·page.toString(),\n······per_page:·'20',\n······orientation:·'landscape',\n····};\n\n····const·url·=·`${this.API_URL}/search/photos`;\n····const·headers·=·{\n······Authorization:·`Client-ID·${this.ACCESS_KEY}`,\n····};\n\n····return·this._http\n······.get<UnsplashSearchResponse>(url,·{\n········params,\n········headers,\n······})\n······.pipe(\n········catchError((error)·=>·{\n··········console.error('Unsplash·API·error:',·error);\n··········return·of({·results:·[],·total:·0,·total_pages:·0·});\n········}),\n······);\n··}\n\n··getPhotoUrl(\n····photo:·UnsplashPhoto,\n····size:·'thumb'·|·'small'·|·'regular'·=·'regular',\n··):·string·{\n····return·photo.urls[size];\n··}\n\n··/**\n···*·Get·optimized·image·URL·for·backgrounds\n···*·@param·photo·-·The·Unsplash·photo·object\n···*·@param·width·-·Desired·width·(default·2560·for·high·res·displays)\n···*·@param·quality·-·Image·quality·1-100·(default·85)\n···*/\n··getBackgroundImageUrl(photo:·UnsplashPhoto,·width·=·2560,·quality·=·85):·string·{\n····return·`${photo.urls.raw}&w=${width}&q=${quality}&auto=format`;\n··}\n\n··/**\n···*·Add·UTM·parameters·to·Unsplash·attribution·links·as·required\n···*·@param·url·-·The·original·Unsplash·URL\n···*/\n··addUtmParams(url:·string):·string·{\n····if·(!url)·return·url;\n\n····const·separator·=·url.includes('?')·?·'&'·:·'?';\n····return·`${url}${separator}utm_source=super-productivity&utm_medium=referral&utm_campaign=api-credit`;\n··}\n\n··/**\n···*·Trigger·download·tracking·as·required·by·Unsplash·API·guidelines\n···*·This·must·be·called·when·a·user·selects·a·photo·for·use\n···*·@param·photo·-·The·selected·photo\n···*/\n··trackPhotoDownload(photo:·UnsplashPhoto):·Observable<any>·{\n····if·(!photo.links?.download_location)·{\n······console.warn('No·download_location·available·for·photo',·photo.id);\n······return·of(null);\n····}\n\n····if·(!this.ACCESS_KEY)·{\n······console.warn('No·Unsplash·Access·Key·configured');\n······return·of(null);\n····}\n\n····const·headers·=·{\n······Authorization:·`Client-ID·${this.ACCESS_KEY}`,\n····};\n\n····//·Call·the·download·endpoint·to·track·usage\n····return·this._http.get(photo.links.download_location,·{·headers·}).pipe(\n······catchError((error)·=>·{\n········console.error('Failed·to·track·photo·download:',·error);\n········//·Don't·fail·the·selection·if·tracking·fails\n········return·of(null);\n······}),\n····);\n··}\n}\n",4085 ········"import·{·Injectable,·inject·}·from·'@angular/core';\nimport·{·HttpClient·}·from·'@angular/common/http';\nimport·{·Observable,·of·}·from·'rxjs';\nimport·{·catchError·}·from·'rxjs/operators';\nimport·{·getEnvOptional·}·from·'../../util/env';\n\nexport·interface·UnsplashPhoto·{\n··id:·string;\n··urls:·{\n····raw:·string;\n····full:·string;\n····regular:·string;\n····small:·string;\n····thumb:·string;\n··};\n··links?:·{\n····self?:·string;\n····html?:·string;\n····download?:·string;\n····download_location?:·string;\n··};\n··description:·string·|·null;\n··alt_description:·string·|·null;\n··user:·{\n····name:·string;\n····links?:·{\n······html?:·string;\n····};\n··};\n}\n\nexport·interface·UnsplashSearchResponse·{\n··results:·UnsplashPhoto[];\n··total:·number;\n··total_pages:·number;\n}\n\n@Injectable({\n··providedIn:·'root',\n})\nexport·class·UnsplashService·{\n··private·_http·=·inject(HttpClient);\n\n··private·readonly·API_URL·=·'https://api.unsplash.com';\n··//·Register·your·app·at·https://unsplash.com/developers?utm_source=super-productivity&utm_medium=referral&utm_campaign=api-credit·for·a·free·Access·Key·(50·req/hour)\n··//·The·Access·Key·is·used·with·\"Client-ID\"·prefix·in·the·Authorization·header\n··private·readonly·ACCESS_KEY·=·getEnvOptional('UNSPLASH_KEY');\n\n··isAvailable():·boolean·{\n····return·!!this.ACCESS_KEY;\n··}\n\n··searchPhotos(query:·string,·page·=·1):·Observable<UnsplashSearchResponse>·{\n····if·(!query·||·query.trim()·===·'')·{\n······return·of({·results:·[],·total:·0,·total_pages:·0·});\n····}\n\n····if·(!this.ACCESS_KEY)·{\n······console.warn(\n········'No·Unsplash·Access·Key·configured.·Register·at·https://unsplash.com/developers?utm_source=super-productivity&utm_medium=referral&utm_campaign=api-credit',\n······);\n······return·of({·results:·[],·total:·0,·total_pages:·0·});\n····}\n\n····const·params·=·{\n······query:·query.trim(),\n······page:·page.toString(),\n······per_page:·'20',\n······orientation:·'landscape',\n····};\n\n····const·url·=·`${this.API_URL}/search/photos`;\n····const·headers·=·{\n······Authorization:·`Client-ID·${this.ACCESS_KEY}`,\n····};\n\n····return·this._http\n······.get<UnsplashSearchResponse>(url,·{\n········params,\n········headers,\n······})\n······.pipe(\n········catchError((error)·=>·{\n··········console.error('Unsplash·API·error:',·error);\n··········return·of({·results:·[],·total:·0,·total_pages:·0·});\n········}),\n······);\n··}\n\n··getPhotoUrl(\n····photo:·UnsplashPhoto,\n····size:·'thumb'·|·'small'·|·'regular'·=·'regular',\n··):·string·{\n····return·photo.urls[size];\n··}\n\n··/**\n···*·Get·optimized·image·URL·for·backgrounds\n···*·@param·photo·-·The·Unsplash·photo·object\n···*·@param·width·-·Desired·width·(default·2560·for·high·res·displays)\n···*·@param·quality·-·Image·quality·1-100·(default·85)\n···*/\n··getBackgroundImageUrl(photo:·UnsplashPhoto,·width·=·2560,·quality·=·85):·string·{\n····return·`${photo.urls.raw}&w=${width}&q=${quality}&auto=format`;\n··}\n\n··/**\n···*·Add·UTM·parameters·to·Unsplash·attribution·links·as·required\n···*·@param·url·-·The·original·Unsplash·URL\n···*/\n··addUtmParams(url:·string):·string·{\n····if·(!url)·return·url;\n\n····const·separator·=·url.includes('?')·?·'&'·:·'?';\n····return·`${url}${separator}utm_source=super-productivity&utm_medium=referral&utm_campaign=api-credit`;\n··}\n\n··/**\n···*·Trigger·download·tracking·as·required·by·Unsplash·API·guidelines\n···*·This·must·be·called·when·a·user·selects·a·photo·for·use\n···*·@param·photo·-·The·selected·photo\n···*/\n··trackPhotoDownload(photo:·UnsplashPhoto):·Observable<any>·{\n····if·(!photo.links?.download_location)·{\n······console.warn('No·download_location·available·for·photo',·photo.id);\n······return·of(null);\n····}\n\n····if·(!this.ACCESS_KEY)·{\n······console.warn('No·Unsplash·Access·Key·configured');\n······return·of(null);\n····}\n\n····const·headers·=·{\n······Authorization:·`Client-ID·${this.ACCESS_KEY}`,\n····};\n\n····//·Call·the·download·endpoint·to·track·usage\n····return·this._http.get(photo.links.download_location,·{·headers·}).pipe(\n······catchError((error)·=>·{\n········console.error('Failed·to·track·photo·download:',·error);\n········//·Don't·fail·the·selection·if·tracking·fails\n········return·of(null);\n······}),\n····);\n··}\n}\n",
4086 ········"export·const·IS_MAC·=·navigator.platform.toUpperCase().indexOf('MAC')·>=·0;\n",4086 ········"export·const·IS_MAC·=·navigator.platform.toUpperCase().indexOf('MAC')·>=·0;\n",
4087 ········"import·*·as·i0·from·'@angular/core';\nimport·{·InjectionToken,·Injectable,·EventEmitter,·Directive,·Optional,·Inject,·Input,·Output·}·from·'@angular/core';\nimport·{·registerables,·Chart,·defaults·}·from·'chart.js';\nimport·{·merge·}·from·'lodash-es';\nimport·{·BehaviorSubject·}·from·'rxjs';\nimport·{·distinctUntilChanged·}·from·'rxjs/operators';\nconst·NG_CHARTS_CONFIGURATION·=·new·InjectionToken('Configuration·for·ngCharts');\n/**\n·*·Provide·all·the·default·registerable·as·defined·by·Chart.js\n·*/\nfunction·withDefaultRegisterables(...registerables$1)·{\n··return·{\n····registerables:·[...registerables,·...registerables$1]\n··};\n}\n/**\n·*·Provide·configuration·for·ngCharts.·In·most·cases,·you·have·to·pass·it·some·registerables.·So·either\n·*·`withDefaultRegisterables()`,·or·a·custom·list·of·registerables·tailored·to·your·needs·to·reduce·bundle·size.\n·*/\nfunction·provideCharts(...configurations)·{\n··const·config·=·merge({},·...configurations);\n··return·{\n····provide:·NG_CHARTS_CONFIGURATION,\n····useValue:·config\n··};\n}\nlet·ThemeService·=·/*#__PURE__*/(()·=>·{\n··class·ThemeService·{\n····constructor()·{\n······this.colorschemesOptions·=·new·BehaviorSubject(undefined);\n····}\n····setColorschemesOptions(options)·{\n······this.pColorschemesOptions·=·options;\n······this.colorschemesOptions.next(options);\n····}\n····getColorschemesOptions()·{\n······return·this.pColorschemesOptions;\n····}\n····static·{\n······this.\u0275fac·=·function·ThemeService_Factory(__ngFactoryType__)·{\n········return·new·(__ngFactoryType__·||·ThemeService)();\n······};\n····}\n····static·{\n······this.\u0275prov·=·/*·@__PURE__·*/i0.\u0275\u0275defineInjectable({\n········token:·ThemeService,\n········factory:·ThemeService.\u0275fac,\n········providedIn:·'root'\n······});\n····}\n··}\n··return·ThemeService;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nlet·BaseChartDirective·=·/*#__PURE__*/(()·=>·{\n··class·BaseChartDirective·{\n····constructor(element,·zone,·themeService,·config)·{\n······this.zone·=·zone;\n······this.themeService·=·themeService;\n······this.type·=·'bar';\n······this.plugins·=·[];\n······this.chartClick·=·new·EventEmitter();\n······this.chartHover·=·new·EventEmitter();\n······this.subs·=·[];\n······this.themeOverrides·=·{};\n······if·(config?.registerables)·{\n········Chart.register(...config.registerables);\n······}\n······if·(config?.defaults)·{\n········defaults.set(config.defaults);\n······}\n······this.ctx·=·element.nativeElement.getContext('2d');\n······this.subs.push(this.themeService.colorschemesOptions.pipe(distinctUntilChanged()).subscribe(r·=>·this.themeChanged(r)));\n····}\n····ngOnChanges(changes)·{\n······const·requireRender·=·['type'];\n······const·propertyNames·=·Object.getOwnPropertyNames(changes);\n······if·(propertyNames.some(key·=>·requireRender.includes(key))·||·propertyNames.every(key·=>·changes[key].isFirstChange()))·{\n········this.render();\n······}·else·{\n········const·config·=·this.getChartConfiguration();\n········//·Using·assign·to·avoid·changing·the·original·object·reference\n········if·(this.chart)·{\n··········Object.assign(this.chart.config.data,·config.data);\n··········if·(this.chart.config.plugins)·{\n············Object.assign(this.chart.config.plugins,·config.plugins);\n··········}\n··········if·(this.chart.config.options)·{\n············Object.assign(this.chart.config.options,·config.options);\n··········}\n········}\n········this.update();\n······}\n····}\n····ngOnDestroy()·{\n······if·(this.chart)·{\n········this.chart.destroy();\n········this.chart·=·void·0;\n······}\n······this.subs.forEach(s·=>·s.unsubscribe());\n····}\n····render()·{\n······if·(this.chart)·{\n········this.chart.destroy();\n······}\n······return·this.zone.runOutsideAngular(()·=>·this.chart·=·new·Chart(this.ctx,·this.getChartConfiguration()));\n····}\n····update(mode)·{\n······if·(this.chart)·{\n········this.zone.runOutsideAngular(()·=>·this.chart?.update(mode));\n······}\n····}\n····hideDataset(index,·hidden)·{\n······if·(this.chart)·{\n········this.chart.getDatasetMeta(index).hidden·=·hidden;\n········this.update();\n······}\n····}\n····isDatasetHidden(index)·{\n······return·this.chart?.getDatasetMeta(index)?.hidden;\n····}\n····toBase64Image()·{\n······return·this.chart?.toBase64Image();\n····}\n····themeChanged(options)·{\n······this.themeOverrides·=·options;\n······if·(this.chart)·{\n········if·(this.chart.config.options)·{\n··········Object.assign(this.chart.config.options,·this.getChartOptions());\n········}\n········this.update();\n······}\n····}\n····getChartOptions()·{\n······return·merge({\n········onHover:·(event,·active)·=>·{\n··········if·(!this.chartHover.observed·&&·!this.chartHover.observers?.length)·{\n············return;\n··········}\n··········this.zone.run(()·=>·this.chartHover.emit({\n············event,\n············active\n··········}));\n········},\n········onClick:·(event,·active)·=>·{\n··········if·(!this.chartClick.observed·&&·!this.chartClick.observers?.length)·{\n············return;\n··········}\n··········this.zone.run(()·=>·this.chartClick.emit({\n············event,\n············active\n··········}));\n········}\n······},·this.themeOverrides,·this.options,·{\n········plugins:·{\n··········legend:·{\n············display:·this.legend\n··········}\n········}\n······});\n····}\n····getChartConfiguration()·{\n······return·{\n········type:·this.type,\n········data:·this.getChartData(),\n········options:·this.getChartOptions(),\n········plugins:·this.plugins\n······};\n····}\n····getChartData()·{\n······return·this.data·?·this.data·:·{\n········labels:·this.labels·||·[],\n········datasets:·this.datasets·||·[]\n······};\n····}\n····static·{\n······this.\u0275fac·=·function·BaseChartDirective_Factory(__ngFactoryType__)·{\n········return·new·(__ngFactoryType__·||·BaseChartDirective)(i0.\u0275\u0275directiveInject(i0.ElementRef),·i0.\u0275\u0275directiveInject(i0.NgZone),·i0.\u0275\u0275directiveInject(ThemeService),·i0.\u0275\u0275directiveInject(NG_CHARTS_CONFIGURATION,·8));\n······};\n····}\n····static·{\n······this.\u0275dir·=·/*·@__PURE__·*/i0.\u0275\u0275defineDirective({\n········type:·BaseChartDirective,\n········selectors:·[[\"canvas\",·\"baseChart\",·\"\"]],\n········inputs:·{\n··········type:·\"type\",\n··········legend:·\"legend\",\n··········data:·\"data\",\n··········options:·\"options\",\n··········plugins:·\"plugins\",\n··········labels:·\"labels\",\n··········datasets:·\"datasets\"\n········},\n········outputs:·{\n··········chartClick:·\"chartClick\",\n··········chartHover:·\"chartHover\"\n········},\n········exportAs:·[\"base-chart\"],\n········features:·[i0.\u0275\u0275NgOnChangesFeature]\n······});\n····}\n··}\n··return·BaseChartDirective;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n\n/*\n·*·Public·API·Surface·of·ng2-charts\n·*/\n\n/**\n·*·Generated·bundle·index.·Do·not·edit.\n·*/\n\nexport·{·BaseChartDirective,·NG_CHARTS_CONFIGURATION,·ThemeService,·provideCharts,·withDefaultRegisterables·};\n",4087 ········"import·*·as·i0·from·'@angular/core';\nimport·{·InjectionToken,·Injectable,·EventEmitter,·Directive,·Optional,·Inject,·Input,·Output·}·from·'@angular/core';\nimport·{·registerables,·Chart,·defaults·}·from·'chart.js';\nimport·{·merge·}·from·'lodash-es';\nimport·{·BehaviorSubject·}·from·'rxjs';\nimport·{·distinctUntilChanged·}·from·'rxjs/operators';\nconst·NG_CHARTS_CONFIGURATION·=·new·InjectionToken('Configuration·for·ngCharts');\n/**\n·*·Provide·all·the·default·registerable·as·defined·by·Chart.js\n·*/\nfunction·withDefaultRegisterables(...registerables$1)·{\n··return·{\n····registerables:·[...registerables,·...registerables$1]\n··};\n}\n/**\n·*·Provide·configuration·for·ngCharts.·In·most·cases,·you·have·to·pass·it·some·registerables.·So·either\n·*·`withDefaultRegisterables()`,·or·a·custom·list·of·registerables·tailored·to·your·needs·to·reduce·bundle·size.\n·*/\nfunction·provideCharts(...configurations)·{\n··const·config·=·merge({},·...configurations);\n··return·{\n····provide:·NG_CHARTS_CONFIGURATION,\n····useValue:·config\n··};\n}\nlet·ThemeService·=·/*#__PURE__*/(()·=>·{\n··class·ThemeService·{\n····constructor()·{\n······this.colorschemesOptions·=·new·BehaviorSubject(undefined);\n····}\n····setColorschemesOptions(options)·{\n······this.pColorschemesOptions·=·options;\n······this.colorschemesOptions.next(options);\n····}\n····getColorschemesOptions()·{\n······return·this.pColorschemesOptions;\n····}\n····static·{\n······this.\u0275fac·=·function·ThemeService_Factory(__ngFactoryType__)·{\n········return·new·(__ngFactoryType__·||·ThemeService)();\n······};\n····}\n····static·{\n······this.\u0275prov·=·/*·@__PURE__·*/i0.\u0275\u0275defineInjectable({\n········token:·ThemeService,\n········factory:·ThemeService.\u0275fac,\n········providedIn:·'root'\n······});\n····}\n··}\n··return·ThemeService;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\nlet·BaseChartDirective·=·/*#__PURE__*/(()·=>·{\n··class·BaseChartDirective·{\n····constructor(element,·zone,·themeService,·config)·{\n······this.zone·=·zone;\n······this.themeService·=·themeService;\n······this.type·=·'bar';\n······this.plugins·=·[];\n······this.chartClick·=·new·EventEmitter();\n······this.chartHover·=·new·EventEmitter();\n······this.subs·=·[];\n······this.themeOverrides·=·{};\n······if·(config?.registerables)·{\n········Chart.register(...config.registerables);\n······}\n······if·(config?.defaults)·{\n········defaults.set(config.defaults);\n······}\n······this.ctx·=·element.nativeElement.getContext('2d');\n······this.subs.push(this.themeService.colorschemesOptions.pipe(distinctUntilChanged()).subscribe(r·=>·this.themeChanged(r)));\n····}\n····ngOnChanges(changes)·{\n······const·requireRender·=·['type'];\n······const·propertyNames·=·Object.getOwnPropertyNames(changes);\n······if·(propertyNames.some(key·=>·requireRender.includes(key))·||·propertyNames.every(key·=>·changes[key].isFirstChange()))·{\n········this.render();\n······}·else·{\n········const·config·=·this.getChartConfiguration();\n········//·Using·assign·to·avoid·changing·the·original·object·reference\n········if·(this.chart)·{\n··········Object.assign(this.chart.config.data,·config.data);\n··········if·(this.chart.config.plugins)·{\n············Object.assign(this.chart.config.plugins,·config.plugins);\n··········}\n··········if·(this.chart.config.options)·{\n············Object.assign(this.chart.config.options,·config.options);\n··········}\n········}\n········this.update();\n······}\n····}\n····ngOnDestroy()·{\n······if·(this.chart)·{\n········this.chart.destroy();\n········this.chart·=·void·0;\n······}\n······this.subs.forEach(s·=>·s.unsubscribe());\n····}\n····render()·{\n······if·(this.chart)·{\n········this.chart.destroy();\n······}\n······return·this.zone.runOutsideAngular(()·=>·this.chart·=·new·Chart(this.ctx,·this.getChartConfiguration()));\n····}\n····update(mode)·{\n······if·(this.chart)·{\n········this.zone.runOutsideAngular(()·=>·this.chart?.update(mode));\n······}\n····}\n····hideDataset(index,·hidden)·{\n······if·(this.chart)·{\n········this.chart.getDatasetMeta(index).hidden·=·hidden;\n········this.update();\n······}\n····}\n····isDatasetHidden(index)·{\n······return·this.chart?.getDatasetMeta(index)?.hidden;\n····}\n····toBase64Image()·{\n······return·this.chart?.toBase64Image();\n····}\n····themeChanged(options)·{\n······this.themeOverrides·=·options;\n······if·(this.chart)·{\n········if·(this.chart.config.options)·{\n··········Object.assign(this.chart.config.options,·this.getChartOptions());\n········}\n········this.update();\n······}\n····}\n····getChartOptions()·{\n······return·merge({\n········onHover:·(event,·active)·=>·{\n··········if·(!this.chartHover.observed·&&·!this.chartHover.observers?.length)·{\n············return;\n··········}\n··········this.zone.run(()·=>·this.chartHover.emit({\n············event,\n············active\n··········}));\n········},\n········onClick:·(event,·active)·=>·{\n··········if·(!this.chartClick.observed·&&·!this.chartClick.observers?.length)·{\n············return;\n··········}\n··········this.zone.run(()·=>·this.chartClick.emit({\n············event,\n············active\n··········}));\n········}\n······},·this.themeOverrides,·this.options,·{\n········plugins:·{\n··········legend:·{\n············display:·this.legend\n··········}\n········}\n······});\n····}\n····getChartConfiguration()·{\n······return·{\n········type:·this.type,\n········data:·this.getChartData(),\n········options:·this.getChartOptions(),\n········plugins:·this.plugins\n······};\n····}\n····getChartData()·{\n······return·this.data·?·this.data·:·{\n········labels:·this.labels·||·[],\n········datasets:·this.datasets·||·[]\n······};\n····}\n····static·{\n······this.\u0275fac·=·function·BaseChartDirective_Factory(__ngFactoryType__)·{\n········return·new·(__ngFactoryType__·||·BaseChartDirective)(i0.\u0275\u0275directiveInject(i0.ElementRef),·i0.\u0275\u0275directiveInject(i0.NgZone),·i0.\u0275\u0275directiveInject(ThemeService),·i0.\u0275\u0275directiveInject(NG_CHARTS_CONFIGURATION,·8));\n······};\n····}\n····static·{\n······this.\u0275dir·=·/*·@__PURE__·*/i0.\u0275\u0275defineDirective({\n········type:·BaseChartDirective,\n········selectors:·[[\"canvas\",·\"baseChart\",·\"\"]],\n········inputs:·{\n··········type:·\"type\",\n··········legend:·\"legend\",\n··········data:·\"data\",\n··········options:·\"options\",\n··········plugins:·\"plugins\",\n··········labels:·\"labels\",\n··········datasets:·\"datasets\"\n········},\n········outputs:·{\n··········chartClick:·\"chartClick\",\n··········chartHover:·\"chartHover\"\n········},\n········exportAs:·[\"base-chart\"],\n········features:·[i0.\u0275\u0275NgOnChangesFeature]\n······});\n····}\n··}\n··return·BaseChartDirective;\n})();\n(()·=>·{\n··(typeof·ngDevMode·===·\"undefined\"·||·ngDevMode)·&&·void·0;\n})();\n\n/*\n·*·Public·API·Surface·of·ng2-charts\n·*/\n\n/**\n·*·Generated·bundle·index.·Do·not·edit.\n·*/\n\nexport·{·BaseChartDirective,·NG_CHARTS_CONFIGURATION,·ThemeService,·provideCharts,·withDefaultRegisterables·};\n",
4088 ········"export·const·IS_FIREFOX·=·navigator.userAgent.toLowerCase().indexOf('firefox')·>·-1;\n",4088 ········"export·const·IS_FIREFOX·=·navigator.userAgent.toLowerCase().indexOf('firefox')·>·-1;\n",
4089 ········"import·{·inject,·Injectable·}·from·'@angular/core';\nimport·{·DOCUMENT·}·from·'@angular/common';\nimport·{·Log·}·from·'../log';\n\nexport·interface·CustomTheme·{\n··id:·string;\n··name:·string;\n··url:·string;\n··requiredMode?:·'dark'·|·'light'·|·'system';\n}\n\nexport·const·AVAILABLE_CUSTOM_THEMES:·CustomTheme[]·=·[\n··{\n····id:·'default',\n····name:·'Default',\n····url:·'',\n····requiredMode:·'system',\n··},\n··{\n····id:·'arc',\n····name:·'Arc',\n····url:·'assets/themes/arc.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'dark-base',\n····name:·'Dark·Base',\n····url:·'assets/themes/dark-base.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'dracula',\n····name:·'Dracula',\n····url:·'assets/themes/dracula.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'everforest',\n····name:·'Everforest',\n····url:·'assets/themes/everforest.css',\n····requiredMode:·'system',\n··},\n··{\n····id:·'rainbow',\n····name:·'Rainbow',\n····url:·'assets/themes/rainbow.css',\n····requiredMode:·'system',\n··},\n··{\n····id:·'glass',\n····name:·'Glass',\n····url:·'assets/themes/glass.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'nord-polar-night',\n····name:·'Nord·Polar·Night',\n····url:·'assets/themes/nord-polar-night.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'nord-snow-storm',\n····name:·'Nord·Snow·Storm',\n····url:·'assets/themes/nord-snow-storm.css',\n····requiredMode:·'light',\n··},\n];\n\n@Injectable({·providedIn:·'root'·})\nexport·class·CustomThemeService·{\n··private·document·=·inject<Document>(DOCUMENT);\n··private·currentThemeLinkElement:·HTMLLinkElement·|·null·=·null;\n\n··loadTheme(themeId:·string):·void·{\n····const·theme·=·AVAILABLE_CUSTOM_THEMES.find((t)·=>·t.id·===·themeId);\n\n····if·(!theme)·{\n······Log.err(`Theme·with·id·${themeId}·not·found`);\n······return;\n····}\n\n····//·Remove·existing·theme\n····this.unloadCurrentTheme();\n\n····//·If·default·theme,·no·need·to·load·external·CSS\n····if·(theme.id·===·'default'·||·!theme.url)·{\n······return;\n····}\n\n····//·Create·new·link·element·for·theme\n····const·linkElement·=·this.document.createElement('link');\n····linkElement.rel·=·'stylesheet';\n····linkElement.href·=·theme.url;\n····linkElement.id·=·'custom-theme-stylesheet';\n\n····//·Add·to·head\n····this.document.head.appendChild(linkElement);\n····this.currentThemeLinkElement·=·linkElement;\n··}\n\n··unloadCurrentTheme():·void·{\n····if·(this.currentThemeLinkElement)·{\n······this.currentThemeLinkElement.remove();\n······this.currentThemeLinkElement·=·null;\n····}\n\n····//·Also·remove·any·existing·custom·theme·stylesheets\n····const·existingThemeLink·=·this.document.getElementById('custom-theme-stylesheet');\n····if·(existingThemeLink)·{\n······existingThemeLink.remove();\n····}\n··}\n\n··getAvailableThemes():·CustomTheme[]·{\n····return·AVAILABLE_CUSTOM_THEMES;\n··}\n}\n",4089 ········"import·{·inject,·Injectable·}·from·'@angular/core';\nimport·{·DOCUMENT·}·from·'@angular/common';\nimport·{·Log·}·from·'../log';\n\nexport·interface·CustomTheme·{\n··id:·string;\n··name:·string;\n··url:·string;\n··requiredMode?:·'dark'·|·'light'·|·'system';\n}\n\nexport·const·AVAILABLE_CUSTOM_THEMES:·CustomTheme[]·=·[\n··{\n····id:·'default',\n····name:·'Default',\n····url:·'',\n····requiredMode:·'system',\n··},\n··{\n····id:·'arc',\n····name:·'Arc',\n····url:·'assets/themes/arc.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'dark-base',\n····name:·'Dark·Base',\n····url:·'assets/themes/dark-base.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'dracula',\n····name:·'Dracula',\n····url:·'assets/themes/dracula.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'everforest',\n····name:·'Everforest',\n····url:·'assets/themes/everforest.css',\n····requiredMode:·'system',\n··},\n··{\n····id:·'rainbow',\n····name:·'Rainbow',\n····url:·'assets/themes/rainbow.css',\n····requiredMode:·'system',\n··},\n··{\n····id:·'glass',\n····name:·'Glass',\n····url:·'assets/themes/glass.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'nord-polar-night',\n····name:·'Nord·Polar·Night',\n····url:·'assets/themes/nord-polar-night.css',\n····requiredMode:·'dark',\n··},\n··{\n····id:·'nord-snow-storm',\n····name:·'Nord·Snow·Storm',\n····url:·'assets/themes/nord-snow-storm.css',\n····requiredMode:·'light',\n··},\n];\n\n@Injectable({·providedIn:·'root'·})\nexport·class·CustomThemeService·{\n··private·document·=·inject<Document>(DOCUMENT);\n··private·currentThemeLinkElement:·HTMLLinkElement·|·null·=·null;\n\n··loadTheme(themeId:·string):·void·{\n····const·theme·=·AVAILABLE_CUSTOM_THEMES.find((t)·=>·t.id·===·themeId);\n\n····if·(!theme)·{\n······Log.err(`Theme·with·id·${themeId}·not·found`);\n······return;\n····}\n\n····//·Remove·existing·theme\n····this.unloadCurrentTheme();\n\n····//·If·default·theme,·no·need·to·load·external·CSS\n····if·(theme.id·===·'default'·||·!theme.url)·{\n······return;\n····}\n\n····//·Create·new·link·element·for·theme\n····const·linkElement·=·this.document.createElement('link');\n····linkElement.rel·=·'stylesheet';\n····linkElement.href·=·theme.url;\n····linkElement.id·=·'custom-theme-stylesheet';\n\n····//·Add·to·head\n····this.document.head.appendChild(linkElement);\n····this.currentThemeLinkElement·=·linkElement;\n··}\n\n··unloadCurrentTheme():·void·{\n····if·(this.currentThemeLinkElement)·{\n······this.currentThemeLinkElement.remove();\n······this.currentThemeLinkElement·=·null;\n····}\n\n····//·Also·remove·any·existing·custom·theme·stylesheets\n····const·existingThemeLink·=·this.document.getElementById('custom-theme-stylesheet');\n····if·(existingThemeLink)·{\n······existingThemeLink.remove();\n····}\n··}\n\n··getAvailableThemes():·CustomTheme[]·{\n····return·AVAILABLE_CUSTOM_THEMES;\n··}\n}\n",
4090 ········"import·{·effect,·inject,·Injectable,·signal·}·from·'@angular/core';\nimport·{·toObservable,·toSignal·}·from·'@angular/core/rxjs-interop';\nimport·{·BodyClass,·IS_ELECTRON·}·from·'../../app.constants';\nimport·{·IS_MAC·}·from·'../../util/is-mac';\nimport·{·distinctUntilChanged,·map,·startWith,·switchMap,·take·}·from·'rxjs/operators';\nimport·{·IS_TOUCH_ONLY·}·from·'../../util/is-touch-only';\nimport·{·MaterialCssVarsService·}·from·'angular-material-css-vars';\nimport·{·DOCUMENT·}·from·'@angular/common';\nimport·{·MatIconRegistry·}·from·'@angular/material/icon';\nimport·{·DomSanitizer·}·from·'@angular/platform-browser';\nimport·{·ChromeExtensionInterfaceService·}·from·'../chrome-extension-interface/chrome-extension-interface.service';\nimport·{·ThemeService·as·NgChartThemeService·}·from·'ng2-charts';\nimport·{·GlobalConfigService·}·from·'../../features/config/global-config.service';\nimport·{·WorkContextThemeCfg·}·from·'../../features/work-context/work-context.model';\nimport·{·WorkContextService·}·from·'../../features/work-context/work-context.service';\nimport·{·combineLatest,·fromEvent,·Observable,·of·}·from·'rxjs';\nimport·{·IS_FIREFOX·}·from·'../../util/is-firefox';\nimport·{·ImexViewService·}·from·'../../imex/imex-meta/imex-view.service';\nimport·{·IS_MOUSE_PRIMARY,·IS_TOUCH_PRIMARY·}·from·'../../util/is-mouse-primary';\nimport·{·ChartConfiguration·}·from·'chart.js';\nimport·{·IS_ANDROID_WEB_VIEW·}·from·'../../util/is-android-web-view';\nimport·{·androidInterface·}·from·'../../features/android/android-interface';\nimport·{·HttpClient·}·from·'@angular/common/http';\nimport·{·LS·}·from·'../persistence/storage-keys.const';\nimport·{·CustomThemeService·}·from·'./custom-theme.service';\nimport·{·Log·}·from·'../log';\n\nexport·type·DarkModeCfg·=·'dark'·|·'light'·|·'system';\n\n@Injectable({·providedIn:·'root'·})\nexport·class·GlobalThemeService·{\n··private·document·=·inject<Document>(DOCUMENT);\n··private·_materialCssVarsService·=·inject(MaterialCssVarsService);\n··private·_workContextService·=·inject(WorkContextService);\n··private·_globalConfigService·=·inject(GlobalConfigService);\n··private·_matIconRegistry·=·inject(MatIconRegistry);\n··private·_domSanitizer·=·inject(DomSanitizer);\n··private·_chartThemeService·=·inject(NgChartThemeService);\n··private·_chromeExtensionInterfaceService·=·inject(ChromeExtensionInterfaceService);\n··private·_imexMetaService·=·inject(ImexViewService);\n··private·_http·=·inject(HttpClient);\n··private·_customThemeService·=·inject(CustomThemeService);\n\n··darkMode·=·signal<DarkModeCfg>(\n····(localStorage.getItem(LS.DARK_MODE)·as·DarkModeCfg)·||·'system',\n··);\n\n··private·_isDarkThemeObs$:·Observable<boolean>·=·toObservable(this.darkMode).pipe(\n····switchMap((darkMode)·=>·{\n······switch·(darkMode)·{\n········case·'dark':\n··········return·of(true);\n········case·'light':\n··········return·of(false);\n········default:\n··········const·darkModePreference·=·window.matchMedia('(prefers-color-scheme:·dark)');\n··········return·fromEvent(darkModePreference,·'change').pipe(\n············map((e:·any)·=>·e.matches),\n············startWith(darkModePreference.matches),\n··········);\n······}\n····}),\n····distinctUntilChanged(),\n··);\n\n··isDarkTheme·=·toSignal(this._isDarkThemeObs$,·{·initialValue:·false·});\n\n··private·_backgroundImgObs$:·Observable<string·|·null·|·undefined>·=·combineLatest([\n····this._workContextService.currentTheme$,\n····this._isDarkThemeObs$,\n··]).pipe(\n····map(([theme,·isDarkMode])·=>\n······isDarkMode·?·theme.backgroundImageDark·:·theme.backgroundImageLight,\n····),\n····distinctUntilChanged(),\n··);\n\n··backgroundImg·=·toSignal(this._backgroundImgObs$);\n\n··init():·void·{\n····//·This·is·here·to·make·web·page·reloads·on·non-work-context·pages·at·least·usable\n····this._setBackgroundGradient(true);\n····this._initIcons();\n····this._initHandlersForInitialBodyClasses();\n····this._initThemeWatchers();\n\n····//·Set·up·dark·mode·persistence·effect\n····effect(\n······()·=>·{\n········const·darkMode·=·this.darkMode();\n········localStorage.setItem(LS.DARK_MODE,·darkMode);\n······},\n······{·allowSignalWrites:·false·},\n····);\n\n····//·Set·up·reactive·custom·theme·updates\n····this._setupCustomThemeEffect();\n··}\n\n··private·_setDarkTheme(isDarkTheme:·boolean):·void·{\n····this._materialCssVarsService.setDarkTheme(isDarkTheme);\n····this._setChartTheme(isDarkTheme);\n····//·this._materialCssVarsService.setDarkTheme(true);\n····//·this._materialCssVarsService.setDarkTheme(false);\n··}\n\n··private·_setColorTheme(theme:·WorkContextThemeCfg):·void·{\n····this._materialCssVarsService.setAutoContrastEnabled(!!theme.isAutoContrast);\n····this._setBackgroundGradient(!!theme.isDisableBackgroundGradient);\n\n····//·NOTE:·setting·undefined·values·does·not·seem·to·be·a·problem·so·we·use·!\n····if·(!theme.isAutoContrast)·{\n······this._materialCssVarsService.setContrastColorThresholdPrimary(theme.huePrimary!);\n······this._materialCssVarsService.setContrastColorThresholdAccent(theme.hueAccent!);\n······this._materialCssVarsService.setContrastColorThresholdWarn(theme.hueWarn!);\n····}\n\n····this._materialCssVarsService.setPrimaryColor(theme.primary!);\n····this._materialCssVarsService.setAccentColor(theme.accent!);\n····this._materialCssVarsService.setWarnColor(theme.warn!);\n··}\n\n··private·_setBackgroundGradient(isDisableBackgroundGradient:·boolean):·void·{\n····if·(isDisableBackgroundGradient)·{\n······this.document.body.classList.add(BodyClass.isDisableBackgroundGradient);\n······this.document.body.classList.remove(BodyClass.isEnabledBackgroundGradient);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isEnabledBackgroundGradient);\n······this.document.body.classList.remove(BodyClass.isDisableBackgroundGradient);\n····}\n··}\n\n··private·_initIcons():·void·{\n····const·icons:·[string,·string][]·=·[\n······['sp',·'assets/icons/sp.svg'],\n······['play',·'assets/icons/play.svg'],\n······['github',·'assets/icons/github.svg'],\n······['gitlab',·'assets/icons/gitlab.svg'],\n······['jira',·'assets/icons/jira.svg'],\n······['caldav',·'assets/icons/caldav.svg'],\n······['open_project',·'assets/icons/open-project.svg'],\n······['drag_handle',·'assets/icons/drag-handle.svg'],\n······['remove_today',·'assets/icons/remove-today-48px.svg'],\n······['estimate_remaining',·'assets/icons/estimate-remaining.svg'],\n······['working_today',·'assets/icons/working-today.svg'],\n······['repeat',·'assets/icons/repeat.svg'],\n······['gitea',·'assets/icons/gitea.svg'],\n······['redmine',·'assets/icons/redmine.svg'],\n······['calendar',·'assets/icons/calendar.svg'],\n······['early_on',·'assets/icons/early-on.svg'],\n······['tomorrow',·'assets/icons/tomorrow.svg'],\n······['next_week',·'assets/icons/next-week.svg'],\n······['keep',·'assets/icons/keep.svg'],\n······['keep_filled',·'assets/icons/keep-filled.svg'],\n····];\n\n····//·todo·test·if·can·be·removed·with·airplane·mode·and·wifi·without·internet\n····icons.forEach(([name,·path])·=>·{\n······this._matIconRegistry.addSvgIcon(\n········name,\n········this._domSanitizer.bypassSecurityTrustResourceUrl(path),\n······);\n····});\n\n····this.preloadIcons(icons);\n··}\n\n··preloadIcons(icons:·[string,·string][]):·Promise<void[]>·{\n····//·Map·each·icon·name·to·a·promise·that·fetches·and·registers·the·icon.\n····const·iconPromises·=·icons.map(([iconName,·url])·=>·{\n······//·Construct·the·URL·for·the·SVG·file.\n······//·Adjust·the·path·if·your·SVGs·are·located·elsewhere.\n······return·this._http\n········.get(url,·{·responseType:·'text'·})\n········.toPromise()\n········.then((svg)·=>·{\n··········//·Register·the·fetched·SVG·as·an·inline·icon.\n··········this._matIconRegistry.addSvgIconLiteral(\n············iconName,\n············this._domSanitizer.bypassSecurityTrustHtml(svg),\n··········);\n········})\n········.catch((error)·=>·{\n··········Log.err(`Error·loading·icon:·${iconName}·from·${url}`,·error);\n········});\n····});\n\n····//·Return·a·promise·that·resolves·when·all·icons·have·been·processed.\n····return·Promise.all(iconPromises);\n··}\n\n··private·_initThemeWatchers():·void·{\n····//·init·theme·watchers\n····this._workContextService.currentTheme$.subscribe((theme:·WorkContextThemeCfg)·=>\n······this._setColorTheme(theme),\n····);\n····this._isDarkThemeObs$.subscribe((isDarkTheme)·=>·this._setDarkTheme(isDarkTheme));\n··}\n\n··private·_initHandlersForInitialBodyClasses():·void·{\n····this.document.body.classList.add(BodyClass.isNoAdvancedFeatures);\n\n····if·(!IS_FIREFOX)·{\n······this.document.body.classList.add(BodyClass.isNoFirefox);\n····}\n\n····if·(IS_MAC)·{\n······this.document.body.classList.add(BodyClass.isMac);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isNoMac);\n····}\n\n····if·(IS_ELECTRON)·{\n······this.document.body.classList.add(BodyClass.isElectron);\n······this.document.body.classList.add(BodyClass.isAdvancedFeatures);\n······this.document.body.classList.remove(BodyClass.isNoAdvancedFeatures);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isWeb);\n······this._chromeExtensionInterfaceService.onReady$.pipe(take(1)).subscribe(()·=>·{\n········this.document.body.classList.add(BodyClass.isExtension);\n········this.document.body.classList.add(BodyClass.isAdvancedFeatures);\n········this.document.body.classList.remove(BodyClass.isNoAdvancedFeatures);\n······});\n····}\n\n····if·(IS_ANDROID_WEB_VIEW)·{\n······androidInterface.isKeyboardShown$.subscribe((isShown)·=>·{\n········Log.log('isShown',·isShown);\n\n········this.document.body.classList.remove(BodyClass.isAndroidKeyboardHidden);\n········this.document.body.classList.remove(BodyClass.isAndroidKeyboardShown);\n········this.document.body.classList.add(\n··········isShown·?·BodyClass.isAndroidKeyboardShown·:·BodyClass.isAndroidKeyboardHidden,\n········);\n······});\n····}\n\n····//·Use·effect·to·reactively·update·animation·class\n····effect(()·=>·{\n······const·misc·=·this._globalConfigService.misc();\n······if·(misc?.isDisableAnimations)·{\n········this.document.body.classList.add(BodyClass.isDisableAnimations);\n······}·else·{\n········this.document.body.classList.remove(BodyClass.isDisableAnimations);\n······}\n····});\n\n····this._imexMetaService.isDataImportInProgress$.subscribe((isInProgress)·=>·{\n······//·timer(1000,·5000)\n······//···.pipe(map((val)·=>·val·%·2·===·0))\n······//···.subscribe((isInProgress)·=>·{\n······if·(isInProgress)·{\n········this.document.body.classList.add(BodyClass.isDataImportInProgress);\n······}·else·{\n········this.document.body.classList.remove(BodyClass.isDataImportInProgress);\n······}\n····});\n\n····if·(IS_TOUCH_ONLY)·{\n······this.document.body.classList.add(BodyClass.isTouchOnly);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isNoTouchOnly);\n····}\n\n····if·(IS_MOUSE_PRIMARY)·{\n······this.document.body.classList.add(BodyClass.isMousePrimary);\n····}·else·if·(IS_TOUCH_PRIMARY)·{\n······this.document.body.classList.add(BodyClass.isTouchPrimary);\n····}\n··}\n\n··private·_setChartTheme(isDarkTheme:·boolean):·void·{\n····const·overrides:·ChartConfiguration['options']·=·isDarkTheme\n······?·{\n··········//·legend:·{\n··········//···labels:·{·fontColor:·'white'·},\n··········//·},\n··········scales:·{\n············x:·{\n··············ticks:·{\n················color:·'white',\n··············},\n··············grid:·{\n················color:·'rgba(255,255,255,0.1)',\n··············},\n············},\n\n············y:·{\n··············ticks:·{\n················color:·'white',\n··············},\n··············grid:·{\n················color:·'rgba(255,255,255,0.1)',\n··············},\n············},\n··········},\n········}\n······:·{\n··········scales:·{},\n········};\n····this._chartThemeService.setColorschemesOptions(overrides);\n··}\n\n··private·_setupCustomThemeEffect():·void·{\n····//·Track·previous·theme·to·avoid·unnecessary·reloads\n····let·previousThemeId:·string·|·null·=·null;\n\n····//·Set·up·effect·to·reactively·update·custom·theme·when·config·changes\n····effect(()·=>·{\n······const·misc·=·this._globalConfigService.misc();\n······const·themeId·=·misc?.customTheme·||·'default';\n\n······//·Only·load·theme·if·it·has·changed\n······if·(themeId·!==·previousThemeId)·{\n········this._customThemeService.loadTheme(themeId);\n········previousThemeId·=·themeId;\n······}\n····});\n··}\n}\n",4090 ········"import·{·effect,·inject,·Injectable,·signal·}·from·'@angular/core';\nimport·{·toObservable,·toSignal·}·from·'@angular/core/rxjs-interop';\nimport·{·BodyClass,·IS_ELECTRON·}·from·'../../app.constants';\nimport·{·IS_MAC·}·from·'../../util/is-mac';\nimport·{·distinctUntilChanged,·map,·startWith,·switchMap,·take·}·from·'rxjs/operators';\nimport·{·IS_TOUCH_ONLY·}·from·'../../util/is-touch-only';\nimport·{·MaterialCssVarsService·}·from·'angular-material-css-vars';\nimport·{·DOCUMENT·}·from·'@angular/common';\nimport·{·MatIconRegistry·}·from·'@angular/material/icon';\nimport·{·DomSanitizer·}·from·'@angular/platform-browser';\nimport·{·ChromeExtensionInterfaceService·}·from·'../chrome-extension-interface/chrome-extension-interface.service';\nimport·{·ThemeService·as·NgChartThemeService·}·from·'ng2-charts';\nimport·{·GlobalConfigService·}·from·'../../features/config/global-config.service';\nimport·{·WorkContextThemeCfg·}·from·'../../features/work-context/work-context.model';\nimport·{·WorkContextService·}·from·'../../features/work-context/work-context.service';\nimport·{·combineLatest,·fromEvent,·Observable,·of·}·from·'rxjs';\nimport·{·IS_FIREFOX·}·from·'../../util/is-firefox';\nimport·{·ImexViewService·}·from·'../../imex/imex-meta/imex-view.service';\nimport·{·IS_MOUSE_PRIMARY,·IS_TOUCH_PRIMARY·}·from·'../../util/is-mouse-primary';\nimport·{·ChartConfiguration·}·from·'chart.js';\nimport·{·IS_ANDROID_WEB_VIEW·}·from·'../../util/is-android-web-view';\nimport·{·androidInterface·}·from·'../../features/android/android-interface';\nimport·{·HttpClient·}·from·'@angular/common/http';\nimport·{·LS·}·from·'../persistence/storage-keys.const';\nimport·{·CustomThemeService·}·from·'./custom-theme.service';\nimport·{·Log·}·from·'../log';\n\nexport·type·DarkModeCfg·=·'dark'·|·'light'·|·'system';\n\n@Injectable({·providedIn:·'root'·})\nexport·class·GlobalThemeService·{\n··private·document·=·inject<Document>(DOCUMENT);\n··private·_materialCssVarsService·=·inject(MaterialCssVarsService);\n··private·_workContextService·=·inject(WorkContextService);\n··private·_globalConfigService·=·inject(GlobalConfigService);\n··private·_matIconRegistry·=·inject(MatIconRegistry);\n··private·_domSanitizer·=·inject(DomSanitizer);\n··private·_chartThemeService·=·inject(NgChartThemeService);\n··private·_chromeExtensionInterfaceService·=·inject(ChromeExtensionInterfaceService);\n··private·_imexMetaService·=·inject(ImexViewService);\n··private·_http·=·inject(HttpClient);\n··private·_customThemeService·=·inject(CustomThemeService);\n\n··darkMode·=·signal<DarkModeCfg>(\n····(localStorage.getItem(LS.DARK_MODE)·as·DarkModeCfg)·||·'system',\n··);\n\n··private·_isDarkThemeObs$:·Observable<boolean>·=·toObservable(this.darkMode).pipe(\n····switchMap((darkMode)·=>·{\n······switch·(darkMode)·{\n········case·'dark':\n··········return·of(true);\n········case·'light':\n··········return·of(false);\n········default:\n··········const·darkModePreference·=·window.matchMedia('(prefers-color-scheme:·dark)');\n··········return·fromEvent(darkModePreference,·'change').pipe(\n············map((e:·any)·=>·e.matches),\n············startWith(darkModePreference.matches),\n··········);\n······}\n····}),\n····distinctUntilChanged(),\n··);\n\n··isDarkTheme·=·toSignal(this._isDarkThemeObs$,·{·initialValue:·false·});\n\n··private·_backgroundImgObs$:·Observable<string·|·null·|·undefined>·=·combineLatest([\n····this._workContextService.currentTheme$,\n····this._isDarkThemeObs$,\n··]).pipe(\n····map(([theme,·isDarkMode])·=>\n······isDarkMode·?·theme.backgroundImageDark·:·theme.backgroundImageLight,\n····),\n····distinctUntilChanged(),\n··);\n\n··backgroundImg·=·toSignal(this._backgroundImgObs$);\n\n··init():·void·{\n····//·This·is·here·to·make·web·page·reloads·on·non-work-context·pages·at·least·usable\n····this._setBackgroundGradient(true);\n····this._initIcons();\n····this._initHandlersForInitialBodyClasses();\n····this._initThemeWatchers();\n\n····//·Set·up·dark·mode·persistence·effect\n····effect(\n······()·=>·{\n········const·darkMode·=·this.darkMode();\n········localStorage.setItem(LS.DARK_MODE,·darkMode);\n······},\n······{·allowSignalWrites:·false·},\n····);\n\n····//·Set·up·reactive·custom·theme·updates\n····this._setupCustomThemeEffect();\n··}\n\n··private·_setDarkTheme(isDarkTheme:·boolean):·void·{\n····this._materialCssVarsService.setDarkTheme(isDarkTheme);\n····this._setChartTheme(isDarkTheme);\n····//·this._materialCssVarsService.setDarkTheme(true);\n····//·this._materialCssVarsService.setDarkTheme(false);\n··}\n\n··private·_setColorTheme(theme:·WorkContextThemeCfg):·void·{\n····this._materialCssVarsService.setAutoContrastEnabled(!!theme.isAutoContrast);\n····this._setBackgroundGradient(!!theme.isDisableBackgroundGradient);\n\n····//·NOTE:·setting·undefined·values·does·not·seem·to·be·a·problem·so·we·use·!\n····if·(!theme.isAutoContrast)·{\n······this._materialCssVarsService.setContrastColorThresholdPrimary(theme.huePrimary!);\n······this._materialCssVarsService.setContrastColorThresholdAccent(theme.hueAccent!);\n······this._materialCssVarsService.setContrastColorThresholdWarn(theme.hueWarn!);\n····}\n\n····this._materialCssVarsService.setPrimaryColor(theme.primary!);\n····this._materialCssVarsService.setAccentColor(theme.accent!);\n····this._materialCssVarsService.setWarnColor(theme.warn!);\n··}\n\n··private·_setBackgroundGradient(isDisableBackgroundGradient:·boolean):·void·{\n····if·(isDisableBackgroundGradient)·{\n······this.document.body.classList.add(BodyClass.isDisableBackgroundGradient);\n······this.document.body.classList.remove(BodyClass.isEnabledBackgroundGradient);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isEnabledBackgroundGradient);\n······this.document.body.classList.remove(BodyClass.isDisableBackgroundGradient);\n····}\n··}\n\n··private·_initIcons():·void·{\n····const·icons:·[string,·string][]·=·[\n······['sp',·'assets/icons/sp.svg'],\n······['play',·'assets/icons/play.svg'],\n······['github',·'assets/icons/github.svg'],\n······['gitlab',·'assets/icons/gitlab.svg'],\n······['jira',·'assets/icons/jira.svg'],\n······['caldav',·'assets/icons/caldav.svg'],\n······['open_project',·'assets/icons/open-project.svg'],\n······['drag_handle',·'assets/icons/drag-handle.svg'],\n······['remove_today',·'assets/icons/remove-today-48px.svg'],\n······['estimate_remaining',·'assets/icons/estimate-remaining.svg'],\n······['working_today',·'assets/icons/working-today.svg'],\n······['repeat',·'assets/icons/repeat.svg'],\n······['gitea',·'assets/icons/gitea.svg'],\n······['redmine',·'assets/icons/redmine.svg'],\n······['calendar',·'assets/icons/calendar.svg'],\n······['early_on',·'assets/icons/early-on.svg'],\n······['tomorrow',·'assets/icons/tomorrow.svg'],\n······['next_week',·'assets/icons/next-week.svg'],\n······['keep',·'assets/icons/keep.svg'],\n······['keep_filled',·'assets/icons/keep-filled.svg'],\n····];\n\n····//·todo·test·if·can·be·removed·with·airplane·mode·and·wifi·without·internet\n····icons.forEach(([name,·path])·=>·{\n······this._matIconRegistry.addSvgIcon(\n········name,\n········this._domSanitizer.bypassSecurityTrustResourceUrl(path),\n······);\n····});\n\n····this.preloadIcons(icons);\n··}\n\n··preloadIcons(icons:·[string,·string][]):·Promise<void[]>·{\n····//·Map·each·icon·name·to·a·promise·that·fetches·and·registers·the·icon.\n····const·iconPromises·=·icons.map(([iconName,·url])·=>·{\n······//·Construct·the·URL·for·the·SVG·file.\n······//·Adjust·the·path·if·your·SVGs·are·located·elsewhere.\n······return·this._http\n········.get(url,·{·responseType:·'text'·})\n········.toPromise()\n········.then((svg)·=>·{\n··········//·Register·the·fetched·SVG·as·an·inline·icon.\n··········this._matIconRegistry.addSvgIconLiteral(\n············iconName,\n············this._domSanitizer.bypassSecurityTrustHtml(svg),\n··········);\n········})\n········.catch((error)·=>·{\n··········Log.err(`Error·loading·icon:·${iconName}·from·${url}`,·error);\n········});\n····});\n\n····//·Return·a·promise·that·resolves·when·all·icons·have·been·processed.\n····return·Promise.all(iconPromises);\n··}\n\n··private·_initThemeWatchers():·void·{\n····//·init·theme·watchers\n····this._workContextService.currentTheme$.subscribe((theme:·WorkContextThemeCfg)·=>\n······this._setColorTheme(theme),\n····);\n····this._isDarkThemeObs$.subscribe((isDarkTheme)·=>·this._setDarkTheme(isDarkTheme));\n··}\n\n··private·_initHandlersForInitialBodyClasses():·void·{\n····this.document.body.classList.add(BodyClass.isNoAdvancedFeatures);\n\n····if·(!IS_FIREFOX)·{\n······this.document.body.classList.add(BodyClass.isNoFirefox);\n····}\n\n····if·(IS_MAC)·{\n······this.document.body.classList.add(BodyClass.isMac);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isNoMac);\n····}\n\n····if·(IS_ELECTRON)·{\n······this.document.body.classList.add(BodyClass.isElectron);\n······this.document.body.classList.add(BodyClass.isAdvancedFeatures);\n······this.document.body.classList.remove(BodyClass.isNoAdvancedFeatures);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isWeb);\n······this._chromeExtensionInterfaceService.onReady$.pipe(take(1)).subscribe(()·=>·{\n········this.document.body.classList.add(BodyClass.isExtension);\n········this.document.body.classList.add(BodyClass.isAdvancedFeatures);\n········this.document.body.classList.remove(BodyClass.isNoAdvancedFeatures);\n······});\n····}\n\n····if·(IS_ANDROID_WEB_VIEW)·{\n······androidInterface.isKeyboardShown$.subscribe((isShown)·=>·{\n········Log.log('isShown',·isShown);\n\n········this.document.body.classList.remove(BodyClass.isAndroidKeyboardHidden);\n········this.document.body.classList.remove(BodyClass.isAndroidKeyboardShown);\n········this.document.body.classList.add(\n··········isShown·?·BodyClass.isAndroidKeyboardShown·:·BodyClass.isAndroidKeyboardHidden,\n········);\n······});\n····}\n\n····//·Use·effect·to·reactively·update·animation·class\n····effect(()·=>·{\n······const·misc·=·this._globalConfigService.misc();\n······if·(misc?.isDisableAnimations)·{\n········this.document.body.classList.add(BodyClass.isDisableAnimations);\n······}·else·{\n········this.document.body.classList.remove(BodyClass.isDisableAnimations);\n······}\n····});\n\n····this._imexMetaService.isDataImportInProgress$.subscribe((isInProgress)·=>·{\n······//·timer(1000,·5000)\n······//···.pipe(map((val)·=>·val·%·2·===·0))\n······//···.subscribe((isInProgress)·=>·{\n······if·(isInProgress)·{\n········this.document.body.classList.add(BodyClass.isDataImportInProgress);\n······}·else·{\n········this.document.body.classList.remove(BodyClass.isDataImportInProgress);\n······}\n····});\n\n····if·(IS_TOUCH_ONLY)·{\n······this.document.body.classList.add(BodyClass.isTouchOnly);\n····}·else·{\n······this.document.body.classList.add(BodyClass.isNoTouchOnly);\n····}\n\n····if·(IS_MOUSE_PRIMARY)·{\n······this.document.body.classList.add(BodyClass.isMousePrimary);\n····}·else·if·(IS_TOUCH_PRIMARY)·{\n······this.document.body.classList.add(BodyClass.isTouchPrimary);\n····}\n··}\n\n··private·_setChartTheme(isDarkTheme:·boolean):·void·{\n····const·overrides:·ChartConfiguration['options']·=·isDarkTheme\n······?·{\n··········//·legend:·{\n··········//···labels:·{·fontColor:·'white'·},\n··········//·},\n··········scales:·{\n············x:·{\n··············ticks:·{\n················color:·'white',\n··············},\n··············grid:·{\n················color:·'rgba(255,255,255,0.1)',\n··············},\n············},\n\n············y:·{\n··············ticks:·{\n················color:·'white',\n··············},\n··············grid:·{\n················color:·'rgba(255,255,255,0.1)',\n··············},\n············},\n··········},\n········}\n······:·{\n··········scales:·{},\n········};\n····this._chartThemeService.setColorschemesOptions(overrides);\n··}\n\n··private·_setupCustomThemeEffect():·void·{\n····//·Track·previous·theme·to·avoid·unnecessary·reloads\n····let·previousThemeId:·string·|·null·=·null;\n\n····//·Set·up·effect·to·reactively·update·custom·theme·when·config·changes\n····effect(()·=>·{\n······const·misc·=·this._globalConfigService.misc();\n······const·themeId·=·misc?.customTheme·||·'default';\n\n······//·Only·load·theme·if·it·has·changed\n······if·(themeId·!==·previousThemeId)·{\n········this._customThemeService.loadTheme(themeId);\n········previousThemeId·=·themeId;\n······}\n····});\n··}\n}\n",
109 B
assets/public/chunk-F6MHL3EH.js.map vs.
assets/public/chunk-SCVPPY5M.js.map
Files identical despite different names
109 B
assets/public/chunk-IH33AVAS.js.map vs.
assets/public/chunk-HUK2ZBHJ.js.map
Files identical despite different names
869 B
assets/public/chunk-UBME6YAQ.js vs.
assets/public/chunk-C4L6BP5G.js
Files 4% similar despite different names
767 B
js-beautify {}
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 import·{1 import·{
2 ····f·as·V,2 ····f·as·V,
3 ····g·as·X3 ····g·as·X
4 }·from·"./chunk-F6MHL3EH.js";4 }·from·"./chunk-SCVPPY5M.js";
5 import·{5 import·{
6 ····a·as·L,6 ····a·as·L,
7 ····b·as·$7 ····b·as·$
8 }·from·"./chunk-3OJUPW43.js";8 }·from·"./chunk-3ONJEEYJ.js";
9 import·{9 import·{
10 ····b·as·F,10 ····b·as·F,
11 ····d·as·W11 ····d·as·W
12 }·from·"./chunk-LKH75HYX.js";12 }·from·"./chunk-LKH75HYX.js";
13 import·{13 import·{
14 ····Ab·as·C,14 ····Ab·as·C,
15 ····Cb·as·_,15 ····Cb·as·_,
Offset 158, 8 lines modifiedOffset 158, 8 lines modified
158 ········let·t·=·new·SpeechSynthesisUtterance;158 ········let·t·=·new·SpeechSynthesisUtterance;
159 ········t.text·=·e,·t.voice·=·l.getVoices().find(i·=>·n.includes(i.name))·||·l.getVoices().find(i·=>·i.default)·||·null,·console.log(o),·t.volume·=·o·/·100,·l.speak(t)159 ········t.text·=·e,·t.voice·=·l.getVoices().find(i·=>·n.includes(i.name))·||·l.getVoices().find(i·=>·i.default)·||·null,·console.log(o),·t.volume·=·o·/·100,·l.speak(t)
160 ····}160 ····}
161 });161 });
162 export·{162 export·{
163 ····oe·as·a,·J·as·b,·re·as·c,·K·as·d,·Ie·as·e,·ee·as·f,·ve·as·g,·Z·as·h163 ····oe·as·a,·J·as·b,·re·as·c,·K·as·d,·Ie·as·e,·ee·as·f,·ve·as·g,·Z·as·h
164 };164 };
165 //#·sourceMappingURL=chunk-UBME6YAQ.js.map165 //#·sourceMappingURL=chunk-C4L6BP5G.js.map
1.38 KB
assets/public/chunk-IH33AVAS.js vs.
assets/public/chunk-HUK2ZBHJ.js
Files 0% similar despite different names
1.28 KB
js-beautify {}
    
Offset 1, 11 lines modifiedOffset 1, 11 lines modified
1 import·{1 import·{
2 ····L·as·Sr,2 ····L·as·Sr,
3 ····M·as·gt3 ····M·as·gt
4 }·from·"./chunk-3OJUPW43.js";4 }·from·"./chunk-3ONJEEYJ.js";
5 import·{5 import·{
6 ····c·as·mr,6 ····c·as·mr,
7 ····d·as·hr,7 ····d·as·hr,
8 ····g·as·Tr,8 ····g·as·Tr,
9 ····h·as·pr,9 ····h·as·pr,
10 ····i·as·Ar,10 ····i·as·Ar,
11 ····j·as·ct,11 ····j·as·ct,
Offset 2835, 15 lines modifiedOffset 2835, 15 lines modified
2835 ····················}2835 ····················}
2836 ················})2836 ················})
2837 ············}2837 ············}
2838 ············sendMessageToPlugin(t,·d)·{2838 ············sendMessageToPlugin(t,·d)·{
2839 ················return·S(this,·null,·function*()·{2839 ················return·S(this,·null,·function*()·{
2840 ····················let·{2840 ····················let·{
2841 ························PluginRunner:·l2841 ························PluginRunner:·l
2842 ····················}·=·yield·import("./chunk-5JG3MWPZ.js");2842 ····················}·=·yield·import("./chunk-4FRJBYL6.js");
2843 ····················return·this._injector.get(l).sendMessageToPlugin(t,·d)2843 ····················return·this._injector.get(l).sendMessageToPlugin(t,·d)
2844 ················})2844 ················})
2845 ············}2845 ············}
2846 ············_initWindowFocusTracking()·{2846 ············_initWindowFocusTracking()·{
2847 ················window.addEventListener("focus",·()·=>·{2847 ················window.addEventListener("focus",·()·=>·{
2848 ····················this._isWindowFocused·=·!0,·this._notifyFocusHandlers(!0)2848 ····················this._isWindowFocused·=·!0,·this._notifyFocusHandlers(!0)
2849 ················}),·window.addEventListener("blur",·()·=>·{2849 ················}),·window.addEventListener("blur",·()·=>·{
Offset 3439, 8 lines modifiedOffset 3439, 8 lines modified
3439 ········}3439 ········}
3440 ········return·y3440 ········return·y
3441 ····})()3441 ····})()
3442 });3442 });
3443 export·{3443 export·{
3444 ····oe·as·a,·de·as·b,·wr·as·c,·Rr·as·d,·Z·as·e,·ue·as·f,·br·as·g,·Dr·as·h,·ee·as·i,·_e·as·j,·Ur·as·k,·xr·as·l,·Ya·as·m,·za·as·n,·Xa·as·o,·jr·as·p,·Hr·as·q,·Fr·as·r,·_s·as·s,·kt·as·t3444 ····oe·as·a,·de·as·b,·wr·as·c,·Rr·as·d,·Z·as·e,·ue·as·f,·br·as·g,·Dr·as·h,·ee·as·i,·_e·as·j,·Ur·as·k,·xr·as·l,·Ya·as·m,·za·as·n,·Xa·as·o,·jr·as·p,·Hr·as·q,·Fr·as·r,·_s·as·s,·kt·as·t
3445 };3445 };
3446 //#·sourceMappingURL=chunk-IH33AVAS.js.map3446 //#·sourceMappingURL=chunk-HUK2ZBHJ.js.map
109 B
assets/public/chunk-UBME6YAQ.js.map vs.
assets/public/chunk-C4L6BP5G.js.map
Files identical despite different names
5.34 KB
assets/public/main-VM7OSHFK.js vs.
assets/public/main-F5T7ZAGY.js
Files 0% similar despite different names
5.24 KB
js-beautify {}
    
Offset 50, 15 lines modifiedOffset 50, 15 lines modified
50 import·{50 import·{
51 ····b·as·tS,51 ····b·as·tS,
52 ····c·as·BM52 ····c·as·BM
53 }·from·"./chunk-22LI76K5.js";53 }·from·"./chunk-22LI76K5.js";
54 import·{54 import·{
55 ····a·as·iS,55 ····a·as·iS,
56 ····b·as·$M56 ····b·as·$M
57 }·from·"./chunk-MBY5JUUL.js";57 }·from·"./chunk-X774MRFF.js";
58 import·{58 import·{
59 ····a·as·nS,59 ····a·as·nS,
60 ····b·as·jM,60 ····b·as·jM,
61 ····c·as·oS,61 ····c·as·oS,
62 ····d·as·VM62 ····d·as·VM
63 }·from·"./chunk-BVYK26GV.js";63 }·from·"./chunk-BVYK26GV.js";
64 import·{64 import·{
Offset 66, 23 lines modifiedOffset 66, 23 lines modified
66 ····b·as·lw,66 ····b·as·lw,
67 ····c·as·oC,67 ····c·as·oC,
68 ····d·as·lM,68 ····d·as·lM,
69 ····e·as·sC,69 ····e·as·sC,
70 ····f·as·mM,70 ····f·as·mM,
71 ····g·as·Es,71 ····g·as·Es,
72 ····h·as·Lm72 ····h·as·Lm
73 }·from·"./chunk-UBME6YAQ.js";73 }·from·"./chunk-C4L6BP5G.js";
74 import·{74 import·{
75 ····a·as·Ll,75 ····a·as·Ll,
76 ····b·as·z076 ····b·as·z0
77 }·from·"./chunk-3UB54IM4.js";77 }·from·"./chunk-3UB54IM4.js";
78 import·{78 import·{
79 ····f·as·Rr,79 ····f·as·Rr,
80 ····g·as·Sd80 ····g·as·Sd
81 }·from·"./chunk-F6MHL3EH.js";81 }·from·"./chunk-SCVPPY5M.js";
82 import·{82 import·{
83 ····a·as·aC,83 ····a·as·aC,
84 ····b·as·pM84 ····b·as·pM
85 }·from·"./chunk-PPIIKUX7.js";85 }·from·"./chunk-PPIIKUX7.js";
86 import·{86 import·{
87 ····a·as·yd,87 ····a·as·yd,
88 ····b·as·jC,88 ····b·as·jC,
Offset 293, 15 lines modifiedOffset 293, 15 lines modified
293 ····h·as·Fo293 ····h·as·Fo
294 }·from·"./chunk-W3EHXDVY.js";294 }·from·"./chunk-W3EHXDVY.js";
295 import·{295 import·{
296 ····a·as·Tn,296 ····a·as·Tn,
297 ····b·as·vM,297 ····b·as·vM,
298 ····k·as·Ro,298 ····k·as·Ro,
299 ····l·as·Ic299 ····l·as·Ic
300 }·from·"./chunk-IH33AVAS.js";300 }·from·"./chunk-HUK2ZBHJ.js";
301 import·{301 import·{
302 ····B·as·Fm,302 ····B·as·Fm,
303 ····C·as·oM,303 ····C·as·oM,
304 ····D·as·eC,304 ····D·as·eC,
305 ····E·as·rM,305 ····E·as·rM,
306 ····F·as·tC,306 ····F·as·tC,
307 ····G·as·aM,307 ····G·as·aM,
Offset 321, 15 lines modifiedOffset 321, 15 lines modified
321 ····r·as·Dm,321 ····r·as·Dm,
322 ····s·as·Cd,322 ····s·as·Cd,
323 ····t·as·Xv,323 ····t·as·Xv,
324 ····u·as·Zv,324 ····u·as·Zv,
325 ····v·as·Am,325 ····v·as·Am,
326 ····w·as·Rm,326 ····w·as·Rm,
327 ····x·as·nM327 ····x·as·nM
328 }·from·"./chunk-3OJUPW43.js";328 }·from·"./chunk-3ONJEEYJ.js";
329 import·{329 import·{
330 ····a·as·yo,330 ····a·as·yo,
331 ····b·as·fc,331 ····b·as·fc,
332 ····c·as·xm,332 ····c·as·xm,
333 ····d·as·Cc,333 ····d·as·Cc,
334 ····e·as·Sc,334 ····e·as·Sc,
335 ····f·as·Pm,335 ····f·as·Pm,
Offset 13024, 15 lines modifiedOffset 13024, 15 lines modified
13024 var·Z1,·ek·=·D(()·=>·{13024 var·Z1,·ek·=·D(()·=>·{
13025 ····"use·strict";13025 ····"use·strict";
13026 ····q1();13026 ····q1();
13027 ····uo();13027 ····uo();
13028 ····X1();13028 ····X1();
13029 ····Z1·=·[{13029 ····Z1·=·[{
13030 ········path:·"config",13030 ········path:·"config",
13031 ········loadComponent:·()·=>·import("./chunk-2UKDQBTZ.js").then(i·=>·i.ConfigPageComponent),13031 ········loadComponent:·()·=>·import("./chunk-NLK463OT.js").then(i·=>·i.ConfigPageComponent),
13032 ········data:·{13032 ········data:·{
13033 ············page:·"config"13033 ············page:·"config"
13034 ········},13034 ········},
13035 ········canActivate:·[Pt]13035 ········canActivate:·[Pt]
13036 ····},·{13036 ····},·{
13037 ········path:·"search",13037 ········path:·"search",
13038 ········loadComponent:·()·=>·import("./chunk-C6AGMAVS.js").then(i·=>·i.SearchPageComponent),13038 ········loadComponent:·()·=>·import("./chunk-C6AGMAVS.js").then(i·=>·i.SearchPageComponent),
Offset 13094, 22 lines modifiedOffset 13094, 22 lines modified
13094 ········loadComponent:·()·=>·import("./chunk-U6IUKL2B.js").then(i·=>·i.QuickHistoryComponent),13094 ········loadComponent:·()·=>·import("./chunk-U6IUKL2B.js").then(i·=>·i.QuickHistoryComponent),
13095 ········data:·{13095 ········data:·{
13096 ············page:·"quick-history"13096 ············page:·"quick-history"
13097 ········},13097 ········},
13098 ········canActivate:·[Ur,·Pt]13098 ········canActivate:·[Ur,·Pt]
13099 ····},·{13099 ····},·{
13100 ········path:·"tag/:id/daily-summary",13100 ········path:·"tag/:id/daily-summary",
13101 ········loadComponent:·()·=>·import("./chunk-XXBTMKPQ.js").then(i·=>·i.DailySummaryComponent),13101 ········loadComponent:·()·=>·import("./chunk-4TOJ7IBO.js").then(i·=>·i.DailySummaryComponent),
13102 ········data:·{13102 ········data:·{
13103 ············page:·"daily-summary"13103 ············page:·"daily-summary"
13104 ········},13104 ········},
13105 ········canActivate:·[Ur,·Pt]13105 ········canActivate:·[Ur,·Pt]
13106 ····},·{13106 ····},·{
13107 ········path:·"tag/:id/daily-summary/:dayStr",13107 ········path:·"tag/:id/daily-summary/:dayStr",
13108 ········loadComponent:·()·=>·import("./chunk-XXBTMKPQ.js").then(i·=>·i.DailySummaryComponent),13108 ········loadComponent:·()·=>·import("./chunk-4TOJ7IBO.js").then(i·=>·i.DailySummaryComponent),
13109 ········data:·{13109 ········data:·{
13110 ············page:·"daily-summary"13110 ············page:·"daily-summary"
13111 ········},13111 ········},
13112 ········canActivate:·[Ur,·Pt]13112 ········canActivate:·[Ur,·Pt]
13113 ····},·{13113 ····},·{
13114 ········path:·"tag/:id/metrics",13114 ········path:·"tag/:id/metrics",
13115 ········loadComponent:·()·=>·import("./chunk-FFX5YGBA.js").then(i·=>·i.MetricPageComponent),13115 ········loadComponent:·()·=>·import("./chunk-FFX5YGBA.js").then(i·=>·i.MetricPageComponent),
Offset 13150, 41 lines modifiedOffset 13150, 41 lines modified
13150 ········loadComponent:·()·=>·import("./chunk-FFX5YGBA.js").then(i·=>·i.MetricPageComponent),13150 ········loadComponent:·()·=>·import("./chunk-FFX5YGBA.js").then(i·=>·i.MetricPageComponent),
13151 ········data:·{13151 ········data:·{
13152 ············page:·"metrics"13152 ············page:·"metrics"
13153 ········},13153 ········},
13154 ········canActivate:·[Wr,·Pt]13154 ········canActivate:·[Wr,·Pt]
13155 ····},·{13155 ····},·{
13156 ········path:·"project/:id/daily-summary",13156 ········path:·"project/:id/daily-summary",
13157 ········loadComponent:·()·=>·import("./chunk-XXBTMKPQ.js").then(i·=>·i.DailySummaryComponent),13157 ········loadComponent:·()·=>·import("./chunk-4TOJ7IBO.js").then(i·=>·i.DailySummaryComponent),
13158 ········data:·{13158 ········data:·{
13159 ············page:·"daily-summary"13159 ············page:·"daily-summary"
13160 ········},13160 ········},
13161 ········canActivate:·[Wr,·Pt]13161 ········canActivate:·[Wr,·Pt]
13162 ····},·{13162 ····},·{
13163 ········path:·"project/:id/daily-summary/:dayStr",13163 ········path:·"project/:id/daily-summary/:dayStr",
13164 ········loadComponent:·()·=>·import("./chunk-XXBTMKPQ.js").then(i·=>·i.DailySummaryComponent),13164 ········loadComponent:·()·=>·import("./chunk-4TOJ7IBO.js").then(i·=>·i.DailySummaryComponent),
13165 ········data:·{13165 ········data:·{
Max diff block lines reached; 1597/5338 bytes (29.92%) of diff not shown.
653 B
assets/public/chunk-3OJUPW43.js vs.
assets/public/chunk-3ONJEEYJ.js
Files 0% similar despite different names
551 B
js-beautify {}
    
Offset 8165, 8 lines modifiedOffset 8165, 8 lines modified
8165 ········}8165 ········}
8166 ········return·r8166 ········return·r
8167 ····})()8167 ····})()
8168 });8168 });
8169 export·{8169 export·{
8170 ····de·as·a,·Ia·as·b,·Tt·as·c,·Li·as·d,·ho·as·e,·Fl·as·f,·ct·as·g,·Ea·as·h,·Wr·as·i,·Fa·as·j,·Vd·as·k,·Cs·as·l,·Ud·as·m,·ws·as·n,·Ts·as·o,·Ms·as·p,·Gs·as·q,·Ys·as·r,·Js·as·s,·co·as·t,·el·as·u,·mo·as·v,·Ep·as·w,·$a·as·x,·gl·as·y,·bl·as·z,·yl·as·A,·vl·as·B,·kl·as·C,·xl·as·D,·wl·as·E,·Ml·as·F,·Il·as·G,·Sr·as·H,·uo·as·I,·Bl·as·J,·Ul·as·K,·ql·as·L,·jl·as·M8170 ····de·as·a,·Ia·as·b,·Tt·as·c,·Li·as·d,·ho·as·e,·Fl·as·f,·ct·as·g,·Ea·as·h,·Wr·as·i,·Fa·as·j,·Vd·as·k,·Cs·as·l,·Ud·as·m,·ws·as·n,·Ts·as·o,·Ms·as·p,·Gs·as·q,·Ys·as·r,·Js·as·s,·co·as·t,·el·as·u,·mo·as·v,·Ep·as·w,·$a·as·x,·gl·as·y,·bl·as·z,·yl·as·A,·vl·as·B,·kl·as·C,·xl·as·D,·wl·as·E,·Ml·as·F,·Il·as·G,·Sr·as·H,·uo·as·I,·Bl·as·J,·Ul·as·K,·ql·as·L,·jl·as·M
8171 };8171 };
8172 //#·sourceMappingURL=chunk-3OJUPW43.js.map8172 //#·sourceMappingURL=chunk-3ONJEEYJ.js.map
767 B
assets/public/chunk-5JG3MWPZ.js vs.
assets/public/chunk-4FRJBYL6.js
Files 12% similar despite different names
664 B
js-beautify {}
    
Offset 1, 12 lines modifiedOffset 1, 12 lines modified
1 import·{1 import·{
2 ····s·as·a,2 ····s·as·a,
3 ····t·as·b3 ····t·as·b
4 }·from·"./chunk-IH33AVAS.js";4 }·from·"./chunk-HUK2ZBHJ.js";
5 import·"./chunk-3OJUPW43.js";5 import·"./chunk-3ONJEEYJ.js";
6 import·"./chunk-2PSKBIBQ.js";6 import·"./chunk-2PSKBIBQ.js";
7 import·"./chunk-LA6ZMQDQ.js";7 import·"./chunk-LA6ZMQDQ.js";
8 import·"./chunk-FTMRA4NK.js";8 import·"./chunk-FTMRA4NK.js";
9 import·"./chunk-VBLQP2EG.js";9 import·"./chunk-VBLQP2EG.js";
10 import·"./chunk-LZU27IRJ.js";10 import·"./chunk-LZU27IRJ.js";
11 import·"./chunk-27VDZFHK.js";11 import·"./chunk-27VDZFHK.js";
12 import·"./chunk-MZDWIDMZ.js";12 import·"./chunk-MZDWIDMZ.js";
Offset 31, 8 lines modifiedOffset 31, 8 lines modified
31 import·"./chunk-OXDOKNTF.js";31 import·"./chunk-OXDOKNTF.js";
32 import·"./chunk-PEJGMLLQ.js";32 import·"./chunk-PEJGMLLQ.js";
33 import·"./chunk-2NYJ54WT.js";33 import·"./chunk-2NYJ54WT.js";
34 b();34 b();
35 export·{35 export·{
36 ····a·as·PluginRunner36 ····a·as·PluginRunner
37 };37 };
38 //#·sourceMappingURL=chunk-5JG3MWPZ.js.map38 //#·sourceMappingURL=chunk-4FRJBYL6.js.map
1.39 KB
assets/public/chunk-2UKDQBTZ.js vs.
assets/public/chunk-NLK463OT.js
Files 0% similar despite different names
1.29 KB
js-beautify {}
    
Offset 11, 28 lines modifiedOffset 11, 28 lines modified
11 ····b·as·rn,11 ····b·as·rn,
12 ····c·as·Se,12 ····c·as·Se,
13 ····d·as·Vt,13 ····d·as·Vt,
14 ····e·as·Ht,14 ····e·as·Ht,
15 ····f·as·bn,15 ····f·as·bn,
16 ····g·as·ai,16 ····g·as·ai,
17 ····h·as·Dn17 ····h·as·Dn
18 }·from·"./chunk-UBME6YAQ.js";18 }·from·"./chunk-C4L6BP5G.js";
19 import·{19 import·{
20 ····a·as·X,20 ····a·as·X,
21 ····b·as·st21 ····b·as·st
22 }·from·"./chunk-3UB54IM4.js";22 }·from·"./chunk-3UB54IM4.js";
23 import·{23 import·{
24 ····a·as·qt,24 ····a·as·qt,
25 ····b·as·Nn,25 ····b·as·Nn,
26 ····c·as·zt,26 ····c·as·zt,
27 ····d·as·Rn,27 ····d·as·Rn,
28 ····e·as·kn,28 ····e·as·kn,
29 ····f·as·jt,29 ····f·as·jt,
30 ····g·as·Pn30 ····g·as·Pn
31 }·from·"./chunk-F6MHL3EH.js";31 }·from·"./chunk-SCVPPY5M.js";
32 import·{32 import·{
33 ····a·as·Qt,33 ····a·as·Qt,
34 ····b·as·ei,34 ····b·as·ei,
35 ····c·as·ti,35 ····c·as·ti,
36 ····d·as·ii,36 ····d·as·ii,
37 ····e·as·ni,37 ····e·as·ni,
38 ····f·as·oi,38 ····f·as·oi,
Offset 50, 15 lines modifiedOffset 50, 15 lines modified
50 import·{50 import·{
51 ····e·as·Wt,51 ····e·as·Wt,
52 ····f·as·yn,52 ····f·as·yn,
53 ····g·as·Xt,53 ····g·as·Xt,
54 ····h·as·Fn,54 ····h·as·Fn,
55 ····k·as·$t,55 ····k·as·$t,
56 ····l·as·Mn56 ····l·as·Mn
57 }·from·"./chunk-IH33AVAS.js";57 }·from·"./chunk-HUK2ZBHJ.js";
58 import·{58 import·{
59 ····A·as·Bt,59 ····A·as·Bt,
60 ····B·as·Kt,60 ····B·as·Kt,
61 ····C·as·In,61 ····C·as·In,
62 ····H·as·wt,62 ····H·as·wt,
63 ····I·as·hn,63 ····I·as·hn,
64 ····L·as·Yt,64 ····L·as·Yt,
Offset 68, 15 lines modifiedOffset 68, 15 lines modified
68 ····o·as·Rt,68 ····o·as·Rt,
69 ····p·as·On,69 ····p·as·On,
70 ····s·as·Pt,70 ····s·as·Pt,
71 ····t·as·xt,71 ····t·as·xt,
72 ····v·as·Sn,72 ····v·as·Sn,
73 ····y·as·Lt,73 ····y·as·Lt,
74 ····z·as·Ut74 ····z·as·Ut
75 }·from·"./chunk-3OJUPW43.js";75 }·from·"./chunk-3ONJEEYJ.js";
76 import·"./chunk-2PSKBIBQ.js";76 import·"./chunk-2PSKBIBQ.js";
77 import·"./chunk-LA6ZMQDQ.js";77 import·"./chunk-LA6ZMQDQ.js";
78 import·{78 import·{
79 ····$·as·Tn,79 ····$·as·Tn,
80 ····T·as·vt,80 ····T·as·vt,
81 ····W·as·Gt81 ····W·as·Gt
82 }·from·"./chunk-FTMRA4NK.js";82 }·from·"./chunk-FTMRA4NK.js";
Offset 2578, 8 lines modifiedOffset 2578, 8 lines modified
2578 ········return·i2578 ········return·i
2579 ····})()2579 ····})()
2580 });2580 });
2581 go();2581 go();
2582 export·{2582 export·{
2583 ····Rl·as·ConfigPageComponent2583 ····Rl·as·ConfigPageComponent
2584 };2584 };
2585 //#·sourceMappingURL=chunk-2UKDQBTZ.js.map2585 //#·sourceMappingURL=chunk-NLK463OT.js.map
107 B
assets/public/main-VM7OSHFK.js.map vs.
assets/public/main-F5T7ZAGY.js.map
Files identical despite different names
919 B
assets/public/chunk-CNHATFKD.js vs.
assets/public/chunk-6AABV2BL.js
Files 7% similar despite different names
817 B
js-beautify {}
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 import·{1 import·{
2 ····a,2 ····a,
3 ····b3 ····b
4 }·from·"./chunk-MBY5JUUL.js";4 }·from·"./chunk-X774MRFF.js";
5 import·"./chunk-F6MHL3EH.js";5 import·"./chunk-SCVPPY5M.js";
6 import·"./chunk-YP3AOG3Z.js";6 import·"./chunk-YP3AOG3Z.js";
7 import·"./chunk-IH33AVAS.js";7 import·"./chunk-HUK2ZBHJ.js";
8 import·"./chunk-3OJUPW43.js";8 import·"./chunk-3ONJEEYJ.js";
9 import·"./chunk-2PSKBIBQ.js";9 import·"./chunk-2PSKBIBQ.js";
10 import·"./chunk-LA6ZMQDQ.js";10 import·"./chunk-LA6ZMQDQ.js";
11 import·"./chunk-FTMRA4NK.js";11 import·"./chunk-FTMRA4NK.js";
12 import·"./chunk-VBLQP2EG.js";12 import·"./chunk-VBLQP2EG.js";
13 import·"./chunk-LZU27IRJ.js";13 import·"./chunk-LZU27IRJ.js";
14 import·"./chunk-27VDZFHK.js";14 import·"./chunk-27VDZFHK.js";
15 import·"./chunk-MZDWIDMZ.js";15 import·"./chunk-MZDWIDMZ.js";
Offset 34, 8 lines modifiedOffset 34, 8 lines modified
34 import·"./chunk-OXDOKNTF.js";34 import·"./chunk-OXDOKNTF.js";
35 import·"./chunk-PEJGMLLQ.js";35 import·"./chunk-PEJGMLLQ.js";
36 import·"./chunk-2NYJ54WT.js";36 import·"./chunk-2NYJ54WT.js";
37 b();37 b();
38 export·{38 export·{
39 ····a·as·PluginIndexComponent39 ····a·as·PluginIndexComponent
40 };40 };
41 //#·sourceMappingURL=chunk-CNHATFKD.js.map41 //#·sourceMappingURL=chunk-6AABV2BL.js.map
109 B
assets/public/chunk-2UKDQBTZ.js.map vs.
assets/public/chunk-NLK463OT.js.map
Files identical despite different names