vuexy 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1439) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +70 -0
  3. data/Rakefile +8 -0
  4. data/app/assets/config/vuexy_manifest.js +11 -0
  5. data/app/assets/fonts/feather/fonts/feather.eot +0 -0
  6. data/app/assets/fonts/feather/fonts/feather.svg +849 -0
  7. data/app/assets/fonts/feather/fonts/feather.ttf +0 -0
  8. data/app/assets/fonts/feather/fonts/feather.woff +0 -0
  9. data/app/assets/fonts/feather/iconfont.css +568 -0
  10. data/app/assets/fonts/flag-icon-css/LICENSE +21 -0
  11. data/app/assets/fonts/flag-icon-css/README.md +70 -0
  12. data/app/assets/fonts/flag-icon-css/css/flag-icon.css +1538 -0
  13. data/app/assets/fonts/flag-icon-css/css/flag-icon.min.css +1 -0
  14. data/app/assets/fonts/flag-icon-css/flags/1x1/ad.svg +158 -0
  15. data/app/assets/fonts/flag-icon-css/flags/1x1/ae.svg +9 -0
  16. data/app/assets/fonts/flag-icon-css/flags/1x1/af.svg +434 -0
  17. data/app/assets/fonts/flag-icon-css/flags/1x1/ag.svg +15 -0
  18. data/app/assets/fonts/flag-icon-css/flags/1x1/ai.svg +772 -0
  19. data/app/assets/fonts/flag-icon-css/flags/1x1/al.svg +5 -0
  20. data/app/assets/fonts/flag-icon-css/flags/1x1/am.svg +6 -0
  21. data/app/assets/fonts/flag-icon-css/flags/1x1/ao.svg +14 -0
  22. data/app/assets/fonts/flag-icon-css/flags/1x1/aq.svg +14 -0
  23. data/app/assets/fonts/flag-icon-css/flags/1x1/ar.svg +144 -0
  24. data/app/assets/fonts/flag-icon-css/flags/1x1/as.svg +34 -0
  25. data/app/assets/fonts/flag-icon-css/flags/1x1/at.svg +7 -0
  26. data/app/assets/fonts/flag-icon-css/flags/1x1/au.svg +13 -0
  27. data/app/assets/fonts/flag-icon-css/flags/1x1/aw.svg +189 -0
  28. data/app/assets/fonts/flag-icon-css/flags/1x1/ax.svg +19 -0
  29. data/app/assets/fonts/flag-icon-css/flags/1x1/az.svg +8 -0
  30. data/app/assets/fonts/flag-icon-css/flags/1x1/ba.svg +15 -0
  31. data/app/assets/fonts/flag-icon-css/flags/1x1/bb.svg +6 -0
  32. data/app/assets/fonts/flag-icon-css/flags/1x1/bd.svg +7 -0
  33. data/app/assets/fonts/flag-icon-css/flags/1x1/be.svg +8 -0
  34. data/app/assets/fonts/flag-icon-css/flags/1x1/bf.svg +8 -0
  35. data/app/assets/fonts/flag-icon-css/flags/1x1/bg.svg +8 -0
  36. data/app/assets/fonts/flag-icon-css/flags/1x1/bh.svg +12 -0
  37. data/app/assets/fonts/flag-icon-css/flags/1x1/bi.svg +16 -0
  38. data/app/assets/fonts/flag-icon-css/flags/1x1/bj.svg +15 -0
  39. data/app/assets/fonts/flag-icon-css/flags/1x1/bl.svg +8 -0
  40. data/app/assets/fonts/flag-icon-css/flags/1x1/bm.svg +98 -0
  41. data/app/assets/fonts/flag-icon-css/flags/1x1/bn.svg +76 -0
  42. data/app/assets/fonts/flag-icon-css/flags/1x1/bo.svg +8 -0
  43. data/app/assets/fonts/flag-icon-css/flags/1x1/bq.svg +6 -0
  44. data/app/assets/fonts/flag-icon-css/flags/1x1/br.svg +46 -0
  45. data/app/assets/fonts/flag-icon-css/flags/1x1/bs.svg +14 -0
  46. data/app/assets/fonts/flag-icon-css/flags/1x1/bt.svg +125 -0
  47. data/app/assets/fonts/flag-icon-css/flags/1x1/bv.svg +14 -0
  48. data/app/assets/fonts/flag-icon-css/flags/1x1/bw.svg +8 -0
  49. data/app/assets/fonts/flag-icon-css/flags/1x1/by.svg +60 -0
  50. data/app/assets/fonts/flag-icon-css/flags/1x1/bz.svg +238 -0
  51. data/app/assets/fonts/flag-icon-css/flags/1x1/ca.svg +12 -0
  52. data/app/assets/fonts/flag-icon-css/flags/1x1/cc.svg +19 -0
  53. data/app/assets/fonts/flag-icon-css/flags/1x1/cd.svg +13 -0
  54. data/app/assets/fonts/flag-icon-css/flags/1x1/cf.svg +16 -0
  55. data/app/assets/fonts/flag-icon-css/flags/1x1/cg.svg +13 -0
  56. data/app/assets/fonts/flag-icon-css/flags/1x1/ch.svg +10 -0
  57. data/app/assets/fonts/flag-icon-css/flags/1x1/ci.svg +8 -0
  58. data/app/assets/fonts/flag-icon-css/flags/1x1/ck.svg +12 -0
  59. data/app/assets/fonts/flag-icon-css/flags/1x1/cl.svg +14 -0
  60. data/app/assets/fonts/flag-icon-css/flags/1x1/cm.svg +15 -0
  61. data/app/assets/fonts/flag-icon-css/flags/1x1/cn.svg +20 -0
  62. data/app/assets/fonts/flag-icon-css/flags/1x1/co.svg +8 -0
  63. data/app/assets/fonts/flag-icon-css/flags/1x1/cr.svg +8 -0
  64. data/app/assets/fonts/flag-icon-css/flags/1x1/cu.svg +14 -0
  65. data/app/assets/fonts/flag-icon-css/flags/1x1/cv.svg +17 -0
  66. data/app/assets/fonts/flag-icon-css/flags/1x1/cw.svg +15 -0
  67. data/app/assets/fonts/flag-icon-css/flags/1x1/cx.svg +15 -0
  68. data/app/assets/fonts/flag-icon-css/flags/1x1/cy.svg +6 -0
  69. data/app/assets/fonts/flag-icon-css/flags/1x1/cz.svg +13 -0
  70. data/app/assets/fonts/flag-icon-css/flags/1x1/de.svg +8 -0
  71. data/app/assets/fonts/flag-icon-css/flags/1x1/dj.svg +14 -0
  72. data/app/assets/fonts/flag-icon-css/flags/1x1/dk.svg +5 -0
  73. data/app/assets/fonts/flag-icon-css/flags/1x1/dm.svg +153 -0
  74. data/app/assets/fonts/flag-icon-css/flags/1x1/do.svg +6749 -0
  75. data/app/assets/fonts/flag-icon-css/flags/1x1/dz.svg +5 -0
  76. data/app/assets/fonts/flag-icon-css/flags/1x1/ec.svg +146 -0
  77. data/app/assets/fonts/flag-icon-css/flags/1x1/ee.svg +8 -0
  78. data/app/assets/fonts/flag-icon-css/flags/1x1/eg.svg +42 -0
  79. data/app/assets/fonts/flag-icon-css/flags/1x1/eh.svg +16 -0
  80. data/app/assets/fonts/flag-icon-css/flags/1x1/er.svg +14 -0
  81. data/app/assets/fonts/flag-icon-css/flags/1x1/es.svg +581 -0
  82. data/app/assets/fonts/flag-icon-css/flags/1x1/et.svg +15 -0
  83. data/app/assets/fonts/flag-icon-css/flags/1x1/eu.svg +28 -0
  84. data/app/assets/fonts/flag-icon-css/flags/1x1/fi.svg +17 -0
  85. data/app/assets/fonts/flag-icon-css/flags/1x1/fj.svg +139 -0
  86. data/app/assets/fonts/flag-icon-css/flags/1x1/fk.svg +91 -0
  87. data/app/assets/fonts/flag-icon-css/flags/1x1/fm.svg +12 -0
  88. data/app/assets/fonts/flag-icon-css/flags/1x1/fo.svg +13 -0
  89. data/app/assets/fonts/flag-icon-css/flags/1x1/fr.svg +8 -0
  90. data/app/assets/fonts/flag-icon-css/flags/1x1/ga.svg +8 -0
  91. data/app/assets/fonts/flag-icon-css/flags/1x1/gb-eng.svg +5 -0
  92. data/app/assets/fonts/flag-icon-css/flags/1x1/gb-sct.svg +4 -0
  93. data/app/assets/fonts/flag-icon-css/flags/1x1/gb-wls.svg +9 -0
  94. data/app/assets/fonts/flag-icon-css/flags/1x1/gb.svg +16 -0
  95. data/app/assets/fonts/flag-icon-css/flags/1x1/gd.svg +14 -0
  96. data/app/assets/fonts/flag-icon-css/flags/1x1/ge.svg +21 -0
  97. data/app/assets/fonts/flag-icon-css/flags/1x1/gf.svg +5 -0
  98. data/app/assets/fonts/flag-icon-css/flags/1x1/gg.svg +17 -0
  99. data/app/assets/fonts/flag-icon-css/flags/1x1/gh.svg +6 -0
  100. data/app/assets/fonts/flag-icon-css/flags/1x1/gi.svg +33 -0
  101. data/app/assets/fonts/flag-icon-css/flags/1x1/gl.svg +13 -0
  102. data/app/assets/fonts/flag-icon-css/flags/1x1/gm.svg +10 -0
  103. data/app/assets/fonts/flag-icon-css/flags/1x1/gn.svg +8 -0
  104. data/app/assets/fonts/flag-icon-css/flags/1x1/gp.svg +8 -0
  105. data/app/assets/fonts/flag-icon-css/flags/1x1/gq.svg +37 -0
  106. data/app/assets/fonts/flag-icon-css/flags/1x1/gr.svg +25 -0
  107. data/app/assets/fonts/flag-icon-css/flags/1x1/gs.svg +215 -0
  108. data/app/assets/fonts/flag-icon-css/flags/1x1/gt.svg +216 -0
  109. data/app/assets/fonts/flag-icon-css/flags/1x1/gu.svg +40 -0
  110. data/app/assets/fonts/flag-icon-css/flags/1x1/gw.svg +14 -0
  111. data/app/assets/fonts/flag-icon-css/flags/1x1/gy.svg +10 -0
  112. data/app/assets/fonts/flag-icon-css/flags/1x1/hk.svg +37 -0
  113. data/app/assets/fonts/flag-icon-css/flags/1x1/hm.svg +13 -0
  114. data/app/assets/fonts/flag-icon-css/flags/1x1/hn.svg +18 -0
  115. data/app/assets/fonts/flag-icon-css/flags/1x1/hr.svg +71 -0
  116. data/app/assets/fonts/flag-icon-css/flags/1x1/ht.svg +141 -0
  117. data/app/assets/fonts/flag-icon-css/flags/1x1/hu.svg +8 -0
  118. data/app/assets/fonts/flag-icon-css/flags/1x1/id.svg +7 -0
  119. data/app/assets/fonts/flag-icon-css/flags/1x1/ie.svg +8 -0
  120. data/app/assets/fonts/flag-icon-css/flags/1x1/il.svg +15 -0
  121. data/app/assets/fonts/flag-icon-css/flags/1x1/im.svg +37 -0
  122. data/app/assets/fonts/flag-icon-css/flags/1x1/in.svg +25 -0
  123. data/app/assets/fonts/flag-icon-css/flags/1x1/io.svg +192 -0
  124. data/app/assets/fonts/flag-icon-css/flags/1x1/iq.svg +10 -0
  125. data/app/assets/fonts/flag-icon-css/flags/1x1/ir.svg +521 -0
  126. data/app/assets/fonts/flag-icon-css/flags/1x1/is.svg +21 -0
  127. data/app/assets/fonts/flag-icon-css/flags/1x1/it.svg +16 -0
  128. data/app/assets/fonts/flag-icon-css/flags/1x1/je.svg +67 -0
  129. data/app/assets/fonts/flag-icon-css/flags/1x1/jm.svg +23 -0
  130. data/app/assets/fonts/flag-icon-css/flags/1x1/jo.svg +25 -0
  131. data/app/assets/fonts/flag-icon-css/flags/1x1/jp.svg +20 -0
  132. data/app/assets/fonts/flag-icon-css/flags/1x1/ke.svg +23 -0
  133. data/app/assets/fonts/flag-icon-css/flags/1x1/kg.svg +24 -0
  134. data/app/assets/fonts/flag-icon-css/flags/1x1/kh.svg +155 -0
  135. data/app/assets/fonts/flag-icon-css/flags/1x1/ki.svg +48 -0
  136. data/app/assets/fonts/flag-icon-css/flags/1x1/km.svg +28 -0
  137. data/app/assets/fonts/flag-icon-css/flags/1x1/kn.svg +24 -0
  138. data/app/assets/fonts/flag-icon-css/flags/1x1/kp.svg +24 -0
  139. data/app/assets/fonts/flag-icon-css/flags/1x1/kr.svg +41 -0
  140. data/app/assets/fonts/flag-icon-css/flags/1x1/kw.svg +22 -0
  141. data/app/assets/fonts/flag-icon-css/flags/1x1/ky.svg +125 -0
  142. data/app/assets/fonts/flag-icon-css/flags/1x1/kz.svg +66 -0
  143. data/app/assets/fonts/flag-icon-css/flags/1x1/la.svg +21 -0
  144. data/app/assets/fonts/flag-icon-css/flags/1x1/lb.svg +44 -0
  145. data/app/assets/fonts/flag-icon-css/flags/1x1/lc.svg +17 -0
  146. data/app/assets/fonts/flag-icon-css/flags/1x1/li.svg +43 -0
  147. data/app/assets/fonts/flag-icon-css/flags/1x1/lk.svg +22 -0
  148. data/app/assets/fonts/flag-icon-css/flags/1x1/lr.svg +28 -0
  149. data/app/assets/fonts/flag-icon-css/flags/1x1/ls.svg +173 -0
  150. data/app/assets/fonts/flag-icon-css/flags/1x1/lt.svg +16 -0
  151. data/app/assets/fonts/flag-icon-css/flags/1x1/lu.svg +16 -0
  152. data/app/assets/fonts/flag-icon-css/flags/1x1/lv.svg +16 -0
  153. data/app/assets/fonts/flag-icon-css/flags/1x1/ly.svg +25 -0
  154. data/app/assets/fonts/flag-icon-css/flags/1x1/ma.svg +4 -0
  155. data/app/assets/fonts/flag-icon-css/flags/1x1/mc.svg +15 -0
  156. data/app/assets/fonts/flag-icon-css/flags/1x1/md.svg +98 -0
  157. data/app/assets/fonts/flag-icon-css/flags/1x1/me.svg +4 -0
  158. data/app/assets/fonts/flag-icon-css/flags/1x1/mf.svg +16 -0
  159. data/app/assets/fonts/flag-icon-css/flags/1x1/mg.svg +16 -0
  160. data/app/assets/fonts/flag-icon-css/flags/1x1/mh.svg +17 -0
  161. data/app/assets/fonts/flag-icon-css/flags/1x1/mk.svg +5 -0
  162. data/app/assets/fonts/flag-icon-css/flags/1x1/ml.svg +16 -0
  163. data/app/assets/fonts/flag-icon-css/flags/1x1/mm.svg +157 -0
  164. data/app/assets/fonts/flag-icon-css/flags/1x1/mn.svg +16 -0
  165. data/app/assets/fonts/flag-icon-css/flags/1x1/mo.svg +9 -0
  166. data/app/assets/fonts/flag-icon-css/flags/1x1/mp.svg +267 -0
  167. data/app/assets/fonts/flag-icon-css/flags/1x1/mq.svg +16 -0
  168. data/app/assets/fonts/flag-icon-css/flags/1x1/mr.svg +13 -0
  169. data/app/assets/fonts/flag-icon-css/flags/1x1/ms.svg +75 -0
  170. data/app/assets/fonts/flag-icon-css/flags/1x1/mt.svg +79 -0
  171. data/app/assets/fonts/flag-icon-css/flags/1x1/mu.svg +17 -0
  172. data/app/assets/fonts/flag-icon-css/flags/1x1/mv.svg +24 -0
  173. data/app/assets/fonts/flag-icon-css/flags/1x1/mw.svg +55 -0
  174. data/app/assets/fonts/flag-icon-css/flags/1x1/mx.svg +346 -0
  175. data/app/assets/fonts/flag-icon-css/flags/1x1/my.svg +13 -0
  176. data/app/assets/fonts/flag-icon-css/flags/1x1/mz.svg +33 -0
  177. data/app/assets/fonts/flag-icon-css/flags/1x1/na.svg +29 -0
  178. data/app/assets/fonts/flag-icon-css/flags/1x1/nc.svg +16 -0
  179. data/app/assets/fonts/flag-icon-css/flags/1x1/ne.svg +6 -0
  180. data/app/assets/fonts/flag-icon-css/flags/1x1/nf.svg +47 -0
  181. data/app/assets/fonts/flag-icon-css/flags/1x1/ng.svg +18 -0
  182. data/app/assets/fonts/flag-icon-css/flags/1x1/ni.svg +137 -0
  183. data/app/assets/fonts/flag-icon-css/flags/1x1/nl.svg +16 -0
  184. data/app/assets/fonts/flag-icon-css/flags/1x1/no.svg +7 -0
  185. data/app/assets/fonts/flag-icon-css/flags/1x1/np.svg +29 -0
  186. data/app/assets/fonts/flag-icon-css/flags/1x1/nr.svg +21 -0
  187. data/app/assets/fonts/flag-icon-css/flags/1x1/nu.svg +39 -0
  188. data/app/assets/fonts/flag-icon-css/flags/1x1/nz.svg +42 -0
  189. data/app/assets/fonts/flag-icon-css/flags/1x1/om.svg +348 -0
  190. data/app/assets/fonts/flag-icon-css/flags/1x1/pa.svg +23 -0
  191. data/app/assets/fonts/flag-icon-css/flags/1x1/pe.svg +16 -0
  192. data/app/assets/fonts/flag-icon-css/flags/1x1/pf.svg +75 -0
  193. data/app/assets/fonts/flag-icon-css/flags/1x1/pg.svg +31 -0
  194. data/app/assets/fonts/flag-icon-css/flags/1x1/ph.svg +33 -0
  195. data/app/assets/fonts/flag-icon-css/flags/1x1/pk.svg +24 -0
  196. data/app/assets/fonts/flag-icon-css/flags/1x1/pl.svg +15 -0
  197. data/app/assets/fonts/flag-icon-css/flags/1x1/pm.svg +16 -0
  198. data/app/assets/fonts/flag-icon-css/flags/1x1/pn.svg +148 -0
  199. data/app/assets/fonts/flag-icon-css/flags/1x1/pr.svg +23 -0
  200. data/app/assets/fonts/flag-icon-css/flags/1x1/ps.svg +24 -0
  201. data/app/assets/fonts/flag-icon-css/flags/1x1/pt.svg +57 -0
  202. data/app/assets/fonts/flag-icon-css/flags/1x1/pw.svg +20 -0
  203. data/app/assets/fonts/flag-icon-css/flags/1x1/py.svg +157 -0
  204. data/app/assets/fonts/flag-icon-css/flags/1x1/qa.svg +20 -0
  205. data/app/assets/fonts/flag-icon-css/flags/1x1/re.svg +16 -0
  206. data/app/assets/fonts/flag-icon-css/flags/1x1/ro.svg +18 -0
  207. data/app/assets/fonts/flag-icon-css/flags/1x1/rs.svg +1571 -0
  208. data/app/assets/fonts/flag-icon-css/flags/1x1/ru.svg +16 -0
  209. data/app/assets/fonts/flag-icon-css/flags/1x1/rw.svg +13 -0
  210. data/app/assets/fonts/flag-icon-css/flags/1x1/sa.svg +55 -0
  211. data/app/assets/fonts/flag-icon-css/flags/1x1/sb.svg +26 -0
  212. data/app/assets/fonts/flag-icon-css/flags/1x1/sc.svg +23 -0
  213. data/app/assets/fonts/flag-icon-css/flags/1x1/sd.svg +22 -0
  214. data/app/assets/fonts/flag-icon-css/flags/1x1/se.svg +27 -0
  215. data/app/assets/fonts/flag-icon-css/flags/1x1/sg.svg +26 -0
  216. data/app/assets/fonts/flag-icon-css/flags/1x1/sh.svg +798 -0
  217. data/app/assets/fonts/flag-icon-css/flags/1x1/si.svg +29 -0
  218. data/app/assets/fonts/flag-icon-css/flags/1x1/sj.svg +26 -0
  219. data/app/assets/fonts/flag-icon-css/flags/1x1/sk.svg +25 -0
  220. data/app/assets/fonts/flag-icon-css/flags/1x1/sl.svg +92 -0
  221. data/app/assets/fonts/flag-icon-css/flags/1x1/sm.svg +187 -0
  222. data/app/assets/fonts/flag-icon-css/flags/1x1/sn.svg +17 -0
  223. data/app/assets/fonts/flag-icon-css/flags/1x1/so.svg +20 -0
  224. data/app/assets/fonts/flag-icon-css/flags/1x1/sr.svg +6 -0
  225. data/app/assets/fonts/flag-icon-css/flags/1x1/ss.svg +21 -0
  226. data/app/assets/fonts/flag-icon-css/flags/1x1/st.svg +26 -0
  227. data/app/assets/fonts/flag-icon-css/flags/1x1/sv.svg +645 -0
  228. data/app/assets/fonts/flag-icon-css/flags/1x1/sx.svg +105 -0
  229. data/app/assets/fonts/flag-icon-css/flags/1x1/sy.svg +27 -0
  230. data/app/assets/fonts/flag-icon-css/flags/1x1/sz.svg +92 -0
  231. data/app/assets/fonts/flag-icon-css/flags/1x1/tc.svg +107 -0
  232. data/app/assets/fonts/flag-icon-css/flags/1x1/td.svg +77 -0
  233. data/app/assets/fonts/flag-icon-css/flags/1x1/tf.svg +15 -0
  234. data/app/assets/fonts/flag-icon-css/flags/1x1/tg.svg +24 -0
  235. data/app/assets/fonts/flag-icon-css/flags/1x1/th.svg +17 -0
  236. data/app/assets/fonts/flag-icon-css/flags/1x1/tj.svg +182 -0
  237. data/app/assets/fonts/flag-icon-css/flags/1x1/tk.svg +24 -0
  238. data/app/assets/fonts/flag-icon-css/flags/1x1/tl.svg +22 -0
  239. data/app/assets/fonts/flag-icon-css/flags/1x1/tm.svg +324 -0
  240. data/app/assets/fonts/flag-icon-css/flags/1x1/tn.svg +22 -0
  241. data/app/assets/fonts/flag-icon-css/flags/1x1/to.svg +21 -0
  242. data/app/assets/fonts/flag-icon-css/flags/1x1/tr.svg +9 -0
  243. data/app/assets/fonts/flag-icon-css/flags/1x1/tt.svg +17 -0
  244. data/app/assets/fonts/flag-icon-css/flags/1x1/tv.svg +48 -0
  245. data/app/assets/fonts/flag-icon-css/flags/1x1/tw.svg +23 -0
  246. data/app/assets/fonts/flag-icon-css/flags/1x1/tz.svg +25 -0
  247. data/app/assets/fonts/flag-icon-css/flags/1x1/ua.svg +15 -0
  248. data/app/assets/fonts/flag-icon-css/flags/1x1/ug.svg +41 -0
  249. data/app/assets/fonts/flag-icon-css/flags/1x1/um.svg +117 -0
  250. data/app/assets/fonts/flag-icon-css/flags/1x1/us.svg +117 -0
  251. data/app/assets/fonts/flag-icon-css/flags/1x1/uy.svg +55 -0
  252. data/app/assets/fonts/flag-icon-css/flags/1x1/uz.svg +30 -0
  253. data/app/assets/fonts/flag-icon-css/flags/1x1/va.svg +500 -0
  254. data/app/assets/fonts/flag-icon-css/flags/1x1/vc.svg +21 -0
  255. data/app/assets/fonts/flag-icon-css/flags/1x1/ve.svg +29 -0
  256. data/app/assets/fonts/flag-icon-css/flags/1x1/vg.svg +246 -0
  257. data/app/assets/fonts/flag-icon-css/flags/1x1/vi.svg +32 -0
  258. data/app/assets/fonts/flag-icon-css/flags/1x1/vn.svg +20 -0
  259. data/app/assets/fonts/flag-icon-css/flags/1x1/vu.svg +27 -0
  260. data/app/assets/fonts/flag-icon-css/flags/1x1/wf.svg +16 -0
  261. data/app/assets/fonts/flag-icon-css/flags/1x1/ws.svg +22 -0
  262. data/app/assets/fonts/flag-icon-css/flags/1x1/ye.svg +16 -0
  263. data/app/assets/fonts/flag-icon-css/flags/1x1/yt.svg +16 -0
  264. data/app/assets/fonts/flag-icon-css/flags/1x1/za.svg +29 -0
  265. data/app/assets/fonts/flag-icon-css/flags/1x1/zm.svg +39 -0
  266. data/app/assets/fonts/flag-icon-css/flags/1x1/zw.svg +51 -0
  267. data/app/assets/fonts/flag-icon-css/flags/1x1/zz.svg +4 -0
  268. data/app/assets/fonts/flag-icon-css/flags/4x3/ad.svg +157 -0
  269. data/app/assets/fonts/flag-icon-css/flags/4x3/ae.svg +9 -0
  270. data/app/assets/fonts/flag-icon-css/flags/4x3/af.svg +434 -0
  271. data/app/assets/fonts/flag-icon-css/flags/4x3/ag.svg +16 -0
  272. data/app/assets/fonts/flag-icon-css/flags/4x3/ai.svg +772 -0
  273. data/app/assets/fonts/flag-icon-css/flags/4x3/al.svg +5 -0
  274. data/app/assets/fonts/flag-icon-css/flags/4x3/am.svg +6 -0
  275. data/app/assets/fonts/flag-icon-css/flags/4x3/ao.svg +14 -0
  276. data/app/assets/fonts/flag-icon-css/flags/4x3/aq.svg +7 -0
  277. data/app/assets/fonts/flag-icon-css/flags/4x3/ar.svg +144 -0
  278. data/app/assets/fonts/flag-icon-css/flags/4x3/as.svg +34 -0
  279. data/app/assets/fonts/flag-icon-css/flags/4x3/at.svg +7 -0
  280. data/app/assets/fonts/flag-icon-css/flags/4x3/au.svg +12 -0
  281. data/app/assets/fonts/flag-icon-css/flags/4x3/aw.svg +187 -0
  282. data/app/assets/fonts/flag-icon-css/flags/4x3/ax.svg +19 -0
  283. data/app/assets/fonts/flag-icon-css/flags/4x3/az.svg +8 -0
  284. data/app/assets/fonts/flag-icon-css/flags/4x3/ba.svg +13 -0
  285. data/app/assets/fonts/flag-icon-css/flags/4x3/bb.svg +6 -0
  286. data/app/assets/fonts/flag-icon-css/flags/4x3/bd.svg +7 -0
  287. data/app/assets/fonts/flag-icon-css/flags/4x3/be.svg +8 -0
  288. data/app/assets/fonts/flag-icon-css/flags/4x3/bf.svg +8 -0
  289. data/app/assets/fonts/flag-icon-css/flags/4x3/bg.svg +8 -0
  290. data/app/assets/fonts/flag-icon-css/flags/4x3/bh.svg +12 -0
  291. data/app/assets/fonts/flag-icon-css/flags/4x3/bi.svg +16 -0
  292. data/app/assets/fonts/flag-icon-css/flags/4x3/bj.svg +15 -0
  293. data/app/assets/fonts/flag-icon-css/flags/4x3/bl.svg +8 -0
  294. data/app/assets/fonts/flag-icon-css/flags/4x3/bm.svg +102 -0
  295. data/app/assets/fonts/flag-icon-css/flags/4x3/bn.svg +76 -0
  296. data/app/assets/fonts/flag-icon-css/flags/4x3/bo.svg +8 -0
  297. data/app/assets/fonts/flag-icon-css/flags/4x3/bq.svg +6 -0
  298. data/app/assets/fonts/flag-icon-css/flags/4x3/br.svg +46 -0
  299. data/app/assets/fonts/flag-icon-css/flags/4x3/bs.svg +14 -0
  300. data/app/assets/fonts/flag-icon-css/flags/4x3/bt.svg +125 -0
  301. data/app/assets/fonts/flag-icon-css/flags/4x3/bv.svg +14 -0
  302. data/app/assets/fonts/flag-icon-css/flags/4x3/bw.svg +8 -0
  303. data/app/assets/fonts/flag-icon-css/flags/4x3/by.svg +63 -0
  304. data/app/assets/fonts/flag-icon-css/flags/4x3/bz.svg +238 -0
  305. data/app/assets/fonts/flag-icon-css/flags/4x3/ca.svg +12 -0
  306. data/app/assets/fonts/flag-icon-css/flags/4x3/cc.svg +19 -0
  307. data/app/assets/fonts/flag-icon-css/flags/4x3/cd.svg +6 -0
  308. data/app/assets/fonts/flag-icon-css/flags/4x3/cf.svg +16 -0
  309. data/app/assets/fonts/flag-icon-css/flags/4x3/cg.svg +13 -0
  310. data/app/assets/fonts/flag-icon-css/flags/4x3/ch.svg +10 -0
  311. data/app/assets/fonts/flag-icon-css/flags/4x3/ci.svg +8 -0
  312. data/app/assets/fonts/flag-icon-css/flags/4x3/ck.svg +12 -0
  313. data/app/assets/fonts/flag-icon-css/flags/4x3/cl.svg +14 -0
  314. data/app/assets/fonts/flag-icon-css/flags/4x3/cm.svg +15 -0
  315. data/app/assets/fonts/flag-icon-css/flags/4x3/cn.svg +20 -0
  316. data/app/assets/fonts/flag-icon-css/flags/4x3/co.svg +8 -0
  317. data/app/assets/fonts/flag-icon-css/flags/4x3/cr.svg +8 -0
  318. data/app/assets/fonts/flag-icon-css/flags/4x3/cu.svg +14 -0
  319. data/app/assets/fonts/flag-icon-css/flags/4x3/cv.svg +17 -0
  320. data/app/assets/fonts/flag-icon-css/flags/4x3/cw.svg +15 -0
  321. data/app/assets/fonts/flag-icon-css/flags/4x3/cx.svg +15 -0
  322. data/app/assets/fonts/flag-icon-css/flags/4x3/cy.svg +6 -0
  323. data/app/assets/fonts/flag-icon-css/flags/4x3/cz.svg +13 -0
  324. data/app/assets/fonts/flag-icon-css/flags/4x3/de.svg +8 -0
  325. data/app/assets/fonts/flag-icon-css/flags/4x3/dj.svg +14 -0
  326. data/app/assets/fonts/flag-icon-css/flags/4x3/dk.svg +5 -0
  327. data/app/assets/fonts/flag-icon-css/flags/4x3/dm.svg +153 -0
  328. data/app/assets/fonts/flag-icon-css/flags/4x3/do.svg +6749 -0
  329. data/app/assets/fonts/flag-icon-css/flags/4x3/dz.svg +5 -0
  330. data/app/assets/fonts/flag-icon-css/flags/4x3/ec.svg +146 -0
  331. data/app/assets/fonts/flag-icon-css/flags/4x3/ee.svg +8 -0
  332. data/app/assets/fonts/flag-icon-css/flags/4x3/eg.svg +42 -0
  333. data/app/assets/fonts/flag-icon-css/flags/4x3/eh.svg +16 -0
  334. data/app/assets/fonts/flag-icon-css/flags/4x3/er.svg +9 -0
  335. data/app/assets/fonts/flag-icon-css/flags/4x3/es.svg +581 -0
  336. data/app/assets/fonts/flag-icon-css/flags/4x3/et.svg +15 -0
  337. data/app/assets/fonts/flag-icon-css/flags/4x3/eu.svg +28 -0
  338. data/app/assets/fonts/flag-icon-css/flags/4x3/fi.svg +16 -0
  339. data/app/assets/fonts/flag-icon-css/flags/4x3/fj.svg +139 -0
  340. data/app/assets/fonts/flag-icon-css/flags/4x3/fk.svg +93 -0
  341. data/app/assets/fonts/flag-icon-css/flags/4x3/fm.svg +12 -0
  342. data/app/assets/fonts/flag-icon-css/flags/4x3/fo.svg +13 -0
  343. data/app/assets/fonts/flag-icon-css/flags/4x3/fr.svg +8 -0
  344. data/app/assets/fonts/flag-icon-css/flags/4x3/ga.svg +8 -0
  345. data/app/assets/fonts/flag-icon-css/flags/4x3/gb-eng.svg +5 -0
  346. data/app/assets/fonts/flag-icon-css/flags/4x3/gb-sct.svg +4 -0
  347. data/app/assets/fonts/flag-icon-css/flags/4x3/gb-wls.svg +9 -0
  348. data/app/assets/fonts/flag-icon-css/flags/4x3/gb.svg +16 -0
  349. data/app/assets/fonts/flag-icon-css/flags/4x3/gd.svg +14 -0
  350. data/app/assets/fonts/flag-icon-css/flags/4x3/ge.svg +19 -0
  351. data/app/assets/fonts/flag-icon-css/flags/4x3/gf.svg +5 -0
  352. data/app/assets/fonts/flag-icon-css/flags/4x3/gg.svg +19 -0
  353. data/app/assets/fonts/flag-icon-css/flags/4x3/gh.svg +6 -0
  354. data/app/assets/fonts/flag-icon-css/flags/4x3/gi.svg +33 -0
  355. data/app/assets/fonts/flag-icon-css/flags/4x3/gl.svg +13 -0
  356. data/app/assets/fonts/flag-icon-css/flags/4x3/gm.svg +15 -0
  357. data/app/assets/fonts/flag-icon-css/flags/4x3/gn.svg +8 -0
  358. data/app/assets/fonts/flag-icon-css/flags/4x3/gp.svg +8 -0
  359. data/app/assets/fonts/flag-icon-css/flags/4x3/gq.svg +37 -0
  360. data/app/assets/fonts/flag-icon-css/flags/4x3/gr.svg +23 -0
  361. data/app/assets/fonts/flag-icon-css/flags/4x3/gs.svg +210 -0
  362. data/app/assets/fonts/flag-icon-css/flags/4x3/gt.svg +216 -0
  363. data/app/assets/fonts/flag-icon-css/flags/4x3/gu.svg +40 -0
  364. data/app/assets/fonts/flag-icon-css/flags/4x3/gw.svg +14 -0
  365. data/app/assets/fonts/flag-icon-css/flags/4x3/gy.svg +10 -0
  366. data/app/assets/fonts/flag-icon-css/flags/4x3/hk.svg +37 -0
  367. data/app/assets/fonts/flag-icon-css/flags/4x3/hm.svg +13 -0
  368. data/app/assets/fonts/flag-icon-css/flags/4x3/hn.svg +18 -0
  369. data/app/assets/fonts/flag-icon-css/flags/4x3/hr.svg +71 -0
  370. data/app/assets/fonts/flag-icon-css/flags/4x3/ht.svg +141 -0
  371. data/app/assets/fonts/flag-icon-css/flags/4x3/hu.svg +8 -0
  372. data/app/assets/fonts/flag-icon-css/flags/4x3/id.svg +7 -0
  373. data/app/assets/fonts/flag-icon-css/flags/4x3/ie.svg +8 -0
  374. data/app/assets/fonts/flag-icon-css/flags/4x3/il.svg +15 -0
  375. data/app/assets/fonts/flag-icon-css/flags/4x3/im.svg +37 -0
  376. data/app/assets/fonts/flag-icon-css/flags/4x3/in.svg +25 -0
  377. data/app/assets/fonts/flag-icon-css/flags/4x3/io.svg +186 -0
  378. data/app/assets/fonts/flag-icon-css/flags/4x3/iq.svg +10 -0
  379. data/app/assets/fonts/flag-icon-css/flags/4x3/ir.svg +521 -0
  380. data/app/assets/fonts/flag-icon-css/flags/4x3/is.svg +21 -0
  381. data/app/assets/fonts/flag-icon-css/flags/4x3/it.svg +16 -0
  382. data/app/assets/fonts/flag-icon-css/flags/4x3/je.svg +67 -0
  383. data/app/assets/fonts/flag-icon-css/flags/4x3/jm.svg +21 -0
  384. data/app/assets/fonts/flag-icon-css/flags/4x3/jo.svg +25 -0
  385. data/app/assets/fonts/flag-icon-css/flags/4x3/jp.svg +20 -0
  386. data/app/assets/fonts/flag-icon-css/flags/4x3/ke.svg +23 -0
  387. data/app/assets/fonts/flag-icon-css/flags/4x3/kg.svg +24 -0
  388. data/app/assets/fonts/flag-icon-css/flags/4x3/kh.svg +155 -0
  389. data/app/assets/fonts/flag-icon-css/flags/4x3/ki.svg +48 -0
  390. data/app/assets/fonts/flag-icon-css/flags/4x3/km.svg +28 -0
  391. data/app/assets/fonts/flag-icon-css/flags/4x3/kn.svg +24 -0
  392. data/app/assets/fonts/flag-icon-css/flags/4x3/kp.svg +24 -0
  393. data/app/assets/fonts/flag-icon-css/flags/4x3/kr.svg +41 -0
  394. data/app/assets/fonts/flag-icon-css/flags/4x3/kw.svg +22 -0
  395. data/app/assets/fonts/flag-icon-css/flags/4x3/ky.svg +122 -0
  396. data/app/assets/fonts/flag-icon-css/flags/4x3/kz.svg +66 -0
  397. data/app/assets/fonts/flag-icon-css/flags/4x3/la.svg +21 -0
  398. data/app/assets/fonts/flag-icon-css/flags/4x3/lb.svg +44 -0
  399. data/app/assets/fonts/flag-icon-css/flags/4x3/lc.svg +17 -0
  400. data/app/assets/fonts/flag-icon-css/flags/4x3/li.svg +43 -0
  401. data/app/assets/fonts/flag-icon-css/flags/4x3/lk.svg +22 -0
  402. data/app/assets/fonts/flag-icon-css/flags/4x3/lr.svg +28 -0
  403. data/app/assets/fonts/flag-icon-css/flags/4x3/ls.svg +173 -0
  404. data/app/assets/fonts/flag-icon-css/flags/4x3/lt.svg +16 -0
  405. data/app/assets/fonts/flag-icon-css/flags/4x3/lu.svg +16 -0
  406. data/app/assets/fonts/flag-icon-css/flags/4x3/lv.svg +16 -0
  407. data/app/assets/fonts/flag-icon-css/flags/4x3/ly.svg +23 -0
  408. data/app/assets/fonts/flag-icon-css/flags/4x3/ma.svg +4 -0
  409. data/app/assets/fonts/flag-icon-css/flags/4x3/mc.svg +15 -0
  410. data/app/assets/fonts/flag-icon-css/flags/4x3/md.svg +100 -0
  411. data/app/assets/fonts/flag-icon-css/flags/4x3/me.svg +4 -0
  412. data/app/assets/fonts/flag-icon-css/flags/4x3/mf.svg +16 -0
  413. data/app/assets/fonts/flag-icon-css/flags/4x3/mg.svg +16 -0
  414. data/app/assets/fonts/flag-icon-css/flags/4x3/mh.svg +19 -0
  415. data/app/assets/fonts/flag-icon-css/flags/4x3/mk.svg +5 -0
  416. data/app/assets/fonts/flag-icon-css/flags/4x3/ml.svg +16 -0
  417. data/app/assets/fonts/flag-icon-css/flags/4x3/mm.svg +146 -0
  418. data/app/assets/fonts/flag-icon-css/flags/4x3/mn.svg +16 -0
  419. data/app/assets/fonts/flag-icon-css/flags/4x3/mo.svg +9 -0
  420. data/app/assets/fonts/flag-icon-css/flags/4x3/mp.svg +267 -0
  421. data/app/assets/fonts/flag-icon-css/flags/4x3/mq.svg +16 -0
  422. data/app/assets/fonts/flag-icon-css/flags/4x3/mr.svg +13 -0
  423. data/app/assets/fonts/flag-icon-css/flags/4x3/ms.svg +75 -0
  424. data/app/assets/fonts/flag-icon-css/flags/4x3/mt.svg +81 -0
  425. data/app/assets/fonts/flag-icon-css/flags/4x3/mu.svg +17 -0
  426. data/app/assets/fonts/flag-icon-css/flags/4x3/mv.svg +19 -0
  427. data/app/assets/fonts/flag-icon-css/flags/4x3/mw.svg +54 -0
  428. data/app/assets/fonts/flag-icon-css/flags/4x3/mx.svg +348 -0
  429. data/app/assets/fonts/flag-icon-css/flags/4x3/my.svg +13 -0
  430. data/app/assets/fonts/flag-icon-css/flags/4x3/mz.svg +33 -0
  431. data/app/assets/fonts/flag-icon-css/flags/4x3/na.svg +29 -0
  432. data/app/assets/fonts/flag-icon-css/flags/4x3/nc.svg +16 -0
  433. data/app/assets/fonts/flag-icon-css/flags/4x3/ne.svg +6 -0
  434. data/app/assets/fonts/flag-icon-css/flags/4x3/nf.svg +45 -0
  435. data/app/assets/fonts/flag-icon-css/flags/4x3/ng.svg +18 -0
  436. data/app/assets/fonts/flag-icon-css/flags/4x3/ni.svg +137 -0
  437. data/app/assets/fonts/flag-icon-css/flags/4x3/nl.svg +16 -0
  438. data/app/assets/fonts/flag-icon-css/flags/4x3/no.svg +7 -0
  439. data/app/assets/fonts/flag-icon-css/flags/4x3/np.svg +26 -0
  440. data/app/assets/fonts/flag-icon-css/flags/4x3/nr.svg +21 -0
  441. data/app/assets/fonts/flag-icon-css/flags/4x3/nu.svg +39 -0
  442. data/app/assets/fonts/flag-icon-css/flags/4x3/nz.svg +42 -0
  443. data/app/assets/fonts/flag-icon-css/flags/4x3/om.svg +348 -0
  444. data/app/assets/fonts/flag-icon-css/flags/4x3/pa.svg +24 -0
  445. data/app/assets/fonts/flag-icon-css/flags/4x3/pe.svg +16 -0
  446. data/app/assets/fonts/flag-icon-css/flags/4x3/pf.svg +76 -0
  447. data/app/assets/fonts/flag-icon-css/flags/4x3/pg.svg +26 -0
  448. data/app/assets/fonts/flag-icon-css/flags/4x3/ph.svg +35 -0
  449. data/app/assets/fonts/flag-icon-css/flags/4x3/pk.svg +24 -0
  450. data/app/assets/fonts/flag-icon-css/flags/4x3/pl.svg +15 -0
  451. data/app/assets/fonts/flag-icon-css/flags/4x3/pm.svg +16 -0
  452. data/app/assets/fonts/flag-icon-css/flags/4x3/pn.svg +145 -0
  453. data/app/assets/fonts/flag-icon-css/flags/4x3/pr.svg +23 -0
  454. data/app/assets/fonts/flag-icon-css/flags/4x3/ps.svg +24 -0
  455. data/app/assets/fonts/flag-icon-css/flags/4x3/pt.svg +57 -0
  456. data/app/assets/fonts/flag-icon-css/flags/4x3/pw.svg +20 -0
  457. data/app/assets/fonts/flag-icon-css/flags/4x3/py.svg +157 -0
  458. data/app/assets/fonts/flag-icon-css/flags/4x3/qa.svg +20 -0
  459. data/app/assets/fonts/flag-icon-css/flags/4x3/re.svg +16 -0
  460. data/app/assets/fonts/flag-icon-css/flags/4x3/ro.svg +18 -0
  461. data/app/assets/fonts/flag-icon-css/flags/4x3/rs.svg +1562 -0
  462. data/app/assets/fonts/flag-icon-css/flags/4x3/ru.svg +16 -0
  463. data/app/assets/fonts/flag-icon-css/flags/4x3/rw.svg +13 -0
  464. data/app/assets/fonts/flag-icon-css/flags/4x3/sa.svg +55 -0
  465. data/app/assets/fonts/flag-icon-css/flags/4x3/sb.svg +26 -0
  466. data/app/assets/fonts/flag-icon-css/flags/4x3/sc.svg +23 -0
  467. data/app/assets/fonts/flag-icon-css/flags/4x3/sd.svg +22 -0
  468. data/app/assets/fonts/flag-icon-css/flags/4x3/se.svg +27 -0
  469. data/app/assets/fonts/flag-icon-css/flags/4x3/sg.svg +28 -0
  470. data/app/assets/fonts/flag-icon-css/flags/4x3/sh.svg +795 -0
  471. data/app/assets/fonts/flag-icon-css/flags/4x3/si.svg +29 -0
  472. data/app/assets/fonts/flag-icon-css/flags/4x3/sj.svg +26 -0
  473. data/app/assets/fonts/flag-icon-css/flags/4x3/sk.svg +25 -0
  474. data/app/assets/fonts/flag-icon-css/flags/4x3/sl.svg +16 -0
  475. data/app/assets/fonts/flag-icon-css/flags/4x3/sm.svg +187 -0
  476. data/app/assets/fonts/flag-icon-css/flags/4x3/sn.svg +19 -0
  477. data/app/assets/fonts/flag-icon-css/flags/4x3/so.svg +20 -0
  478. data/app/assets/fonts/flag-icon-css/flags/4x3/sr.svg +6 -0
  479. data/app/assets/fonts/flag-icon-css/flags/4x3/ss.svg +21 -0
  480. data/app/assets/fonts/flag-icon-css/flags/4x3/st.svg +26 -0
  481. data/app/assets/fonts/flag-icon-css/flags/4x3/sv.svg +645 -0
  482. data/app/assets/fonts/flag-icon-css/flags/4x3/sx.svg +105 -0
  483. data/app/assets/fonts/flag-icon-css/flags/4x3/sy.svg +22 -0
  484. data/app/assets/fonts/flag-icon-css/flags/4x3/sz.svg +92 -0
  485. data/app/assets/fonts/flag-icon-css/flags/4x3/tc.svg +102 -0
  486. data/app/assets/fonts/flag-icon-css/flags/4x3/td.svg +16 -0
  487. data/app/assets/fonts/flag-icon-css/flags/4x3/tf.svg +15 -0
  488. data/app/assets/fonts/flag-icon-css/flags/4x3/tg.svg +24 -0
  489. data/app/assets/fonts/flag-icon-css/flags/4x3/th.svg +19 -0
  490. data/app/assets/fonts/flag-icon-css/flags/4x3/tj.svg +181 -0
  491. data/app/assets/fonts/flag-icon-css/flags/4x3/tk.svg +24 -0
  492. data/app/assets/fonts/flag-icon-css/flags/4x3/tl.svg +22 -0
  493. data/app/assets/fonts/flag-icon-css/flags/4x3/tm.svg +324 -0
  494. data/app/assets/fonts/flag-icon-css/flags/4x3/tn.svg +22 -0
  495. data/app/assets/fonts/flag-icon-css/flags/4x3/to.svg +21 -0
  496. data/app/assets/fonts/flag-icon-css/flags/4x3/tr.svg +9 -0
  497. data/app/assets/fonts/flag-icon-css/flags/4x3/tt.svg +17 -0
  498. data/app/assets/fonts/flag-icon-css/flags/4x3/tv.svg +48 -0
  499. data/app/assets/fonts/flag-icon-css/flags/4x3/tw.svg +23 -0
  500. data/app/assets/fonts/flag-icon-css/flags/4x3/tz.svg +23 -0
  501. data/app/assets/fonts/flag-icon-css/flags/4x3/ua.svg +15 -0
  502. data/app/assets/fonts/flag-icon-css/flags/4x3/ug.svg +41 -0
  503. data/app/assets/fonts/flag-icon-css/flags/4x3/um.svg +117 -0
  504. data/app/assets/fonts/flag-icon-css/flags/4x3/us.svg +117 -0
  505. data/app/assets/fonts/flag-icon-css/flags/4x3/uy.svg +62 -0
  506. data/app/assets/fonts/flag-icon-css/flags/4x3/uz.svg +30 -0
  507. data/app/assets/fonts/flag-icon-css/flags/4x3/va.svg +500 -0
  508. data/app/assets/fonts/flag-icon-css/flags/4x3/vc.svg +19 -0
  509. data/app/assets/fonts/flag-icon-css/flags/4x3/ve.svg +29 -0
  510. data/app/assets/fonts/flag-icon-css/flags/4x3/vg.svg +248 -0
  511. data/app/assets/fonts/flag-icon-css/flags/4x3/vi.svg +32 -0
  512. data/app/assets/fonts/flag-icon-css/flags/4x3/vn.svg +20 -0
  513. data/app/assets/fonts/flag-icon-css/flags/4x3/vu.svg +27 -0
  514. data/app/assets/fonts/flag-icon-css/flags/4x3/wf.svg +16 -0
  515. data/app/assets/fonts/flag-icon-css/flags/4x3/ws.svg +24 -0
  516. data/app/assets/fonts/flag-icon-css/flags/4x3/ye.svg +16 -0
  517. data/app/assets/fonts/flag-icon-css/flags/4x3/yt.svg +16 -0
  518. data/app/assets/fonts/flag-icon-css/flags/4x3/za.svg +27 -0
  519. data/app/assets/fonts/flag-icon-css/flags/4x3/zm.svg +39 -0
  520. data/app/assets/fonts/flag-icon-css/flags/4x3/zw.svg +51 -0
  521. data/app/assets/fonts/flag-icon-css/flags/4x3/zz.svg +5 -0
  522. data/app/assets/fonts/flag-icon-css/sass/flag-icon-base.scss +28 -0
  523. data/app/assets/fonts/flag-icon-css/sass/flag-icon-list.scss +249 -0
  524. data/app/assets/fonts/flag-icon-css/sass/flag-icon-more.scss +4 -0
  525. data/app/assets/fonts/flag-icon-css/sass/flag-icon.scss +4 -0
  526. data/app/assets/fonts/flag-icon-css/sass/variables.scss +3 -0
  527. data/app/assets/fonts/font-awesome/css/font-awesome.css +4586 -0
  528. data/app/assets/fonts/font-awesome/css/font-awesome.min.css +5 -0
  529. data/app/assets/fonts/font-awesome/webfonts/fa-brands-400.eot +0 -0
  530. data/app/assets/fonts/font-awesome/webfonts/fa-brands-400.svg +3637 -0
  531. data/app/assets/fonts/font-awesome/webfonts/fa-brands-400.ttf +0 -0
  532. data/app/assets/fonts/font-awesome/webfonts/fa-brands-400.woff +0 -0
  533. data/app/assets/fonts/font-awesome/webfonts/fa-brands-400.woff2 +0 -0
  534. data/app/assets/fonts/font-awesome/webfonts/fa-regular-400.eot +0 -0
  535. data/app/assets/fonts/font-awesome/webfonts/fa-regular-400.svg +805 -0
  536. data/app/assets/fonts/font-awesome/webfonts/fa-regular-400.ttf +0 -0
  537. data/app/assets/fonts/font-awesome/webfonts/fa-regular-400.woff +0 -0
  538. data/app/assets/fonts/font-awesome/webfonts/fa-regular-400.woff2 +0 -0
  539. data/app/assets/fonts/font-awesome/webfonts/fa-solid-900.eot +0 -0
  540. data/app/assets/fonts/font-awesome/webfonts/fa-solid-900.svg +5015 -0
  541. data/app/assets/fonts/font-awesome/webfonts/fa-solid-900.ttf +0 -0
  542. data/app/assets/fonts/font-awesome/webfonts/fa-solid-900.woff +0 -0
  543. data/app/assets/fonts/font-awesome/webfonts/fa-solid-900.woff2 +0 -0
  544. data/app/assets/javascripts/vendors/js/blockui/blockui.min.js +15 -0
  545. data/app/assets/javascripts/vendors/js/bootstrap/bootstrap.min.js +3427 -0
  546. data/app/assets/javascripts/vendors/js/calendar/fullcalendar.min.js +6 -0
  547. data/app/assets/javascripts/vendors/js/charts/apexcharts.js +29066 -0
  548. data/app/assets/javascripts/vendors/js/charts/apexcharts.min.js +14 -0
  549. data/app/assets/javascripts/vendors/js/charts/chart.min.js +7 -0
  550. data/app/assets/javascripts/vendors/js/editors/quill/assets/base.styl +298 -0
  551. data/app/assets/javascripts/vendors/js/editors/quill/assets/bubble/toolbar.styl +14 -0
  552. data/app/assets/javascripts/vendors/js/editors/quill/assets/bubble/tooltip.styl +46 -0
  553. data/app/assets/javascripts/vendors/js/editors/quill/assets/bubble.styl +11 -0
  554. data/app/assets/javascripts/vendors/js/editors/quill/assets/core.styl +155 -0
  555. data/app/assets/javascripts/vendors/js/editors/quill/assets/favicon.png +0 -0
  556. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/align-center.svg +5 -0
  557. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/align-justify.svg +5 -0
  558. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/align-left.svg +5 -0
  559. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/align-right.svg +5 -0
  560. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/attachment.svg +3 -0
  561. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/audio.svg +5 -0
  562. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/authorship.svg +5 -0
  563. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/background.svg +52 -0
  564. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/blockquote.svg +6 -0
  565. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/bold.svg +4 -0
  566. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/clean.svg +7 -0
  567. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/code.svg +5 -0
  568. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/color.svg +5 -0
  569. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/comment.svg +3 -0
  570. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/direction-ltr.svg +7 -0
  571. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/direction-rtl.svg +7 -0
  572. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/dropdown.svg +4 -0
  573. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/emoji.svg +6 -0
  574. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/float-center.svg +5 -0
  575. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/float-full.svg +5 -0
  576. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/float-left.svg +7 -0
  577. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/float-right.svg +7 -0
  578. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/font.svg +5 -0
  579. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/formula.svg +5 -0
  580. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/hashtag.svg +6 -0
  581. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/header-2.svg +6 -0
  582. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/header.svg +7 -0
  583. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/image.svg +5 -0
  584. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/indent.svg +6 -0
  585. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/italic.svg +5 -0
  586. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/link.svg +5 -0
  587. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/list-bullet.svg +8 -0
  588. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/list-check.svg +8 -0
  589. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/list-ordered.svg +9 -0
  590. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/map.svg +5 -0
  591. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/mention.svg +4 -0
  592. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/outdent.svg +6 -0
  593. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/redo.svg +4 -0
  594. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/size-decrease.svg +5 -0
  595. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/size-increase.svg +6 -0
  596. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/size.svg +6 -0
  597. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/spacing.svg +9 -0
  598. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/speech.svg +6 -0
  599. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/strike.svg +5 -0
  600. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/subscript.svg +4 -0
  601. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/superscript.svg +4 -0
  602. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-border-all.svg +5 -0
  603. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-border-bottom.svg +28 -0
  604. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-border-left.svg +28 -0
  605. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-border-none.svg +25 -0
  606. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-border-outside.svg +35 -0
  607. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-border-right.svg +28 -0
  608. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-border-top.svg +28 -0
  609. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-delete-cells.svg +13 -0
  610. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-delete-columns.svg +8 -0
  611. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-delete-rows.svg +9 -0
  612. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-insert-cells.svg +13 -0
  613. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-insert-columns.svg +8 -0
  614. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-insert-rows.svg +9 -0
  615. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-merge-cells.svg +4 -0
  616. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table-unmerge-cells.svg +7 -0
  617. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/table.svg +11 -0
  618. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/underline.svg +4 -0
  619. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/undo.svg +4 -0
  620. data/app/assets/javascripts/vendors/js/editors/quill/assets/icons/video.svg +14 -0
  621. data/app/assets/javascripts/vendors/js/editors/quill/assets/snow/toolbar.styl +26 -0
  622. data/app/assets/javascripts/vendors/js/editors/quill/assets/snow/tooltip.styl +54 -0
  623. data/app/assets/javascripts/vendors/js/editors/quill/assets/snow.styl +18 -0
  624. data/app/assets/javascripts/vendors/js/editors/quill/highlight.min.js +44 -0
  625. data/app/assets/javascripts/vendors/js/editors/quill/katex.min.js +1 -0
  626. data/app/assets/javascripts/vendors/js/editors/quill/quill.js +17443 -0
  627. data/app/assets/javascripts/vendors/js/editors/quill/quill.min.js +7 -0
  628. data/app/assets/javascripts/vendors/js/editors/quill/themes/base.js +256 -0
  629. data/app/assets/javascripts/vendors/js/editors/quill/themes/bubble.js +112 -0
  630. data/app/assets/javascripts/vendors/js/editors/quill/themes/snow.js +117 -0
  631. data/app/assets/javascripts/vendors/js/editors/quill/ui/color-picker.js +35 -0
  632. data/app/assets/javascripts/vendors/js/editors/quill/ui/icon-picker.js +23 -0
  633. data/app/assets/javascripts/vendors/js/editors/quill/ui/icons.js +48 -0
  634. data/app/assets/javascripts/vendors/js/editors/quill/ui/picker.js +116 -0
  635. data/app/assets/javascripts/vendors/js/editors/quill/ui/tooltip.js +52 -0
  636. data/app/assets/javascripts/vendors/js/extensions/dragula.min.js +1 -0
  637. data/app/assets/javascripts/vendors/js/extensions/i18next.min.js +1 -0
  638. data/app/assets/javascripts/vendors/js/extensions/i18nextBrowserLanguageDetector.min.js +1 -0
  639. data/app/assets/javascripts/vendors/js/extensions/i18nextXHRBackend.min.js +1 -0
  640. data/app/assets/javascripts/vendors/js/extensions/jquery-i18next.min.js +1 -0
  641. data/app/assets/javascripts/vendors/js/extensions/jquery.contextMenu.min.js +1 -0
  642. data/app/assets/javascripts/vendors/js/extensions/jquery.mousewheel.min.js +8 -0
  643. data/app/assets/javascripts/vendors/js/extensions/jquery.rateyo.min.js +3 -0
  644. data/app/assets/javascripts/vendors/js/extensions/jquery.ui.position.min.js +6 -0
  645. data/app/assets/javascripts/vendors/js/extensions/jstree.min.js +6 -0
  646. data/app/assets/javascripts/vendors/js/extensions/lang-all.js +6 -0
  647. data/app/assets/javascripts/vendors/js/extensions/locale-all.js +6 -0
  648. data/app/assets/javascripts/vendors/js/extensions/moment.min.js +6 -0
  649. data/app/assets/javascripts/vendors/js/extensions/nouislider.min.js +2 -0
  650. data/app/assets/javascripts/vendors/js/extensions/plyr.min.js +2 -0
  651. data/app/assets/javascripts/vendors/js/extensions/plyr.polyfilled.min.js +1 -0
  652. data/app/assets/javascripts/vendors/js/extensions/polyfill.min.js +1 -0
  653. data/app/assets/javascripts/vendors/js/extensions/shepherd.min.js +116 -0
  654. data/app/assets/javascripts/vendors/js/extensions/sweetalert2.all.min.js +3 -0
  655. data/app/assets/javascripts/vendors/js/extensions/swiper.min.js +13 -0
  656. data/app/assets/javascripts/vendors/js/extensions/tether.min.js +1 -0
  657. data/app/assets/javascripts/vendors/js/extensions/toastr.min.js +3 -0
  658. data/app/assets/javascripts/vendors/js/extensions/transition.js +59 -0
  659. data/app/assets/javascripts/vendors/js/extensions/wNumb.min.js +1 -0
  660. data/app/assets/javascripts/vendors/js/feather-icons/feather-icons.min.js +14 -0
  661. data/app/assets/javascripts/vendors/js/file-uploaders/dropzone.min.js +1 -0
  662. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ac.js +51 -0
  663. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ad.js +51 -0
  664. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ae.js +51 -0
  665. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.af.js +51 -0
  666. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ag.js +51 -0
  667. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ai.js +51 -0
  668. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.al.js +51 -0
  669. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.am.js +51 -0
  670. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ao.js +51 -0
  671. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ar.js +51 -0
  672. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.as.js +51 -0
  673. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.at.js +51 -0
  674. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.au-cn.js +51 -0
  675. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.au.js +51 -0
  676. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.aw.js +51 -0
  677. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ax.js +51 -0
  678. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.az.js +51 -0
  679. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ba.js +51 -0
  680. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bb.js +51 -0
  681. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bd.js +51 -0
  682. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.be.js +51 -0
  683. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bf.js +51 -0
  684. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bg.js +51 -0
  685. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bh.js +51 -0
  686. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bi.js +51 -0
  687. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bj.js +51 -0
  688. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bl.js +51 -0
  689. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bm.js +51 -0
  690. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bn.js +51 -0
  691. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bo.js +51 -0
  692. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bq.js +51 -0
  693. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.br.js +51 -0
  694. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bs.js +51 -0
  695. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bt.js +51 -0
  696. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bw.js +51 -0
  697. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.by.js +51 -0
  698. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.bz.js +51 -0
  699. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ca.js +51 -0
  700. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cc.js +51 -0
  701. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cd.js +51 -0
  702. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cf.js +51 -0
  703. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cg.js +51 -0
  704. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ch.js +51 -0
  705. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ci.js +51 -0
  706. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ck.js +51 -0
  707. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cl.js +51 -0
  708. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cm.js +51 -0
  709. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cn.js +51 -0
  710. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.co.js +51 -0
  711. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cr.js +51 -0
  712. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cu.js +51 -0
  713. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cv.js +51 -0
  714. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cw.js +51 -0
  715. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cx.js +51 -0
  716. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cy.js +51 -0
  717. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.cz.js +51 -0
  718. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.de.js +51 -0
  719. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.dj.js +51 -0
  720. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.dk.js +51 -0
  721. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.dm.js +51 -0
  722. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.do.js +51 -0
  723. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.dz.js +51 -0
  724. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ec.js +51 -0
  725. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ee.js +51 -0
  726. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.eg.js +51 -0
  727. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.eh.js +51 -0
  728. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.er.js +51 -0
  729. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.es.js +51 -0
  730. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.et.js +51 -0
  731. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.fi.js +51 -0
  732. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.fj.js +51 -0
  733. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.fk.js +51 -0
  734. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.fm.js +51 -0
  735. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.fo.js +51 -0
  736. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.fr.js +51 -0
  737. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ga.js +51 -0
  738. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gb.js +51 -0
  739. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gd.js +51 -0
  740. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ge.js +51 -0
  741. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gf.js +51 -0
  742. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gg.js +51 -0
  743. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gh.js +51 -0
  744. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gi.js +51 -0
  745. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gl.js +51 -0
  746. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gm.js +51 -0
  747. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gn.js +51 -0
  748. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gp.js +51 -0
  749. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gq.js +51 -0
  750. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gr.js +51 -0
  751. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gt.js +51 -0
  752. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gu.js +51 -0
  753. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gw.js +51 -0
  754. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.gy.js +51 -0
  755. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.hk.js +51 -0
  756. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.hn.js +51 -0
  757. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.hr.js +51 -0
  758. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ht.js +51 -0
  759. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.hu.js +51 -0
  760. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.i18n.js +60 -0
  761. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.id.js +51 -0
  762. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ie.js +51 -0
  763. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.il.js +51 -0
  764. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.im.js +51 -0
  765. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.in.js +51 -0
  766. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.io.js +51 -0
  767. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.iq.js +51 -0
  768. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ir.js +51 -0
  769. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.is.js +51 -0
  770. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.it.js +51 -0
  771. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.je.js +51 -0
  772. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.jm.js +51 -0
  773. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.jo.js +51 -0
  774. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.jp.js +51 -0
  775. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ke.js +51 -0
  776. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.kg.js +51 -0
  777. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.kh.js +51 -0
  778. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ki.js +51 -0
  779. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.km.js +51 -0
  780. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.kn.js +51 -0
  781. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.kp.js +51 -0
  782. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.kr.js +51 -0
  783. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.kw.js +51 -0
  784. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ky.js +51 -0
  785. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.kz.js +51 -0
  786. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.la.js +51 -0
  787. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.lb.js +51 -0
  788. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.lc.js +51 -0
  789. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.li.js +51 -0
  790. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.lk.js +51 -0
  791. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.lr.js +51 -0
  792. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ls.js +51 -0
  793. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.lt.js +51 -0
  794. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.lu.js +51 -0
  795. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.lv.js +51 -0
  796. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ly.js +51 -0
  797. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ma.js +51 -0
  798. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mc.js +51 -0
  799. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.md.js +51 -0
  800. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.me.js +51 -0
  801. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mf.js +51 -0
  802. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mg.js +51 -0
  803. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mh.js +51 -0
  804. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mk.js +51 -0
  805. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ml.js +51 -0
  806. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mm.js +51 -0
  807. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mn.js +51 -0
  808. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mo.js +51 -0
  809. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mp.js +51 -0
  810. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mq.js +51 -0
  811. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mr.js +51 -0
  812. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ms.js +51 -0
  813. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mt.js +51 -0
  814. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mu.js +51 -0
  815. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mv.js +51 -0
  816. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mw.js +51 -0
  817. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mx.js +51 -0
  818. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.my.js +51 -0
  819. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.mz.js +51 -0
  820. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.na.js +51 -0
  821. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.nc.js +51 -0
  822. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ne.js +51 -0
  823. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.nf.js +51 -0
  824. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ng.js +51 -0
  825. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ni.js +51 -0
  826. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.nl.js +51 -0
  827. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.no.js +51 -0
  828. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.np.js +51 -0
  829. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.nr.js +51 -0
  830. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.nu.js +51 -0
  831. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.nz.js +51 -0
  832. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.om.js +51 -0
  833. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pa.js +51 -0
  834. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pe.js +51 -0
  835. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pf.js +51 -0
  836. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pg.js +51 -0
  837. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ph.js +51 -0
  838. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pk.js +51 -0
  839. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pl.js +51 -0
  840. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pm.js +51 -0
  841. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pr.js +51 -0
  842. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ps.js +51 -0
  843. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pt.js +51 -0
  844. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.pw.js +51 -0
  845. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.py.js +51 -0
  846. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.qa.js +51 -0
  847. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.re.js +51 -0
  848. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ro.js +51 -0
  849. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.rs.js +51 -0
  850. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ru.js +51 -0
  851. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.rw.js +51 -0
  852. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sa.js +51 -0
  853. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sb.js +51 -0
  854. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sc.js +51 -0
  855. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sd.js +51 -0
  856. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.se.js +51 -0
  857. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sg.js +51 -0
  858. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sh.js +51 -0
  859. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.si.js +51 -0
  860. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sj.js +51 -0
  861. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sk.js +51 -0
  862. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sl.js +51 -0
  863. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sm.js +51 -0
  864. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sn.js +51 -0
  865. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.so.js +51 -0
  866. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sr.js +51 -0
  867. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ss.js +51 -0
  868. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.st.js +51 -0
  869. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sv.js +51 -0
  870. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sx.js +51 -0
  871. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sy.js +51 -0
  872. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.sz.js +51 -0
  873. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ta.js +51 -0
  874. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tc.js +51 -0
  875. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.td.js +51 -0
  876. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tg.js +51 -0
  877. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.th.js +51 -0
  878. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tj.js +51 -0
  879. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tk.js +51 -0
  880. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tl.js +51 -0
  881. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tm.js +51 -0
  882. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tn.js +51 -0
  883. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.to.js +51 -0
  884. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tr.js +51 -0
  885. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tt.js +51 -0
  886. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tv.js +51 -0
  887. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tw.js +51 -0
  888. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.tz.js +51 -0
  889. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ua.js +51 -0
  890. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ug.js +51 -0
  891. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.us.js +51 -0
  892. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.uy.js +51 -0
  893. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.uz.js +51 -0
  894. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.va.js +51 -0
  895. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.vc.js +51 -0
  896. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ve.js +51 -0
  897. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.vg.js +51 -0
  898. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.vi.js +51 -0
  899. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.vn.js +51 -0
  900. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.vu.js +51 -0
  901. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.wf.js +51 -0
  902. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ws.js +51 -0
  903. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.xk.js +51 -0
  904. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.ye.js +51 -0
  905. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.yt.js +51 -0
  906. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.za.js +51 -0
  907. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.zm.js +51 -0
  908. data/app/assets/javascripts/vendors/js/forms/cleave/addons/cleave-phone.zw.js +51 -0
  909. data/app/assets/javascripts/vendors/js/forms/cleave/cleave.min.js +1005 -0
  910. data/app/assets/javascripts/vendors/js/forms/extended/typeahead/bloodhound.min.js +7 -0
  911. data/app/assets/javascripts/vendors/js/forms/extended/typeahead/handlebars.js +2610 -0
  912. data/app/assets/javascripts/vendors/js/forms/extended/typeahead/typeahead.bundle.min.js +8 -0
  913. data/app/assets/javascripts/vendors/js/forms/repeater/jquery.repeater.min.js +5 -0
  914. data/app/assets/javascripts/vendors/js/forms/select/select2.full.min.js +2 -0
  915. data/app/assets/javascripts/vendors/js/forms/spinner/jquery.bootstrap-touchspin.js +434 -0
  916. data/app/assets/javascripts/vendors/js/forms/toggle/switchery.js +1955 -0
  917. data/app/assets/javascripts/vendors/js/forms/toggle/switchery.min.js +1 -0
  918. data/app/assets/javascripts/vendors/js/forms/validation/jquery.validate.min.js +4 -0
  919. data/app/assets/javascripts/vendors/js/forms/wizard/bs-stepper.min.js +6 -0
  920. data/app/assets/javascripts/vendors/js/hammer/hammer.min.js +6 -0
  921. data/app/assets/javascripts/vendors/js/internationalization/i18n-jquery.min.js +2 -0
  922. data/app/assets/javascripts/vendors/js/internationalization/i18n-xhr.min.js +2 -0
  923. data/app/assets/javascripts/vendors/js/internationalization/i18n.min.js +2 -0
  924. data/app/assets/javascripts/vendors/js/internationalization/lang-detector.min.js +2 -0
  925. data/app/assets/javascripts/vendors/js/jkanban/jkanban.min.js +2 -0
  926. data/app/assets/javascripts/vendors/js/jquery/jquery.min.js +2 -0
  927. data/app/assets/javascripts/vendors/js/maps/leaflet.min.js +1 -0
  928. data/app/assets/javascripts/vendors/js/pace/pace.min.js +6 -0
  929. data/app/assets/javascripts/vendors/js/pagination/jquery.bootpag.min.js +21 -0
  930. data/app/assets/javascripts/vendors/js/pagination/jquery.twbsPagination.min.js +10 -0
  931. data/app/assets/javascripts/vendors/js/perfectscrollbar/perfect-scrollbar.min.js +19 -0
  932. data/app/assets/javascripts/vendors/js/pickers/flatpickr/flatpickr.min.js +2 -0
  933. data/app/assets/javascripts/vendors/js/pickers/pickadate/legacy.js +133 -0
  934. data/app/assets/javascripts/vendors/js/pickers/pickadate/picker.date.js +1357 -0
  935. data/app/assets/javascripts/vendors/js/pickers/pickadate/picker.js +1219 -0
  936. data/app/assets/javascripts/vendors/js/pickers/pickadate/picker.time.js +1016 -0
  937. data/app/assets/javascripts/vendors/js/popper/popper.min.js +5 -0
  938. data/app/assets/javascripts/vendors/js/promises/promises.min.js +10 -0
  939. data/app/assets/javascripts/vendors/js/tables/datatable/buttons.bootstrap5.min.js +6 -0
  940. data/app/assets/javascripts/vendors/js/tables/datatable/buttons.html5.min.js +36 -0
  941. data/app/assets/javascripts/vendors/js/tables/datatable/buttons.print.min.js +9 -0
  942. data/app/assets/javascripts/vendors/js/tables/datatable/dataTables.bootstrap5.min.js +14 -0
  943. data/app/assets/javascripts/vendors/js/tables/datatable/dataTables.responsive.js +1445 -0
  944. data/app/assets/javascripts/vendors/js/tables/datatable/dataTables.responsive.min.js +48 -0
  945. data/app/assets/javascripts/vendors/js/tables/datatable/dataTables.rowGroup.min.js +22 -0
  946. data/app/assets/javascripts/vendors/js/tables/datatable/dataTables.select.min.js +38 -0
  947. data/app/assets/javascripts/vendors/js/tables/datatable/datatables.buttons.min.js +44 -0
  948. data/app/assets/javascripts/vendors/js/tables/datatable/datatables.checkboxes.min.js +5 -0
  949. data/app/assets/javascripts/vendors/js/tables/datatable/jquery.dataTables.min.js +184 -0
  950. data/app/assets/javascripts/vendors/js/tables/datatable/jszip.min.js +13 -0
  951. data/app/assets/javascripts/vendors/js/tables/datatable/pdfmake.min.js +2 -0
  952. data/app/assets/javascripts/vendors/js/tables/datatable/responsive.bootstrap5.js +84 -0
  953. data/app/assets/javascripts/vendors/js/tables/datatable/responsive.bootstrap5.min.js +12 -0
  954. data/app/assets/javascripts/vendors/js/tables/datatable/rowGroup.bootstrap5.min.js +5 -0
  955. data/app/assets/javascripts/vendors/js/tables/datatable/vfs_fonts.js +6 -0
  956. data/app/assets/javascripts/vendors/js/ui/affix.js +162 -0
  957. data/app/assets/javascripts/vendors/js/ui/jquery.sticky-kit.min.js +10 -0
  958. data/app/assets/javascripts/vendors/js/ui/jquery.sticky.js +287 -0
  959. data/app/assets/javascripts/vendors/js/ui/prism-treeview.js +64 -0
  960. data/app/assets/javascripts/vendors/js/ui/prism.min.js +30 -0
  961. data/app/assets/javascripts/vendors/js/unison-js/unison-js.min.js +2 -0
  962. data/app/assets/javascripts/vendors/js/vendors.min.js +18 -0
  963. data/app/assets/javascripts/vendors/js/waves/waves.min.js +2 -0
  964. data/app/assets/javascripts/vuexy/application.js +5 -0
  965. data/app/assets/javascripts/vuexy/core/app-menu.js +984 -0
  966. data/app/assets/javascripts/vuexy/core/app-menu.min.js +1 -0
  967. data/app/assets/javascripts/vuexy/core/app.js +1113 -0
  968. data/app/assets/javascripts/vuexy/core/app.min.js +1 -0
  969. data/app/assets/javascripts/vuexy/scripts/cards/card-advance.js +567 -0
  970. data/app/assets/javascripts/vuexy/scripts/cards/card-advance.min.js +1 -0
  971. data/app/assets/javascripts/vuexy/scripts/cards/card-analytics.js +792 -0
  972. data/app/assets/javascripts/vuexy/scripts/cards/card-analytics.min.js +1 -0
  973. data/app/assets/javascripts/vuexy/scripts/cards/card-statistics.js +708 -0
  974. data/app/assets/javascripts/vuexy/scripts/cards/card-statistics.min.js +1 -0
  975. data/app/assets/javascripts/vuexy/scripts/charts/chart-apex.js +917 -0
  976. data/app/assets/javascripts/vuexy/scripts/charts/chart-apex.min.js +1 -0
  977. data/app/assets/javascripts/vuexy/scripts/charts/chart-chartjs.js +1495 -0
  978. data/app/assets/javascripts/vuexy/scripts/charts/chart-chartjs.min.js +1 -0
  979. data/app/assets/javascripts/vuexy/scripts/components/components-accordion.js +21 -0
  980. data/app/assets/javascripts/vuexy/scripts/components/components-accordion.min.js +1 -0
  981. data/app/assets/javascripts/vuexy/scripts/components/components-alerts.js +23 -0
  982. data/app/assets/javascripts/vuexy/scripts/components/components-alerts.min.js +1 -0
  983. data/app/assets/javascripts/vuexy/scripts/components/components-bs-toast.js +40 -0
  984. data/app/assets/javascripts/vuexy/scripts/components/components-bs-toast.min.js +1 -0
  985. data/app/assets/javascripts/vuexy/scripts/components/components-dropdowns.js +19 -0
  986. data/app/assets/javascripts/vuexy/scripts/components/components-dropdowns.min.js +1 -0
  987. data/app/assets/javascripts/vuexy/scripts/components/components-modals.js +68 -0
  988. data/app/assets/javascripts/vuexy/scripts/components/components-modals.min.js +1 -0
  989. data/app/assets/javascripts/vuexy/scripts/components/components-navs.js +23 -0
  990. data/app/assets/javascripts/vuexy/scripts/components/components-navs.min.js +1 -0
  991. data/app/assets/javascripts/vuexy/scripts/components/components-popovers.js +132 -0
  992. data/app/assets/javascripts/vuexy/scripts/components/components-popovers.min.js +1 -0
  993. data/app/assets/javascripts/vuexy/scripts/components/components-tooltips.js +124 -0
  994. data/app/assets/javascripts/vuexy/scripts/components/components-tooltips.min.js +1 -0
  995. data/app/assets/javascripts/vuexy/scripts/customizer.js +235 -0
  996. data/app/assets/javascripts/vuexy/scripts/customizer.min.js +1 -0
  997. data/app/assets/javascripts/vuexy/scripts/documentation.js +14 -0
  998. data/app/assets/javascripts/vuexy/scripts/documentation.min.js +1 -0
  999. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-blockui.js +523 -0
  1000. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-blockui.min.js +1 -0
  1001. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-clipboard.js +23 -0
  1002. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-clipboard.min.js +1 -0
  1003. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-context-menu.js +92 -0
  1004. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-context-menu.min.js +1 -0
  1005. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-drag-drop.js +32 -0
  1006. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-drag-drop.min.js +1 -0
  1007. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-i18n.js +47 -0
  1008. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-i18n.min.js +1 -0
  1009. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-media-player.js +26 -0
  1010. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-media-player.min.js +1 -0
  1011. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-ratings.js +166 -0
  1012. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-ratings.min.js +1 -0
  1013. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-sliders.js +340 -0
  1014. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-sliders.min.js +1 -0
  1015. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-sweet-alerts.js +551 -0
  1016. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-sweet-alerts.min.js +1 -0
  1017. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-swiper.js +313 -0
  1018. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-swiper.min.js +1 -0
  1019. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-toastr.js +212 -0
  1020. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-toastr.min.js +1 -0
  1021. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-tour.js +93 -0
  1022. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-tour.min.js +1 -0
  1023. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-tree.js +422 -0
  1024. data/app/assets/javascripts/vuexy/scripts/extensions/ext-component-tree.min.js +1 -0
  1025. data/app/assets/javascripts/vuexy/scripts/forms/form-file-uploader.js +81 -0
  1026. data/app/assets/javascripts/vuexy/scripts/forms/form-file-uploader.min.js +1 -0
  1027. data/app/assets/javascripts/vuexy/scripts/forms/form-input-mask.js +99 -0
  1028. data/app/assets/javascripts/vuexy/scripts/forms/form-input-mask.min.js +1 -0
  1029. data/app/assets/javascripts/vuexy/scripts/forms/form-number-input.js +82 -0
  1030. data/app/assets/javascripts/vuexy/scripts/forms/form-number-input.min.js +1 -0
  1031. data/app/assets/javascripts/vuexy/scripts/forms/form-quill-editor.js +110 -0
  1032. data/app/assets/javascripts/vuexy/scripts/forms/form-quill-editor.min.js +1 -0
  1033. data/app/assets/javascripts/vuexy/scripts/forms/form-repeater.js +29 -0
  1034. data/app/assets/javascripts/vuexy/scripts/forms/form-repeater.min.js +1 -0
  1035. data/app/assets/javascripts/vuexy/scripts/forms/form-select2.js +206 -0
  1036. data/app/assets/javascripts/vuexy/scripts/forms/form-select2.min.js +1 -0
  1037. data/app/assets/javascripts/vuexy/scripts/forms/form-tooltip-valid.js +22 -0
  1038. data/app/assets/javascripts/vuexy/scripts/forms/form-tooltip-valid.min.js +1 -0
  1039. data/app/assets/javascripts/vuexy/scripts/forms/form-validation.js +109 -0
  1040. data/app/assets/javascripts/vuexy/scripts/forms/form-validation.min.js +1 -0
  1041. data/app/assets/javascripts/vuexy/scripts/forms/form-wizard.js +220 -0
  1042. data/app/assets/javascripts/vuexy/scripts/forms/form-wizard.min.js +1 -0
  1043. data/app/assets/javascripts/vuexy/scripts/forms/pickers/form-pickers.js +217 -0
  1044. data/app/assets/javascripts/vuexy/scripts/forms/pickers/form-pickers.min.js +1 -0
  1045. data/app/assets/javascripts/vuexy/scripts/maps/map-leaflet.js +4596 -0
  1046. data/app/assets/javascripts/vuexy/scripts/maps/map-leaflet.min.js +1 -0
  1047. data/app/assets/javascripts/vuexy/scripts/pages/app-access-permission.js +203 -0
  1048. data/app/assets/javascripts/vuexy/scripts/pages/app-access-permission.min.js +1 -0
  1049. data/app/assets/javascripts/vuexy/scripts/pages/app-access-roles.js +256 -0
  1050. data/app/assets/javascripts/vuexy/scripts/pages/app-access-roles.min.js +1 -0
  1051. data/app/assets/javascripts/vuexy/scripts/pages/app-calendar-events.js +125 -0
  1052. data/app/assets/javascripts/vuexy/scripts/pages/app-calendar-events.min.js +1 -0
  1053. data/app/assets/javascripts/vuexy/scripts/pages/app-calendar.js +492 -0
  1054. data/app/assets/javascripts/vuexy/scripts/pages/app-calendar.min.js +1 -0
  1055. data/app/assets/javascripts/vuexy/scripts/pages/app-chat.js +282 -0
  1056. data/app/assets/javascripts/vuexy/scripts/pages/app-chat.min.js +1 -0
  1057. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce-checkout.js +117 -0
  1058. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce-checkout.min.js +1 -0
  1059. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce-details.js +93 -0
  1060. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce-details.min.js +1 -0
  1061. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce-wishlist.js +36 -0
  1062. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce-wishlist.min.js +1 -0
  1063. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce.js +143 -0
  1064. data/app/assets/javascripts/vuexy/scripts/pages/app-ecommerce.min.js +1 -0
  1065. data/app/assets/javascripts/vuexy/scripts/pages/app-email.js +396 -0
  1066. data/app/assets/javascripts/vuexy/scripts/pages/app-email.min.js +1 -0
  1067. data/app/assets/javascripts/vuexy/scripts/pages/app-file-manager.js +206 -0
  1068. data/app/assets/javascripts/vuexy/scripts/pages/app-file-manager.min.js +1 -0
  1069. data/app/assets/javascripts/vuexy/scripts/pages/app-invoice-list.js +322 -0
  1070. data/app/assets/javascripts/vuexy/scripts/pages/app-invoice-list.min.js +1 -0
  1071. data/app/assets/javascripts/vuexy/scripts/pages/app-invoice-print.js +15 -0
  1072. data/app/assets/javascripts/vuexy/scripts/pages/app-invoice-print.min.js +1 -0
  1073. data/app/assets/javascripts/vuexy/scripts/pages/app-invoice.js +205 -0
  1074. data/app/assets/javascripts/vuexy/scripts/pages/app-invoice.min.js +1 -0
  1075. data/app/assets/javascripts/vuexy/scripts/pages/app-kanban.js +433 -0
  1076. data/app/assets/javascripts/vuexy/scripts/pages/app-kanban.min.js +1 -0
  1077. data/app/assets/javascripts/vuexy/scripts/pages/app-todo.js +437 -0
  1078. data/app/assets/javascripts/vuexy/scripts/pages/app-todo.min.js +1 -0
  1079. data/app/assets/javascripts/vuexy/scripts/pages/app-user-list.js +407 -0
  1080. data/app/assets/javascripts/vuexy/scripts/pages/app-user-list.min.js +1 -0
  1081. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view-account.js +394 -0
  1082. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view-account.min.js +1 -0
  1083. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view-billing.js +13 -0
  1084. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view-billing.min.js +1 -0
  1085. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view-security.js +41 -0
  1086. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view-security.min.js +1 -0
  1087. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view.js +92 -0
  1088. data/app/assets/javascripts/vuexy/scripts/pages/app-user-view.min.js +1 -0
  1089. data/app/assets/javascripts/vuexy/scripts/pages/auth-forgot-password.js +37 -0
  1090. data/app/assets/javascripts/vuexy/scripts/pages/auth-forgot-password.min.js +1 -0
  1091. data/app/assets/javascripts/vuexy/scripts/pages/auth-login.js +40 -0
  1092. data/app/assets/javascripts/vuexy/scripts/pages/auth-login.min.js +1 -0
  1093. data/app/assets/javascripts/vuexy/scripts/pages/auth-register.js +208 -0
  1094. data/app/assets/javascripts/vuexy/scripts/pages/auth-register.min.js +3 -0
  1095. data/app/assets/javascripts/vuexy/scripts/pages/auth-reset-password.js +40 -0
  1096. data/app/assets/javascripts/vuexy/scripts/pages/auth-reset-password.min.js +1 -0
  1097. data/app/assets/javascripts/vuexy/scripts/pages/auth-two-steps.js +53 -0
  1098. data/app/assets/javascripts/vuexy/scripts/pages/auth-two-steps.min.js +1 -0
  1099. data/app/assets/javascripts/vuexy/scripts/pages/dashboard-analytics.js +369 -0
  1100. data/app/assets/javascripts/vuexy/scripts/pages/dashboard-analytics.min.js +1 -0
  1101. data/app/assets/javascripts/vuexy/scripts/pages/dashboard-ecommerce.js +710 -0
  1102. data/app/assets/javascripts/vuexy/scripts/pages/dashboard-ecommerce.min.js +1 -0
  1103. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-new-address.js +30 -0
  1104. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-new-address.min.js +1 -0
  1105. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-new-cc.js +66 -0
  1106. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-new-cc.min.js +1 -0
  1107. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-permission.js +21 -0
  1108. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-permission.min.js +1 -0
  1109. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-role.js +30 -0
  1110. data/app/assets/javascripts/vuexy/scripts/pages/modal-add-role.min.js +1 -0
  1111. data/app/assets/javascripts/vuexy/scripts/pages/modal-create-app.js +82 -0
  1112. data/app/assets/javascripts/vuexy/scripts/pages/modal-create-app.min.js +1 -0
  1113. data/app/assets/javascripts/vuexy/scripts/pages/modal-edit-cc.js +66 -0
  1114. data/app/assets/javascripts/vuexy/scripts/pages/modal-edit-cc.min.js +1 -0
  1115. data/app/assets/javascripts/vuexy/scripts/pages/modal-edit-permission.js +16 -0
  1116. data/app/assets/javascripts/vuexy/scripts/pages/modal-edit-permission.min.js +1 -0
  1117. data/app/assets/javascripts/vuexy/scripts/pages/modal-edit-user.js +51 -0
  1118. data/app/assets/javascripts/vuexy/scripts/pages/modal-edit-user.min.js +1 -0
  1119. data/app/assets/javascripts/vuexy/scripts/pages/modal-share-project.js +49 -0
  1120. data/app/assets/javascripts/vuexy/scripts/pages/modal-share-project.min.js +1 -0
  1121. data/app/assets/javascripts/vuexy/scripts/pages/modal-two-factor-auth.js +34 -0
  1122. data/app/assets/javascripts/vuexy/scripts/pages/modal-two-factor-auth.min.js +1 -0
  1123. data/app/assets/javascripts/vuexy/scripts/pages/page-account-settings-account.js +144 -0
  1124. data/app/assets/javascripts/vuexy/scripts/pages/page-account-settings-account.min.js +1 -0
  1125. data/app/assets/javascripts/vuexy/scripts/pages/page-account-settings-billing.js +368 -0
  1126. data/app/assets/javascripts/vuexy/scripts/pages/page-account-settings-billing.min.js +1 -0
  1127. data/app/assets/javascripts/vuexy/scripts/pages/page-account-settings-security.js +71 -0
  1128. data/app/assets/javascripts/vuexy/scripts/pages/page-account-settings-security.min.js +1 -0
  1129. data/app/assets/javascripts/vuexy/scripts/pages/page-api-key.js +39 -0
  1130. data/app/assets/javascripts/vuexy/scripts/pages/page-api-key.min.js +1 -0
  1131. data/app/assets/javascripts/vuexy/scripts/pages/page-blog-edit.js +119 -0
  1132. data/app/assets/javascripts/vuexy/scripts/pages/page-blog-edit.min.js +1 -0
  1133. data/app/assets/javascripts/vuexy/scripts/pages/page-knowledge-base.js +38 -0
  1134. data/app/assets/javascripts/vuexy/scripts/pages/page-knowledge-base.min.js +1 -0
  1135. data/app/assets/javascripts/vuexy/scripts/pages/page-pricing.js +46 -0
  1136. data/app/assets/javascripts/vuexy/scripts/pages/page-pricing.min.js +1 -0
  1137. data/app/assets/javascripts/vuexy/scripts/pages/page-profile.js +39 -0
  1138. data/app/assets/javascripts/vuexy/scripts/pages/page-profile.min.js +1 -0
  1139. data/app/assets/javascripts/vuexy/scripts/pagination/components-pagination.js +79 -0
  1140. data/app/assets/javascripts/vuexy/scripts/pagination/components-pagination.min.js +1 -0
  1141. data/app/assets/javascripts/vuexy/scripts/tables/table-datatables-advanced.js +331 -0
  1142. data/app/assets/javascripts/vuexy/scripts/tables/table-datatables-advanced.min.js +1 -0
  1143. data/app/assets/javascripts/vuexy/scripts/tables/table-datatables-basic.js +674 -0
  1144. data/app/assets/javascripts/vuexy/scripts/tables/table-datatables-basic.min.js +1 -0
  1145. data/app/assets/javascripts/vuexy/scripts/ui/ui-feather.js +77 -0
  1146. data/app/assets/javascripts/vuexy/scripts/ui/ui-feather.min.js +1 -0
  1147. data/app/assets/stylesheets/bootstrap/scss/_accordion.scss +118 -0
  1148. data/app/assets/stylesheets/bootstrap/scss/_alert.scss +57 -0
  1149. data/app/assets/stylesheets/bootstrap/scss/_badge.scss +29 -0
  1150. data/app/assets/stylesheets/bootstrap/scss/_breadcrumb.scss +28 -0
  1151. data/app/assets/stylesheets/bootstrap/scss/_button-group.scss +139 -0
  1152. data/app/assets/stylesheets/bootstrap/scss/_buttons.scss +111 -0
  1153. data/app/assets/stylesheets/bootstrap/scss/_card.scss +215 -0
  1154. data/app/assets/stylesheets/bootstrap/scss/_carousel.scss +229 -0
  1155. data/app/assets/stylesheets/bootstrap/scss/_close.scss +40 -0
  1156. data/app/assets/stylesheets/bootstrap/scss/_containers.scss +41 -0
  1157. data/app/assets/stylesheets/bootstrap/scss/_dropdown.scss +240 -0
  1158. data/app/assets/stylesheets/bootstrap/scss/_forms.scss +9 -0
  1159. data/app/assets/stylesheets/bootstrap/scss/_functions.scss +263 -0
  1160. data/app/assets/stylesheets/bootstrap/scss/_grid.scss +22 -0
  1161. data/app/assets/stylesheets/bootstrap/scss/_helpers.scss +7 -0
  1162. data/app/assets/stylesheets/bootstrap/scss/_images.scss +42 -0
  1163. data/app/assets/stylesheets/bootstrap/scss/_list-group.scss +174 -0
  1164. data/app/assets/stylesheets/bootstrap/scss/_mixins.scss +42 -0
  1165. data/app/assets/stylesheets/bootstrap/scss/_modal.scss +219 -0
  1166. data/app/assets/stylesheets/bootstrap/scss/_nav.scss +139 -0
  1167. data/app/assets/stylesheets/bootstrap/scss/_navbar.scss +306 -0
  1168. data/app/assets/stylesheets/bootstrap/scss/_offcanvas.scss +79 -0
  1169. data/app/assets/stylesheets/bootstrap/scss/_pagination.scss +64 -0
  1170. data/app/assets/stylesheets/bootstrap/scss/_popover.scss +158 -0
  1171. data/app/assets/stylesheets/bootstrap/scss/_progress.scss +48 -0
  1172. data/app/assets/stylesheets/bootstrap/scss/_reboot.scss +621 -0
  1173. data/app/assets/stylesheets/bootstrap/scss/_root.scss +16 -0
  1174. data/app/assets/stylesheets/bootstrap/scss/_spinners.scss +69 -0
  1175. data/app/assets/stylesheets/bootstrap/scss/_tables.scss +151 -0
  1176. data/app/assets/stylesheets/bootstrap/scss/_toasts.scss +51 -0
  1177. data/app/assets/stylesheets/bootstrap/scss/_tooltip.scss +115 -0
  1178. data/app/assets/stylesheets/bootstrap/scss/_transitions.scss +21 -0
  1179. data/app/assets/stylesheets/bootstrap/scss/_type.scss +104 -0
  1180. data/app/assets/stylesheets/bootstrap/scss/_utilities.scss +594 -0
  1181. data/app/assets/stylesheets/bootstrap/scss/_variables.scss +1468 -0
  1182. data/app/assets/stylesheets/bootstrap/scss/bootstrap-grid.scss +65 -0
  1183. data/app/assets/stylesheets/bootstrap/scss/bootstrap-reboot.scss +15 -0
  1184. data/app/assets/stylesheets/bootstrap/scss/bootstrap-utilities.scss +18 -0
  1185. data/app/assets/stylesheets/bootstrap/scss/bootstrap.scss +52 -0
  1186. data/app/assets/stylesheets/bootstrap/scss/forms/_floating-labels.scss +63 -0
  1187. data/app/assets/stylesheets/bootstrap/scss/forms/_form-check.scss +152 -0
  1188. data/app/assets/stylesheets/bootstrap/scss/forms/_form-control.scss +219 -0
  1189. data/app/assets/stylesheets/bootstrap/scss/forms/_form-range.scss +91 -0
  1190. data/app/assets/stylesheets/bootstrap/scss/forms/_form-select.scss +70 -0
  1191. data/app/assets/stylesheets/bootstrap/scss/forms/_form-text.scss +11 -0
  1192. data/app/assets/stylesheets/bootstrap/scss/forms/_input-group.scss +121 -0
  1193. data/app/assets/stylesheets/bootstrap/scss/forms/_labels.scss +36 -0
  1194. data/app/assets/stylesheets/bootstrap/scss/forms/_validation.scss +12 -0
  1195. data/app/assets/stylesheets/bootstrap/scss/helpers/_clearfix.scss +3 -0
  1196. data/app/assets/stylesheets/bootstrap/scss/helpers/_colored-links.scss +12 -0
  1197. data/app/assets/stylesheets/bootstrap/scss/helpers/_position.scss +30 -0
  1198. data/app/assets/stylesheets/bootstrap/scss/helpers/_ratio.scss +26 -0
  1199. data/app/assets/stylesheets/bootstrap/scss/helpers/_stretched-link.scss +15 -0
  1200. data/app/assets/stylesheets/bootstrap/scss/helpers/_text-truncation.scss +7 -0
  1201. data/app/assets/stylesheets/bootstrap/scss/helpers/_visually-hidden.scss +8 -0
  1202. data/app/assets/stylesheets/bootstrap/scss/mixins/_alert.scss +11 -0
  1203. data/app/assets/stylesheets/bootstrap/scss/mixins/_border-radius.scss +78 -0
  1204. data/app/assets/stylesheets/bootstrap/scss/mixins/_box-shadow.scss +18 -0
  1205. data/app/assets/stylesheets/bootstrap/scss/mixins/_breakpoints.scss +127 -0
  1206. data/app/assets/stylesheets/bootstrap/scss/mixins/_buttons.scss +133 -0
  1207. data/app/assets/stylesheets/bootstrap/scss/mixins/_caret.scss +64 -0
  1208. data/app/assets/stylesheets/bootstrap/scss/mixins/_clearfix.scss +9 -0
  1209. data/app/assets/stylesheets/bootstrap/scss/mixins/_color-scheme.scss +7 -0
  1210. data/app/assets/stylesheets/bootstrap/scss/mixins/_container.scss +9 -0
  1211. data/app/assets/stylesheets/bootstrap/scss/mixins/_deprecate.scss +10 -0
  1212. data/app/assets/stylesheets/bootstrap/scss/mixins/_forms.scss +144 -0
  1213. data/app/assets/stylesheets/bootstrap/scss/mixins/_gradients.scss +47 -0
  1214. data/app/assets/stylesheets/bootstrap/scss/mixins/_grid.scss +132 -0
  1215. data/app/assets/stylesheets/bootstrap/scss/mixins/_image.scss +16 -0
  1216. data/app/assets/stylesheets/bootstrap/scss/mixins/_list-group.scss +24 -0
  1217. data/app/assets/stylesheets/bootstrap/scss/mixins/_lists.scss +7 -0
  1218. data/app/assets/stylesheets/bootstrap/scss/mixins/_pagination.scss +31 -0
  1219. data/app/assets/stylesheets/bootstrap/scss/mixins/_reset-text.scss +17 -0
  1220. data/app/assets/stylesheets/bootstrap/scss/mixins/_resize.scss +6 -0
  1221. data/app/assets/stylesheets/bootstrap/scss/mixins/_table-variants.scss +21 -0
  1222. data/app/assets/stylesheets/bootstrap/scss/mixins/_text-truncate.scss +8 -0
  1223. data/app/assets/stylesheets/bootstrap/scss/mixins/_transition.scss +26 -0
  1224. data/app/assets/stylesheets/bootstrap/scss/mixins/_utilities.scss +68 -0
  1225. data/app/assets/stylesheets/bootstrap/scss/mixins/_visually-hidden.scss +29 -0
  1226. data/app/assets/stylesheets/bootstrap/scss/utilities/_api.scss +47 -0
  1227. data/app/assets/stylesheets/bootstrap/scss/vendor/_rfs.scss +354 -0
  1228. data/app/assets/stylesheets/scss/style-rtl.scss +11 -0
  1229. data/app/assets/stylesheets/scss/style.scss +11 -0
  1230. data/app/assets/stylesheets/scss/variables/_variables-components.scss +5 -0
  1231. data/app/assets/stylesheets/scss/variables/_variables.scss +5 -0
  1232. data/app/assets/stylesheets/vendor/animate/animate.css +4072 -0
  1233. data/app/assets/stylesheets/vendor/animate/animate.min.css +7 -0
  1234. data/app/assets/stylesheets/vendor/calendars/fullcalendar.min.css +6 -0
  1235. data/app/assets/stylesheets/vendor/calendars/fullcalendar.print.css +176 -0
  1236. data/app/assets/stylesheets/vendor/charts/apexcharts.css +658 -0
  1237. data/app/assets/stylesheets/vendor/documentation.css +73 -0
  1238. data/app/assets/stylesheets/vendor/editors/quill/fonts/KaTeX_Main-Regular.woff2 +0 -0
  1239. data/app/assets/stylesheets/vendor/editors/quill/fonts/KaTeX_Math-Italic.woff2 +0 -0
  1240. data/app/assets/stylesheets/vendor/editors/quill/katex.min.css +1 -0
  1241. data/app/assets/stylesheets/vendor/editors/quill/monokai-sublime.min.css +1 -0
  1242. data/app/assets/stylesheets/vendor/editors/quill/quill.bubble.css +964 -0
  1243. data/app/assets/stylesheets/vendor/editors/quill/quill.snow.css +957 -0
  1244. data/app/assets/stylesheets/vendor/extensions/32px.png +0 -0
  1245. data/app/assets/stylesheets/vendor/extensions/dd-icon/dd-icon.eot +0 -0
  1246. data/app/assets/stylesheets/vendor/extensions/dd-icon/dd-icon.svg +15 -0
  1247. data/app/assets/stylesheets/vendor/extensions/dd-icon/dd-icon.ttf +0 -0
  1248. data/app/assets/stylesheets/vendor/extensions/dd-icon/dd-icon.woff +0 -0
  1249. data/app/assets/stylesheets/vendor/extensions/dragula.min.css +1 -0
  1250. data/app/assets/stylesheets/vendor/extensions/jquery.contextMenu.min.css +16 -0
  1251. data/app/assets/stylesheets/vendor/extensions/jquery.rateyo.min.css +1 -0
  1252. data/app/assets/stylesheets/vendor/extensions/jstree.min.css +1 -0
  1253. data/app/assets/stylesheets/vendor/extensions/nouislider.min.css +2 -0
  1254. data/app/assets/stylesheets/vendor/extensions/plyr.min.css +1 -0
  1255. data/app/assets/stylesheets/vendor/extensions/shepherd.min.css +1 -0
  1256. data/app/assets/stylesheets/vendor/extensions/sweetalert2.min.css +1 -0
  1257. data/app/assets/stylesheets/vendor/extensions/swiper.min.css +13 -0
  1258. data/app/assets/stylesheets/vendor/extensions/tether-theme-arrows.css +138 -0
  1259. data/app/assets/stylesheets/vendor/extensions/tether.min.css +1 -0
  1260. data/app/assets/stylesheets/vendor/extensions/toastr.min.css +7 -0
  1261. data/app/assets/stylesheets/vendor/feather-icons/feather-icons.min.css +7 -0
  1262. data/app/assets/stylesheets/vendor/file-uploaders/dropzone.min.css +1 -0
  1263. data/app/assets/stylesheets/vendor/flag-icons/flag-icons.min.css +2 -0
  1264. data/app/assets/stylesheets/vendor/forms/select/select2.min.css +1 -0
  1265. data/app/assets/stylesheets/vendor/forms/spinner/jquery.bootstrap-touchspin.css +23 -0
  1266. data/app/assets/stylesheets/vendor/forms/toggle/switchery.css +64 -0
  1267. data/app/assets/stylesheets/vendor/forms/toggle/switchery.min.css +1 -0
  1268. data/app/assets/stylesheets/vendor/forms/wizard/bs-stepper.min.css +6 -0
  1269. data/app/assets/stylesheets/vendor/jkanban/jkanban.min.css +2 -0
  1270. data/app/assets/stylesheets/vendor/maps/images/layers-2x.png +0 -0
  1271. data/app/assets/stylesheets/vendor/maps/images/layers.png +0 -0
  1272. data/app/assets/stylesheets/vendor/maps/images/marker-icon-2x.png +0 -0
  1273. data/app/assets/stylesheets/vendor/maps/images/marker-icon.png +0 -0
  1274. data/app/assets/stylesheets/vendor/maps/images/marker-shadow.png +0 -0
  1275. data/app/assets/stylesheets/vendor/maps/leaflet.min.css +580 -0
  1276. data/app/assets/stylesheets/vendor/modal/facebook.css +111 -0
  1277. data/app/assets/stylesheets/vendor/modal/google.css +115 -0
  1278. data/app/assets/stylesheets/vendor/modal/twitter.css +140 -0
  1279. data/app/assets/stylesheets/vendor/pace/pace.min.css +6 -0
  1280. data/app/assets/stylesheets/vendor/perfect-scrollbar/perfect-scrollbar.min.css +6 -0
  1281. data/app/assets/stylesheets/vendor/pickers/flatpickr/flatpickr.min.css +13 -0
  1282. data/app/assets/stylesheets/vendor/pickers/pickadate/classic.css +96 -0
  1283. data/app/assets/stylesheets/vendor/pickers/pickadate/classic.date.css +301 -0
  1284. data/app/assets/stylesheets/vendor/pickers/pickadate/classic.time.css +132 -0
  1285. data/app/assets/stylesheets/vendor/pickers/pickadate/default.css +165 -0
  1286. data/app/assets/stylesheets/vendor/pickers/pickadate/default.time.css +126 -0
  1287. data/app/assets/stylesheets/vendor/pickers/pickadate/pickadate.css +323 -0
  1288. data/app/assets/stylesheets/vendor/tables/datatable/buttons.bootstrap5.min.css +1 -0
  1289. data/app/assets/stylesheets/vendor/tables/datatable/dataTables.bootstrap5.min.css +5 -0
  1290. data/app/assets/stylesheets/vendor/tables/datatable/extensions/dataTables.checkboxes.css +23 -0
  1291. data/app/assets/stylesheets/vendor/tables/datatable/responsive.bootstrap.min.css +1 -0
  1292. data/app/assets/stylesheets/vendor/tables/datatable/responsive.bootstrap5.min.css +2 -0
  1293. data/app/assets/stylesheets/vendor/tables/datatable/rowGroup.bootstrap5.min.css +2 -0
  1294. data/app/assets/stylesheets/vendor/tables/datatable/select.dataTables.min.css +2 -0
  1295. data/app/assets/stylesheets/vendor/ui/prism-treeview.css +146 -0
  1296. data/app/assets/stylesheets/vendor/ui/prism.min.css +347 -0
  1297. data/app/assets/stylesheets/vendor/vendors-rtl.min.css +15 -0
  1298. data/app/assets/stylesheets/vendor/vendors.min.css +15 -0
  1299. data/app/assets/stylesheets/vendor/waves/waves.min.css +8 -0
  1300. data/app/assets/stylesheets/vendor/weather-icons/climacons.min.css +1 -0
  1301. data/app/assets/stylesheets/vuexy/application.scss +32 -0
  1302. data/app/assets/stylesheets/vuexy/bootstrap-extended/_accordion.scss +63 -0
  1303. data/app/assets/stylesheets/vuexy/bootstrap-extended/_alert.scss +50 -0
  1304. data/app/assets/stylesheets/vuexy/bootstrap-extended/_badge.scss +89 -0
  1305. data/app/assets/stylesheets/vuexy/bootstrap-extended/_breadcrumb.scss +80 -0
  1306. data/app/assets/stylesheets/vuexy/bootstrap-extended/_button-group.scss +59 -0
  1307. data/app/assets/stylesheets/vuexy/bootstrap-extended/_buttons.scss +81 -0
  1308. data/app/assets/stylesheets/vuexy/bootstrap-extended/_card.scss +503 -0
  1309. data/app/assets/stylesheets/vuexy/bootstrap-extended/_carousel.scss +5 -0
  1310. data/app/assets/stylesheets/vuexy/bootstrap-extended/_code.scss +14 -0
  1311. data/app/assets/stylesheets/vuexy/bootstrap-extended/_dropdown.scss +255 -0
  1312. data/app/assets/stylesheets/vuexy/bootstrap-extended/_forms.scss +58 -0
  1313. data/app/assets/stylesheets/vuexy/bootstrap-extended/_functions.scss +10 -0
  1314. data/app/assets/stylesheets/vuexy/bootstrap-extended/_helper.scss +106 -0
  1315. data/app/assets/stylesheets/vuexy/bootstrap-extended/_include.scss +24 -0
  1316. data/app/assets/stylesheets/vuexy/bootstrap-extended/_list-group.scss +79 -0
  1317. data/app/assets/stylesheets/vuexy/bootstrap-extended/_mixins.scss +11 -0
  1318. data/app/assets/stylesheets/vuexy/bootstrap-extended/_modal.scss +215 -0
  1319. data/app/assets/stylesheets/vuexy/bootstrap-extended/_nav.scss +271 -0
  1320. data/app/assets/stylesheets/vuexy/bootstrap-extended/_navbar.scss +680 -0
  1321. data/app/assets/stylesheets/vuexy/bootstrap-extended/_pagination.scss +306 -0
  1322. data/app/assets/stylesheets/vuexy/bootstrap-extended/_popover.scss +45 -0
  1323. data/app/assets/stylesheets/vuexy/bootstrap-extended/_progress.scss +20 -0
  1324. data/app/assets/stylesheets/vuexy/bootstrap-extended/_reboot.scss +15 -0
  1325. data/app/assets/stylesheets/vuexy/bootstrap-extended/_tables.scss +93 -0
  1326. data/app/assets/stylesheets/vuexy/bootstrap-extended/_toast.scss +16 -0
  1327. data/app/assets/stylesheets/vuexy/bootstrap-extended/_type.scss +22 -0
  1328. data/app/assets/stylesheets/vuexy/bootstrap-extended/_utilities.scss +450 -0
  1329. data/app/assets/stylesheets/vuexy/bootstrap-extended/_variables.scss +646 -0
  1330. data/app/assets/stylesheets/vuexy/bootstrap-extended/forms/_floating-labels.scss +6 -0
  1331. data/app/assets/stylesheets/vuexy/bootstrap-extended/forms/_form-check.scss +134 -0
  1332. data/app/assets/stylesheets/vuexy/bootstrap-extended/forms/_form-control.scss +38 -0
  1333. data/app/assets/stylesheets/vuexy/bootstrap-extended/forms/_input-group.scss +90 -0
  1334. data/app/assets/stylesheets/vuexy/bootstrap-extended/forms/_labels.scss +12 -0
  1335. data/app/assets/stylesheets/vuexy/bootstrap-extended/mixins/_navs.scss +49 -0
  1336. data/app/assets/stylesheets/vuexy/bootstrap-extended.scss +47 -0
  1337. data/app/assets/stylesheets/vuexy/bootstrap.scss +11 -0
  1338. data/app/assets/stylesheets/vuexy/colors.scss +24 -0
  1339. data/app/assets/stylesheets/vuexy/components/_include.scss +13 -0
  1340. data/app/assets/stylesheets/vuexy/components/_variables-dark.scss +53 -0
  1341. data/app/assets/stylesheets/vuexy/components/_variables.scss +103 -0
  1342. data/app/assets/stylesheets/vuexy/components/avatar.scss +192 -0
  1343. data/app/assets/stylesheets/vuexy/components/bootstrap-social.scss +318 -0
  1344. data/app/assets/stylesheets/vuexy/components/chart.scss +35 -0
  1345. data/app/assets/stylesheets/vuexy/components/custom-options.scss +41 -0
  1346. data/app/assets/stylesheets/vuexy/components/customizer.scss +98 -0
  1347. data/app/assets/stylesheets/vuexy/components/demo.scss +121 -0
  1348. data/app/assets/stylesheets/vuexy/components/divider.scss +104 -0
  1349. data/app/assets/stylesheets/vuexy/components/search.scss +237 -0
  1350. data/app/assets/stylesheets/vuexy/components/timeline.scss +101 -0
  1351. data/app/assets/stylesheets/vuexy/components.scss +41 -0
  1352. data/app/assets/stylesheets/vuexy/core/colors/_palette.scss +548 -0
  1353. data/app/assets/stylesheets/vuexy/core/colors/palette-gradient.scss +72 -0
  1354. data/app/assets/stylesheets/vuexy/core/colors/palette-noui.scss +30 -0
  1355. data/app/assets/stylesheets/vuexy/core/colors/palette-variables.scss +104 -0
  1356. data/app/assets/stylesheets/vuexy/core/layouts/_content.scss +474 -0
  1357. data/app/assets/stylesheets/vuexy/core/layouts/_footer.scss +71 -0
  1358. data/app/assets/stylesheets/vuexy/core/layouts/_sidebar.scss +79 -0
  1359. data/app/assets/stylesheets/vuexy/core/menu/_navigation.scss +206 -0
  1360. data/app/assets/stylesheets/vuexy/core/menu/menu-types/horizontal-menu.scss +594 -0
  1361. data/app/assets/stylesheets/vuexy/core/menu/menu-types/vertical-menu.scss +296 -0
  1362. data/app/assets/stylesheets/vuexy/core/menu/menu-types/vertical-overlay-menu.scss +79 -0
  1363. data/app/assets/stylesheets/vuexy/core/mixins/alert.scss +5 -0
  1364. data/app/assets/stylesheets/vuexy/core/mixins/hex2rgb.scss +4 -0
  1365. data/app/assets/stylesheets/vuexy/core/mixins/main-menu-mixin.scss +359 -0
  1366. data/app/assets/stylesheets/vuexy/core/mixins/transitions.scss +30 -0
  1367. data/app/assets/stylesheets/vuexy/custom-rtl.scss +367 -0
  1368. data/app/assets/stylesheets/vuexy/pages/app-calendar.scss +413 -0
  1369. data/app/assets/stylesheets/vuexy/pages/app-chat-list.scss +128 -0
  1370. data/app/assets/stylesheets/vuexy/pages/app-chat.scss +340 -0
  1371. data/app/assets/stylesheets/vuexy/pages/app-ecommerce-details.scss +288 -0
  1372. data/app/assets/stylesheets/vuexy/pages/app-ecommerce.scss +629 -0
  1373. data/app/assets/stylesheets/vuexy/pages/app-email.scss +504 -0
  1374. data/app/assets/stylesheets/vuexy/pages/app-file-manager.scss +442 -0
  1375. data/app/assets/stylesheets/vuexy/pages/app-invoice-list.scss +24 -0
  1376. data/app/assets/stylesheets/vuexy/pages/app-invoice-print.scss +77 -0
  1377. data/app/assets/stylesheets/vuexy/pages/app-invoice.scss +161 -0
  1378. data/app/assets/stylesheets/vuexy/pages/app-kanban.scss +156 -0
  1379. data/app/assets/stylesheets/vuexy/pages/app-todo.scss +293 -0
  1380. data/app/assets/stylesheets/vuexy/pages/authentication.scss +172 -0
  1381. data/app/assets/stylesheets/vuexy/pages/dashboard-ecommerce.scss +66 -0
  1382. data/app/assets/stylesheets/vuexy/pages/modal-create-app.scss +15 -0
  1383. data/app/assets/stylesheets/vuexy/pages/page-blog.scss +63 -0
  1384. data/app/assets/stylesheets/vuexy/pages/page-coming-soon.scss +21 -0
  1385. data/app/assets/stylesheets/vuexy/pages/page-faq.scss +66 -0
  1386. data/app/assets/stylesheets/vuexy/pages/page-knowledge-base.scss +77 -0
  1387. data/app/assets/stylesheets/vuexy/pages/page-misc.scss +44 -0
  1388. data/app/assets/stylesheets/vuexy/pages/page-pricing.scss +100 -0
  1389. data/app/assets/stylesheets/vuexy/pages/page-profile.scss +146 -0
  1390. data/app/assets/stylesheets/vuexy/pages/ui-feather.scss +59 -0
  1391. data/app/assets/stylesheets/vuexy/plugins/charts/chart-apex.scss +218 -0
  1392. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-context-menu.scss +101 -0
  1393. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-drag-drop.scss +55 -0
  1394. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-media-player.scss +21 -0
  1395. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-ratings.scss +57 -0
  1396. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-sliders.scss +145 -0
  1397. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-sweet-alerts.scss +132 -0
  1398. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-swiper.scss +367 -0
  1399. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-toastr.scss +242 -0
  1400. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-tour.scss +80 -0
  1401. data/app/assets/stylesheets/vuexy/plugins/extensions/ext-component-tree.scss +154 -0
  1402. data/app/assets/stylesheets/vuexy/plugins/forms/form-file-uploader.scss +109 -0
  1403. data/app/assets/stylesheets/vuexy/plugins/forms/form-number-input.scss +158 -0
  1404. data/app/assets/stylesheets/vuexy/plugins/forms/form-quill-editor.scss +213 -0
  1405. data/app/assets/stylesheets/vuexy/plugins/forms/form-validation.scss +33 -0
  1406. data/app/assets/stylesheets/vuexy/plugins/forms/form-wizard.scss +296 -0
  1407. data/app/assets/stylesheets/vuexy/plugins/forms/pickers/form-flat-pickr.scss +194 -0
  1408. data/app/assets/stylesheets/vuexy/plugins/forms/pickers/form-pickadate.scss +171 -0
  1409. data/app/assets/stylesheets/vuexy/plugins/forms/select2/_select2.scss +322 -0
  1410. data/app/assets/stylesheets/vuexy/plugins/maps/map-leaflet.scss +38 -0
  1411. data/app/assets/stylesheets/vuexy/plugins/tables/_datatables.scss +186 -0
  1412. data/app/assets/stylesheets/vuexy/plugins/ui/_breakpoints.scss +64 -0
  1413. data/app/assets/stylesheets/vuexy/plugins/ui/coming-soon.scss +64 -0
  1414. data/app/assets/stylesheets/vuexy/themes/bordered-layout.scss +61 -0
  1415. data/app/assets/stylesheets/vuexy/themes/dark-layout.scss +2336 -0
  1416. data/app/assets/stylesheets/vuexy/themes/semi-dark-layout.scss +111 -0
  1417. data/app/controllers/concerns/vuexy/components/navigation.rb +19 -0
  1418. data/app/controllers/concerns/vuexy/layouts/blank.rb +13 -0
  1419. data/app/controllers/concerns/vuexy/layouts/horizontal_menu.rb +13 -0
  1420. data/app/controllers/concerns/vuexy/layouts/vertical_menu.rb +13 -0
  1421. data/app/controllers/vuexy/application_controller.rb +4 -0
  1422. data/app/jobs/vuexy/application_job.rb +4 -0
  1423. data/app/mailers/vuexy/application_mailer.rb +6 -0
  1424. data/app/models/vuexy/application_record.rb +5 -0
  1425. data/app/views/layouts/vuexy/application.html.erb +15 -0
  1426. data/app/views/layouts/vuexy/blank.haml +33 -0
  1427. data/app/views/layouts/vuexy/horizontal-menu.haml +27 -0
  1428. data/app/views/layouts/vuexy/vertical-menu.haml +47 -0
  1429. data/app/views/vuexy/components/_side_nav.haml +38 -0
  1430. data/config/routes.rb +2 -0
  1431. data/lib/generators/vuexy/install/USAGE +8 -0
  1432. data/lib/generators/vuexy/install/install_generator.rb +11 -0
  1433. data/lib/generators/vuexy/install/templates/initializer.rb +5 -0
  1434. data/lib/tasks/vuexy_tasks.rake +4 -0
  1435. data/lib/vuexy/config.rb +19 -0
  1436. data/lib/vuexy/engine.rb +5 -0
  1437. data/lib/vuexy/version.rb +3 -0
  1438. data/lib/vuexy.rb +7 -0
  1439. metadata +1539 -0
@@ -0,0 +1,3427 @@
1
+ /*!
2
+ * Bootstrap v5.1.0 (https://getbootstrap.com/)
3
+ * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
5
+ */
6
+ !(function (t, e) {
7
+ 'object' == typeof exports && 'undefined' != typeof module
8
+ ? (module.exports = e())
9
+ : 'function' == typeof define && define.amd
10
+ ? define(e)
11
+ : ((t = 'undefined' != typeof globalThis ? globalThis : t || self).bootstrap = e());
12
+ })(this, function () {
13
+ 'use strict';
14
+ const t = t => {
15
+ let e = t.getAttribute('data-bs-target');
16
+ if (!e || '#' === e) {
17
+ let i = t.getAttribute('href');
18
+ if (!i || (!i.includes('#') && !i.startsWith('.'))) return null;
19
+ i.includes('#') && !i.startsWith('#') && (i = '#' + i.split('#')[1]), (e = i && '#' !== i ? i.trim() : null);
20
+ }
21
+ return e;
22
+ },
23
+ e = e => {
24
+ const i = t(e);
25
+ return i && document.querySelector(i) ? i : null;
26
+ },
27
+ i = e => {
28
+ const i = t(e);
29
+ return i ? document.querySelector(i) : null;
30
+ },
31
+ n = t => {
32
+ t.dispatchEvent(new Event('transitionend'));
33
+ },
34
+ s = t => !(!t || 'object' != typeof t) && (void 0 !== t.jquery && (t = t[0]), void 0 !== t.nodeType),
35
+ o = t => (s(t) ? (t.jquery ? t[0] : t) : 'string' == typeof t && t.length > 0 ? document.querySelector(t) : null),
36
+ r = (t, e, i) => {
37
+ Object.keys(i).forEach(n => {
38
+ const o = i[n],
39
+ r = e[n],
40
+ a =
41
+ r && s(r)
42
+ ? 'element'
43
+ : null == (l = r)
44
+ ? '' + l
45
+ : {}.toString
46
+ .call(l)
47
+ .match(/\s([a-z]+)/i)[1]
48
+ .toLowerCase();
49
+ var l;
50
+ if (!new RegExp(o).test(a))
51
+ throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${o}".`);
52
+ });
53
+ },
54
+ a = t =>
55
+ !(!s(t) || 0 === t.getClientRects().length) && 'visible' === getComputedStyle(t).getPropertyValue('visibility'),
56
+ l = t =>
57
+ !t ||
58
+ t.nodeType !== Node.ELEMENT_NODE ||
59
+ !!t.classList.contains('disabled') ||
60
+ (void 0 !== t.disabled ? t.disabled : t.hasAttribute('disabled') && 'false' !== t.getAttribute('disabled')),
61
+ c = t => {
62
+ if (!document.documentElement.attachShadow) return null;
63
+ if ('function' == typeof t.getRootNode) {
64
+ const e = t.getRootNode();
65
+ return e instanceof ShadowRoot ? e : null;
66
+ }
67
+ return t instanceof ShadowRoot ? t : t.parentNode ? c(t.parentNode) : null;
68
+ },
69
+ h = () => {},
70
+ d = t => {
71
+ t.offsetHeight;
72
+ },
73
+ u = () => {
74
+ const { jQuery: t } = window;
75
+ return t && !document.body.hasAttribute('data-bs-no-jquery') ? t : null;
76
+ },
77
+ f = [],
78
+ p = () => 'rtl' === document.documentElement.dir,
79
+ m = t => {
80
+ var e;
81
+ (e = () => {
82
+ const e = u();
83
+ if (e) {
84
+ const i = t.NAME,
85
+ n = e.fn[i];
86
+ (e.fn[i] = t.jQueryInterface),
87
+ (e.fn[i].Constructor = t),
88
+ (e.fn[i].noConflict = () => ((e.fn[i] = n), t.jQueryInterface));
89
+ }
90
+ }),
91
+ 'loading' === document.readyState
92
+ ? (f.length ||
93
+ document.addEventListener('DOMContentLoaded', () => {
94
+ f.forEach(t => t());
95
+ }),
96
+ f.push(e))
97
+ : e();
98
+ },
99
+ g = t => {
100
+ 'function' == typeof t && t();
101
+ },
102
+ _ = (t, e, i = !0) => {
103
+ if (!i) return void g(t);
104
+ const s =
105
+ (t => {
106
+ if (!t) return 0;
107
+ let { transitionDuration: e, transitionDelay: i } = window.getComputedStyle(t);
108
+ const n = Number.parseFloat(e),
109
+ s = Number.parseFloat(i);
110
+ return n || s
111
+ ? ((e = e.split(',')[0]), (i = i.split(',')[0]), 1e3 * (Number.parseFloat(e) + Number.parseFloat(i)))
112
+ : 0;
113
+ })(e) + 5;
114
+ let o = !1;
115
+ const r = ({ target: i }) => {
116
+ i === e && ((o = !0), e.removeEventListener('transitionend', r), g(t));
117
+ };
118
+ e.addEventListener('transitionend', r),
119
+ setTimeout(() => {
120
+ o || n(e);
121
+ }, s);
122
+ },
123
+ b = (t, e, i, n) => {
124
+ let s = t.indexOf(e);
125
+ if (-1 === s) return t[!i && n ? t.length - 1 : 0];
126
+ const o = t.length;
127
+ return (s += i ? 1 : -1), n && (s = (s + o) % o), t[Math.max(0, Math.min(s, o - 1))];
128
+ },
129
+ v = /[^.]*(?=\..*)\.|.*/,
130
+ y = /\..*/,
131
+ w = /::\d+$/,
132
+ E = {};
133
+ let A = 1;
134
+ const T = { mouseenter: 'mouseover', mouseleave: 'mouseout' },
135
+ O = /^(mouseenter|mouseleave)/i,
136
+ C = new Set([
137
+ 'click',
138
+ 'dblclick',
139
+ 'mouseup',
140
+ 'mousedown',
141
+ 'contextmenu',
142
+ 'mousewheel',
143
+ 'DOMMouseScroll',
144
+ 'mouseover',
145
+ 'mouseout',
146
+ 'mousemove',
147
+ 'selectstart',
148
+ 'selectend',
149
+ 'keydown',
150
+ 'keypress',
151
+ 'keyup',
152
+ 'orientationchange',
153
+ 'touchstart',
154
+ 'touchmove',
155
+ 'touchend',
156
+ 'touchcancel',
157
+ 'pointerdown',
158
+ 'pointermove',
159
+ 'pointerup',
160
+ 'pointerleave',
161
+ 'pointercancel',
162
+ 'gesturestart',
163
+ 'gesturechange',
164
+ 'gestureend',
165
+ 'focus',
166
+ 'blur',
167
+ 'change',
168
+ 'reset',
169
+ 'select',
170
+ 'submit',
171
+ 'focusin',
172
+ 'focusout',
173
+ 'load',
174
+ 'unload',
175
+ 'beforeunload',
176
+ 'resize',
177
+ 'move',
178
+ 'DOMContentLoaded',
179
+ 'readystatechange',
180
+ 'error',
181
+ 'abort',
182
+ 'scroll'
183
+ ]);
184
+ function k(t, e) {
185
+ return (e && `${e}::${A++}`) || t.uidEvent || A++;
186
+ }
187
+ function L(t) {
188
+ const e = k(t);
189
+ return (t.uidEvent = e), (E[e] = E[e] || {}), E[e];
190
+ }
191
+ function x(t, e, i = null) {
192
+ const n = Object.keys(t);
193
+ for (let s = 0, o = n.length; s < o; s++) {
194
+ const o = t[n[s]];
195
+ if (o.originalHandler === e && o.delegationSelector === i) return o;
196
+ }
197
+ return null;
198
+ }
199
+ function D(t, e, i) {
200
+ const n = 'string' == typeof e,
201
+ s = n ? i : e;
202
+ let o = I(t);
203
+ return C.has(o) || (o = t), [n, s, o];
204
+ }
205
+ function S(t, e, i, n, s) {
206
+ if ('string' != typeof e || !t) return;
207
+ if ((i || ((i = n), (n = null)), O.test(e))) {
208
+ const t = t =>
209
+ function (e) {
210
+ if (!e.relatedTarget || (e.relatedTarget !== e.delegateTarget && !e.delegateTarget.contains(e.relatedTarget)))
211
+ return t.call(this, e);
212
+ };
213
+ n ? (n = t(n)) : (i = t(i));
214
+ }
215
+ const [o, r, a] = D(e, i, n),
216
+ l = L(t),
217
+ c = l[a] || (l[a] = {}),
218
+ h = x(c, r, o ? i : null);
219
+ if (h) return void (h.oneOff = h.oneOff && s);
220
+ const d = k(r, e.replace(v, '')),
221
+ u = o
222
+ ? (function (t, e, i) {
223
+ return function n(s) {
224
+ const o = t.querySelectorAll(e);
225
+ for (let { target: r } = s; r && r !== this; r = r.parentNode)
226
+ for (let a = o.length; a--; )
227
+ if (o[a] === r) return (s.delegateTarget = r), n.oneOff && P.off(t, s.type, e, i), i.apply(r, [s]);
228
+ return null;
229
+ };
230
+ })(t, i, n)
231
+ : (function (t, e) {
232
+ return function i(n) {
233
+ return (n.delegateTarget = t), i.oneOff && P.off(t, n.type, e), e.apply(t, [n]);
234
+ };
235
+ })(t, i);
236
+ (u.delegationSelector = o ? i : null),
237
+ (u.originalHandler = r),
238
+ (u.oneOff = s),
239
+ (u.uidEvent = d),
240
+ (c[d] = u),
241
+ t.addEventListener(a, u, o);
242
+ }
243
+ function N(t, e, i, n, s) {
244
+ const o = x(e[i], n, s);
245
+ o && (t.removeEventListener(i, o, Boolean(s)), delete e[i][o.uidEvent]);
246
+ }
247
+ function I(t) {
248
+ return (t = t.replace(y, '')), T[t] || t;
249
+ }
250
+ const P = {
251
+ on(t, e, i, n) {
252
+ S(t, e, i, n, !1);
253
+ },
254
+ one(t, e, i, n) {
255
+ S(t, e, i, n, !0);
256
+ },
257
+ off(t, e, i, n) {
258
+ if ('string' != typeof e || !t) return;
259
+ const [s, o, r] = D(e, i, n),
260
+ a = r !== e,
261
+ l = L(t),
262
+ c = e.startsWith('.');
263
+ if (void 0 !== o) {
264
+ if (!l || !l[r]) return;
265
+ return void N(t, l, r, o, s ? i : null);
266
+ }
267
+ c &&
268
+ Object.keys(l).forEach(i => {
269
+ !(function (t, e, i, n) {
270
+ const s = e[i] || {};
271
+ Object.keys(s).forEach(o => {
272
+ if (o.includes(n)) {
273
+ const n = s[o];
274
+ N(t, e, i, n.originalHandler, n.delegationSelector);
275
+ }
276
+ });
277
+ })(t, l, i, e.slice(1));
278
+ });
279
+ const h = l[r] || {};
280
+ Object.keys(h).forEach(i => {
281
+ const n = i.replace(w, '');
282
+ if (!a || e.includes(n)) {
283
+ const e = h[i];
284
+ N(t, l, r, e.originalHandler, e.delegationSelector);
285
+ }
286
+ });
287
+ },
288
+ trigger(t, e, i) {
289
+ if ('string' != typeof e || !t) return null;
290
+ const n = u(),
291
+ s = I(e),
292
+ o = e !== s,
293
+ r = C.has(s);
294
+ let a,
295
+ l = !0,
296
+ c = !0,
297
+ h = !1,
298
+ d = null;
299
+ return (
300
+ o &&
301
+ n &&
302
+ ((a = n.Event(e, i)),
303
+ n(t).trigger(a),
304
+ (l = !a.isPropagationStopped()),
305
+ (c = !a.isImmediatePropagationStopped()),
306
+ (h = a.isDefaultPrevented())),
307
+ r
308
+ ? ((d = document.createEvent('HTMLEvents')), d.initEvent(s, l, !0))
309
+ : (d = new CustomEvent(e, { bubbles: l, cancelable: !0 })),
310
+ void 0 !== i &&
311
+ Object.keys(i).forEach(t => {
312
+ Object.defineProperty(d, t, { get: () => i[t] });
313
+ }),
314
+ h && d.preventDefault(),
315
+ c && t.dispatchEvent(d),
316
+ d.defaultPrevented && void 0 !== a && a.preventDefault(),
317
+ d
318
+ );
319
+ }
320
+ },
321
+ j = new Map();
322
+ var M = {
323
+ set(t, e, i) {
324
+ j.has(t) || j.set(t, new Map());
325
+ const n = j.get(t);
326
+ n.has(e) || 0 === n.size
327
+ ? n.set(e, i)
328
+ : console.error(
329
+ `Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`
330
+ );
331
+ },
332
+ get: (t, e) => (j.has(t) && j.get(t).get(e)) || null,
333
+ remove(t, e) {
334
+ if (!j.has(t)) return;
335
+ const i = j.get(t);
336
+ i.delete(e), 0 === i.size && j.delete(t);
337
+ }
338
+ };
339
+ class H {
340
+ constructor(t) {
341
+ (t = o(t)) && ((this._element = t), M.set(this._element, this.constructor.DATA_KEY, this));
342
+ }
343
+ dispose() {
344
+ M.remove(this._element, this.constructor.DATA_KEY),
345
+ P.off(this._element, this.constructor.EVENT_KEY),
346
+ Object.getOwnPropertyNames(this).forEach(t => {
347
+ this[t] = null;
348
+ });
349
+ }
350
+ _queueCallback(t, e, i = !0) {
351
+ _(t, e, i);
352
+ }
353
+ static getInstance(t) {
354
+ return M.get(o(t), this.DATA_KEY);
355
+ }
356
+ static getOrCreateInstance(t, e = {}) {
357
+ return this.getInstance(t) || new this(t, 'object' == typeof e ? e : null);
358
+ }
359
+ static get VERSION() {
360
+ return '5.1.0';
361
+ }
362
+ static get NAME() {
363
+ throw new Error('You have to implement the static method "NAME", for each component!');
364
+ }
365
+ static get DATA_KEY() {
366
+ return 'bs.' + this.NAME;
367
+ }
368
+ static get EVENT_KEY() {
369
+ return '.' + this.DATA_KEY;
370
+ }
371
+ }
372
+ const B = (t, e = 'hide') => {
373
+ const n = 'click.dismiss' + t.EVENT_KEY,
374
+ s = t.NAME;
375
+ P.on(document, n, `[data-bs-dismiss="${s}"]`, function (n) {
376
+ if ((['A', 'AREA'].includes(this.tagName) && n.preventDefault(), l(this))) return;
377
+ const o = i(this) || this.closest('.' + s);
378
+ t.getOrCreateInstance(o)[e]();
379
+ });
380
+ };
381
+ class R extends H {
382
+ static get NAME() {
383
+ return 'alert';
384
+ }
385
+ close() {
386
+ if (P.trigger(this._element, 'close.bs.alert').defaultPrevented) return;
387
+ this._element.classList.remove('show');
388
+ const t = this._element.classList.contains('fade');
389
+ this._queueCallback(() => this._destroyElement(), this._element, t);
390
+ }
391
+ _destroyElement() {
392
+ this._element.remove(), P.trigger(this._element, 'closed.bs.alert'), this.dispose();
393
+ }
394
+ static jQueryInterface(t) {
395
+ return this.each(function () {
396
+ const e = R.getOrCreateInstance(this);
397
+ if ('string' == typeof t) {
398
+ if (void 0 === e[t] || t.startsWith('_') || 'constructor' === t)
399
+ throw new TypeError(`No method named "${t}"`);
400
+ e[t](this);
401
+ }
402
+ });
403
+ }
404
+ }
405
+ B(R, 'close'), m(R);
406
+ class W extends H {
407
+ static get NAME() {
408
+ return 'button';
409
+ }
410
+ toggle() {
411
+ this._element.setAttribute('aria-pressed', this._element.classList.toggle('active'));
412
+ }
413
+ static jQueryInterface(t) {
414
+ return this.each(function () {
415
+ const e = W.getOrCreateInstance(this);
416
+ 'toggle' === t && e[t]();
417
+ });
418
+ }
419
+ }
420
+ function z(t) {
421
+ return (
422
+ 'true' === t || ('false' !== t && (t === Number(t).toString() ? Number(t) : '' === t || 'null' === t ? null : t))
423
+ );
424
+ }
425
+ function q(t) {
426
+ return t.replace(/[A-Z]/g, t => '-' + t.toLowerCase());
427
+ }
428
+ P.on(document, 'click.bs.button.data-api', '[data-bs-toggle="button"]', t => {
429
+ t.preventDefault();
430
+ const e = t.target.closest('[data-bs-toggle="button"]');
431
+ W.getOrCreateInstance(e).toggle();
432
+ }),
433
+ m(W);
434
+ const F = {
435
+ setDataAttribute(t, e, i) {
436
+ t.setAttribute('data-bs-' + q(e), i);
437
+ },
438
+ removeDataAttribute(t, e) {
439
+ t.removeAttribute('data-bs-' + q(e));
440
+ },
441
+ getDataAttributes(t) {
442
+ if (!t) return {};
443
+ const e = {};
444
+ return (
445
+ Object.keys(t.dataset)
446
+ .filter(t => t.startsWith('bs'))
447
+ .forEach(i => {
448
+ let n = i.replace(/^bs/, '');
449
+ (n = n.charAt(0).toLowerCase() + n.slice(1, n.length)), (e[n] = z(t.dataset[i]));
450
+ }),
451
+ e
452
+ );
453
+ },
454
+ getDataAttribute: (t, e) => z(t.getAttribute('data-bs-' + q(e))),
455
+ offset(t) {
456
+ const e = t.getBoundingClientRect();
457
+ return { top: e.top + window.pageYOffset, left: e.left + window.pageXOffset };
458
+ },
459
+ position: t => ({ top: t.offsetTop, left: t.offsetLeft })
460
+ },
461
+ U = {
462
+ find: (t, e = document.documentElement) => [].concat(...Element.prototype.querySelectorAll.call(e, t)),
463
+ findOne: (t, e = document.documentElement) => Element.prototype.querySelector.call(e, t),
464
+ children: (t, e) => [].concat(...t.children).filter(t => t.matches(e)),
465
+ parents(t, e) {
466
+ const i = [];
467
+ let n = t.parentNode;
468
+ for (; n && n.nodeType === Node.ELEMENT_NODE && 3 !== n.nodeType; )
469
+ n.matches(e) && i.push(n), (n = n.parentNode);
470
+ return i;
471
+ },
472
+ prev(t, e) {
473
+ let i = t.previousElementSibling;
474
+ for (; i; ) {
475
+ if (i.matches(e)) return [i];
476
+ i = i.previousElementSibling;
477
+ }
478
+ return [];
479
+ },
480
+ next(t, e) {
481
+ let i = t.nextElementSibling;
482
+ for (; i; ) {
483
+ if (i.matches(e)) return [i];
484
+ i = i.nextElementSibling;
485
+ }
486
+ return [];
487
+ },
488
+ focusableChildren(t) {
489
+ const e = ['a', 'button', 'input', 'textarea', 'select', 'details', '[tabindex]', '[contenteditable="true"]']
490
+ .map(t => t + ':not([tabindex^="-"])')
491
+ .join(', ');
492
+ return this.find(e, t).filter(t => !l(t) && a(t));
493
+ }
494
+ },
495
+ $ = { interval: 5e3, keyboard: !0, slide: !1, pause: 'hover', wrap: !0, touch: !0 },
496
+ V = {
497
+ interval: '(number|boolean)',
498
+ keyboard: 'boolean',
499
+ slide: '(boolean|string)',
500
+ pause: '(string|boolean)',
501
+ wrap: 'boolean',
502
+ touch: 'boolean'
503
+ },
504
+ K = 'next',
505
+ X = 'prev',
506
+ Y = 'left',
507
+ Q = 'right',
508
+ G = { ArrowLeft: Q, ArrowRight: Y };
509
+ class Z extends H {
510
+ constructor(t, e) {
511
+ super(t),
512
+ (this._items = null),
513
+ (this._interval = null),
514
+ (this._activeElement = null),
515
+ (this._isPaused = !1),
516
+ (this._isSliding = !1),
517
+ (this.touchTimeout = null),
518
+ (this.touchStartX = 0),
519
+ (this.touchDeltaX = 0),
520
+ (this._config = this._getConfig(e)),
521
+ (this._indicatorsElement = U.findOne('.carousel-indicators', this._element)),
522
+ (this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0),
523
+ (this._pointerEvent = Boolean(window.PointerEvent)),
524
+ this._addEventListeners();
525
+ }
526
+ static get Default() {
527
+ return $;
528
+ }
529
+ static get NAME() {
530
+ return 'carousel';
531
+ }
532
+ next() {
533
+ this._slide(K);
534
+ }
535
+ nextWhenVisible() {
536
+ !document.hidden && a(this._element) && this.next();
537
+ }
538
+ prev() {
539
+ this._slide(X);
540
+ }
541
+ pause(t) {
542
+ t || (this._isPaused = !0),
543
+ U.findOne('.carousel-item-next, .carousel-item-prev', this._element) && (n(this._element), this.cycle(!0)),
544
+ clearInterval(this._interval),
545
+ (this._interval = null);
546
+ }
547
+ cycle(t) {
548
+ t || (this._isPaused = !1),
549
+ this._interval && (clearInterval(this._interval), (this._interval = null)),
550
+ this._config &&
551
+ this._config.interval &&
552
+ !this._isPaused &&
553
+ (this._updateInterval(),
554
+ (this._interval = setInterval(
555
+ (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),
556
+ this._config.interval
557
+ )));
558
+ }
559
+ to(t) {
560
+ this._activeElement = U.findOne('.active.carousel-item', this._element);
561
+ const e = this._getItemIndex(this._activeElement);
562
+ if (t > this._items.length - 1 || t < 0) return;
563
+ if (this._isSliding) return void P.one(this._element, 'slid.bs.carousel', () => this.to(t));
564
+ if (e === t) return this.pause(), void this.cycle();
565
+ const i = t > e ? K : X;
566
+ this._slide(i, this._items[t]);
567
+ }
568
+ _getConfig(t) {
569
+ return (
570
+ (t = { ...$, ...F.getDataAttributes(this._element), ...('object' == typeof t ? t : {}) }),
571
+ r('carousel', t, V),
572
+ t
573
+ );
574
+ }
575
+ _handleSwipe() {
576
+ const t = Math.abs(this.touchDeltaX);
577
+ if (t <= 40) return;
578
+ const e = t / this.touchDeltaX;
579
+ (this.touchDeltaX = 0), e && this._slide(e > 0 ? Q : Y);
580
+ }
581
+ _addEventListeners() {
582
+ this._config.keyboard && P.on(this._element, 'keydown.bs.carousel', t => this._keydown(t)),
583
+ 'hover' === this._config.pause &&
584
+ (P.on(this._element, 'mouseenter.bs.carousel', t => this.pause(t)),
585
+ P.on(this._element, 'mouseleave.bs.carousel', t => this.cycle(t))),
586
+ this._config.touch && this._touchSupported && this._addTouchEventListeners();
587
+ }
588
+ _addTouchEventListeners() {
589
+ const t = t => {
590
+ !this._pointerEvent || ('pen' !== t.pointerType && 'touch' !== t.pointerType)
591
+ ? this._pointerEvent || (this.touchStartX = t.touches[0].clientX)
592
+ : (this.touchStartX = t.clientX);
593
+ },
594
+ e = t => {
595
+ this.touchDeltaX = t.touches && t.touches.length > 1 ? 0 : t.touches[0].clientX - this.touchStartX;
596
+ },
597
+ i = t => {
598
+ !this._pointerEvent ||
599
+ ('pen' !== t.pointerType && 'touch' !== t.pointerType) ||
600
+ (this.touchDeltaX = t.clientX - this.touchStartX),
601
+ this._handleSwipe(),
602
+ 'hover' === this._config.pause &&
603
+ (this.pause(),
604
+ this.touchTimeout && clearTimeout(this.touchTimeout),
605
+ (this.touchTimeout = setTimeout(t => this.cycle(t), 500 + this._config.interval)));
606
+ };
607
+ U.find('.carousel-item img', this._element).forEach(t => {
608
+ P.on(t, 'dragstart.bs.carousel', t => t.preventDefault());
609
+ }),
610
+ this._pointerEvent
611
+ ? (P.on(this._element, 'pointerdown.bs.carousel', e => t(e)),
612
+ P.on(this._element, 'pointerup.bs.carousel', t => i(t)),
613
+ this._element.classList.add('pointer-event'))
614
+ : (P.on(this._element, 'touchstart.bs.carousel', e => t(e)),
615
+ P.on(this._element, 'touchmove.bs.carousel', t => e(t)),
616
+ P.on(this._element, 'touchend.bs.carousel', t => i(t)));
617
+ }
618
+ _keydown(t) {
619
+ if (/input|textarea/i.test(t.target.tagName)) return;
620
+ const e = G[t.key];
621
+ e && (t.preventDefault(), this._slide(e));
622
+ }
623
+ _getItemIndex(t) {
624
+ return (this._items = t && t.parentNode ? U.find('.carousel-item', t.parentNode) : []), this._items.indexOf(t);
625
+ }
626
+ _getItemByOrder(t, e) {
627
+ const i = t === K;
628
+ return b(this._items, e, i, this._config.wrap);
629
+ }
630
+ _triggerSlideEvent(t, e) {
631
+ const i = this._getItemIndex(t),
632
+ n = this._getItemIndex(U.findOne('.active.carousel-item', this._element));
633
+ return P.trigger(this._element, 'slide.bs.carousel', { relatedTarget: t, direction: e, from: n, to: i });
634
+ }
635
+ _setActiveIndicatorElement(t) {
636
+ if (this._indicatorsElement) {
637
+ const e = U.findOne('.active', this._indicatorsElement);
638
+ e.classList.remove('active'), e.removeAttribute('aria-current');
639
+ const i = U.find('[data-bs-target]', this._indicatorsElement);
640
+ for (let e = 0; e < i.length; e++)
641
+ if (Number.parseInt(i[e].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(t)) {
642
+ i[e].classList.add('active'), i[e].setAttribute('aria-current', 'true');
643
+ break;
644
+ }
645
+ }
646
+ }
647
+ _updateInterval() {
648
+ const t = this._activeElement || U.findOne('.active.carousel-item', this._element);
649
+ if (!t) return;
650
+ const e = Number.parseInt(t.getAttribute('data-bs-interval'), 10);
651
+ e
652
+ ? ((this._config.defaultInterval = this._config.defaultInterval || this._config.interval),
653
+ (this._config.interval = e))
654
+ : (this._config.interval = this._config.defaultInterval || this._config.interval);
655
+ }
656
+ _slide(t, e) {
657
+ const i = this._directionToOrder(t),
658
+ n = U.findOne('.active.carousel-item', this._element),
659
+ s = this._getItemIndex(n),
660
+ o = e || this._getItemByOrder(i, n),
661
+ r = this._getItemIndex(o),
662
+ a = Boolean(this._interval),
663
+ l = i === K,
664
+ c = l ? 'carousel-item-start' : 'carousel-item-end',
665
+ h = l ? 'carousel-item-next' : 'carousel-item-prev',
666
+ u = this._orderToDirection(i);
667
+ if (o && o.classList.contains('active')) return void (this._isSliding = !1);
668
+ if (this._isSliding) return;
669
+ if (this._triggerSlideEvent(o, u).defaultPrevented) return;
670
+ if (!n || !o) return;
671
+ (this._isSliding = !0), a && this.pause(), this._setActiveIndicatorElement(o), (this._activeElement = o);
672
+ const f = () => {
673
+ P.trigger(this._element, 'slid.bs.carousel', { relatedTarget: o, direction: u, from: s, to: r });
674
+ };
675
+ if (this._element.classList.contains('slide')) {
676
+ o.classList.add(h), d(o), n.classList.add(c), o.classList.add(c);
677
+ const t = () => {
678
+ o.classList.remove(c, h),
679
+ o.classList.add('active'),
680
+ n.classList.remove('active', h, c),
681
+ (this._isSliding = !1),
682
+ setTimeout(f, 0);
683
+ };
684
+ this._queueCallback(t, n, !0);
685
+ } else n.classList.remove('active'), o.classList.add('active'), (this._isSliding = !1), f();
686
+ a && this.cycle();
687
+ }
688
+ _directionToOrder(t) {
689
+ return [Q, Y].includes(t) ? (p() ? (t === Y ? X : K) : t === Y ? K : X) : t;
690
+ }
691
+ _orderToDirection(t) {
692
+ return [K, X].includes(t) ? (p() ? (t === X ? Y : Q) : t === X ? Q : Y) : t;
693
+ }
694
+ static carouselInterface(t, e) {
695
+ const i = Z.getOrCreateInstance(t, e);
696
+ let { _config: n } = i;
697
+ 'object' == typeof e && (n = { ...n, ...e });
698
+ const s = 'string' == typeof e ? e : n.slide;
699
+ if ('number' == typeof e) i.to(e);
700
+ else if ('string' == typeof s) {
701
+ if (void 0 === i[s]) throw new TypeError(`No method named "${s}"`);
702
+ i[s]();
703
+ } else n.interval && n.ride && (i.pause(), i.cycle());
704
+ }
705
+ static jQueryInterface(t) {
706
+ return this.each(function () {
707
+ Z.carouselInterface(this, t);
708
+ });
709
+ }
710
+ static dataApiClickHandler(t) {
711
+ const e = i(this);
712
+ if (!e || !e.classList.contains('carousel')) return;
713
+ const n = { ...F.getDataAttributes(e), ...F.getDataAttributes(this) },
714
+ s = this.getAttribute('data-bs-slide-to');
715
+ s && (n.interval = !1), Z.carouselInterface(e, n), s && Z.getInstance(e).to(s), t.preventDefault();
716
+ }
717
+ }
718
+ P.on(document, 'click.bs.carousel.data-api', '[data-bs-slide], [data-bs-slide-to]', Z.dataApiClickHandler),
719
+ P.on(window, 'load.bs.carousel.data-api', () => {
720
+ const t = U.find('[data-bs-ride="carousel"]');
721
+ for (let e = 0, i = t.length; e < i; e++) Z.carouselInterface(t[e], Z.getInstance(t[e]));
722
+ }),
723
+ m(Z);
724
+ const J = { toggle: !0, parent: null },
725
+ tt = { toggle: 'boolean', parent: '(null|element)' };
726
+ class et extends H {
727
+ constructor(t, i) {
728
+ super(t), (this._isTransitioning = !1), (this._config = this._getConfig(i)), (this._triggerArray = []);
729
+ const n = U.find('[data-bs-toggle="collapse"]');
730
+ for (let t = 0, i = n.length; t < i; t++) {
731
+ const i = n[t],
732
+ s = e(i),
733
+ o = U.find(s).filter(t => t === this._element);
734
+ null !== s && o.length && ((this._selector = s), this._triggerArray.push(i));
735
+ }
736
+ this._initializeChildren(),
737
+ this._config.parent || this._addAriaAndCollapsedClass(this._triggerArray, this._isShown()),
738
+ this._config.toggle && this.toggle();
739
+ }
740
+ static get Default() {
741
+ return J;
742
+ }
743
+ static get NAME() {
744
+ return 'collapse';
745
+ }
746
+ toggle() {
747
+ this._isShown() ? this.hide() : this.show();
748
+ }
749
+ show() {
750
+ if (this._isTransitioning || this._isShown()) return;
751
+ let t,
752
+ e = [];
753
+ if (this._config.parent) {
754
+ const t = U.find('.collapse .collapse', this._config.parent);
755
+ e = U.find('.show, .collapsing', this._config.parent).filter(e => !t.includes(e));
756
+ }
757
+ const i = U.findOne(this._selector);
758
+ if (e.length) {
759
+ const n = e.find(t => i !== t);
760
+ if (((t = n ? et.getInstance(n) : null), t && t._isTransitioning)) return;
761
+ }
762
+ if (P.trigger(this._element, 'show.bs.collapse').defaultPrevented) return;
763
+ e.forEach(e => {
764
+ i !== e && et.getOrCreateInstance(e, { toggle: !1 }).hide(), t || M.set(e, 'bs.collapse', null);
765
+ });
766
+ const n = this._getDimension();
767
+ this._element.classList.remove('collapse'),
768
+ this._element.classList.add('collapsing'),
769
+ (this._element.style[n] = 0),
770
+ this._addAriaAndCollapsedClass(this._triggerArray, !0),
771
+ (this._isTransitioning = !0);
772
+ const s = 'scroll' + (n[0].toUpperCase() + n.slice(1));
773
+ this._queueCallback(
774
+ () => {
775
+ (this._isTransitioning = !1),
776
+ this._element.classList.remove('collapsing'),
777
+ this._element.classList.add('collapse', 'show'),
778
+ (this._element.style[n] = ''),
779
+ P.trigger(this._element, 'shown.bs.collapse');
780
+ },
781
+ this._element,
782
+ !0
783
+ ),
784
+ (this._element.style[n] = this._element[s] + 'px');
785
+ }
786
+ hide() {
787
+ if (this._isTransitioning || !this._isShown()) return;
788
+ if (P.trigger(this._element, 'hide.bs.collapse').defaultPrevented) return;
789
+ const t = this._getDimension();
790
+ (this._element.style[t] = this._element.getBoundingClientRect()[t] + 'px'),
791
+ d(this._element),
792
+ this._element.classList.add('collapsing'),
793
+ this._element.classList.remove('collapse', 'show');
794
+ const e = this._triggerArray.length;
795
+ for (let t = 0; t < e; t++) {
796
+ const e = this._triggerArray[t],
797
+ n = i(e);
798
+ n && !this._isShown(n) && this._addAriaAndCollapsedClass([e], !1);
799
+ }
800
+ (this._isTransitioning = !0),
801
+ (this._element.style[t] = ''),
802
+ this._queueCallback(
803
+ () => {
804
+ (this._isTransitioning = !1),
805
+ this._element.classList.remove('collapsing'),
806
+ this._element.classList.add('collapse'),
807
+ P.trigger(this._element, 'hidden.bs.collapse');
808
+ },
809
+ this._element,
810
+ !0
811
+ );
812
+ }
813
+ _isShown(t = this._element) {
814
+ return t.classList.contains('show');
815
+ }
816
+ _getConfig(t) {
817
+ return (
818
+ ((t = { ...J, ...F.getDataAttributes(this._element), ...t }).toggle = Boolean(t.toggle)),
819
+ (t.parent = o(t.parent)),
820
+ r('collapse', t, tt),
821
+ t
822
+ );
823
+ }
824
+ _getDimension() {
825
+ return this._element.classList.contains('collapse-horizontal') ? 'width' : 'height';
826
+ }
827
+ _initializeChildren() {
828
+ if (!this._config.parent) return;
829
+ const t = U.find('.collapse .collapse', this._config.parent);
830
+ U.find('[data-bs-toggle="collapse"]', this._config.parent)
831
+ .filter(e => !t.includes(e))
832
+ .forEach(t => {
833
+ const e = i(t);
834
+ e && this._addAriaAndCollapsedClass([t], this._isShown(e));
835
+ });
836
+ }
837
+ _addAriaAndCollapsedClass(t, e) {
838
+ t.length &&
839
+ t.forEach(t => {
840
+ e ? t.classList.remove('collapsed') : t.classList.add('collapsed'), t.setAttribute('aria-expanded', e);
841
+ });
842
+ }
843
+ static jQueryInterface(t) {
844
+ return this.each(function () {
845
+ const e = {};
846
+ 'string' == typeof t && /show|hide/.test(t) && (e.toggle = !1);
847
+ const i = et.getOrCreateInstance(this, e);
848
+ if ('string' == typeof t) {
849
+ if (void 0 === i[t]) throw new TypeError(`No method named "${t}"`);
850
+ i[t]();
851
+ }
852
+ });
853
+ }
854
+ }
855
+ P.on(document, 'click.bs.collapse.data-api', '[data-bs-toggle="collapse"]', function (t) {
856
+ ('A' === t.target.tagName || (t.delegateTarget && 'A' === t.delegateTarget.tagName)) && t.preventDefault();
857
+ const i = e(this);
858
+ U.find(i).forEach(t => {
859
+ et.getOrCreateInstance(t, { toggle: !1 }).toggle();
860
+ });
861
+ }),
862
+ m(et);
863
+ var it = 'top',
864
+ nt = 'bottom',
865
+ st = 'right',
866
+ ot = 'left',
867
+ rt = [it, nt, st, ot],
868
+ at = rt.reduce(function (t, e) {
869
+ return t.concat([e + '-start', e + '-end']);
870
+ }, []),
871
+ lt = [].concat(rt, ['auto']).reduce(function (t, e) {
872
+ return t.concat([e, e + '-start', e + '-end']);
873
+ }, []),
874
+ ct = ['beforeRead', 'read', 'afterRead', 'beforeMain', 'main', 'afterMain', 'beforeWrite', 'write', 'afterWrite'];
875
+ function ht(t) {
876
+ return t ? (t.nodeName || '').toLowerCase() : null;
877
+ }
878
+ function dt(t) {
879
+ if (null == t) return window;
880
+ if ('[object Window]' !== t.toString()) {
881
+ var e = t.ownerDocument;
882
+ return (e && e.defaultView) || window;
883
+ }
884
+ return t;
885
+ }
886
+ function ut(t) {
887
+ return t instanceof dt(t).Element || t instanceof Element;
888
+ }
889
+ function ft(t) {
890
+ return t instanceof dt(t).HTMLElement || t instanceof HTMLElement;
891
+ }
892
+ function pt(t) {
893
+ return 'undefined' != typeof ShadowRoot && (t instanceof dt(t).ShadowRoot || t instanceof ShadowRoot);
894
+ }
895
+ var mt = {
896
+ name: 'applyStyles',
897
+ enabled: !0,
898
+ phase: 'write',
899
+ fn: function (t) {
900
+ var e = t.state;
901
+ Object.keys(e.elements).forEach(function (t) {
902
+ var i = e.styles[t] || {},
903
+ n = e.attributes[t] || {},
904
+ s = e.elements[t];
905
+ ft(s) &&
906
+ ht(s) &&
907
+ (Object.assign(s.style, i),
908
+ Object.keys(n).forEach(function (t) {
909
+ var e = n[t];
910
+ !1 === e ? s.removeAttribute(t) : s.setAttribute(t, !0 === e ? '' : e);
911
+ }));
912
+ });
913
+ },
914
+ effect: function (t) {
915
+ var e = t.state,
916
+ i = {
917
+ popper: { position: e.options.strategy, left: '0', top: '0', margin: '0' },
918
+ arrow: { position: 'absolute' },
919
+ reference: {}
920
+ };
921
+ return (
922
+ Object.assign(e.elements.popper.style, i.popper),
923
+ (e.styles = i),
924
+ e.elements.arrow && Object.assign(e.elements.arrow.style, i.arrow),
925
+ function () {
926
+ Object.keys(e.elements).forEach(function (t) {
927
+ var n = e.elements[t],
928
+ s = e.attributes[t] || {},
929
+ o = Object.keys(e.styles.hasOwnProperty(t) ? e.styles[t] : i[t]).reduce(function (t, e) {
930
+ return (t[e] = ''), t;
931
+ }, {});
932
+ ft(n) &&
933
+ ht(n) &&
934
+ (Object.assign(n.style, o),
935
+ Object.keys(s).forEach(function (t) {
936
+ n.removeAttribute(t);
937
+ }));
938
+ });
939
+ }
940
+ );
941
+ },
942
+ requires: ['computeStyles']
943
+ };
944
+ function gt(t) {
945
+ return t.split('-')[0];
946
+ }
947
+ var _t = Math.round;
948
+ function bt(t, e) {
949
+ void 0 === e && (e = !1);
950
+ var i = t.getBoundingClientRect(),
951
+ n = 1,
952
+ s = 1;
953
+ return (
954
+ ft(t) && e && ((n = i.width / t.offsetWidth || 1), (s = i.height / t.offsetHeight || 1)),
955
+ {
956
+ width: _t(i.width / n),
957
+ height: _t(i.height / s),
958
+ top: _t(i.top / s),
959
+ right: _t(i.right / n),
960
+ bottom: _t(i.bottom / s),
961
+ left: _t(i.left / n),
962
+ x: _t(i.left / n),
963
+ y: _t(i.top / s)
964
+ }
965
+ );
966
+ }
967
+ function vt(t) {
968
+ var e = bt(t),
969
+ i = t.offsetWidth,
970
+ n = t.offsetHeight;
971
+ return (
972
+ Math.abs(e.width - i) <= 1 && (i = e.width),
973
+ Math.abs(e.height - n) <= 1 && (n = e.height),
974
+ { x: t.offsetLeft, y: t.offsetTop, width: i, height: n }
975
+ );
976
+ }
977
+ function yt(t, e) {
978
+ var i = e.getRootNode && e.getRootNode();
979
+ if (t.contains(e)) return !0;
980
+ if (i && pt(i)) {
981
+ var n = e;
982
+ do {
983
+ if (n && t.isSameNode(n)) return !0;
984
+ n = n.parentNode || n.host;
985
+ } while (n);
986
+ }
987
+ return !1;
988
+ }
989
+ function wt(t) {
990
+ return dt(t).getComputedStyle(t);
991
+ }
992
+ function Et(t) {
993
+ return ['table', 'td', 'th'].indexOf(ht(t)) >= 0;
994
+ }
995
+ function At(t) {
996
+ return ((ut(t) ? t.ownerDocument : t.document) || window.document).documentElement;
997
+ }
998
+ function Tt(t) {
999
+ return 'html' === ht(t) ? t : t.assignedSlot || t.parentNode || (pt(t) ? t.host : null) || At(t);
1000
+ }
1001
+ function Ot(t) {
1002
+ return ft(t) && 'fixed' !== wt(t).position ? t.offsetParent : null;
1003
+ }
1004
+ function Ct(t) {
1005
+ for (var e = dt(t), i = Ot(t); i && Et(i) && 'static' === wt(i).position; ) i = Ot(i);
1006
+ return i && ('html' === ht(i) || ('body' === ht(i) && 'static' === wt(i).position))
1007
+ ? e
1008
+ : i ||
1009
+ (function (t) {
1010
+ var e = -1 !== navigator.userAgent.toLowerCase().indexOf('firefox');
1011
+ if (-1 !== navigator.userAgent.indexOf('Trident') && ft(t) && 'fixed' === wt(t).position) return null;
1012
+ for (var i = Tt(t); ft(i) && ['html', 'body'].indexOf(ht(i)) < 0; ) {
1013
+ var n = wt(i);
1014
+ if (
1015
+ 'none' !== n.transform ||
1016
+ 'none' !== n.perspective ||
1017
+ 'paint' === n.contain ||
1018
+ -1 !== ['transform', 'perspective'].indexOf(n.willChange) ||
1019
+ (e && 'filter' === n.willChange) ||
1020
+ (e && n.filter && 'none' !== n.filter)
1021
+ )
1022
+ return i;
1023
+ i = i.parentNode;
1024
+ }
1025
+ return null;
1026
+ })(t) ||
1027
+ e;
1028
+ }
1029
+ function kt(t) {
1030
+ return ['top', 'bottom'].indexOf(t) >= 0 ? 'x' : 'y';
1031
+ }
1032
+ var Lt = Math.max,
1033
+ xt = Math.min,
1034
+ Dt = Math.round;
1035
+ function St(t, e, i) {
1036
+ return Lt(t, xt(e, i));
1037
+ }
1038
+ function Nt(t) {
1039
+ return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, t);
1040
+ }
1041
+ function It(t, e) {
1042
+ return e.reduce(function (e, i) {
1043
+ return (e[i] = t), e;
1044
+ }, {});
1045
+ }
1046
+ var Pt = {
1047
+ name: 'arrow',
1048
+ enabled: !0,
1049
+ phase: 'main',
1050
+ fn: function (t) {
1051
+ var e,
1052
+ i = t.state,
1053
+ n = t.name,
1054
+ s = t.options,
1055
+ o = i.elements.arrow,
1056
+ r = i.modifiersData.popperOffsets,
1057
+ a = gt(i.placement),
1058
+ l = kt(a),
1059
+ c = [ot, st].indexOf(a) >= 0 ? 'height' : 'width';
1060
+ if (o && r) {
1061
+ var h = (function (t, e) {
1062
+ return Nt(
1063
+ 'number' !=
1064
+ typeof (t = 'function' == typeof t ? t(Object.assign({}, e.rects, { placement: e.placement })) : t)
1065
+ ? t
1066
+ : It(t, rt)
1067
+ );
1068
+ })(s.padding, i),
1069
+ d = vt(o),
1070
+ u = 'y' === l ? it : ot,
1071
+ f = 'y' === l ? nt : st,
1072
+ p = i.rects.reference[c] + i.rects.reference[l] - r[l] - i.rects.popper[c],
1073
+ m = r[l] - i.rects.reference[l],
1074
+ g = Ct(o),
1075
+ _ = g ? ('y' === l ? g.clientHeight || 0 : g.clientWidth || 0) : 0,
1076
+ b = p / 2 - m / 2,
1077
+ v = h[u],
1078
+ y = _ - d[c] - h[f],
1079
+ w = _ / 2 - d[c] / 2 + b,
1080
+ E = St(v, w, y),
1081
+ A = l;
1082
+ i.modifiersData[n] = (((e = {})[A] = E), (e.centerOffset = E - w), e);
1083
+ }
1084
+ },
1085
+ effect: function (t) {
1086
+ var e = t.state,
1087
+ i = t.options.element,
1088
+ n = void 0 === i ? '[data-popper-arrow]' : i;
1089
+ null != n &&
1090
+ ('string' != typeof n || (n = e.elements.popper.querySelector(n))) &&
1091
+ yt(e.elements.popper, n) &&
1092
+ (e.elements.arrow = n);
1093
+ },
1094
+ requires: ['popperOffsets'],
1095
+ requiresIfExists: ['preventOverflow']
1096
+ },
1097
+ jt = { top: 'auto', right: 'auto', bottom: 'auto', left: 'auto' };
1098
+ function Mt(t) {
1099
+ var e,
1100
+ i = t.popper,
1101
+ n = t.popperRect,
1102
+ s = t.placement,
1103
+ o = t.offsets,
1104
+ r = t.position,
1105
+ a = t.gpuAcceleration,
1106
+ l = t.adaptive,
1107
+ c = t.roundOffsets,
1108
+ h =
1109
+ !0 === c
1110
+ ? (function (t) {
1111
+ var e = t.x,
1112
+ i = t.y,
1113
+ n = window.devicePixelRatio || 1;
1114
+ return { x: Dt(Dt(e * n) / n) || 0, y: Dt(Dt(i * n) / n) || 0 };
1115
+ })(o)
1116
+ : 'function' == typeof c
1117
+ ? c(o)
1118
+ : o,
1119
+ d = h.x,
1120
+ u = void 0 === d ? 0 : d,
1121
+ f = h.y,
1122
+ p = void 0 === f ? 0 : f,
1123
+ m = o.hasOwnProperty('x'),
1124
+ g = o.hasOwnProperty('y'),
1125
+ _ = ot,
1126
+ b = it,
1127
+ v = window;
1128
+ if (l) {
1129
+ var y = Ct(i),
1130
+ w = 'clientHeight',
1131
+ E = 'clientWidth';
1132
+ y === dt(i) && 'static' !== wt((y = At(i))).position && ((w = 'scrollHeight'), (E = 'scrollWidth')),
1133
+ (y = y),
1134
+ s === it && ((b = nt), (p -= y[w] - n.height), (p *= a ? 1 : -1)),
1135
+ s === ot && ((_ = st), (u -= y[E] - n.width), (u *= a ? 1 : -1));
1136
+ }
1137
+ var A,
1138
+ T = Object.assign({ position: r }, l && jt);
1139
+ return a
1140
+ ? Object.assign(
1141
+ {},
1142
+ T,
1143
+ (((A = {})[b] = g ? '0' : ''),
1144
+ (A[_] = m ? '0' : ''),
1145
+ (A.transform =
1146
+ (v.devicePixelRatio || 1) < 2
1147
+ ? 'translate(' + u + 'px, ' + p + 'px)'
1148
+ : 'translate3d(' + u + 'px, ' + p + 'px, 0)'),
1149
+ A)
1150
+ )
1151
+ : Object.assign({}, T, (((e = {})[b] = g ? p + 'px' : ''), (e[_] = m ? u + 'px' : ''), (e.transform = ''), e));
1152
+ }
1153
+ var Ht = {
1154
+ name: 'computeStyles',
1155
+ enabled: !0,
1156
+ phase: 'beforeWrite',
1157
+ fn: function (t) {
1158
+ var e = t.state,
1159
+ i = t.options,
1160
+ n = i.gpuAcceleration,
1161
+ s = void 0 === n || n,
1162
+ o = i.adaptive,
1163
+ r = void 0 === o || o,
1164
+ a = i.roundOffsets,
1165
+ l = void 0 === a || a,
1166
+ c = { placement: gt(e.placement), popper: e.elements.popper, popperRect: e.rects.popper, gpuAcceleration: s };
1167
+ null != e.modifiersData.popperOffsets &&
1168
+ (e.styles.popper = Object.assign(
1169
+ {},
1170
+ e.styles.popper,
1171
+ Mt(
1172
+ Object.assign({}, c, {
1173
+ offsets: e.modifiersData.popperOffsets,
1174
+ position: e.options.strategy,
1175
+ adaptive: r,
1176
+ roundOffsets: l
1177
+ })
1178
+ )
1179
+ )),
1180
+ null != e.modifiersData.arrow &&
1181
+ (e.styles.arrow = Object.assign(
1182
+ {},
1183
+ e.styles.arrow,
1184
+ Mt(
1185
+ Object.assign({}, c, {
1186
+ offsets: e.modifiersData.arrow,
1187
+ position: 'absolute',
1188
+ adaptive: !1,
1189
+ roundOffsets: l
1190
+ })
1191
+ )
1192
+ )),
1193
+ (e.attributes.popper = Object.assign({}, e.attributes.popper, { 'data-popper-placement': e.placement }));
1194
+ },
1195
+ data: {}
1196
+ },
1197
+ Bt = { passive: !0 },
1198
+ Rt = {
1199
+ name: 'eventListeners',
1200
+ enabled: !0,
1201
+ phase: 'write',
1202
+ fn: function () {},
1203
+ effect: function (t) {
1204
+ var e = t.state,
1205
+ i = t.instance,
1206
+ n = t.options,
1207
+ s = n.scroll,
1208
+ o = void 0 === s || s,
1209
+ r = n.resize,
1210
+ a = void 0 === r || r,
1211
+ l = dt(e.elements.popper),
1212
+ c = [].concat(e.scrollParents.reference, e.scrollParents.popper);
1213
+ return (
1214
+ o &&
1215
+ c.forEach(function (t) {
1216
+ t.addEventListener('scroll', i.update, Bt);
1217
+ }),
1218
+ a && l.addEventListener('resize', i.update, Bt),
1219
+ function () {
1220
+ o &&
1221
+ c.forEach(function (t) {
1222
+ t.removeEventListener('scroll', i.update, Bt);
1223
+ }),
1224
+ a && l.removeEventListener('resize', i.update, Bt);
1225
+ }
1226
+ );
1227
+ },
1228
+ data: {}
1229
+ },
1230
+ Wt = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };
1231
+ function zt(t) {
1232
+ return t.replace(/left|right|bottom|top/g, function (t) {
1233
+ return Wt[t];
1234
+ });
1235
+ }
1236
+ var qt = { start: 'end', end: 'start' };
1237
+ function Ft(t) {
1238
+ return t.replace(/start|end/g, function (t) {
1239
+ return qt[t];
1240
+ });
1241
+ }
1242
+ function Ut(t) {
1243
+ var e = dt(t);
1244
+ return { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset };
1245
+ }
1246
+ function $t(t) {
1247
+ return bt(At(t)).left + Ut(t).scrollLeft;
1248
+ }
1249
+ function Vt(t) {
1250
+ var e = wt(t),
1251
+ i = e.overflow,
1252
+ n = e.overflowX,
1253
+ s = e.overflowY;
1254
+ return /auto|scroll|overlay|hidden/.test(i + s + n);
1255
+ }
1256
+ function Kt(t, e) {
1257
+ var i;
1258
+ void 0 === e && (e = []);
1259
+ var n = (function t(e) {
1260
+ return ['html', 'body', '#document'].indexOf(ht(e)) >= 0 ? e.ownerDocument.body : ft(e) && Vt(e) ? e : t(Tt(e));
1261
+ })(t),
1262
+ s = n === (null == (i = t.ownerDocument) ? void 0 : i.body),
1263
+ o = dt(n),
1264
+ r = s ? [o].concat(o.visualViewport || [], Vt(n) ? n : []) : n,
1265
+ a = e.concat(r);
1266
+ return s ? a : a.concat(Kt(Tt(r)));
1267
+ }
1268
+ function Xt(t) {
1269
+ return Object.assign({}, t, { left: t.x, top: t.y, right: t.x + t.width, bottom: t.y + t.height });
1270
+ }
1271
+ function Yt(t, e) {
1272
+ return 'viewport' === e
1273
+ ? Xt(
1274
+ (function (t) {
1275
+ var e = dt(t),
1276
+ i = At(t),
1277
+ n = e.visualViewport,
1278
+ s = i.clientWidth,
1279
+ o = i.clientHeight,
1280
+ r = 0,
1281
+ a = 0;
1282
+ return (
1283
+ n &&
1284
+ ((s = n.width),
1285
+ (o = n.height),
1286
+ /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || ((r = n.offsetLeft), (a = n.offsetTop))),
1287
+ { width: s, height: o, x: r + $t(t), y: a }
1288
+ );
1289
+ })(t)
1290
+ )
1291
+ : ft(e)
1292
+ ? (function (t) {
1293
+ var e = bt(t);
1294
+ return (
1295
+ (e.top = e.top + t.clientTop),
1296
+ (e.left = e.left + t.clientLeft),
1297
+ (e.bottom = e.top + t.clientHeight),
1298
+ (e.right = e.left + t.clientWidth),
1299
+ (e.width = t.clientWidth),
1300
+ (e.height = t.clientHeight),
1301
+ (e.x = e.left),
1302
+ (e.y = e.top),
1303
+ e
1304
+ );
1305
+ })(e)
1306
+ : Xt(
1307
+ (function (t) {
1308
+ var e,
1309
+ i = At(t),
1310
+ n = Ut(t),
1311
+ s = null == (e = t.ownerDocument) ? void 0 : e.body,
1312
+ o = Lt(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0),
1313
+ r = Lt(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0),
1314
+ a = -n.scrollLeft + $t(t),
1315
+ l = -n.scrollTop;
1316
+ return (
1317
+ 'rtl' === wt(s || i).direction && (a += Lt(i.clientWidth, s ? s.clientWidth : 0) - o),
1318
+ { width: o, height: r, x: a, y: l }
1319
+ );
1320
+ })(At(t))
1321
+ );
1322
+ }
1323
+ function Qt(t) {
1324
+ return t.split('-')[1];
1325
+ }
1326
+ function Gt(t) {
1327
+ var e,
1328
+ i = t.reference,
1329
+ n = t.element,
1330
+ s = t.placement,
1331
+ o = s ? gt(s) : null,
1332
+ r = s ? Qt(s) : null,
1333
+ a = i.x + i.width / 2 - n.width / 2,
1334
+ l = i.y + i.height / 2 - n.height / 2;
1335
+ switch (o) {
1336
+ case it:
1337
+ e = { x: a, y: i.y - n.height };
1338
+ break;
1339
+ case nt:
1340
+ e = { x: a, y: i.y + i.height };
1341
+ break;
1342
+ case st:
1343
+ e = { x: i.x + i.width, y: l };
1344
+ break;
1345
+ case ot:
1346
+ e = { x: i.x - n.width, y: l };
1347
+ break;
1348
+ default:
1349
+ e = { x: i.x, y: i.y };
1350
+ }
1351
+ var c = o ? kt(o) : null;
1352
+ if (null != c) {
1353
+ var h = 'y' === c ? 'height' : 'width';
1354
+ switch (r) {
1355
+ case 'start':
1356
+ e[c] = e[c] - (i[h] / 2 - n[h] / 2);
1357
+ break;
1358
+ case 'end':
1359
+ e[c] = e[c] + (i[h] / 2 - n[h] / 2);
1360
+ }
1361
+ }
1362
+ return e;
1363
+ }
1364
+ function Zt(t, e) {
1365
+ void 0 === e && (e = {});
1366
+ var i = e,
1367
+ n = i.placement,
1368
+ s = void 0 === n ? t.placement : n,
1369
+ o = i.boundary,
1370
+ r = void 0 === o ? 'clippingParents' : o,
1371
+ a = i.rootBoundary,
1372
+ l = void 0 === a ? 'viewport' : a,
1373
+ c = i.elementContext,
1374
+ h = void 0 === c ? 'popper' : c,
1375
+ d = i.altBoundary,
1376
+ u = void 0 !== d && d,
1377
+ f = i.padding,
1378
+ p = void 0 === f ? 0 : f,
1379
+ m = Nt('number' != typeof p ? p : It(p, rt)),
1380
+ g = 'popper' === h ? 'reference' : 'popper',
1381
+ _ = t.elements.reference,
1382
+ b = t.rects.popper,
1383
+ v = t.elements[u ? g : h],
1384
+ y = (function (t, e, i) {
1385
+ var n =
1386
+ 'clippingParents' === e
1387
+ ? (function (t) {
1388
+ var e = Kt(Tt(t)),
1389
+ i = ['absolute', 'fixed'].indexOf(wt(t).position) >= 0 && ft(t) ? Ct(t) : t;
1390
+ return ut(i)
1391
+ ? e.filter(function (t) {
1392
+ return ut(t) && yt(t, i) && 'body' !== ht(t);
1393
+ })
1394
+ : [];
1395
+ })(t)
1396
+ : [].concat(e),
1397
+ s = [].concat(n, [i]),
1398
+ o = s[0],
1399
+ r = s.reduce(function (e, i) {
1400
+ var n = Yt(t, i);
1401
+ return (
1402
+ (e.top = Lt(n.top, e.top)),
1403
+ (e.right = xt(n.right, e.right)),
1404
+ (e.bottom = xt(n.bottom, e.bottom)),
1405
+ (e.left = Lt(n.left, e.left)),
1406
+ e
1407
+ );
1408
+ }, Yt(t, o));
1409
+ return (r.width = r.right - r.left), (r.height = r.bottom - r.top), (r.x = r.left), (r.y = r.top), r;
1410
+ })(ut(v) ? v : v.contextElement || At(t.elements.popper), r, l),
1411
+ w = bt(_),
1412
+ E = Gt({ reference: w, element: b, strategy: 'absolute', placement: s }),
1413
+ A = Xt(Object.assign({}, b, E)),
1414
+ T = 'popper' === h ? A : w,
1415
+ O = {
1416
+ top: y.top - T.top + m.top,
1417
+ bottom: T.bottom - y.bottom + m.bottom,
1418
+ left: y.left - T.left + m.left,
1419
+ right: T.right - y.right + m.right
1420
+ },
1421
+ C = t.modifiersData.offset;
1422
+ if ('popper' === h && C) {
1423
+ var k = C[s];
1424
+ Object.keys(O).forEach(function (t) {
1425
+ var e = [st, nt].indexOf(t) >= 0 ? 1 : -1,
1426
+ i = [it, nt].indexOf(t) >= 0 ? 'y' : 'x';
1427
+ O[t] += k[i] * e;
1428
+ });
1429
+ }
1430
+ return O;
1431
+ }
1432
+ function Jt(t, e) {
1433
+ void 0 === e && (e = {});
1434
+ var i = e,
1435
+ n = i.placement,
1436
+ s = i.boundary,
1437
+ o = i.rootBoundary,
1438
+ r = i.padding,
1439
+ a = i.flipVariations,
1440
+ l = i.allowedAutoPlacements,
1441
+ c = void 0 === l ? lt : l,
1442
+ h = Qt(n),
1443
+ d = h
1444
+ ? a
1445
+ ? at
1446
+ : at.filter(function (t) {
1447
+ return Qt(t) === h;
1448
+ })
1449
+ : rt,
1450
+ u = d.filter(function (t) {
1451
+ return c.indexOf(t) >= 0;
1452
+ });
1453
+ 0 === u.length && (u = d);
1454
+ var f = u.reduce(function (e, i) {
1455
+ return (e[i] = Zt(t, { placement: i, boundary: s, rootBoundary: o, padding: r })[gt(i)]), e;
1456
+ }, {});
1457
+ return Object.keys(f).sort(function (t, e) {
1458
+ return f[t] - f[e];
1459
+ });
1460
+ }
1461
+ var te = {
1462
+ name: 'flip',
1463
+ enabled: !0,
1464
+ phase: 'main',
1465
+ fn: function (t) {
1466
+ var e = t.state,
1467
+ i = t.options,
1468
+ n = t.name;
1469
+ if (!e.modifiersData[n]._skip) {
1470
+ for (
1471
+ var s = i.mainAxis,
1472
+ o = void 0 === s || s,
1473
+ r = i.altAxis,
1474
+ a = void 0 === r || r,
1475
+ l = i.fallbackPlacements,
1476
+ c = i.padding,
1477
+ h = i.boundary,
1478
+ d = i.rootBoundary,
1479
+ u = i.altBoundary,
1480
+ f = i.flipVariations,
1481
+ p = void 0 === f || f,
1482
+ m = i.allowedAutoPlacements,
1483
+ g = e.options.placement,
1484
+ _ = gt(g),
1485
+ b =
1486
+ l ||
1487
+ (_ !== g && p
1488
+ ? (function (t) {
1489
+ if ('auto' === gt(t)) return [];
1490
+ var e = zt(t);
1491
+ return [Ft(t), e, Ft(e)];
1492
+ })(g)
1493
+ : [zt(g)]),
1494
+ v = [g].concat(b).reduce(function (t, i) {
1495
+ return t.concat(
1496
+ 'auto' === gt(i)
1497
+ ? Jt(e, {
1498
+ placement: i,
1499
+ boundary: h,
1500
+ rootBoundary: d,
1501
+ padding: c,
1502
+ flipVariations: p,
1503
+ allowedAutoPlacements: m
1504
+ })
1505
+ : i
1506
+ );
1507
+ }, []),
1508
+ y = e.rects.reference,
1509
+ w = e.rects.popper,
1510
+ E = new Map(),
1511
+ A = !0,
1512
+ T = v[0],
1513
+ O = 0;
1514
+ O < v.length;
1515
+ O++
1516
+ ) {
1517
+ var C = v[O],
1518
+ k = gt(C),
1519
+ L = 'start' === Qt(C),
1520
+ x = [it, nt].indexOf(k) >= 0,
1521
+ D = x ? 'width' : 'height',
1522
+ S = Zt(e, { placement: C, boundary: h, rootBoundary: d, altBoundary: u, padding: c }),
1523
+ N = x ? (L ? st : ot) : L ? nt : it;
1524
+ y[D] > w[D] && (N = zt(N));
1525
+ var I = zt(N),
1526
+ P = [];
1527
+ if (
1528
+ (o && P.push(S[k] <= 0),
1529
+ a && P.push(S[N] <= 0, S[I] <= 0),
1530
+ P.every(function (t) {
1531
+ return t;
1532
+ }))
1533
+ ) {
1534
+ (T = C), (A = !1);
1535
+ break;
1536
+ }
1537
+ E.set(C, P);
1538
+ }
1539
+ if (A)
1540
+ for (
1541
+ var j = function (t) {
1542
+ var e = v.find(function (e) {
1543
+ var i = E.get(e);
1544
+ if (i)
1545
+ return i.slice(0, t).every(function (t) {
1546
+ return t;
1547
+ });
1548
+ });
1549
+ if (e) return (T = e), 'break';
1550
+ },
1551
+ M = p ? 3 : 1;
1552
+ M > 0 && 'break' !== j(M);
1553
+ M--
1554
+ );
1555
+ e.placement !== T && ((e.modifiersData[n]._skip = !0), (e.placement = T), (e.reset = !0));
1556
+ }
1557
+ },
1558
+ requiresIfExists: ['offset'],
1559
+ data: { _skip: !1 }
1560
+ };
1561
+ function ee(t, e, i) {
1562
+ return (
1563
+ void 0 === i && (i = { x: 0, y: 0 }),
1564
+ {
1565
+ top: t.top - e.height - i.y,
1566
+ right: t.right - e.width + i.x,
1567
+ bottom: t.bottom - e.height + i.y,
1568
+ left: t.left - e.width - i.x
1569
+ }
1570
+ );
1571
+ }
1572
+ function ie(t) {
1573
+ return [it, st, nt, ot].some(function (e) {
1574
+ return t[e] >= 0;
1575
+ });
1576
+ }
1577
+ var ne = {
1578
+ name: 'hide',
1579
+ enabled: !0,
1580
+ phase: 'main',
1581
+ requiresIfExists: ['preventOverflow'],
1582
+ fn: function (t) {
1583
+ var e = t.state,
1584
+ i = t.name,
1585
+ n = e.rects.reference,
1586
+ s = e.rects.popper,
1587
+ o = e.modifiersData.preventOverflow,
1588
+ r = Zt(e, { elementContext: 'reference' }),
1589
+ a = Zt(e, { altBoundary: !0 }),
1590
+ l = ee(r, n),
1591
+ c = ee(a, s, o),
1592
+ h = ie(l),
1593
+ d = ie(c);
1594
+ (e.modifiersData[i] = {
1595
+ referenceClippingOffsets: l,
1596
+ popperEscapeOffsets: c,
1597
+ isReferenceHidden: h,
1598
+ hasPopperEscaped: d
1599
+ }),
1600
+ (e.attributes.popper = Object.assign({}, e.attributes.popper, {
1601
+ 'data-popper-reference-hidden': h,
1602
+ 'data-popper-escaped': d
1603
+ }));
1604
+ }
1605
+ },
1606
+ se = {
1607
+ name: 'offset',
1608
+ enabled: !0,
1609
+ phase: 'main',
1610
+ requires: ['popperOffsets'],
1611
+ fn: function (t) {
1612
+ var e = t.state,
1613
+ i = t.options,
1614
+ n = t.name,
1615
+ s = i.offset,
1616
+ o = void 0 === s ? [0, 0] : s,
1617
+ r = lt.reduce(function (t, i) {
1618
+ return (
1619
+ (t[i] = (function (t, e, i) {
1620
+ var n = gt(t),
1621
+ s = [ot, it].indexOf(n) >= 0 ? -1 : 1,
1622
+ o = 'function' == typeof i ? i(Object.assign({}, e, { placement: t })) : i,
1623
+ r = o[0],
1624
+ a = o[1];
1625
+ return (r = r || 0), (a = (a || 0) * s), [ot, st].indexOf(n) >= 0 ? { x: a, y: r } : { x: r, y: a };
1626
+ })(i, e.rects, o)),
1627
+ t
1628
+ );
1629
+ }, {}),
1630
+ a = r[e.placement],
1631
+ l = a.x,
1632
+ c = a.y;
1633
+ null != e.modifiersData.popperOffsets &&
1634
+ ((e.modifiersData.popperOffsets.x += l), (e.modifiersData.popperOffsets.y += c)),
1635
+ (e.modifiersData[n] = r);
1636
+ }
1637
+ },
1638
+ oe = {
1639
+ name: 'popperOffsets',
1640
+ enabled: !0,
1641
+ phase: 'read',
1642
+ fn: function (t) {
1643
+ var e = t.state,
1644
+ i = t.name;
1645
+ e.modifiersData[i] = Gt({
1646
+ reference: e.rects.reference,
1647
+ element: e.rects.popper,
1648
+ strategy: 'absolute',
1649
+ placement: e.placement
1650
+ });
1651
+ },
1652
+ data: {}
1653
+ },
1654
+ re = {
1655
+ name: 'preventOverflow',
1656
+ enabled: !0,
1657
+ phase: 'main',
1658
+ fn: function (t) {
1659
+ var e = t.state,
1660
+ i = t.options,
1661
+ n = t.name,
1662
+ s = i.mainAxis,
1663
+ o = void 0 === s || s,
1664
+ r = i.altAxis,
1665
+ a = void 0 !== r && r,
1666
+ l = i.boundary,
1667
+ c = i.rootBoundary,
1668
+ h = i.altBoundary,
1669
+ d = i.padding,
1670
+ u = i.tether,
1671
+ f = void 0 === u || u,
1672
+ p = i.tetherOffset,
1673
+ m = void 0 === p ? 0 : p,
1674
+ g = Zt(e, { boundary: l, rootBoundary: c, padding: d, altBoundary: h }),
1675
+ _ = gt(e.placement),
1676
+ b = Qt(e.placement),
1677
+ v = !b,
1678
+ y = kt(_),
1679
+ w = 'x' === y ? 'y' : 'x',
1680
+ E = e.modifiersData.popperOffsets,
1681
+ A = e.rects.reference,
1682
+ T = e.rects.popper,
1683
+ O = 'function' == typeof m ? m(Object.assign({}, e.rects, { placement: e.placement })) : m,
1684
+ C = { x: 0, y: 0 };
1685
+ if (E) {
1686
+ if (o || a) {
1687
+ var k = 'y' === y ? it : ot,
1688
+ L = 'y' === y ? nt : st,
1689
+ x = 'y' === y ? 'height' : 'width',
1690
+ D = E[y],
1691
+ S = E[y] + g[k],
1692
+ N = E[y] - g[L],
1693
+ I = f ? -T[x] / 2 : 0,
1694
+ P = 'start' === b ? A[x] : T[x],
1695
+ j = 'start' === b ? -T[x] : -A[x],
1696
+ M = e.elements.arrow,
1697
+ H = f && M ? vt(M) : { width: 0, height: 0 },
1698
+ B = e.modifiersData['arrow#persistent']
1699
+ ? e.modifiersData['arrow#persistent'].padding
1700
+ : { top: 0, right: 0, bottom: 0, left: 0 },
1701
+ R = B[k],
1702
+ W = B[L],
1703
+ z = St(0, A[x], H[x]),
1704
+ q = v ? A[x] / 2 - I - z - R - O : P - z - R - O,
1705
+ F = v ? -A[x] / 2 + I + z + W + O : j + z + W + O,
1706
+ U = e.elements.arrow && Ct(e.elements.arrow),
1707
+ $ = U ? ('y' === y ? U.clientTop || 0 : U.clientLeft || 0) : 0,
1708
+ V = e.modifiersData.offset ? e.modifiersData.offset[e.placement][y] : 0,
1709
+ K = E[y] + q - V - $,
1710
+ X = E[y] + F - V;
1711
+ if (o) {
1712
+ var Y = St(f ? xt(S, K) : S, D, f ? Lt(N, X) : N);
1713
+ (E[y] = Y), (C[y] = Y - D);
1714
+ }
1715
+ if (a) {
1716
+ var Q = 'x' === y ? it : ot,
1717
+ G = 'x' === y ? nt : st,
1718
+ Z = E[w],
1719
+ J = Z + g[Q],
1720
+ tt = Z - g[G],
1721
+ et = St(f ? xt(J, K) : J, Z, f ? Lt(tt, X) : tt);
1722
+ (E[w] = et), (C[w] = et - Z);
1723
+ }
1724
+ }
1725
+ e.modifiersData[n] = C;
1726
+ }
1727
+ },
1728
+ requiresIfExists: ['offset']
1729
+ };
1730
+ function ae(t, e, i) {
1731
+ void 0 === i && (i = !1);
1732
+ var n,
1733
+ s,
1734
+ o = ft(e),
1735
+ r =
1736
+ ft(e) &&
1737
+ (function (t) {
1738
+ var e = t.getBoundingClientRect(),
1739
+ i = e.width / t.offsetWidth || 1,
1740
+ n = e.height / t.offsetHeight || 1;
1741
+ return 1 !== i || 1 !== n;
1742
+ })(e),
1743
+ a = At(e),
1744
+ l = bt(t, r),
1745
+ c = { scrollLeft: 0, scrollTop: 0 },
1746
+ h = { x: 0, y: 0 };
1747
+ return (
1748
+ (o || (!o && !i)) &&
1749
+ (('body' !== ht(e) || Vt(a)) &&
1750
+ (c = (n = e) !== dt(n) && ft(n) ? { scrollLeft: (s = n).scrollLeft, scrollTop: s.scrollTop } : Ut(n)),
1751
+ ft(e) ? (((h = bt(e, !0)).x += e.clientLeft), (h.y += e.clientTop)) : a && (h.x = $t(a))),
1752
+ { x: l.left + c.scrollLeft - h.x, y: l.top + c.scrollTop - h.y, width: l.width, height: l.height }
1753
+ );
1754
+ }
1755
+ var le = { placement: 'bottom', modifiers: [], strategy: 'absolute' };
1756
+ function ce() {
1757
+ for (var t = arguments.length, e = new Array(t), i = 0; i < t; i++) e[i] = arguments[i];
1758
+ return !e.some(function (t) {
1759
+ return !(t && 'function' == typeof t.getBoundingClientRect);
1760
+ });
1761
+ }
1762
+ function he(t) {
1763
+ void 0 === t && (t = {});
1764
+ var e = t,
1765
+ i = e.defaultModifiers,
1766
+ n = void 0 === i ? [] : i,
1767
+ s = e.defaultOptions,
1768
+ o = void 0 === s ? le : s;
1769
+ return function (t, e, i) {
1770
+ void 0 === i && (i = o);
1771
+ var s,
1772
+ r,
1773
+ a = {
1774
+ placement: 'bottom',
1775
+ orderedModifiers: [],
1776
+ options: Object.assign({}, le, o),
1777
+ modifiersData: {},
1778
+ elements: { reference: t, popper: e },
1779
+ attributes: {},
1780
+ styles: {}
1781
+ },
1782
+ l = [],
1783
+ c = !1,
1784
+ h = {
1785
+ state: a,
1786
+ setOptions: function (i) {
1787
+ d(),
1788
+ (a.options = Object.assign({}, o, a.options, i)),
1789
+ (a.scrollParents = {
1790
+ reference: ut(t) ? Kt(t) : t.contextElement ? Kt(t.contextElement) : [],
1791
+ popper: Kt(e)
1792
+ });
1793
+ var s,
1794
+ r,
1795
+ c = (function (t) {
1796
+ var e = (function (t) {
1797
+ var e = new Map(),
1798
+ i = new Set(),
1799
+ n = [];
1800
+ return (
1801
+ t.forEach(function (t) {
1802
+ e.set(t.name, t);
1803
+ }),
1804
+ t.forEach(function (t) {
1805
+ i.has(t.name) ||
1806
+ (function t(s) {
1807
+ i.add(s.name),
1808
+ [].concat(s.requires || [], s.requiresIfExists || []).forEach(function (n) {
1809
+ if (!i.has(n)) {
1810
+ var s = e.get(n);
1811
+ s && t(s);
1812
+ }
1813
+ }),
1814
+ n.push(s);
1815
+ })(t);
1816
+ }),
1817
+ n
1818
+ );
1819
+ })(t);
1820
+ return ct.reduce(function (t, i) {
1821
+ return t.concat(
1822
+ e.filter(function (t) {
1823
+ return t.phase === i;
1824
+ })
1825
+ );
1826
+ }, []);
1827
+ })(
1828
+ ((s = [].concat(n, a.options.modifiers)),
1829
+ (r = s.reduce(function (t, e) {
1830
+ var i = t[e.name];
1831
+ return (
1832
+ (t[e.name] = i
1833
+ ? Object.assign({}, i, e, {
1834
+ options: Object.assign({}, i.options, e.options),
1835
+ data: Object.assign({}, i.data, e.data)
1836
+ })
1837
+ : e),
1838
+ t
1839
+ );
1840
+ }, {})),
1841
+ Object.keys(r).map(function (t) {
1842
+ return r[t];
1843
+ }))
1844
+ );
1845
+ return (
1846
+ (a.orderedModifiers = c.filter(function (t) {
1847
+ return t.enabled;
1848
+ })),
1849
+ a.orderedModifiers.forEach(function (t) {
1850
+ var e = t.name,
1851
+ i = t.options,
1852
+ n = void 0 === i ? {} : i,
1853
+ s = t.effect;
1854
+ if ('function' == typeof s) {
1855
+ var o = s({ state: a, name: e, instance: h, options: n });
1856
+ l.push(o || function () {});
1857
+ }
1858
+ }),
1859
+ h.update()
1860
+ );
1861
+ },
1862
+ forceUpdate: function () {
1863
+ if (!c) {
1864
+ var t = a.elements,
1865
+ e = t.reference,
1866
+ i = t.popper;
1867
+ if (ce(e, i)) {
1868
+ (a.rects = { reference: ae(e, Ct(i), 'fixed' === a.options.strategy), popper: vt(i) }),
1869
+ (a.reset = !1),
1870
+ (a.placement = a.options.placement),
1871
+ a.orderedModifiers.forEach(function (t) {
1872
+ return (a.modifiersData[t.name] = Object.assign({}, t.data));
1873
+ });
1874
+ for (var n = 0; n < a.orderedModifiers.length; n++)
1875
+ if (!0 !== a.reset) {
1876
+ var s = a.orderedModifiers[n],
1877
+ o = s.fn,
1878
+ r = s.options,
1879
+ l = void 0 === r ? {} : r,
1880
+ d = s.name;
1881
+ 'function' == typeof o && (a = o({ state: a, options: l, name: d, instance: h }) || a);
1882
+ } else (a.reset = !1), (n = -1);
1883
+ }
1884
+ }
1885
+ },
1886
+ update:
1887
+ ((s = function () {
1888
+ return new Promise(function (t) {
1889
+ h.forceUpdate(), t(a);
1890
+ });
1891
+ }),
1892
+ function () {
1893
+ return (
1894
+ r ||
1895
+ (r = new Promise(function (t) {
1896
+ Promise.resolve().then(function () {
1897
+ (r = void 0), t(s());
1898
+ });
1899
+ })),
1900
+ r
1901
+ );
1902
+ }),
1903
+ destroy: function () {
1904
+ d(), (c = !0);
1905
+ }
1906
+ };
1907
+ if (!ce(t, e)) return h;
1908
+ function d() {
1909
+ l.forEach(function (t) {
1910
+ return t();
1911
+ }),
1912
+ (l = []);
1913
+ }
1914
+ return (
1915
+ h.setOptions(i).then(function (t) {
1916
+ !c && i.onFirstUpdate && i.onFirstUpdate(t);
1917
+ }),
1918
+ h
1919
+ );
1920
+ };
1921
+ }
1922
+ var de = he(),
1923
+ ue = he({ defaultModifiers: [Rt, oe, Ht, mt] }),
1924
+ fe = he({ defaultModifiers: [Rt, oe, Ht, mt, se, te, re, Pt, ne] }),
1925
+ pe = Object.freeze({
1926
+ __proto__: null,
1927
+ popperGenerator: he,
1928
+ detectOverflow: Zt,
1929
+ createPopperBase: de,
1930
+ createPopper: fe,
1931
+ createPopperLite: ue,
1932
+ top: it,
1933
+ bottom: nt,
1934
+ right: st,
1935
+ left: ot,
1936
+ auto: 'auto',
1937
+ basePlacements: rt,
1938
+ start: 'start',
1939
+ end: 'end',
1940
+ clippingParents: 'clippingParents',
1941
+ viewport: 'viewport',
1942
+ popper: 'popper',
1943
+ reference: 'reference',
1944
+ variationPlacements: at,
1945
+ placements: lt,
1946
+ beforeRead: 'beforeRead',
1947
+ read: 'read',
1948
+ afterRead: 'afterRead',
1949
+ beforeMain: 'beforeMain',
1950
+ main: 'main',
1951
+ afterMain: 'afterMain',
1952
+ beforeWrite: 'beforeWrite',
1953
+ write: 'write',
1954
+ afterWrite: 'afterWrite',
1955
+ modifierPhases: ct,
1956
+ applyStyles: mt,
1957
+ arrow: Pt,
1958
+ computeStyles: Ht,
1959
+ eventListeners: Rt,
1960
+ flip: te,
1961
+ hide: ne,
1962
+ offset: se,
1963
+ popperOffsets: oe,
1964
+ preventOverflow: re
1965
+ });
1966
+ const me = new RegExp('ArrowUp|ArrowDown|Escape'),
1967
+ ge = p() ? 'top-end' : 'top-start',
1968
+ _e = p() ? 'top-start' : 'top-end',
1969
+ be = p() ? 'bottom-end' : 'bottom-start',
1970
+ ve = p() ? 'bottom-start' : 'bottom-end',
1971
+ ye = p() ? 'left-start' : 'right-start',
1972
+ we = p() ? 'right-start' : 'left-start',
1973
+ Ee = {
1974
+ offset: [0, 2],
1975
+ boundary: 'clippingParents',
1976
+ reference: 'toggle',
1977
+ display: 'dynamic',
1978
+ popperConfig: null,
1979
+ autoClose: !0
1980
+ },
1981
+ Ae = {
1982
+ offset: '(array|string|function)',
1983
+ boundary: '(string|element)',
1984
+ reference: '(string|element|object)',
1985
+ display: 'string',
1986
+ popperConfig: '(null|object|function)',
1987
+ autoClose: '(boolean|string)'
1988
+ };
1989
+ class Te extends H {
1990
+ constructor(t, e) {
1991
+ super(t),
1992
+ (this._popper = null),
1993
+ (this._config = this._getConfig(e)),
1994
+ (this._menu = this._getMenuElement()),
1995
+ (this._inNavbar = this._detectNavbar());
1996
+ }
1997
+ static get Default() {
1998
+ return Ee;
1999
+ }
2000
+ static get DefaultType() {
2001
+ return Ae;
2002
+ }
2003
+ static get NAME() {
2004
+ return 'dropdown';
2005
+ }
2006
+ toggle() {
2007
+ return this._isShown() ? this.hide() : this.show();
2008
+ }
2009
+ show() {
2010
+ if (l(this._element) || this._isShown(this._menu)) return;
2011
+ const t = { relatedTarget: this._element };
2012
+ if (P.trigger(this._element, 'show.bs.dropdown', t).defaultPrevented) return;
2013
+ const e = Te.getParentFromElement(this._element);
2014
+ this._inNavbar ? F.setDataAttribute(this._menu, 'popper', 'none') : this._createPopper(e),
2015
+ 'ontouchstart' in document.documentElement &&
2016
+ !e.closest('.navbar-nav') &&
2017
+ [].concat(...document.body.children).forEach(t => P.on(t, 'mouseover', h)),
2018
+ this._element.focus(),
2019
+ this._element.setAttribute('aria-expanded', !0),
2020
+ this._menu.classList.add('show'),
2021
+ this._element.classList.add('show'),
2022
+ P.trigger(this._element, 'shown.bs.dropdown', t);
2023
+ }
2024
+ hide() {
2025
+ if (l(this._element) || !this._isShown(this._menu)) return;
2026
+ const t = { relatedTarget: this._element };
2027
+ this._completeHide(t);
2028
+ }
2029
+ dispose() {
2030
+ this._popper && this._popper.destroy(), super.dispose();
2031
+ }
2032
+ update() {
2033
+ (this._inNavbar = this._detectNavbar()), this._popper && this._popper.update();
2034
+ }
2035
+ _completeHide(t) {
2036
+ P.trigger(this._element, 'hide.bs.dropdown', t).defaultPrevented ||
2037
+ ('ontouchstart' in document.documentElement &&
2038
+ [].concat(...document.body.children).forEach(t => P.off(t, 'mouseover', h)),
2039
+ this._popper && this._popper.destroy(),
2040
+ this._menu.classList.remove('show'),
2041
+ this._element.classList.remove('show'),
2042
+ this._element.setAttribute('aria-expanded', 'false'),
2043
+ F.removeDataAttribute(this._menu, 'popper'),
2044
+ P.trigger(this._element, 'hidden.bs.dropdown', t));
2045
+ }
2046
+ _getConfig(t) {
2047
+ if (
2048
+ ((t = { ...this.constructor.Default, ...F.getDataAttributes(this._element), ...t }),
2049
+ r('dropdown', t, this.constructor.DefaultType),
2050
+ 'object' == typeof t.reference && !s(t.reference) && 'function' != typeof t.reference.getBoundingClientRect)
2051
+ )
2052
+ throw new TypeError(
2053
+ 'dropdown'.toUpperCase() +
2054
+ ': Option "reference" provided type "object" without a required "getBoundingClientRect" method.'
2055
+ );
2056
+ return t;
2057
+ }
2058
+ _createPopper(t) {
2059
+ if (void 0 === pe) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");
2060
+ let e = this._element;
2061
+ 'parent' === this._config.reference
2062
+ ? (e = t)
2063
+ : s(this._config.reference)
2064
+ ? (e = o(this._config.reference))
2065
+ : 'object' == typeof this._config.reference && (e = this._config.reference);
2066
+ const i = this._getPopperConfig(),
2067
+ n = i.modifiers.find(t => 'applyStyles' === t.name && !1 === t.enabled);
2068
+ (this._popper = fe(e, this._menu, i)), n && F.setDataAttribute(this._menu, 'popper', 'static');
2069
+ }
2070
+ _isShown(t = this._element) {
2071
+ return t.classList.contains('show');
2072
+ }
2073
+ _getMenuElement() {
2074
+ return U.next(this._element, '.dropdown-menu')[0];
2075
+ }
2076
+ _getPlacement() {
2077
+ const t = this._element.parentNode;
2078
+ if (t.classList.contains('dropend')) return ye;
2079
+ if (t.classList.contains('dropstart')) return we;
2080
+ const e = 'end' === getComputedStyle(this._menu).getPropertyValue('--bs-position').trim();
2081
+ return t.classList.contains('dropup') ? (e ? _e : ge) : e ? ve : be;
2082
+ }
2083
+ _detectNavbar() {
2084
+ return null !== this._element.closest('.navbar');
2085
+ }
2086
+ _getOffset() {
2087
+ const { offset: t } = this._config;
2088
+ return 'string' == typeof t
2089
+ ? t.split(',').map(t => Number.parseInt(t, 10))
2090
+ : 'function' == typeof t
2091
+ ? e => t(e, this._element)
2092
+ : t;
2093
+ }
2094
+ _getPopperConfig() {
2095
+ const t = {
2096
+ placement: this._getPlacement(),
2097
+ modifiers: [
2098
+ { name: 'preventOverflow', options: { boundary: this._config.boundary } },
2099
+ { name: 'offset', options: { offset: this._getOffset() } }
2100
+ ]
2101
+ };
2102
+ return (
2103
+ 'static' === this._config.display && (t.modifiers = [{ name: 'applyStyles', enabled: !1 }]),
2104
+ {
2105
+ ...t,
2106
+ ...('function' == typeof this._config.popperConfig ? this._config.popperConfig(t) : this._config.popperConfig)
2107
+ }
2108
+ );
2109
+ }
2110
+ _selectMenuItem({ key: t, target: e }) {
2111
+ const i = U.find('.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)', this._menu).filter(a);
2112
+ i.length && b(i, e, 'ArrowDown' === t, !i.includes(e)).focus();
2113
+ }
2114
+ static jQueryInterface(t) {
2115
+ return this.each(function () {
2116
+ const e = Te.getOrCreateInstance(this, t);
2117
+ if ('string' == typeof t) {
2118
+ if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
2119
+ e[t]();
2120
+ }
2121
+ });
2122
+ }
2123
+ static clearMenus(t) {
2124
+ if (t && (2 === t.button || ('keyup' === t.type && 'Tab' !== t.key))) return;
2125
+ const e = U.find('[data-bs-toggle="dropdown"]');
2126
+ for (let i = 0, n = e.length; i < n; i++) {
2127
+ const n = Te.getInstance(e[i]);
2128
+ if (!n || !1 === n._config.autoClose) continue;
2129
+ if (!n._isShown()) continue;
2130
+ const s = { relatedTarget: n._element };
2131
+ if (t) {
2132
+ const e = t.composedPath(),
2133
+ i = e.includes(n._menu);
2134
+ if (
2135
+ e.includes(n._element) ||
2136
+ ('inside' === n._config.autoClose && !i) ||
2137
+ ('outside' === n._config.autoClose && i)
2138
+ )
2139
+ continue;
2140
+ if (
2141
+ n._menu.contains(t.target) &&
2142
+ (('keyup' === t.type && 'Tab' === t.key) || /input|select|option|textarea|form/i.test(t.target.tagName))
2143
+ )
2144
+ continue;
2145
+ 'click' === t.type && (s.clickEvent = t);
2146
+ }
2147
+ n._completeHide(s);
2148
+ }
2149
+ }
2150
+ static getParentFromElement(t) {
2151
+ return i(t) || t.parentNode;
2152
+ }
2153
+ static dataApiKeydownHandler(t) {
2154
+ if (
2155
+ /input|textarea/i.test(t.target.tagName)
2156
+ ? 'Space' === t.key ||
2157
+ ('Escape' !== t.key &&
2158
+ (('ArrowDown' !== t.key && 'ArrowUp' !== t.key) || t.target.closest('.dropdown-menu')))
2159
+ : !me.test(t.key)
2160
+ )
2161
+ return;
2162
+ const e = this.classList.contains('show');
2163
+ if (!e && 'Escape' === t.key) return;
2164
+ if ((t.preventDefault(), t.stopPropagation(), l(this))) return;
2165
+ const i = this.matches('[data-bs-toggle="dropdown"]') ? this : U.prev(this, '[data-bs-toggle="dropdown"]')[0],
2166
+ n = Te.getOrCreateInstance(i);
2167
+ if ('Escape' !== t.key)
2168
+ return 'ArrowUp' === t.key || 'ArrowDown' === t.key
2169
+ ? (e || n.show(), void n._selectMenuItem(t))
2170
+ : void ((e && 'Space' !== t.key) || Te.clearMenus());
2171
+ n.hide();
2172
+ }
2173
+ }
2174
+ P.on(document, 'keydown.bs.dropdown.data-api', '[data-bs-toggle="dropdown"]', Te.dataApiKeydownHandler),
2175
+ P.on(document, 'keydown.bs.dropdown.data-api', '.dropdown-menu', Te.dataApiKeydownHandler),
2176
+ P.on(document, 'click.bs.dropdown.data-api', Te.clearMenus),
2177
+ P.on(document, 'keyup.bs.dropdown.data-api', Te.clearMenus),
2178
+ P.on(document, 'click.bs.dropdown.data-api', '[data-bs-toggle="dropdown"]', function (t) {
2179
+ t.preventDefault(), Te.getOrCreateInstance(this).toggle();
2180
+ }),
2181
+ m(Te);
2182
+ class Oe {
2183
+ constructor() {
2184
+ this._element = document.body;
2185
+ }
2186
+ getWidth() {
2187
+ const t = document.documentElement.clientWidth;
2188
+ return Math.abs(window.innerWidth - t);
2189
+ }
2190
+ hide() {
2191
+ const t = this.getWidth();
2192
+ this._disableOverFlow(),
2193
+ this._setElementAttributes(this._element, 'paddingRight', e => e + t),
2194
+ this._setElementAttributes('.fixed-top, .fixed-bottom, .is-fixed, .sticky-top', 'paddingRight', e => e + t),
2195
+ this._setElementAttributes('.sticky-top', 'marginRight', e => e - t);
2196
+ }
2197
+ _disableOverFlow() {
2198
+ this._saveInitialAttribute(this._element, 'overflow'), (this._element.style.overflow = 'hidden');
2199
+ }
2200
+ _setElementAttributes(t, e, i) {
2201
+ const n = this.getWidth();
2202
+ this._applyManipulationCallback(t, t => {
2203
+ if (t !== this._element && window.innerWidth > t.clientWidth + n) return;
2204
+ this._saveInitialAttribute(t, e);
2205
+ const s = window.getComputedStyle(t)[e];
2206
+ t.style[e] = i(Number.parseFloat(s)) + 'px';
2207
+ });
2208
+ }
2209
+ reset() {
2210
+ this._resetElementAttributes(this._element, 'overflow'),
2211
+ this._resetElementAttributes(this._element, 'paddingRight'),
2212
+ this._resetElementAttributes('.fixed-top, .fixed-bottom, .is-fixed, .sticky-top', 'paddingRight'),
2213
+ this._resetElementAttributes('.sticky-top', 'marginRight');
2214
+ }
2215
+ _saveInitialAttribute(t, e) {
2216
+ const i = t.style[e];
2217
+ i && F.setDataAttribute(t, e, i);
2218
+ }
2219
+ _resetElementAttributes(t, e) {
2220
+ this._applyManipulationCallback(t, t => {
2221
+ const i = F.getDataAttribute(t, e);
2222
+ void 0 === i ? t.style.removeProperty(e) : (F.removeDataAttribute(t, e), (t.style[e] = i));
2223
+ });
2224
+ }
2225
+ _applyManipulationCallback(t, e) {
2226
+ s(t) ? e(t) : U.find(t, this._element).forEach(e);
2227
+ }
2228
+ isOverflowing() {
2229
+ return this.getWidth() > 0;
2230
+ }
2231
+ }
2232
+ const Ce = { className: 'modal-backdrop', isVisible: !0, isAnimated: !1, rootElement: 'body', clickCallback: null },
2233
+ ke = {
2234
+ className: 'string',
2235
+ isVisible: 'boolean',
2236
+ isAnimated: 'boolean',
2237
+ rootElement: '(element|string)',
2238
+ clickCallback: '(function|null)'
2239
+ };
2240
+ class Le {
2241
+ constructor(t) {
2242
+ (this._config = this._getConfig(t)), (this._isAppended = !1), (this._element = null);
2243
+ }
2244
+ show(t) {
2245
+ this._config.isVisible
2246
+ ? (this._append(),
2247
+ this._config.isAnimated && d(this._getElement()),
2248
+ this._getElement().classList.add('show'),
2249
+ this._emulateAnimation(() => {
2250
+ g(t);
2251
+ }))
2252
+ : g(t);
2253
+ }
2254
+ hide(t) {
2255
+ this._config.isVisible
2256
+ ? (this._getElement().classList.remove('show'),
2257
+ this._emulateAnimation(() => {
2258
+ this.dispose(), g(t);
2259
+ }))
2260
+ : g(t);
2261
+ }
2262
+ _getElement() {
2263
+ if (!this._element) {
2264
+ const t = document.createElement('div');
2265
+ (t.className = this._config.className), this._config.isAnimated && t.classList.add('fade'), (this._element = t);
2266
+ }
2267
+ return this._element;
2268
+ }
2269
+ _getConfig(t) {
2270
+ return (
2271
+ ((t = { ...Ce, ...('object' == typeof t ? t : {}) }).rootElement = o(t.rootElement)), r('backdrop', t, ke), t
2272
+ );
2273
+ }
2274
+ _append() {
2275
+ this._isAppended ||
2276
+ (this._config.rootElement.append(this._getElement()),
2277
+ P.on(this._getElement(), 'mousedown.bs.backdrop', () => {
2278
+ g(this._config.clickCallback);
2279
+ }),
2280
+ (this._isAppended = !0));
2281
+ }
2282
+ dispose() {
2283
+ this._isAppended &&
2284
+ (P.off(this._element, 'mousedown.bs.backdrop'), this._element.remove(), (this._isAppended = !1));
2285
+ }
2286
+ _emulateAnimation(t) {
2287
+ _(t, this._getElement(), this._config.isAnimated);
2288
+ }
2289
+ }
2290
+ const xe = { trapElement: null, autofocus: !0 },
2291
+ De = { trapElement: 'element', autofocus: 'boolean' };
2292
+ class Se {
2293
+ constructor(t) {
2294
+ (this._config = this._getConfig(t)), (this._isActive = !1), (this._lastTabNavDirection = null);
2295
+ }
2296
+ activate() {
2297
+ const { trapElement: t, autofocus: e } = this._config;
2298
+ this._isActive ||
2299
+ (e && t.focus(),
2300
+ P.off(document, '.bs.focustrap'),
2301
+ P.on(document, 'focusin.bs.focustrap', t => this._handleFocusin(t)),
2302
+ P.on(document, 'keydown.tab.bs.focustrap', t => this._handleKeydown(t)),
2303
+ (this._isActive = !0));
2304
+ }
2305
+ deactivate() {
2306
+ this._isActive && ((this._isActive = !1), P.off(document, '.bs.focustrap'));
2307
+ }
2308
+ _handleFocusin(t) {
2309
+ const { target: e } = t,
2310
+ { trapElement: i } = this._config;
2311
+ if (e === document || e === i || i.contains(e)) return;
2312
+ const n = U.focusableChildren(i);
2313
+ 0 === n.length ? i.focus() : 'backward' === this._lastTabNavDirection ? n[n.length - 1].focus() : n[0].focus();
2314
+ }
2315
+ _handleKeydown(t) {
2316
+ 'Tab' === t.key && (this._lastTabNavDirection = t.shiftKey ? 'backward' : 'forward');
2317
+ }
2318
+ _getConfig(t) {
2319
+ return (t = { ...xe, ...('object' == typeof t ? t : {}) }), r('focustrap', t, De), t;
2320
+ }
2321
+ }
2322
+ const Ne = { backdrop: !0, keyboard: !0, focus: !0 },
2323
+ Ie = { backdrop: '(boolean|string)', keyboard: 'boolean', focus: 'boolean' };
2324
+ class Pe extends H {
2325
+ constructor(t, e) {
2326
+ super(t),
2327
+ (this._config = this._getConfig(e)),
2328
+ (this._dialog = U.findOne('.modal-dialog', this._element)),
2329
+ (this._backdrop = this._initializeBackDrop()),
2330
+ (this._focustrap = this._initializeFocusTrap()),
2331
+ (this._isShown = !1),
2332
+ (this._ignoreBackdropClick = !1),
2333
+ (this._isTransitioning = !1),
2334
+ (this._scrollBar = new Oe());
2335
+ }
2336
+ static get Default() {
2337
+ return Ne;
2338
+ }
2339
+ static get NAME() {
2340
+ return 'modal';
2341
+ }
2342
+ toggle(t) {
2343
+ return this._isShown ? this.hide() : this.show(t);
2344
+ }
2345
+ show(t) {
2346
+ this._isShown ||
2347
+ this._isTransitioning ||
2348
+ P.trigger(this._element, 'show.bs.modal', { relatedTarget: t }).defaultPrevented ||
2349
+ ((this._isShown = !0),
2350
+ this._isAnimated() && (this._isTransitioning = !0),
2351
+ this._scrollBar.hide(),
2352
+ document.body.classList.add('modal-open'),
2353
+ this._adjustDialog(),
2354
+ this._setEscapeEvent(),
2355
+ this._setResizeEvent(),
2356
+ P.on(this._dialog, 'mousedown.dismiss.bs.modal', () => {
2357
+ P.one(this._element, 'mouseup.dismiss.bs.modal', t => {
2358
+ t.target === this._element && (this._ignoreBackdropClick = !0);
2359
+ });
2360
+ }),
2361
+ this._showBackdrop(() => this._showElement(t)));
2362
+ }
2363
+ hide() {
2364
+ if (!this._isShown || this._isTransitioning) return;
2365
+ if (P.trigger(this._element, 'hide.bs.modal').defaultPrevented) return;
2366
+ this._isShown = !1;
2367
+ const t = this._isAnimated();
2368
+ t && (this._isTransitioning = !0),
2369
+ this._setEscapeEvent(),
2370
+ this._setResizeEvent(),
2371
+ this._focustrap.deactivate(),
2372
+ this._element.classList.remove('show'),
2373
+ P.off(this._element, 'click.dismiss.bs.modal'),
2374
+ P.off(this._dialog, 'mousedown.dismiss.bs.modal'),
2375
+ this._queueCallback(() => this._hideModal(), this._element, t);
2376
+ }
2377
+ dispose() {
2378
+ [window, this._dialog].forEach(t => P.off(t, '.bs.modal')),
2379
+ this._backdrop.dispose(),
2380
+ this._focustrap.deactivate(),
2381
+ super.dispose();
2382
+ }
2383
+ handleUpdate() {
2384
+ this._adjustDialog();
2385
+ }
2386
+ _initializeBackDrop() {
2387
+ return new Le({ isVisible: Boolean(this._config.backdrop), isAnimated: this._isAnimated() });
2388
+ }
2389
+ _initializeFocusTrap() {
2390
+ return new Se({ trapElement: this._element });
2391
+ }
2392
+ _getConfig(t) {
2393
+ return (
2394
+ (t = { ...Ne, ...F.getDataAttributes(this._element), ...('object' == typeof t ? t : {}) }), r('modal', t, Ie), t
2395
+ );
2396
+ }
2397
+ _showElement(t) {
2398
+ const e = this._isAnimated(),
2399
+ i = U.findOne('.modal-body', this._dialog);
2400
+ (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE) ||
2401
+ document.body.append(this._element),
2402
+ (this._element.style.display = 'block'),
2403
+ this._element.removeAttribute('aria-hidden'),
2404
+ this._element.setAttribute('aria-modal', !0),
2405
+ this._element.setAttribute('role', 'dialog'),
2406
+ (this._element.scrollTop = 0),
2407
+ i && (i.scrollTop = 0),
2408
+ e && d(this._element),
2409
+ this._element.classList.add('show'),
2410
+ this._queueCallback(
2411
+ () => {
2412
+ this._config.focus && this._focustrap.activate(),
2413
+ (this._isTransitioning = !1),
2414
+ P.trigger(this._element, 'shown.bs.modal', { relatedTarget: t });
2415
+ },
2416
+ this._dialog,
2417
+ e
2418
+ );
2419
+ }
2420
+ _setEscapeEvent() {
2421
+ this._isShown
2422
+ ? P.on(this._element, 'keydown.dismiss.bs.modal', t => {
2423
+ this._config.keyboard && 'Escape' === t.key
2424
+ ? (t.preventDefault(), this.hide())
2425
+ : this._config.keyboard || 'Escape' !== t.key || this._triggerBackdropTransition();
2426
+ })
2427
+ : P.off(this._element, 'keydown.dismiss.bs.modal');
2428
+ }
2429
+ _setResizeEvent() {
2430
+ this._isShown ? P.on(window, 'resize.bs.modal', () => this._adjustDialog()) : P.off(window, 'resize.bs.modal');
2431
+ }
2432
+ _hideModal() {
2433
+ (this._element.style.display = 'none'),
2434
+ this._element.setAttribute('aria-hidden', !0),
2435
+ this._element.removeAttribute('aria-modal'),
2436
+ this._element.removeAttribute('role'),
2437
+ (this._isTransitioning = !1),
2438
+ this._backdrop.hide(() => {
2439
+ document.body.classList.remove('modal-open'),
2440
+ this._resetAdjustments(),
2441
+ this._scrollBar.reset(),
2442
+ P.trigger(this._element, 'hidden.bs.modal');
2443
+ });
2444
+ }
2445
+ _showBackdrop(t) {
2446
+ P.on(this._element, 'click.dismiss.bs.modal', t => {
2447
+ this._ignoreBackdropClick
2448
+ ? (this._ignoreBackdropClick = !1)
2449
+ : t.target === t.currentTarget &&
2450
+ (!0 === this._config.backdrop
2451
+ ? this.hide()
2452
+ : 'static' === this._config.backdrop && this._triggerBackdropTransition());
2453
+ }),
2454
+ this._backdrop.show(t);
2455
+ }
2456
+ _isAnimated() {
2457
+ return this._element.classList.contains('fade');
2458
+ }
2459
+ _triggerBackdropTransition() {
2460
+ if (P.trigger(this._element, 'hidePrevented.bs.modal').defaultPrevented) return;
2461
+ const { classList: t, scrollHeight: e, style: i } = this._element,
2462
+ n = e > document.documentElement.clientHeight;
2463
+ (!n && 'hidden' === i.overflowY) ||
2464
+ t.contains('modal-static') ||
2465
+ (n || (i.overflowY = 'hidden'),
2466
+ t.add('modal-static'),
2467
+ this._queueCallback(() => {
2468
+ t.remove('modal-static'),
2469
+ n ||
2470
+ this._queueCallback(() => {
2471
+ i.overflowY = '';
2472
+ }, this._dialog);
2473
+ }, this._dialog),
2474
+ this._element.focus());
2475
+ }
2476
+ _adjustDialog() {
2477
+ const t = this._element.scrollHeight > document.documentElement.clientHeight,
2478
+ e = this._scrollBar.getWidth(),
2479
+ i = e > 0;
2480
+ ((!i && t && !p()) || (i && !t && p())) && (this._element.style.paddingLeft = e + 'px'),
2481
+ ((i && !t && !p()) || (!i && t && p())) && (this._element.style.paddingRight = e + 'px');
2482
+ }
2483
+ _resetAdjustments() {
2484
+ (this._element.style.paddingLeft = ''), (this._element.style.paddingRight = '');
2485
+ }
2486
+ static jQueryInterface(t, e) {
2487
+ return this.each(function () {
2488
+ const i = Pe.getOrCreateInstance(this, t);
2489
+ if ('string' == typeof t) {
2490
+ if (void 0 === i[t]) throw new TypeError(`No method named "${t}"`);
2491
+ i[t](e);
2492
+ }
2493
+ });
2494
+ }
2495
+ }
2496
+ P.on(document, 'click.bs.modal.data-api', '[data-bs-toggle="modal"]', function (t) {
2497
+ const e = i(this);
2498
+ ['A', 'AREA'].includes(this.tagName) && t.preventDefault(),
2499
+ P.one(e, 'show.bs.modal', t => {
2500
+ t.defaultPrevented ||
2501
+ P.one(e, 'hidden.bs.modal', () => {
2502
+ a(this) && this.focus();
2503
+ });
2504
+ }),
2505
+ Pe.getOrCreateInstance(e).toggle(this);
2506
+ }),
2507
+ B(Pe),
2508
+ m(Pe);
2509
+ const je = { backdrop: !0, keyboard: !0, scroll: !1 },
2510
+ Me = { backdrop: 'boolean', keyboard: 'boolean', scroll: 'boolean' };
2511
+ class He extends H {
2512
+ constructor(t, e) {
2513
+ super(t),
2514
+ (this._config = this._getConfig(e)),
2515
+ (this._isShown = !1),
2516
+ (this._backdrop = this._initializeBackDrop()),
2517
+ (this._focustrap = this._initializeFocusTrap()),
2518
+ this._addEventListeners();
2519
+ }
2520
+ static get NAME() {
2521
+ return 'offcanvas';
2522
+ }
2523
+ static get Default() {
2524
+ return je;
2525
+ }
2526
+ toggle(t) {
2527
+ return this._isShown ? this.hide() : this.show(t);
2528
+ }
2529
+ show(t) {
2530
+ this._isShown ||
2531
+ P.trigger(this._element, 'show.bs.offcanvas', { relatedTarget: t }).defaultPrevented ||
2532
+ ((this._isShown = !0),
2533
+ (this._element.style.visibility = 'visible'),
2534
+ this._backdrop.show(),
2535
+ this._config.scroll || new Oe().hide(),
2536
+ this._element.removeAttribute('aria-hidden'),
2537
+ this._element.setAttribute('aria-modal', !0),
2538
+ this._element.setAttribute('role', 'dialog'),
2539
+ this._element.classList.add('show'),
2540
+ this._queueCallback(
2541
+ () => {
2542
+ this._config.scroll || this._focustrap.activate(),
2543
+ P.trigger(this._element, 'shown.bs.offcanvas', { relatedTarget: t });
2544
+ },
2545
+ this._element,
2546
+ !0
2547
+ ));
2548
+ }
2549
+ hide() {
2550
+ this._isShown &&
2551
+ (P.trigger(this._element, 'hide.bs.offcanvas').defaultPrevented ||
2552
+ (this._focustrap.deactivate(),
2553
+ this._element.blur(),
2554
+ (this._isShown = !1),
2555
+ this._element.classList.remove('show'),
2556
+ this._backdrop.hide(),
2557
+ this._queueCallback(
2558
+ () => {
2559
+ this._element.setAttribute('aria-hidden', !0),
2560
+ this._element.removeAttribute('aria-modal'),
2561
+ this._element.removeAttribute('role'),
2562
+ (this._element.style.visibility = 'hidden'),
2563
+ this._config.scroll || new Oe().reset(),
2564
+ P.trigger(this._element, 'hidden.bs.offcanvas');
2565
+ },
2566
+ this._element,
2567
+ !0
2568
+ )));
2569
+ }
2570
+ dispose() {
2571
+ this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose();
2572
+ }
2573
+ _getConfig(t) {
2574
+ return (
2575
+ (t = { ...je, ...F.getDataAttributes(this._element), ...('object' == typeof t ? t : {}) }),
2576
+ r('offcanvas', t, Me),
2577
+ t
2578
+ );
2579
+ }
2580
+ _initializeBackDrop() {
2581
+ return new Le({
2582
+ className: 'offcanvas-backdrop',
2583
+ isVisible: this._config.backdrop,
2584
+ isAnimated: !0,
2585
+ rootElement: this._element.parentNode,
2586
+ clickCallback: () => this.hide()
2587
+ });
2588
+ }
2589
+ _initializeFocusTrap() {
2590
+ return new Se({ trapElement: this._element });
2591
+ }
2592
+ _addEventListeners() {
2593
+ P.on(this._element, 'keydown.dismiss.bs.offcanvas', t => {
2594
+ this._config.keyboard && 'Escape' === t.key && this.hide();
2595
+ });
2596
+ }
2597
+ static jQueryInterface(t) {
2598
+ return this.each(function () {
2599
+ const e = He.getOrCreateInstance(this, t);
2600
+ if ('string' == typeof t) {
2601
+ if (void 0 === e[t] || t.startsWith('_') || 'constructor' === t)
2602
+ throw new TypeError(`No method named "${t}"`);
2603
+ e[t](this);
2604
+ }
2605
+ });
2606
+ }
2607
+ }
2608
+ P.on(document, 'click.bs.offcanvas.data-api', '[data-bs-toggle="offcanvas"]', function (t) {
2609
+ const e = i(this);
2610
+ if ((['A', 'AREA'].includes(this.tagName) && t.preventDefault(), l(this))) return;
2611
+ P.one(e, 'hidden.bs.offcanvas', () => {
2612
+ a(this) && this.focus();
2613
+ });
2614
+ const n = U.findOne('.offcanvas.show');
2615
+ n && n !== e && He.getInstance(n).hide(), He.getOrCreateInstance(e).toggle(this);
2616
+ }),
2617
+ P.on(window, 'load.bs.offcanvas.data-api', () =>
2618
+ U.find('.offcanvas.show').forEach(t => He.getOrCreateInstance(t).show())
2619
+ ),
2620
+ B(He),
2621
+ m(He);
2622
+ const Be = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']),
2623
+ Re = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i,
2624
+ We =
2625
+ /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,
2626
+ ze = (t, e) => {
2627
+ const i = t.nodeName.toLowerCase();
2628
+ if (e.includes(i)) return !Be.has(i) || Boolean(Re.test(t.nodeValue) || We.test(t.nodeValue));
2629
+ const n = e.filter(t => t instanceof RegExp);
2630
+ for (let t = 0, e = n.length; t < e; t++) if (n[t].test(i)) return !0;
2631
+ return !1;
2632
+ };
2633
+ function qe(t, e, i) {
2634
+ if (!t.length) return t;
2635
+ if (i && 'function' == typeof i) return i(t);
2636
+ const n = new window.DOMParser().parseFromString(t, 'text/html'),
2637
+ s = Object.keys(e),
2638
+ o = [].concat(...n.body.querySelectorAll('*'));
2639
+ for (let t = 0, i = o.length; t < i; t++) {
2640
+ const i = o[t],
2641
+ n = i.nodeName.toLowerCase();
2642
+ if (!s.includes(n)) {
2643
+ i.remove();
2644
+ continue;
2645
+ }
2646
+ const r = [].concat(...i.attributes),
2647
+ a = [].concat(e['*'] || [], e[n] || []);
2648
+ r.forEach(t => {
2649
+ ze(t, a) || i.removeAttribute(t.nodeName);
2650
+ });
2651
+ }
2652
+ return n.body.innerHTML;
2653
+ }
2654
+ const Fe = new Set(['sanitize', 'allowList', 'sanitizeFn']),
2655
+ Ue = {
2656
+ animation: 'boolean',
2657
+ template: 'string',
2658
+ title: '(string|element|function)',
2659
+ trigger: 'string',
2660
+ delay: '(number|object)',
2661
+ html: 'boolean',
2662
+ selector: '(string|boolean)',
2663
+ placement: '(string|function)',
2664
+ offset: '(array|string|function)',
2665
+ container: '(string|element|boolean)',
2666
+ fallbackPlacements: 'array',
2667
+ boundary: '(string|element)',
2668
+ customClass: '(string|function)',
2669
+ sanitize: 'boolean',
2670
+ sanitizeFn: '(null|function)',
2671
+ allowList: 'object',
2672
+ popperConfig: '(null|object|function)'
2673
+ },
2674
+ $e = { AUTO: 'auto', TOP: 'top', RIGHT: p() ? 'left' : 'right', BOTTOM: 'bottom', LEFT: p() ? 'right' : 'left' },
2675
+ Ve = {
2676
+ animation: !0,
2677
+ template:
2678
+ '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',
2679
+ trigger: 'hover focus',
2680
+ title: '',
2681
+ delay: 0,
2682
+ html: !1,
2683
+ selector: !1,
2684
+ placement: 'top',
2685
+ offset: [0, 0],
2686
+ container: !1,
2687
+ fallbackPlacements: ['top', 'right', 'bottom', 'left'],
2688
+ boundary: 'clippingParents',
2689
+ customClass: '',
2690
+ sanitize: !0,
2691
+ sanitizeFn: null,
2692
+ allowList: {
2693
+ '*': ['class', 'dir', 'id', 'lang', 'role', /^aria-[\w-]*$/i],
2694
+ a: ['target', 'href', 'title', 'rel'],
2695
+ area: [],
2696
+ b: [],
2697
+ br: [],
2698
+ col: [],
2699
+ code: [],
2700
+ div: [],
2701
+ em: [],
2702
+ hr: [],
2703
+ h1: [],
2704
+ h2: [],
2705
+ h3: [],
2706
+ h4: [],
2707
+ h5: [],
2708
+ h6: [],
2709
+ i: [],
2710
+ img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],
2711
+ li: [],
2712
+ ol: [],
2713
+ p: [],
2714
+ pre: [],
2715
+ s: [],
2716
+ small: [],
2717
+ span: [],
2718
+ sub: [],
2719
+ sup: [],
2720
+ strong: [],
2721
+ u: [],
2722
+ ul: []
2723
+ },
2724
+ popperConfig: null
2725
+ },
2726
+ Ke = {
2727
+ HIDE: 'hide.bs.tooltip',
2728
+ HIDDEN: 'hidden.bs.tooltip',
2729
+ SHOW: 'show.bs.tooltip',
2730
+ SHOWN: 'shown.bs.tooltip',
2731
+ INSERTED: 'inserted.bs.tooltip',
2732
+ CLICK: 'click.bs.tooltip',
2733
+ FOCUSIN: 'focusin.bs.tooltip',
2734
+ FOCUSOUT: 'focusout.bs.tooltip',
2735
+ MOUSEENTER: 'mouseenter.bs.tooltip',
2736
+ MOUSELEAVE: 'mouseleave.bs.tooltip'
2737
+ };
2738
+ class Xe extends H {
2739
+ constructor(t, e) {
2740
+ if (void 0 === pe) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");
2741
+ super(t),
2742
+ (this._isEnabled = !0),
2743
+ (this._timeout = 0),
2744
+ (this._hoverState = ''),
2745
+ (this._activeTrigger = {}),
2746
+ (this._popper = null),
2747
+ (this._config = this._getConfig(e)),
2748
+ (this.tip = null),
2749
+ this._setListeners();
2750
+ }
2751
+ static get Default() {
2752
+ return Ve;
2753
+ }
2754
+ static get NAME() {
2755
+ return 'tooltip';
2756
+ }
2757
+ static get Event() {
2758
+ return Ke;
2759
+ }
2760
+ static get DefaultType() {
2761
+ return Ue;
2762
+ }
2763
+ enable() {
2764
+ this._isEnabled = !0;
2765
+ }
2766
+ disable() {
2767
+ this._isEnabled = !1;
2768
+ }
2769
+ toggleEnabled() {
2770
+ this._isEnabled = !this._isEnabled;
2771
+ }
2772
+ toggle(t) {
2773
+ if (this._isEnabled)
2774
+ if (t) {
2775
+ const e = this._initializeOnDelegatedTarget(t);
2776
+ (e._activeTrigger.click = !e._activeTrigger.click),
2777
+ e._isWithActiveTrigger() ? e._enter(null, e) : e._leave(null, e);
2778
+ } else {
2779
+ if (this.getTipElement().classList.contains('show')) return void this._leave(null, this);
2780
+ this._enter(null, this);
2781
+ }
2782
+ }
2783
+ dispose() {
2784
+ clearTimeout(this._timeout),
2785
+ P.off(this._element.closest('.modal'), 'hide.bs.modal', this._hideModalHandler),
2786
+ this.tip && this.tip.remove(),
2787
+ this._popper && this._popper.destroy(),
2788
+ super.dispose();
2789
+ }
2790
+ show() {
2791
+ if ('none' === this._element.style.display) throw new Error('Please use show on visible elements');
2792
+ if (!this.isWithContent() || !this._isEnabled) return;
2793
+ const t = P.trigger(this._element, this.constructor.Event.SHOW),
2794
+ e = c(this._element),
2795
+ i =
2796
+ null === e ? this._element.ownerDocument.documentElement.contains(this._element) : e.contains(this._element);
2797
+ if (t.defaultPrevented || !i) return;
2798
+ const n = this.getTipElement(),
2799
+ s = (t => {
2800
+ do {
2801
+ t += Math.floor(1e6 * Math.random());
2802
+ } while (document.getElementById(t));
2803
+ return t;
2804
+ })(this.constructor.NAME);
2805
+ n.setAttribute('id', s),
2806
+ this._element.setAttribute('aria-describedby', s),
2807
+ this._config.animation && n.classList.add('fade');
2808
+ const o =
2809
+ 'function' == typeof this._config.placement
2810
+ ? this._config.placement.call(this, n, this._element)
2811
+ : this._config.placement,
2812
+ r = this._getAttachment(o);
2813
+ this._addAttachmentClass(r);
2814
+ const { container: a } = this._config;
2815
+ M.set(n, this.constructor.DATA_KEY, this),
2816
+ this._element.ownerDocument.documentElement.contains(this.tip) ||
2817
+ (a.append(n), P.trigger(this._element, this.constructor.Event.INSERTED)),
2818
+ this._popper ? this._popper.update() : (this._popper = fe(this._element, n, this._getPopperConfig(r))),
2819
+ n.classList.add('show');
2820
+ const l = this._resolvePossibleFunction(this._config.customClass);
2821
+ l && n.classList.add(...l.split(' ')),
2822
+ 'ontouchstart' in document.documentElement &&
2823
+ [].concat(...document.body.children).forEach(t => {
2824
+ P.on(t, 'mouseover', h);
2825
+ });
2826
+ const d = this.tip.classList.contains('fade');
2827
+ this._queueCallback(
2828
+ () => {
2829
+ const t = this._hoverState;
2830
+ (this._hoverState = null),
2831
+ P.trigger(this._element, this.constructor.Event.SHOWN),
2832
+ 'out' === t && this._leave(null, this);
2833
+ },
2834
+ this.tip,
2835
+ d
2836
+ );
2837
+ }
2838
+ hide() {
2839
+ if (!this._popper) return;
2840
+ const t = this.getTipElement();
2841
+ if (P.trigger(this._element, this.constructor.Event.HIDE).defaultPrevented) return;
2842
+ t.classList.remove('show'),
2843
+ 'ontouchstart' in document.documentElement &&
2844
+ [].concat(...document.body.children).forEach(t => P.off(t, 'mouseover', h)),
2845
+ (this._activeTrigger.click = !1),
2846
+ (this._activeTrigger.focus = !1),
2847
+ (this._activeTrigger.hover = !1);
2848
+ const e = this.tip.classList.contains('fade');
2849
+ this._queueCallback(
2850
+ () => {
2851
+ this._isWithActiveTrigger() ||
2852
+ ('show' !== this._hoverState && t.remove(),
2853
+ this._cleanTipClass(),
2854
+ this._element.removeAttribute('aria-describedby'),
2855
+ P.trigger(this._element, this.constructor.Event.HIDDEN),
2856
+ this._popper && (this._popper.destroy(), (this._popper = null)));
2857
+ },
2858
+ this.tip,
2859
+ e
2860
+ ),
2861
+ (this._hoverState = '');
2862
+ }
2863
+ update() {
2864
+ null !== this._popper && this._popper.update();
2865
+ }
2866
+ isWithContent() {
2867
+ return Boolean(this.getTitle());
2868
+ }
2869
+ getTipElement() {
2870
+ if (this.tip) return this.tip;
2871
+ const t = document.createElement('div');
2872
+ t.innerHTML = this._config.template;
2873
+ const e = t.children[0];
2874
+ return this.setContent(e), e.classList.remove('fade', 'show'), (this.tip = e), this.tip;
2875
+ }
2876
+ setContent(t) {
2877
+ this._sanitizeAndSetContent(t, this.getTitle(), '.tooltip-inner');
2878
+ }
2879
+ _sanitizeAndSetContent(t, e, i) {
2880
+ const n = U.findOne(i, t);
2881
+ e || !n ? this.setElementContent(n, e) : n.remove();
2882
+ }
2883
+ setElementContent(t, e) {
2884
+ if (null !== t)
2885
+ return s(e)
2886
+ ? ((e = o(e)),
2887
+ void (this._config.html
2888
+ ? e.parentNode !== t && ((t.innerHTML = ''), t.append(e))
2889
+ : (t.textContent = e.textContent)))
2890
+ : void (this._config.html
2891
+ ? (this._config.sanitize && (e = qe(e, this._config.allowList, this._config.sanitizeFn)),
2892
+ (t.innerHTML = e))
2893
+ : (t.textContent = e));
2894
+ }
2895
+ getTitle() {
2896
+ const t = this._element.getAttribute('data-bs-original-title') || this._config.title;
2897
+ return this._resolvePossibleFunction(t);
2898
+ }
2899
+ updateAttachment(t) {
2900
+ return 'right' === t ? 'end' : 'left' === t ? 'start' : t;
2901
+ }
2902
+ _initializeOnDelegatedTarget(t, e) {
2903
+ return e || this.constructor.getOrCreateInstance(t.delegateTarget, this._getDelegateConfig());
2904
+ }
2905
+ _getOffset() {
2906
+ const { offset: t } = this._config;
2907
+ return 'string' == typeof t
2908
+ ? t.split(',').map(t => Number.parseInt(t, 10))
2909
+ : 'function' == typeof t
2910
+ ? e => t(e, this._element)
2911
+ : t;
2912
+ }
2913
+ _resolvePossibleFunction(t) {
2914
+ return 'function' == typeof t ? t.call(this._element) : t;
2915
+ }
2916
+ _getPopperConfig(t) {
2917
+ const e = {
2918
+ placement: t,
2919
+ modifiers: [
2920
+ { name: 'flip', options: { fallbackPlacements: this._config.fallbackPlacements } },
2921
+ { name: 'offset', options: { offset: this._getOffset() } },
2922
+ { name: 'preventOverflow', options: { boundary: this._config.boundary } },
2923
+ { name: 'arrow', options: { element: `.${this.constructor.NAME}-arrow` } },
2924
+ { name: 'onChange', enabled: !0, phase: 'afterWrite', fn: t => this._handlePopperPlacementChange(t) }
2925
+ ],
2926
+ onFirstUpdate: t => {
2927
+ t.options.placement !== t.placement && this._handlePopperPlacementChange(t);
2928
+ }
2929
+ };
2930
+ return {
2931
+ ...e,
2932
+ ...('function' == typeof this._config.popperConfig ? this._config.popperConfig(e) : this._config.popperConfig)
2933
+ };
2934
+ }
2935
+ _addAttachmentClass(t) {
2936
+ this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(t)}`);
2937
+ }
2938
+ _getAttachment(t) {
2939
+ return $e[t.toUpperCase()];
2940
+ }
2941
+ _setListeners() {
2942
+ this._config.trigger.split(' ').forEach(t => {
2943
+ if ('click' === t)
2944
+ P.on(this._element, this.constructor.Event.CLICK, this._config.selector, t => this.toggle(t));
2945
+ else if ('manual' !== t) {
2946
+ const e = 'hover' === t ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN,
2947
+ i = 'hover' === t ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT;
2948
+ P.on(this._element, e, this._config.selector, t => this._enter(t)),
2949
+ P.on(this._element, i, this._config.selector, t => this._leave(t));
2950
+ }
2951
+ }),
2952
+ (this._hideModalHandler = () => {
2953
+ this._element && this.hide();
2954
+ }),
2955
+ P.on(this._element.closest('.modal'), 'hide.bs.modal', this._hideModalHandler),
2956
+ this._config.selector
2957
+ ? (this._config = { ...this._config, trigger: 'manual', selector: '' })
2958
+ : this._fixTitle();
2959
+ }
2960
+ _fixTitle() {
2961
+ const t = this._element.getAttribute('title'),
2962
+ e = typeof this._element.getAttribute('data-bs-original-title');
2963
+ (t || 'string' !== e) &&
2964
+ (this._element.setAttribute('data-bs-original-title', t || ''),
2965
+ !t ||
2966
+ this._element.getAttribute('aria-label') ||
2967
+ this._element.textContent ||
2968
+ this._element.setAttribute('aria-label', t),
2969
+ this._element.setAttribute('title', ''));
2970
+ }
2971
+ _enter(t, e) {
2972
+ (e = this._initializeOnDelegatedTarget(t, e)),
2973
+ t && (e._activeTrigger['focusin' === t.type ? 'focus' : 'hover'] = !0),
2974
+ e.getTipElement().classList.contains('show') || 'show' === e._hoverState
2975
+ ? (e._hoverState = 'show')
2976
+ : (clearTimeout(e._timeout),
2977
+ (e._hoverState = 'show'),
2978
+ e._config.delay && e._config.delay.show
2979
+ ? (e._timeout = setTimeout(() => {
2980
+ 'show' === e._hoverState && e.show();
2981
+ }, e._config.delay.show))
2982
+ : e.show());
2983
+ }
2984
+ _leave(t, e) {
2985
+ (e = this._initializeOnDelegatedTarget(t, e)),
2986
+ t && (e._activeTrigger['focusout' === t.type ? 'focus' : 'hover'] = e._element.contains(t.relatedTarget)),
2987
+ e._isWithActiveTrigger() ||
2988
+ (clearTimeout(e._timeout),
2989
+ (e._hoverState = 'out'),
2990
+ e._config.delay && e._config.delay.hide
2991
+ ? (e._timeout = setTimeout(() => {
2992
+ 'out' === e._hoverState && e.hide();
2993
+ }, e._config.delay.hide))
2994
+ : e.hide());
2995
+ }
2996
+ _isWithActiveTrigger() {
2997
+ for (const t in this._activeTrigger) if (this._activeTrigger[t]) return !0;
2998
+ return !1;
2999
+ }
3000
+ _getConfig(t) {
3001
+ const e = F.getDataAttributes(this._element);
3002
+ return (
3003
+ Object.keys(e).forEach(t => {
3004
+ Fe.has(t) && delete e[t];
3005
+ }),
3006
+ ((t = { ...this.constructor.Default, ...e, ...('object' == typeof t && t ? t : {}) }).container =
3007
+ !1 === t.container ? document.body : o(t.container)),
3008
+ 'number' == typeof t.delay && (t.delay = { show: t.delay, hide: t.delay }),
3009
+ 'number' == typeof t.title && (t.title = t.title.toString()),
3010
+ 'number' == typeof t.content && (t.content = t.content.toString()),
3011
+ r('tooltip', t, this.constructor.DefaultType),
3012
+ t.sanitize && (t.template = qe(t.template, t.allowList, t.sanitizeFn)),
3013
+ t
3014
+ );
3015
+ }
3016
+ _getDelegateConfig() {
3017
+ const t = {};
3018
+ for (const e in this._config) this.constructor.Default[e] !== this._config[e] && (t[e] = this._config[e]);
3019
+ return t;
3020
+ }
3021
+ _cleanTipClass() {
3022
+ const t = this.getTipElement(),
3023
+ e = new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`, 'g'),
3024
+ i = t.getAttribute('class').match(e);
3025
+ null !== i && i.length > 0 && i.map(t => t.trim()).forEach(e => t.classList.remove(e));
3026
+ }
3027
+ _getBasicClassPrefix() {
3028
+ return 'bs-tooltip';
3029
+ }
3030
+ _handlePopperPlacementChange(t) {
3031
+ const { state: e } = t;
3032
+ e &&
3033
+ ((this.tip = e.elements.popper),
3034
+ this._cleanTipClass(),
3035
+ this._addAttachmentClass(this._getAttachment(e.placement)));
3036
+ }
3037
+ static jQueryInterface(t) {
3038
+ return this.each(function () {
3039
+ const e = Xe.getOrCreateInstance(this, t);
3040
+ if ('string' == typeof t) {
3041
+ if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
3042
+ e[t]();
3043
+ }
3044
+ });
3045
+ }
3046
+ }
3047
+ m(Xe);
3048
+ const Ye = {
3049
+ ...Xe.Default,
3050
+ placement: 'right',
3051
+ offset: [0, 8],
3052
+ trigger: 'click',
3053
+ content: '',
3054
+ template:
3055
+ '<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'
3056
+ },
3057
+ Qe = { ...Xe.DefaultType, content: '(string|element|function)' },
3058
+ Ge = {
3059
+ HIDE: 'hide.bs.popover',
3060
+ HIDDEN: 'hidden.bs.popover',
3061
+ SHOW: 'show.bs.popover',
3062
+ SHOWN: 'shown.bs.popover',
3063
+ INSERTED: 'inserted.bs.popover',
3064
+ CLICK: 'click.bs.popover',
3065
+ FOCUSIN: 'focusin.bs.popover',
3066
+ FOCUSOUT: 'focusout.bs.popover',
3067
+ MOUSEENTER: 'mouseenter.bs.popover',
3068
+ MOUSELEAVE: 'mouseleave.bs.popover'
3069
+ };
3070
+ class Ze extends Xe {
3071
+ static get Default() {
3072
+ return Ye;
3073
+ }
3074
+ static get NAME() {
3075
+ return 'popover';
3076
+ }
3077
+ static get Event() {
3078
+ return Ge;
3079
+ }
3080
+ static get DefaultType() {
3081
+ return Qe;
3082
+ }
3083
+ isWithContent() {
3084
+ return this.getTitle() || this._getContent();
3085
+ }
3086
+ setContent(t) {
3087
+ this._sanitizeAndSetContent(t, this.getTitle(), '.popover-header'),
3088
+ this._sanitizeAndSetContent(t, this._getContent(), '.popover-body');
3089
+ }
3090
+ _getContent() {
3091
+ return this._resolvePossibleFunction(this._config.content);
3092
+ }
3093
+ _getBasicClassPrefix() {
3094
+ return 'bs-popover';
3095
+ }
3096
+ static jQueryInterface(t) {
3097
+ return this.each(function () {
3098
+ const e = Ze.getOrCreateInstance(this, t);
3099
+ if ('string' == typeof t) {
3100
+ if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
3101
+ e[t]();
3102
+ }
3103
+ });
3104
+ }
3105
+ }
3106
+ m(Ze);
3107
+ const Je = { offset: 10, method: 'auto', target: '' },
3108
+ ti = { offset: 'number', method: 'string', target: '(string|element)' },
3109
+ ei = '.nav-link, .list-group-item, .dropdown-item';
3110
+ class ii extends H {
3111
+ constructor(t, e) {
3112
+ super(t),
3113
+ (this._scrollElement = 'BODY' === this._element.tagName ? window : this._element),
3114
+ (this._config = this._getConfig(e)),
3115
+ (this._offsets = []),
3116
+ (this._targets = []),
3117
+ (this._activeTarget = null),
3118
+ (this._scrollHeight = 0),
3119
+ P.on(this._scrollElement, 'scroll.bs.scrollspy', () => this._process()),
3120
+ this.refresh(),
3121
+ this._process();
3122
+ }
3123
+ static get Default() {
3124
+ return Je;
3125
+ }
3126
+ static get NAME() {
3127
+ return 'scrollspy';
3128
+ }
3129
+ refresh() {
3130
+ const t = this._scrollElement === this._scrollElement.window ? 'offset' : 'position',
3131
+ i = 'auto' === this._config.method ? t : this._config.method,
3132
+ n = 'position' === i ? this._getScrollTop() : 0;
3133
+ (this._offsets = []),
3134
+ (this._targets = []),
3135
+ (this._scrollHeight = this._getScrollHeight()),
3136
+ U.find(ei, this._config.target)
3137
+ .map(t => {
3138
+ const s = e(t),
3139
+ o = s ? U.findOne(s) : null;
3140
+ if (o) {
3141
+ const t = o.getBoundingClientRect();
3142
+ if (t.width || t.height) return [F[i](o).top + n, s];
3143
+ }
3144
+ return null;
3145
+ })
3146
+ .filter(t => t)
3147
+ .sort((t, e) => t[0] - e[0])
3148
+ .forEach(t => {
3149
+ this._offsets.push(t[0]), this._targets.push(t[1]);
3150
+ });
3151
+ }
3152
+ dispose() {
3153
+ P.off(this._scrollElement, '.bs.scrollspy'), super.dispose();
3154
+ }
3155
+ _getConfig(t) {
3156
+ return (
3157
+ ((t = { ...Je, ...F.getDataAttributes(this._element), ...('object' == typeof t && t ? t : {}) }).target =
3158
+ o(t.target) || document.documentElement),
3159
+ r('scrollspy', t, ti),
3160
+ t
3161
+ );
3162
+ }
3163
+ _getScrollTop() {
3164
+ return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop;
3165
+ }
3166
+ _getScrollHeight() {
3167
+ return (
3168
+ this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)
3169
+ );
3170
+ }
3171
+ _getOffsetHeight() {
3172
+ return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height;
3173
+ }
3174
+ _process() {
3175
+ const t = this._getScrollTop() + this._config.offset,
3176
+ e = this._getScrollHeight(),
3177
+ i = this._config.offset + e - this._getOffsetHeight();
3178
+ if ((this._scrollHeight !== e && this.refresh(), t >= i)) {
3179
+ const t = this._targets[this._targets.length - 1];
3180
+ this._activeTarget !== t && this._activate(t);
3181
+ } else {
3182
+ if (this._activeTarget && t < this._offsets[0] && this._offsets[0] > 0)
3183
+ return (this._activeTarget = null), void this._clear();
3184
+ for (let e = this._offsets.length; e--; )
3185
+ this._activeTarget !== this._targets[e] &&
3186
+ t >= this._offsets[e] &&
3187
+ (void 0 === this._offsets[e + 1] || t < this._offsets[e + 1]) &&
3188
+ this._activate(this._targets[e]);
3189
+ }
3190
+ }
3191
+ _activate(t) {
3192
+ (this._activeTarget = t), this._clear();
3193
+ const e = ei.split(',').map(e => `${e}[data-bs-target="${t}"],${e}[href="${t}"]`),
3194
+ i = U.findOne(e.join(','), this._config.target);
3195
+ i.classList.add('active'),
3196
+ i.classList.contains('dropdown-item')
3197
+ ? U.findOne('.dropdown-toggle', i.closest('.dropdown')).classList.add('active')
3198
+ : U.parents(i, '.nav, .list-group').forEach(t => {
3199
+ U.prev(t, '.nav-link, .list-group-item').forEach(t => t.classList.add('active')),
3200
+ U.prev(t, '.nav-item').forEach(t => {
3201
+ U.children(t, '.nav-link').forEach(t => t.classList.add('active'));
3202
+ });
3203
+ }),
3204
+ P.trigger(this._scrollElement, 'activate.bs.scrollspy', { relatedTarget: t });
3205
+ }
3206
+ _clear() {
3207
+ U.find(ei, this._config.target)
3208
+ .filter(t => t.classList.contains('active'))
3209
+ .forEach(t => t.classList.remove('active'));
3210
+ }
3211
+ static jQueryInterface(t) {
3212
+ return this.each(function () {
3213
+ const e = ii.getOrCreateInstance(this, t);
3214
+ if ('string' == typeof t) {
3215
+ if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
3216
+ e[t]();
3217
+ }
3218
+ });
3219
+ }
3220
+ }
3221
+ P.on(window, 'load.bs.scrollspy.data-api', () => {
3222
+ U.find('[data-bs-spy="scroll"]').forEach(t => new ii(t));
3223
+ }),
3224
+ m(ii);
3225
+ class ni extends H {
3226
+ static get NAME() {
3227
+ return 'tab';
3228
+ }
3229
+ show() {
3230
+ if (
3231
+ this._element.parentNode &&
3232
+ this._element.parentNode.nodeType === Node.ELEMENT_NODE &&
3233
+ this._element.classList.contains('active')
3234
+ )
3235
+ return;
3236
+ let t;
3237
+ const e = i(this._element),
3238
+ n = this._element.closest('.nav, .list-group');
3239
+ if (n) {
3240
+ const e = 'UL' === n.nodeName || 'OL' === n.nodeName ? ':scope > li > .active' : '.active';
3241
+ (t = U.find(e, n)), (t = t[t.length - 1]);
3242
+ }
3243
+ const s = t ? P.trigger(t, 'hide.bs.tab', { relatedTarget: this._element }) : null;
3244
+ if (
3245
+ P.trigger(this._element, 'show.bs.tab', { relatedTarget: t }).defaultPrevented ||
3246
+ (null !== s && s.defaultPrevented)
3247
+ )
3248
+ return;
3249
+ this._activate(this._element, n);
3250
+ const o = () => {
3251
+ P.trigger(t, 'hidden.bs.tab', { relatedTarget: this._element }),
3252
+ P.trigger(this._element, 'shown.bs.tab', { relatedTarget: t });
3253
+ };
3254
+ e ? this._activate(e, e.parentNode, o) : o();
3255
+ }
3256
+ _activate(t, e, i) {
3257
+ const n = (
3258
+ !e || ('UL' !== e.nodeName && 'OL' !== e.nodeName)
3259
+ ? U.children(e, '.active')
3260
+ : U.find(':scope > li > .active', e)
3261
+ )[0],
3262
+ s = i && n && n.classList.contains('fade'),
3263
+ o = () => this._transitionComplete(t, n, i);
3264
+ n && s ? (n.classList.remove('show'), this._queueCallback(o, t, !0)) : o();
3265
+ }
3266
+ _transitionComplete(t, e, i) {
3267
+ if (e) {
3268
+ e.classList.remove('active');
3269
+ const t = U.findOne(':scope > .dropdown-menu .active', e.parentNode);
3270
+ t && t.classList.remove('active'), 'tab' === e.getAttribute('role') && e.setAttribute('aria-selected', !1);
3271
+ }
3272
+ t.classList.add('active'),
3273
+ 'tab' === t.getAttribute('role') && t.setAttribute('aria-selected', !0),
3274
+ d(t),
3275
+ t.classList.contains('fade') && t.classList.add('show');
3276
+ let n = t.parentNode;
3277
+ if ((n && 'LI' === n.nodeName && (n = n.parentNode), n && n.classList.contains('dropdown-menu'))) {
3278
+ const e = t.closest('.dropdown');
3279
+ e && U.find('.dropdown-toggle', e).forEach(t => t.classList.add('active')), t.setAttribute('aria-expanded', !0);
3280
+ }
3281
+ i && i();
3282
+ }
3283
+ static jQueryInterface(t) {
3284
+ return this.each(function () {
3285
+ const e = ni.getOrCreateInstance(this);
3286
+ if ('string' == typeof t) {
3287
+ if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
3288
+ e[t]();
3289
+ }
3290
+ });
3291
+ }
3292
+ }
3293
+ P.on(
3294
+ document,
3295
+ 'click.bs.tab.data-api',
3296
+ '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',
3297
+ function (t) {
3298
+ ['A', 'AREA'].includes(this.tagName) && t.preventDefault(), l(this) || ni.getOrCreateInstance(this).show();
3299
+ }
3300
+ ),
3301
+ m(ni);
3302
+ const si = { animation: 'boolean', autohide: 'boolean', delay: 'number' },
3303
+ oi = { animation: !0, autohide: !0, delay: 5e3 };
3304
+ class ri extends H {
3305
+ constructor(t, e) {
3306
+ super(t),
3307
+ (this._config = this._getConfig(e)),
3308
+ (this._timeout = null),
3309
+ (this._hasMouseInteraction = !1),
3310
+ (this._hasKeyboardInteraction = !1),
3311
+ this._setListeners();
3312
+ }
3313
+ static get DefaultType() {
3314
+ return si;
3315
+ }
3316
+ static get Default() {
3317
+ return oi;
3318
+ }
3319
+ static get NAME() {
3320
+ return 'toast';
3321
+ }
3322
+ show() {
3323
+ P.trigger(this._element, 'show.bs.toast').defaultPrevented ||
3324
+ (this._clearTimeout(),
3325
+ this._config.animation && this._element.classList.add('fade'),
3326
+ this._element.classList.remove('hide'),
3327
+ d(this._element),
3328
+ this._element.classList.add('show'),
3329
+ this._element.classList.add('showing'),
3330
+ this._queueCallback(
3331
+ () => {
3332
+ this._element.classList.remove('showing'),
3333
+ P.trigger(this._element, 'shown.bs.toast'),
3334
+ this._maybeScheduleHide();
3335
+ },
3336
+ this._element,
3337
+ this._config.animation
3338
+ ));
3339
+ }
3340
+ hide() {
3341
+ this._element.classList.contains('show') &&
3342
+ (P.trigger(this._element, 'hide.bs.toast').defaultPrevented ||
3343
+ (this._element.classList.add('showing'),
3344
+ this._queueCallback(
3345
+ () => {
3346
+ this._element.classList.add('hide'),
3347
+ this._element.classList.remove('showing'),
3348
+ this._element.classList.remove('show'),
3349
+ P.trigger(this._element, 'hidden.bs.toast');
3350
+ },
3351
+ this._element,
3352
+ this._config.animation
3353
+ )));
3354
+ }
3355
+ dispose() {
3356
+ this._clearTimeout(),
3357
+ this._element.classList.contains('show') && this._element.classList.remove('show'),
3358
+ super.dispose();
3359
+ }
3360
+ _getConfig(t) {
3361
+ return (
3362
+ (t = { ...oi, ...F.getDataAttributes(this._element), ...('object' == typeof t && t ? t : {}) }),
3363
+ r('toast', t, this.constructor.DefaultType),
3364
+ t
3365
+ );
3366
+ }
3367
+ _maybeScheduleHide() {
3368
+ this._config.autohide &&
3369
+ (this._hasMouseInteraction ||
3370
+ this._hasKeyboardInteraction ||
3371
+ (this._timeout = setTimeout(() => {
3372
+ this.hide();
3373
+ }, this._config.delay)));
3374
+ }
3375
+ _onInteraction(t, e) {
3376
+ switch (t.type) {
3377
+ case 'mouseover':
3378
+ case 'mouseout':
3379
+ this._hasMouseInteraction = e;
3380
+ break;
3381
+ case 'focusin':
3382
+ case 'focusout':
3383
+ this._hasKeyboardInteraction = e;
3384
+ }
3385
+ if (e) return void this._clearTimeout();
3386
+ const i = t.relatedTarget;
3387
+ this._element === i || this._element.contains(i) || this._maybeScheduleHide();
3388
+ }
3389
+ _setListeners() {
3390
+ P.on(this._element, 'mouseover.bs.toast', t => this._onInteraction(t, !0)),
3391
+ P.on(this._element, 'mouseout.bs.toast', t => this._onInteraction(t, !1)),
3392
+ P.on(this._element, 'focusin.bs.toast', t => this._onInteraction(t, !0)),
3393
+ P.on(this._element, 'focusout.bs.toast', t => this._onInteraction(t, !1));
3394
+ }
3395
+ _clearTimeout() {
3396
+ clearTimeout(this._timeout), (this._timeout = null);
3397
+ }
3398
+ static jQueryInterface(t) {
3399
+ return this.each(function () {
3400
+ const e = ri.getOrCreateInstance(this, t);
3401
+ if ('string' == typeof t) {
3402
+ if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`);
3403
+ e[t](this);
3404
+ }
3405
+ });
3406
+ }
3407
+ }
3408
+ return (
3409
+ B(ri),
3410
+ m(ri),
3411
+ {
3412
+ Alert: R,
3413
+ Button: W,
3414
+ Carousel: Z,
3415
+ Collapse: et,
3416
+ Dropdown: Te,
3417
+ Modal: Pe,
3418
+ Offcanvas: He,
3419
+ Popover: Ze,
3420
+ ScrollSpy: ii,
3421
+ Tab: ni,
3422
+ Toast: ri,
3423
+ Tooltip: Xe
3424
+ }
3425
+ );
3426
+ });
3427
+ //# sourceMappingURL=bootstrap.bundle.min.js.map