@jesec/flood 0.0.0-master.8daf3f8 → 0.0.0-master.8dbd865

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (407) hide show
  1. package/CHANGELOG.md +606 -103
  2. package/README.md +125 -45
  3. package/SECURITY.md +27 -0
  4. package/dist/assets/icon_128x128.png +0 -0
  5. package/dist/assets/icon_192x192.png +0 -0
  6. package/dist/assets/icon_256x256.png +0 -0
  7. package/dist/assets/icon_384x384.png +0 -0
  8. package/dist/assets/icon_512x512.png +0 -0
  9. package/dist/assets/icon_96x96.png +0 -0
  10. package/dist/assets/icon_maskable.png +0 -0
  11. package/dist/assets/icon_maskable_180x180.png +0 -0
  12. package/dist/assets/index.html +1 -1
  13. package/dist/assets/manifest.json +35 -7
  14. package/dist/assets/static/css/662.37bdb6f87f387ec14604.css +1 -0
  15. package/dist/assets/static/css/main.1e285a62d2e5127de06b.css +1 -0
  16. package/dist/assets/static/js/179.372e151d.chunk.js +1 -0
  17. package/dist/assets/static/js/662.1b1f1092.chunk.js +1 -0
  18. package/dist/assets/static/js/963.94abcb99.chunk.js +1 -0
  19. package/dist/assets/static/js/996.f0e63eaa.chunk.js +1 -0
  20. package/dist/assets/static/js/flag0.56298b91.chunk.js +1 -0
  21. package/dist/assets/static/js/flag1.badfc781.chunk.js +1 -0
  22. package/dist/assets/static/js/flag2.c5a910ff.chunk.js +1 -0
  23. package/dist/assets/static/js/flag3.2a4050b4.chunk.js +1 -0
  24. package/dist/assets/static/js/i18n0.b0c0bc82.chunk.js +1 -0
  25. package/dist/assets/static/js/i18n1.cb04b1f5.chunk.js +1 -0
  26. package/dist/assets/static/js/i18n10.8ca66096.chunk.js +1 -0
  27. package/dist/assets/static/js/i18n11.b66895ae.chunk.js +1 -0
  28. package/dist/assets/static/js/i18n12.76af2306.chunk.js +1 -0
  29. package/dist/assets/static/js/i18n13.d6692432.chunk.js +1 -0
  30. package/dist/assets/static/js/i18n14.22da7cd2.chunk.js +1 -0
  31. package/dist/assets/static/js/i18n15.bbfb5738.chunk.js +1 -0
  32. package/dist/assets/static/js/i18n16.c77ad464.chunk.js +1 -0
  33. package/dist/assets/static/js/i18n17.e5397215.chunk.js +1 -0
  34. package/dist/assets/static/js/i18n18.2faa4785.chunk.js +1 -0
  35. package/dist/assets/static/js/i18n19.a5db1b01.chunk.js +1 -0
  36. package/dist/assets/static/js/i18n2.7d1aed47.chunk.js +1 -0
  37. package/dist/assets/static/js/i18n20.cba7bf0c.chunk.js +1 -0
  38. package/dist/assets/static/js/i18n21.a27eaf09.chunk.js +1 -0
  39. package/dist/assets/static/js/i18n22.fa878be7.chunk.js +1 -0
  40. package/dist/assets/static/js/i18n23.5c647e79.chunk.js +1 -0
  41. package/dist/assets/static/js/i18n24.6b14986d.chunk.js +1 -0
  42. package/dist/assets/static/js/i18n25.afe69894.chunk.js +1 -0
  43. package/dist/assets/static/js/i18n26.eac16996.chunk.js +1 -0
  44. package/dist/assets/static/js/i18n27.8d32b1f7.chunk.js +1 -0
  45. package/dist/assets/static/js/i18n28.d64c3baf.chunk.js +1 -0
  46. package/dist/assets/static/js/i18n3.14d4def3.chunk.js +1 -0
  47. package/dist/assets/static/js/i18n4.5c77cde4.chunk.js +1 -0
  48. package/dist/assets/static/js/i18n5.430ea15f.chunk.js +1 -0
  49. package/dist/assets/static/js/i18n6.3c79cffd.chunk.js +1 -0
  50. package/dist/assets/static/js/i18n8.6a62aa52.chunk.js +1 -0
  51. package/dist/assets/static/js/i18n9.d06ff92d.chunk.js +1 -0
  52. package/dist/assets/static/js/main.fd1408d5.js +1 -0
  53. package/dist/assets/static/media/ad.1b24595d.png +0 -0
  54. package/dist/assets/static/media/ae.4dd8f55e.png +0 -0
  55. package/dist/assets/static/media/af.4ce660eb.png +0 -0
  56. package/dist/assets/static/media/ag.fd9409e4.png +0 -0
  57. package/dist/assets/static/media/al.a297aacf.png +0 -0
  58. package/dist/assets/static/media/am.c84ee0cf.png +0 -0
  59. package/dist/assets/static/media/ao.a7c9214e.png +0 -0
  60. package/dist/assets/static/media/ar.7e57ef92.png +0 -0
  61. package/dist/assets/static/media/at.5aa9728a.png +0 -0
  62. package/dist/assets/static/media/au.155b51d8.png +0 -0
  63. package/dist/assets/static/media/az.63afef5b.png +0 -0
  64. package/dist/assets/static/media/ba.5ce8f273.png +0 -0
  65. package/dist/assets/static/media/bb.f369fc62.png +0 -0
  66. package/dist/assets/static/media/bd.516278fc.png +0 -0
  67. package/dist/assets/static/media/be.08ec4a8d.png +0 -0
  68. package/dist/assets/static/media/bf.50bfcb31.png +0 -0
  69. package/dist/assets/static/media/bg.d9346b96.png +0 -0
  70. package/dist/assets/static/media/bh.f06d5914.png +0 -0
  71. package/dist/assets/static/media/bi.4923e3a3.png +0 -0
  72. package/dist/assets/static/media/bj.019fa79b.png +0 -0
  73. package/dist/assets/static/media/bn.077671e2.png +0 -0
  74. package/dist/assets/static/media/bo.8fb15fc6.png +0 -0
  75. package/dist/assets/static/media/br.ec051f0c.png +0 -0
  76. package/dist/assets/static/media/bs.a74a126f.png +0 -0
  77. package/dist/assets/static/media/bt.4217b804.png +0 -0
  78. package/dist/assets/static/media/bw.21fe1567.png +0 -0
  79. package/dist/assets/static/media/by.d247fe16.png +0 -0
  80. package/dist/assets/static/media/bz.98ec59f6.png +0 -0
  81. package/dist/assets/static/media/ca.25743e11.png +0 -0
  82. package/dist/assets/static/media/cd.a5bfda53.png +0 -0
  83. package/dist/assets/static/media/cf.de7d5d92.png +0 -0
  84. package/dist/assets/static/media/cg.a47b626b.png +0 -0
  85. package/dist/assets/static/media/ch.445f47a1.png +0 -0
  86. package/dist/assets/static/media/ci.a6009c5b.png +0 -0
  87. package/dist/assets/static/media/cl.de1d715e.png +0 -0
  88. package/dist/assets/static/media/cm.3ce8a86a.png +0 -0
  89. package/dist/assets/static/media/cn.e6a26073.png +0 -0
  90. package/dist/assets/static/media/co.e9244faa.png +0 -0
  91. package/dist/assets/static/media/cr.c895e035.png +0 -0
  92. package/dist/assets/static/media/cu.e486c055.png +0 -0
  93. package/dist/assets/static/media/cv.a9585acf.png +0 -0
  94. package/dist/assets/static/media/cw.df13039d.png +0 -0
  95. package/dist/assets/static/media/cy.b31f43a9.png +0 -0
  96. package/dist/assets/static/media/cz.8ec5948b.png +0 -0
  97. package/dist/assets/static/media/de.d12f391a.png +0 -0
  98. package/dist/assets/static/media/dj.154c3580.png +0 -0
  99. package/dist/assets/static/media/dk.da382fe2.png +0 -0
  100. package/dist/assets/static/media/dm.f452e6cd.png +0 -0
  101. package/dist/assets/static/media/do.c6bd7637.png +0 -0
  102. package/dist/assets/static/media/dz.672a69c0.png +0 -0
  103. package/dist/assets/static/media/ec.349d9bd7.png +0 -0
  104. package/dist/assets/static/media/ee.2396205f.png +0 -0
  105. package/dist/assets/static/media/eg.ccbf3f45.png +0 -0
  106. package/dist/assets/static/media/eh.af65674a.png +0 -0
  107. package/dist/assets/static/media/er.21afb638.png +0 -0
  108. package/dist/assets/static/media/es.2a6eaee4.png +0 -0
  109. package/dist/assets/static/media/et.8beb65c8.png +0 -0
  110. package/dist/assets/static/media/fi.331f70fd.png +0 -0
  111. package/dist/assets/static/media/fj.7724d800.png +0 -0
  112. package/dist/assets/static/media/fm.eeaf71e9.png +0 -0
  113. package/dist/assets/static/media/fr.5d5ab008.png +0 -0
  114. package/dist/assets/static/media/ga.77ed474c.png +0 -0
  115. package/dist/assets/static/media/gb.e00065bf.png +0 -0
  116. package/dist/assets/static/media/gd.b4522267.png +0 -0
  117. package/dist/assets/static/media/ge.91a7654d.png +0 -0
  118. package/dist/assets/static/media/gh.4759f92f.png +0 -0
  119. package/dist/assets/static/media/gm.81cd9f75.png +0 -0
  120. package/dist/assets/static/media/gn.9f3d376e.png +0 -0
  121. package/dist/assets/static/media/gq.e8ad58be.png +0 -0
  122. package/dist/assets/static/media/gr.26f3ac0b.png +0 -0
  123. package/dist/assets/static/media/gt.9d81c52e.png +0 -0
  124. package/dist/assets/static/media/gw.dc906982.png +0 -0
  125. package/dist/assets/static/media/gy.a4f62b6c.png +0 -0
  126. package/dist/assets/static/media/hk.56555c3f.png +0 -0
  127. package/dist/assets/static/media/hn.64ee6aad.png +0 -0
  128. package/dist/assets/static/media/hr.93ebecd3.png +0 -0
  129. package/dist/assets/static/media/ht.42ca1596.png +0 -0
  130. package/dist/assets/static/media/hu.bb30f05d.png +0 -0
  131. package/dist/assets/static/media/id.2cb49f2d.png +0 -0
  132. package/dist/assets/static/media/ie.b4dd1f19.png +0 -0
  133. package/dist/assets/static/media/il.cd1d1faf.png +0 -0
  134. package/dist/assets/static/media/in.2df03847.png +0 -0
  135. package/dist/assets/static/media/iq.a9b670ab.png +0 -0
  136. package/dist/assets/static/media/ir.9a3de085.png +0 -0
  137. package/dist/assets/static/media/is.d88f4fc9.png +0 -0
  138. package/dist/assets/static/media/it.b73713e3.png +0 -0
  139. package/dist/assets/static/media/je.0353f56a.png +0 -0
  140. package/dist/assets/static/media/jm.20330ef4.png +0 -0
  141. package/dist/assets/static/media/jo.eb66f1d1.png +0 -0
  142. package/dist/assets/static/media/jp.63e382ae.png +0 -0
  143. package/dist/assets/static/media/ke.ab2e43b8.png +0 -0
  144. package/dist/assets/static/media/kg.2c47c2af.png +0 -0
  145. package/dist/assets/static/media/kh.4732c810.png +0 -0
  146. package/dist/assets/static/media/ki.5fba09fd.png +0 -0
  147. package/dist/assets/static/media/km.7bbed3e9.png +0 -0
  148. package/dist/assets/static/media/kn.a9595a16.png +0 -0
  149. package/dist/assets/static/media/kp.8a4dc30a.png +0 -0
  150. package/dist/assets/static/media/kr.5273be1d.png +0 -0
  151. package/dist/assets/static/media/ks.99f78645.png +0 -0
  152. package/dist/assets/static/media/kw.af3521bc.png +0 -0
  153. package/dist/assets/static/media/kz.ea47ef79.png +0 -0
  154. package/dist/assets/static/media/la.78a598d7.png +0 -0
  155. package/dist/assets/static/media/lb.7a7c15a9.png +0 -0
  156. package/dist/assets/static/media/lc.6083a4ff.png +0 -0
  157. package/dist/assets/static/media/li.61c564a4.png +0 -0
  158. package/dist/assets/static/media/lk.6fa85802.png +0 -0
  159. package/dist/assets/static/media/lr.8063f7db.png +0 -0
  160. package/dist/assets/static/media/ls.901ddb71.png +0 -0
  161. package/dist/assets/static/media/lt.9209ace3.png +0 -0
  162. package/dist/assets/static/media/lu.c9872bc1.png +0 -0
  163. package/dist/assets/static/media/lv.7bcacf0a.png +0 -0
  164. package/dist/assets/static/media/ly.2830aa63.png +0 -0
  165. package/dist/assets/static/media/ma.ce5f697b.png +0 -0
  166. package/dist/assets/static/media/mc.4bd5d57a.png +0 -0
  167. package/dist/assets/static/media/md.fb4b5bdf.png +0 -0
  168. package/dist/assets/static/media/me.1f1d1772.png +0 -0
  169. package/dist/assets/static/media/mg.89101bd2.png +0 -0
  170. package/dist/assets/static/media/mh.ff11dff7.png +0 -0
  171. package/dist/assets/static/media/mk.8420e604.png +0 -0
  172. package/dist/assets/static/media/ml.4db47c66.png +0 -0
  173. package/dist/assets/static/media/mm.8e4ac30a.png +0 -0
  174. package/dist/assets/static/media/mn.dc1daa04.png +0 -0
  175. package/dist/assets/static/media/mr.7cbca6d0.png +0 -0
  176. package/dist/assets/static/media/mt.28a4b863.png +0 -0
  177. package/dist/assets/static/media/mu.d93db6c7.png +0 -0
  178. package/dist/assets/static/media/mv.7d026bf1.png +0 -0
  179. package/dist/assets/static/media/mw.960cd4fb.png +0 -0
  180. package/dist/assets/static/media/mx.39b78eb2.png +0 -0
  181. package/dist/assets/static/media/my.916a8392.png +0 -0
  182. package/dist/assets/static/media/mz.facb4ea3.png +0 -0
  183. package/dist/assets/static/media/na.472666a9.png +0 -0
  184. package/dist/assets/static/media/ne.d774701f.png +0 -0
  185. package/dist/assets/static/media/ng.7b06a49f.png +0 -0
  186. package/dist/assets/static/media/ni.7140131c.png +0 -0
  187. package/dist/assets/static/media/nl.4c04aa96.png +0 -0
  188. package/dist/assets/static/media/no.c19eb00d.png +0 -0
  189. package/dist/assets/static/media/np.54fb4f2f.png +0 -0
  190. package/dist/assets/static/media/nr.7527cc38.png +0 -0
  191. package/dist/assets/static/media/nz.738be05b.png +0 -0
  192. package/dist/assets/static/media/om.b25e0a17.png +0 -0
  193. package/dist/assets/static/media/pa.b28a9059.png +0 -0
  194. package/dist/assets/static/media/pe.c1fc1d96.png +0 -0
  195. package/dist/assets/static/media/pg.380115db.png +0 -0
  196. package/dist/assets/static/media/ph.02199ddc.png +0 -0
  197. package/dist/assets/static/media/pk.094f9517.png +0 -0
  198. package/dist/assets/static/media/pl.41521283.png +0 -0
  199. package/dist/assets/static/media/pt.1f82dc04.png +0 -0
  200. package/dist/assets/static/media/pw.a26c2316.png +0 -0
  201. package/dist/assets/static/media/py.926c65ed.png +0 -0
  202. package/dist/assets/static/media/qa.c6a3c20e.png +0 -0
  203. package/dist/assets/static/media/ro.a36876c9.png +0 -0
  204. package/dist/assets/static/media/rs.c6629de8.png +0 -0
  205. package/dist/assets/static/media/ru.a9b948c1.png +0 -0
  206. package/dist/assets/static/media/rw.e8aecba0.png +0 -0
  207. package/dist/assets/static/media/sa.859049c8.png +0 -0
  208. package/dist/assets/static/media/sb.4ad27b27.png +0 -0
  209. package/dist/assets/static/media/sc.3293efde.png +0 -0
  210. package/dist/assets/static/media/sd.19c94faa.png +0 -0
  211. package/dist/assets/static/media/se.195b3f93.png +0 -0
  212. package/dist/assets/static/media/sg.19d81907.png +0 -0
  213. package/dist/assets/static/media/si.367c5443.png +0 -0
  214. package/dist/assets/static/media/sk.4e5b8a39.png +0 -0
  215. package/dist/assets/static/media/sl.4b174b1c.png +0 -0
  216. package/dist/assets/static/media/sm.2cba3dac.png +0 -0
  217. package/dist/assets/static/media/sn.a4c1041d.png +0 -0
  218. package/dist/assets/static/media/so.b455e3bf.png +0 -0
  219. package/dist/assets/static/media/sr.5adc1c00.png +0 -0
  220. package/dist/assets/static/media/st.5ae44155.png +0 -0
  221. package/dist/assets/static/media/sv.43aa6cdf.png +0 -0
  222. package/dist/assets/static/media/sy.0fbd24f7.png +0 -0
  223. package/dist/assets/static/media/sz.ff204912.png +0 -0
  224. package/dist/assets/static/media/td.c7aa2a4e.png +0 -0
  225. package/dist/assets/static/media/tg.857c3bec.png +0 -0
  226. package/dist/assets/static/media/th.683600c7.png +0 -0
  227. package/dist/assets/static/media/tj.d20c5570.png +0 -0
  228. package/dist/assets/static/media/tl.5edd8ea7.png +0 -0
  229. package/dist/assets/static/media/tm.15960215.png +0 -0
  230. package/dist/assets/static/media/tn.40df718e.png +0 -0
  231. package/dist/assets/static/media/to.c3b054df.png +0 -0
  232. package/dist/assets/static/media/tr.adeace6d.png +0 -0
  233. package/dist/assets/static/media/tt.839bd7f1.png +0 -0
  234. package/dist/assets/static/media/tv.628cae3e.png +0 -0
  235. package/dist/assets/static/media/tw.4e885914.png +0 -0
  236. package/dist/assets/static/media/tz.b2f0dc37.png +0 -0
  237. package/dist/assets/static/media/ua.6b103313.png +0 -0
  238. package/dist/assets/static/media/ug.c84042fc.png +0 -0
  239. package/dist/assets/static/media/us.8523c31d.png +0 -0
  240. package/dist/assets/static/media/uy.a943f85e.png +0 -0
  241. package/dist/assets/static/media/uz.25552673.png +0 -0
  242. package/dist/assets/static/media/va.a29e1b53.png +0 -0
  243. package/dist/assets/static/media/vc.7480bd37.png +0 -0
  244. package/dist/assets/static/media/ve.fd4273c2.png +0 -0
  245. package/dist/assets/static/media/vn.7d2eff1b.png +0 -0
  246. package/dist/assets/static/media/vu.48b64cf3.png +0 -0
  247. package/dist/assets/static/media/ws.f3d9202f.png +0 -0
  248. package/dist/assets/static/media/ye.311a0e50.png +0 -0
  249. package/dist/assets/static/media/za.090a856f.png +0 -0
  250. package/dist/assets/static/media/zm.8371e197.png +0 -0
  251. package/dist/assets/static/media/zw.a6809447.png +0 -0
  252. package/dist/index.js +145901 -0
  253. package/package.json +212 -152
  254. package/dist/assets/android-chrome-192x192.png +0 -0
  255. package/dist/assets/android-chrome-512x512.png +0 -0
  256. package/dist/assets/apple-touch-icon.png +0 -0
  257. package/dist/assets/asset-manifest.json +0 -57
  258. package/dist/assets/browserconfig.xml +0 -9
  259. package/dist/assets/favicon-16x16.png +0 -0
  260. package/dist/assets/favicon-32x32.png +0 -0
  261. package/dist/assets/mstile-144x144.png +0 -0
  262. package/dist/assets/mstile-150x150.png +0 -0
  263. package/dist/assets/mstile-310x150.png +0 -0
  264. package/dist/assets/mstile-310x310.png +0 -0
  265. package/dist/assets/mstile-70x70.png +0 -0
  266. package/dist/assets/static/css/main.b6ffc2bec74dc4b98b88.css +0 -1
  267. package/dist/assets/static/js/0.0a556a75.chunk.js +0 -1
  268. package/dist/assets/static/js/1.14dd2d0c.chunk.js +0 -1
  269. package/dist/assets/static/js/10.d4eef924.chunk.js +0 -1
  270. package/dist/assets/static/js/11.53cd515d.chunk.js +0 -1
  271. package/dist/assets/static/js/12.ce0f8a4e.chunk.js +0 -1
  272. package/dist/assets/static/js/13.9ca96920.chunk.js +0 -1
  273. package/dist/assets/static/js/14.588e3d0c.chunk.js +0 -1
  274. package/dist/assets/static/js/15.f28d64ab.chunk.js +0 -1
  275. package/dist/assets/static/js/16.53dd87df.chunk.js +0 -1
  276. package/dist/assets/static/js/17.b764e125.chunk.js +0 -1
  277. package/dist/assets/static/js/18.80c3ac22.chunk.js +0 -1
  278. package/dist/assets/static/js/2.8fafb9ff.chunk.js +0 -1
  279. package/dist/assets/static/js/20.64809e35.chunk.js +0 -1
  280. package/dist/assets/static/js/21.f3058669.chunk.js +0 -1
  281. package/dist/assets/static/js/22.9450fc59.chunk.js +0 -1
  282. package/dist/assets/static/js/23.840a4201.chunk.js +0 -1
  283. package/dist/assets/static/js/24.0a173a0d.chunk.js +0 -1
  284. package/dist/assets/static/js/25.e4c2217e.chunk.js +0 -1
  285. package/dist/assets/static/js/26.5f03f1a3.chunk.js +0 -1
  286. package/dist/assets/static/js/27.5127408d.chunk.js +0 -1
  287. package/dist/assets/static/js/28.ebac4379.chunk.js +0 -1
  288. package/dist/assets/static/js/29.de46849d.chunk.js +0 -1
  289. package/dist/assets/static/js/3.c219b8a8.chunk.js +0 -1
  290. package/dist/assets/static/js/30.ff543e93.chunk.js +0 -1
  291. package/dist/assets/static/js/31.1f1ad44f.chunk.js +0 -1
  292. package/dist/assets/static/js/32.b4c28098.chunk.js +0 -1
  293. package/dist/assets/static/js/33.3febffaf.chunk.js +0 -1
  294. package/dist/assets/static/js/34.2e764e96.chunk.js +0 -1
  295. package/dist/assets/static/js/35.92c40bb9.chunk.js +0 -1
  296. package/dist/assets/static/js/36.27afe215.chunk.js +0 -1
  297. package/dist/assets/static/js/37.6d94e34b.chunk.js +0 -1
  298. package/dist/assets/static/js/38.107b5aa9.chunk.js +0 -1
  299. package/dist/assets/static/js/39.112b724b.chunk.js +0 -1
  300. package/dist/assets/static/js/4.19d26f13.chunk.js +0 -1
  301. package/dist/assets/static/js/40.44aa79f5.chunk.js +0 -1
  302. package/dist/assets/static/js/41.fb69cc30.chunk.js +0 -1
  303. package/dist/assets/static/js/42.906cc1ff.chunk.js +0 -1
  304. package/dist/assets/static/js/43.135e1560.chunk.js +0 -1
  305. package/dist/assets/static/js/44.a3d23bab.chunk.js +0 -1
  306. package/dist/assets/static/js/45.f025dffe.chunk.js +0 -1
  307. package/dist/assets/static/js/46.3ea25c9e.chunk.js +0 -1
  308. package/dist/assets/static/js/47.5a213255.chunk.js +0 -1
  309. package/dist/assets/static/js/48.ce4bfe23.chunk.js +0 -1
  310. package/dist/assets/static/js/49.857650de.chunk.js +0 -1
  311. package/dist/assets/static/js/5.dc5232a2.chunk.js +0 -1
  312. package/dist/assets/static/js/50.2a5fd558.chunk.js +0 -1
  313. package/dist/assets/static/js/6.210f5d48.chunk.js +0 -1
  314. package/dist/assets/static/js/7.29af7904.chunk.js +0 -1
  315. package/dist/assets/static/js/8.efcd70d8.chunk.js +0 -1
  316. package/dist/assets/static/js/9.23e24017.chunk.js +0 -1
  317. package/dist/assets/static/js/main.f3cd799a.js +0 -1
  318. package/dist/assets/static/media/ABOUT.d02918c9.md +0 -13
  319. package/dist/assets/static/media/Roboto-500.64e69384.woff +0 -0
  320. package/dist/assets/static/media/Roboto-500.7f8f0146.eot +0 -0
  321. package/dist/assets/static/media/Roboto-500.916656a2.ttf +0 -0
  322. package/dist/assets/static/media/Roboto-500.abd255e8.svg +0 -305
  323. package/dist/assets/static/media/Roboto-700.8d11d1e1.ttf +0 -0
  324. package/dist/assets/static/media/Roboto-700.9c9c164e.svg +0 -310
  325. package/dist/assets/static/media/Roboto-700.c65552c8.eot +0 -0
  326. package/dist/assets/static/media/Roboto-700.ee82bda2.woff +0 -0
  327. package/dist/assets/static/media/Roboto-700italic.1dc5bfed.eot +0 -0
  328. package/dist/assets/static/media/Roboto-700italic.686da014.woff +0 -0
  329. package/dist/assets/static/media/Roboto-700italic.896656dc.ttf +0 -0
  330. package/dist/assets/static/media/Roboto-700italic.cacb9681.svg +0 -325
  331. package/dist/assets/static/media/Roboto-italic.09ed2f27.svg +0 -323
  332. package/dist/assets/static/media/Roboto-italic.c1421604.woff +0 -0
  333. package/dist/assets/static/media/Roboto-italic.c38ecad2.ttf +0 -0
  334. package/dist/assets/static/media/Roboto-italic.f7677a07.eot +0 -0
  335. package/dist/assets/static/media/Roboto-regular.5107f918.eot +0 -0
  336. package/dist/assets/static/media/Roboto-regular.6a307cf2.woff +0 -0
  337. package/dist/assets/static/media/Roboto-regular.81dc9b21.ttf +0 -0
  338. package/dist/assets/static/media/Roboto-regular.bcf2ba9e.svg +0 -308
  339. package/dist/config.js +0 -173
  340. package/dist/server/app.js +0 -79
  341. package/dist/server/bin/enforce-prerequisites.js +0 -55
  342. package/dist/server/bin/migrations/fix-is-admin-flag.js +0 -41
  343. package/dist/server/bin/migrations/per-user-rtorrent-instances.js +0 -67
  344. package/dist/server/bin/migrations/run.js +0 -10
  345. package/dist/server/bin/start.js +0 -18
  346. package/dist/server/bin/web-server.js +0 -94
  347. package/dist/server/config/passport.js +0 -32
  348. package/dist/server/constants/clientGatewayServiceEvents.js +0 -15
  349. package/dist/server/constants/diskUsageServiceEvents.js +0 -8
  350. package/dist/server/constants/fileListPropMap.js +0 -29
  351. package/dist/server/constants/historyServiceEvents.js +0 -18
  352. package/dist/server/constants/notificationServiceEvents.js +0 -8
  353. package/dist/server/constants/taxonomyServiceEvents.js +0 -8
  354. package/dist/server/constants/torrentListPropMap.js +0 -200
  355. package/dist/server/constants/torrentServiceEvents.js +0 -8
  356. package/dist/server/constants/transferSummaryPropMap.js +0 -28
  357. package/dist/server/middleware/appendUserServices.js +0 -10
  358. package/dist/server/middleware/booleanCoerce.js +0 -9
  359. package/dist/server/middleware/clientActivityStream.js +0 -124
  360. package/dist/server/middleware/eventStream.js +0 -25
  361. package/dist/server/middleware/requireAdmin.js +0 -8
  362. package/dist/server/models/ClientRequest.js +0 -310
  363. package/dist/server/models/Feed.js +0 -65
  364. package/dist/server/models/Filesystem.js +0 -44
  365. package/dist/server/models/HistoryEra.js +0 -168
  366. package/dist/server/models/ServerEvent.js +0 -27
  367. package/dist/server/models/TemporaryStorage.js +0 -20
  368. package/dist/server/models/Users.js +0 -171
  369. package/dist/server/models/client.js +0 -363
  370. package/dist/server/models/settings.js +0 -119
  371. package/dist/server/routes/api.js +0 -69
  372. package/dist/server/routes/auth.js +0 -184
  373. package/dist/server/routes/client.js +0 -101
  374. package/dist/server/services/BaseService.js +0 -24
  375. package/dist/server/services/clientGatewayService.js +0 -220
  376. package/dist/server/services/clientRequestManager.js +0 -76
  377. package/dist/server/services/diskUsageService.js +0 -133
  378. package/dist/server/services/feedService.js +0 -290
  379. package/dist/server/services/historyService.js +0 -181
  380. package/dist/server/services/index.js +0 -108
  381. package/dist/server/services/notificationService.js +0 -109
  382. package/dist/server/services/taxonomyService.js +0 -107
  383. package/dist/server/services/torrentService.js +0 -235
  384. package/dist/server/util/ajaxUtil.js +0 -19
  385. package/dist/server/util/clientResponseUtil.js +0 -99
  386. package/dist/server/util/fileUtil.js +0 -45
  387. package/dist/server/util/mediainfo.js +0 -34
  388. package/dist/server/util/methodCallUtil.js +0 -22
  389. package/dist/server/util/numberUtils.js +0 -7
  390. package/dist/server/util/rTorrentDeserializer.js +0 -104
  391. package/dist/server/util/rTorrentPropMap.js +0 -13
  392. package/dist/server/util/scgiUtil.js +0 -36
  393. package/dist/server/util/torrentFileUtil.js +0 -23
  394. package/dist/shared/config/paths.js +0 -41
  395. package/dist/shared/constants/clientSettingsMap.js +0 -53
  396. package/dist/shared/constants/diffActionTypes.js +0 -6
  397. package/dist/shared/constants/historySnapshotTypes.js +0 -11
  398. package/dist/shared/constants/serverEventTypes.js +0 -18
  399. package/dist/shared/constants/torrentFilePropsMap.js +0 -6
  400. package/dist/shared/constants/torrentPeerPropsMap.js +0 -32
  401. package/dist/shared/constants/torrentStatusMap.js +0 -17
  402. package/dist/shared/constants/torrentTrackerPropsMap.js +0 -6
  403. package/dist/shared/types/Auth.js +0 -2
  404. package/dist/shared/util/formatUtil.js +0 -33
  405. package/dist/shared/util/objectUtil.js +0 -56
  406. package/dist/shared/util/regEx.js +0 -7
  407. /package/dist/assets/{safari-pinned-tab.svg → icon.svg} +0 -0
@@ -1,45 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const fs_1 = __importDefault(require("fs"));
7
- const path_1 = __importDefault(require("path"));
8
- const config_1 = __importDefault(require("../../config"));
9
- const createDirectory = (options) => {
10
- if (options.path) {
11
- fs_1.default.mkdir(options.path, { recursive: true }, (error) => {
12
- if (error) {
13
- console.trace('Error creating directory.', error);
14
- }
15
- });
16
- }
17
- };
18
- const isAllowedPath = (resolvedPath) => {
19
- if (config_1.default.allowedPaths == null) {
20
- return true;
21
- }
22
- return config_1.default.allowedPaths.some((allowedPath) => {
23
- if (resolvedPath.startsWith(allowedPath)) {
24
- return true;
25
- }
26
- return false;
27
- });
28
- };
29
- const sanitizePath = (input) => {
30
- // eslint-disable-next-line no-control-regex
31
- const controlRe = /[\x00-\x1f\x80-\x9f]/g;
32
- return path_1.default.resolve(input).replace(controlRe, '');
33
- };
34
- const accessDeniedError = () => {
35
- const error = new Error();
36
- error.code = 'EACCES';
37
- return error;
38
- };
39
- const fileUtil = {
40
- createDirectory,
41
- isAllowedPath,
42
- sanitizePath,
43
- accessDeniedError,
44
- };
45
- exports.default = fileUtil;
@@ -1,34 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const child_process_1 = __importDefault(require("child_process"));
7
- const services_1 = __importDefault(require("../services"));
8
- exports.default = {
9
- getMediainfo(user, options, callback) {
10
- const torrentService = services_1.default.getTorrentService(user);
11
- const { hash } = options;
12
- if (hash == null) {
13
- callback(null, { error: 'Hash must be defined' });
14
- return;
15
- }
16
- const selectedTorrent = torrentService.getTorrent(hash);
17
- try {
18
- child_process_1.default.execFile('mediainfo', [selectedTorrent.basePath], { maxBuffer: 1024 * 2000 }, (error, stdout, stderr) => {
19
- if (error) {
20
- callback(null, { error });
21
- return;
22
- }
23
- if (stderr) {
24
- callback(null, { error: stderr });
25
- return;
26
- }
27
- callback({ output: stdout });
28
- });
29
- }
30
- catch (childProcessError) {
31
- callback(null, { error: childProcessError });
32
- }
33
- },
34
- };
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const methodCallUtil = {
4
- getMethodCallConfigFromPropMap(map = new Map(), requestedKeys) {
5
- let desiredKeys = Array.from(map.keys());
6
- if (requestedKeys != null) {
7
- desiredKeys = desiredKeys.filter((key) => requestedKeys.includes(key));
8
- }
9
- return desiredKeys.reduce((accumulator, key) => {
10
- const { methodCall, transformValue } = map.get(key);
11
- accumulator.methodCalls.push(methodCall);
12
- accumulator.propLabels.push(key);
13
- accumulator.valueTransformations.push(transformValue);
14
- return accumulator;
15
- }, {
16
- methodCalls: [],
17
- propLabels: [],
18
- valueTransformations: [],
19
- });
20
- },
21
- };
22
- exports.default = methodCallUtil;
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const truncateTo = (num, precision = 0) => {
4
- const factor = 10 ** precision;
5
- return Math.floor(num * factor) / factor;
6
- };
7
- exports.default = truncateTo;
@@ -1,104 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const saxen_1 = require("saxen");
4
- let stackMarks;
5
- let dataStack;
6
- let tmpData;
7
- let dataIsVal;
8
- let endOfResponse;
9
- let rejectCallback;
10
- let parserInit = false;
11
- const parser = new saxen_1.Parser();
12
- const unescapeXMLString = (value) => value
13
- .replace(/&lt;/g, '<')
14
- .replace(/&gt;/g, '>')
15
- .replace(/&apos;/g, "'")
16
- .replace(/&quot;/g, '"')
17
- .replace(/&amp;/g, '&');
18
- const openTag = (elementName) => {
19
- if (elementName === 'array' || elementName === 'struct') {
20
- stackMarks.push(dataStack.length);
21
- }
22
- tmpData = [];
23
- dataIsVal = elementName === 'value';
24
- };
25
- const onText = (value) => {
26
- tmpData.push(unescapeXMLString(value));
27
- };
28
- const onError = (err) => {
29
- rejectCallback(err);
30
- };
31
- const closeTag = (elementName) => {
32
- let stackMark;
33
- const tagValue = tmpData.join('');
34
- // types that rTorrent uses:
35
- // array, boolean, data, i4, i8, param, params, string, value, name, member, struct
36
- switch (elementName) {
37
- case 'boolean':
38
- dataStack.push(tagValue === '1');
39
- break;
40
- case 'value':
41
- if (dataIsVal) {
42
- dataStack.push(tagValue);
43
- }
44
- break;
45
- case 'i4':
46
- case 'i8':
47
- case 'string':
48
- case 'name':
49
- dataStack.push(tagValue);
50
- break;
51
- case 'methodResponse':
52
- endOfResponse = true;
53
- break;
54
- case 'array':
55
- stackMark = stackMarks.pop();
56
- dataStack.splice(stackMark, dataStack.length - stackMark, dataStack.slice(stackMark));
57
- dataIsVal = false;
58
- break;
59
- case 'struct': {
60
- stackMark = stackMarks.pop();
61
- const struct = {};
62
- const items = dataStack.slice(stackMark);
63
- for (let i = 0; i < items.length; i += 2) {
64
- struct[items[i]] = items[i + 1];
65
- }
66
- dataStack.splice(stackMark, dataStack.length - stackMark, struct);
67
- dataIsVal = false;
68
- break;
69
- }
70
- // unused - we ignore
71
- case 'data':
72
- case 'params':
73
- case 'param':
74
- case 'member':
75
- break;
76
- default:
77
- rejectCallback(`Unexpected XML-RPC Tag: ${elementName}`);
78
- }
79
- };
80
- const initParser = () => {
81
- if (parserInit === true) {
82
- return;
83
- }
84
- parser.on('openTag', openTag);
85
- parser.on('closeTag', closeTag);
86
- parser.on('text', onText);
87
- parser.on('error', onError);
88
- parserInit = true;
89
- };
90
- const deserialize = (data, resolve, reject) => {
91
- stackMarks = [];
92
- dataStack = [];
93
- tmpData = [];
94
- dataIsVal = false;
95
- endOfResponse = false;
96
- rejectCallback = reject;
97
- initParser();
98
- parser.parse(data);
99
- if (endOfResponse) {
100
- return resolve(dataStack[0]);
101
- }
102
- return reject('truncated response was received');
103
- };
104
- exports.default = { deserialize };
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const RTORRENT_PROPS_MAP = {
4
- transferData: {
5
- uploadRate: 'throttle.global_up.rate',
6
- uploadTotal: 'throttle.global_up.total',
7
- uploadThrottle: 'throttle.global_up.max_rate',
8
- downloadRate: 'throttle.global_down.rate',
9
- downloadTotal: 'throttle.global_down.total',
10
- downloadThrottle: 'throttle.global_down.max_rate',
11
- },
12
- };
13
- exports.default = RTORRENT_PROPS_MAP;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const net_1 = __importDefault(require("net"));
7
- const serializer_1 = __importDefault(require("xmlrpc/lib/serializer"));
8
- const rTorrentDeserializer_1 = __importDefault(require("./rTorrentDeserializer"));
9
- const NULL_CHAR = String.fromCharCode(0);
10
- const bufferStream = (stream) => {
11
- const chunks = [];
12
- return new Promise((resolve, reject) => {
13
- stream.on('data', (chunk) => chunks.push(Buffer.from(chunk)));
14
- stream.on('error', reject);
15
- stream.on('end', () => resolve(Buffer.concat(chunks).toString('utf8')));
16
- });
17
- };
18
- const methodCall = (connectionMethod, methodName, parameters) => new Promise((resolve, reject) => {
19
- const networkConfiguration = connectionMethod.socketPath != null
20
- ? { path: connectionMethod.socketPath }
21
- : { port: connectionMethod.port, host: connectionMethod.host };
22
- const stream = net_1.default.connect(networkConfiguration);
23
- const xml = serializer_1.default.serializeMethodCall(methodName, parameters);
24
- const xmlLength = Buffer.byteLength(xml, 'utf8');
25
- stream.on('error', reject);
26
- stream.setEncoding('UTF8');
27
- const headerItems = [`CONTENT_LENGTH${NULL_CHAR}${xmlLength}${NULL_CHAR}`, `SCGI${NULL_CHAR}1${NULL_CHAR}`];
28
- const headerLength = headerItems.reduce((accumulator, headerItem) => accumulator + headerItem.length, 0);
29
- stream.end(`${headerLength}:${headerItems.join('')},${xml}`);
30
- bufferStream(stream)
31
- .then((data) => {
32
- rTorrentDeserializer_1.default.deserialize(data, resolve, reject);
33
- })
34
- .catch(reject);
35
- });
36
- exports.default = { methodCall };
@@ -1,23 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const bencode_1 = __importDefault(require("bencode"));
7
- const fs_1 = __importDefault(require("fs"));
8
- const setTracker = (torrent, tracker) => {
9
- fs_1.default.readFile(torrent, (err, data) => {
10
- if (err) {
11
- return;
12
- }
13
- const torrentData = bencode_1.default.decode(data);
14
- if (torrentData.announce != null) {
15
- torrentData.announce = Buffer.from(tracker);
16
- fs_1.default.writeFileSync(torrent, bencode_1.default.encode(torrentData));
17
- }
18
- });
19
- };
20
- const torrentFileUtil = {
21
- setTracker,
22
- };
23
- exports.default = torrentFileUtil;
@@ -1,41 +0,0 @@
1
- "use strict";
2
- const fs = require('fs');
3
- const path = require('path');
4
- const userConfig = require('../../config');
5
- // Make sure any symlinks in the project folder are resolved:
6
- // https://github.com/facebookincubator/create-react-app/issues/637
7
- const appDirectory = path.resolve(path.join(__dirname, '../..'));
8
- const resolveApp = (relativePath) => path.resolve(appDirectory, relativePath);
9
- const ensureSlash = (questionablePath, needsSlash) => {
10
- const hasSlash = questionablePath.endsWith('/');
11
- if (hasSlash && !needsSlash) {
12
- return questionablePath.substr(questionablePath, questionablePath.length - 1);
13
- }
14
- if (!hasSlash && needsSlash) {
15
- return `${questionablePath}/`;
16
- }
17
- return questionablePath;
18
- };
19
- const getAppBuild = () => {
20
- let appBuild = resolveApp('dist/assets');
21
- if (!fs.existsSync(appBuild)) {
22
- // In production, appDirectory is dist/.
23
- const appDist = resolveApp('assets');
24
- if (fs.existsSync(appDist)) {
25
- appBuild = appDist;
26
- }
27
- }
28
- return appBuild;
29
- };
30
- module.exports = {
31
- appBuild: getAppBuild(),
32
- appPublic: resolveApp('client/src/public/'),
33
- appHtml: resolveApp('client/src/index.html'),
34
- appIndex: resolveApp('client/src/javascript/app.tsx'),
35
- appPackageJson: resolveApp('package.json'),
36
- appSrc: resolveApp('./'),
37
- clientSrc: resolveApp('client/src'),
38
- testsSetup: resolveApp('tests/setupTests.js'),
39
- appNodeModules: resolveApp('node_modules'),
40
- servedPath: ensureSlash(userConfig.baseURI || '/', true),
41
- };
@@ -1,53 +0,0 @@
1
- "use strict";
2
- const objectUtil = require('../util/objectUtil');
3
- const clientSettings = {
4
- dht: 'dht.mode',
5
- dhtPort: 'dht.port',
6
- dhtStats: 'dht.statistics',
7
- directoryDefault: 'directory.default',
8
- maxFileSize: 'system.file.max_size',
9
- networkBindAddress: 'network.bind_address',
10
- networkHttpCert: 'network.http.cacert',
11
- networkHttpMaxOpen: 'network.http.max_open',
12
- networkHttpPath: 'network.http.capath',
13
- networkHttpProxy: 'network.http.proxy_address',
14
- networkLocalAddress: 'network.local_address',
15
- networkMaxOpenFiles: 'network.max_open_files',
16
- networkMaxOpenSockets: 'network.max_open_sockets',
17
- networkPortOpen: 'network.port_open',
18
- networkPortRandom: 'network.port_random',
19
- networkPortRange: 'network.port_range',
20
- networkReceiveBufferSize: 'network.receive_buffer.size',
21
- networkScgiDontRoute: 'network.scgi.dont_route',
22
- networkSendBufferSize: 'network.send_buffer.size',
23
- piecesHashOnCompletion: 'pieces.hash.on_completion',
24
- piecesMemoryMax: 'pieces.memory.max',
25
- piecesPreloadMinRate: 'pieces.preload.min_rate',
26
- piecesPreloadMinSize: 'pieces.preload.min_size',
27
- piecesPreloadType: 'pieces.preload.type',
28
- piecesSyncAlwaysSafe: 'pieces.sync.always_safe',
29
- piecesSyncTimeout: 'pieces.sync.timeout',
30
- piecesSyncTimeoutSafe: 'pieces.sync.timeout_safe',
31
- protocolPex: 'protocol.pex',
32
- sessionOnCompletion: 'session.on_completion',
33
- sessionPath: 'session.path',
34
- sessionUseLock: 'session.use_lock',
35
- systemFileSplitSize: 'system.file.split_size',
36
- systemFileSplitSuffix: 'system.file.split_suffix',
37
- throttleGlobalDownMax: 'throttle.global_down.max_rate',
38
- throttleGlobalUpMax: 'throttle.global_up.max_rate',
39
- throttleMaxPeersNormal: 'throttle.max_peers.normal',
40
- throttleMaxPeersSeed: 'throttle.max_peers.seed',
41
- throttleMaxDownloads: 'throttle.max_downloads',
42
- throttleMaxDownloadsDiv: 'throttle.max_downloads.div',
43
- throttleMaxDownloadsGlobal: 'throttle.max_downloads.global',
44
- throttleMaxUploads: 'throttle.max_uploads',
45
- throttleMaxUploadsDiv: 'throttle.max_uploads.div',
46
- throttleMaxUploadsGlobal: 'throttle.max_uploads.global',
47
- throttleMinPeersNormal: 'throttle.min_peers.normal',
48
- throttleMinPeersSeed: 'throttle.min_peers.seed',
49
- trackersNumWant: 'trackers.numwant',
50
- trackersUseUdp: 'trackers.use_udp',
51
- };
52
- const clientSettingsMap = objectUtil.reflect(clientSettings);
53
- module.exports = { clientSettings, clientSettingsMap };
@@ -1,6 +0,0 @@
1
- "use strict";
2
- const diffActionTypes = ['ITEM_ADDED', 'ITEM_CHANGED', 'ITEM_REMOVED'];
3
- module.exports = diffActionTypes.reduce((memo, key) => {
4
- memo[key] = key;
5
- return memo;
6
- }, {});
@@ -1,11 +0,0 @@
1
- "use strict";
2
- const objectUtil = require('../util/objectUtil');
3
- const historySnapshotTypes = {
4
- FIVE_MINUTE: 'fiveMin',
5
- THIRTY_MINUTE: 'thirtyMin',
6
- HOUR: 'hour',
7
- WEEK: 'week',
8
- MONTH: 'month',
9
- YEAR: 'year',
10
- };
11
- module.exports = objectUtil.reflect(historySnapshotTypes);
@@ -1,18 +0,0 @@
1
- "use strict";
2
- const objectUtil = require('../util/objectUtil');
3
- const serverEventTypes = [
4
- 'CLIENT_CONNECTIVITY_STATUS_CHANGE',
5
- 'DISK_USAGE_CHANGE',
6
- 'NOTIFICATION_COUNT_CHANGE',
7
- 'TAXONOMY_FULL_UPDATE',
8
- 'TAXONOMY_DIFF_CHANGE',
9
- 'TORRENT_LIST_ACTION_TORRENT_ADDED',
10
- 'TORRENT_LIST_ACTION_TORRENT_DELETED',
11
- 'TORRENT_LIST_ACTION_TORRENT_DETAIL_UPDATED',
12
- 'TORRENT_LIST_DIFF_CHANGE',
13
- 'TORRENT_LIST_FULL_UPDATE',
14
- 'TRANSFER_HISTORY_FULL_UPDATE',
15
- 'TRANSFER_SUMMARY_DIFF_CHANGE',
16
- 'TRANSFER_SUMMARY_FULL_UPDATE',
17
- ];
18
- module.exports = objectUtil.createStringMapFromArray(serverEventTypes);
@@ -1,6 +0,0 @@
1
- "use strict";
2
- const torrentFilePropsMap = {
3
- props: ['path', 'pathComponents', 'priority', 'sizeBytes', 'sizeChunks', 'completedChunks'],
4
- methods: ['f.path=', 'f.path_components=', 'f.priority=', 'f.size_bytes=', 'f.size_chunks=', 'f.completed_chunks='],
5
- };
6
- module.exports = torrentFilePropsMap;
@@ -1,32 +0,0 @@
1
- "use strict";
2
- const torrentPeerPropsMap = {
3
- props: [
4
- 'address',
5
- 'completedPercent',
6
- 'clientVersion',
7
- 'downloadRate',
8
- 'downloadTotal',
9
- 'uploadRate',
10
- 'uploadTotal',
11
- 'id',
12
- 'peerRate',
13
- 'peerTotal',
14
- 'isEncrypted',
15
- 'isIncoming',
16
- ],
17
- methods: [
18
- 'p.address=',
19
- 'p.completed_percent=',
20
- 'p.client_version=',
21
- 'p.down_rate=',
22
- 'p.down_total=',
23
- 'p.up_rate=',
24
- 'p.up_total=',
25
- 'p.id=',
26
- 'p.peer_rate=',
27
- 'p.peer_total=',
28
- 'p.is_encrypted=',
29
- 'p.is_incoming=',
30
- ],
31
- };
32
- module.exports = torrentPeerPropsMap;
@@ -1,17 +0,0 @@
1
- "use strict";
2
- const objectUtil = require('../util/objectUtil');
3
- const torrentStatusMap = objectUtil.reflect({
4
- ch: 'checking',
5
- sd: 'seeding',
6
- p: 'paused',
7
- c: 'complete',
8
- d: 'downloading',
9
- ad: 'activelyDownloading',
10
- au: 'activelyUploading',
11
- s: 'stopped',
12
- e: 'error',
13
- i: 'inactive',
14
- a: 'active',
15
- });
16
- torrentStatusMap.statusShorthand = ['ch', 'sd', 'p', 'c', 'd', 'ad', 'au', 's', 'e', 'i', 'a'];
17
- module.exports = torrentStatusMap;
@@ -1,6 +0,0 @@
1
- "use strict";
2
- const torrentTrackerPropsMap = {
3
- props: ['group', 'url', 'id', 'minInterval', 'normalInterval', 'type'],
4
- methods: ['t.group=', 't.url=', 't.id=', 't.min_interval=', 't.normal_interval=', 't.type='],
5
- };
6
- module.exports = torrentTrackerPropsMap;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const formatUtil = {
4
- secondsToDuration: (cumSeconds) => {
5
- const years = Math.floor(cumSeconds / 31536000);
6
- const weeks = Math.floor((cumSeconds % 31536000) / 604800);
7
- const days = Math.floor(((cumSeconds % 31536000) % 604800) / 86400);
8
- const hours = Math.floor((((cumSeconds % 31536000) % 604800) % 86400) / 3600);
9
- const minutes = Math.floor(((((cumSeconds % 31536000) % 604800) % 86400) % 3600) / 60);
10
- const seconds = Math.floor(cumSeconds - minutes * 60);
11
- let timeRemaining = null;
12
- if (years > 0) {
13
- timeRemaining = { years, weeks, cumSeconds };
14
- }
15
- else if (weeks > 0) {
16
- timeRemaining = { weeks, days, cumSeconds };
17
- }
18
- else if (days > 0) {
19
- timeRemaining = { days, hours, cumSeconds };
20
- }
21
- else if (hours > 0) {
22
- timeRemaining = { hours, minutes, cumSeconds };
23
- }
24
- else if (minutes > 0) {
25
- timeRemaining = { minutes, seconds, cumSeconds };
26
- }
27
- else {
28
- timeRemaining = { seconds, cumSeconds };
29
- }
30
- return timeRemaining;
31
- },
32
- };
33
- exports.default = formatUtil;
@@ -1,56 +0,0 @@
1
- "use strict";
2
- const diffActionTypes = require('../constants/diffActionTypes');
3
- const objectUtil = {
4
- createStringMapFromArray: (array) => array.reduce((memo, key) => {
5
- memo[key] = key;
6
- return memo;
7
- }, {}),
8
- createSymbolMapFromArray: (array = []) => array.reduce((memo, key) => {
9
- memo[key] = Symbol(key);
10
- return memo;
11
- }, {}),
12
- getDiff: (prevObject = {}, nextObject = {}) => {
13
- const prevObjectKeys = Object.keys(prevObject);
14
- const nextObjectKeys = Object.keys(nextObject);
15
- let shouldCheckForRemovals = nextObjectKeys.length < prevObjectKeys.length;
16
- const diff = nextObjectKeys.reduce((accumulator, key) => {
17
- const prevValue = prevObject[key];
18
- const nextValue = nextObject[key];
19
- if (prevValue == null) {
20
- shouldCheckForRemovals = true;
21
- accumulator.push({
22
- action: diffActionTypes.ITEM_ADDED,
23
- data: {
24
- [key]: nextValue,
25
- },
26
- });
27
- }
28
- else if (prevValue !== nextValue) {
29
- accumulator.push({
30
- action: diffActionTypes.ITEM_CHANGED,
31
- data: {
32
- [key]: nextValue,
33
- },
34
- });
35
- }
36
- return accumulator;
37
- }, []);
38
- if (shouldCheckForRemovals) {
39
- prevObjectKeys.forEach((key) => {
40
- if (nextObject[key] == null) {
41
- diff.push({
42
- action: diffActionTypes.ITEM_REMOVED,
43
- data: key,
44
- });
45
- }
46
- });
47
- }
48
- return diff;
49
- },
50
- reflect: (object) => Object.keys(object).reduce((memo, key) => {
51
- memo[key] = object[key];
52
- memo[object[key]] = key;
53
- return memo;
54
- }, {}),
55
- };
56
- module.exports = objectUtil;
@@ -1,7 +0,0 @@
1
- "use strict";
2
- const regEx = {
3
- url: /^(?:https?|ftp):\/\/.{1,}\.{1}.{1,}/,
4
- domainName: /(?:https?|udp):\/\/(?:www\.)?([-a-zA-Z0-9@:%._+~#=]{2,256}\.[a-z]{2,18}\b)*(\/[/\d\w.-]*)*(?:[?])*(.+)*/i,
5
- cdata: /<!\[CDATA\[(.*?)\]\]>/,
6
- };
7
- module.exports = regEx;
File without changes