@jesec/flood 0.0.0-master.d419122 → 0.0.0-master.d570010

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 (287) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/README.md +1 -1
  3. package/dist/assets/index.html +1 -1
  4. package/dist/assets/static/css/26.db36dbf740cf15b386e3.css +1 -0
  5. package/dist/assets/static/css/main.2972bcb1ba7f012153ce.css +1 -0
  6. package/dist/assets/static/js/128.583fd0b6.chunk.js +1 -0
  7. package/dist/assets/static/js/151.00d4c7b7.chunk.js +1 -0
  8. package/dist/assets/static/js/26.d461badf.chunk.js +1 -0
  9. package/dist/assets/static/js/300.3bde1981.chunk.js +1 -0
  10. package/dist/assets/static/js/about.43497af5.chunk.js +1 -0
  11. package/dist/assets/static/js/flag0.0be952e5.chunk.js +1 -0
  12. package/dist/assets/static/js/flag1.cf236356.chunk.js +1 -0
  13. package/dist/assets/static/js/flag4.0d8156d2.chunk.js +1 -0
  14. package/dist/assets/static/js/flag8.809b10b4.chunk.js +1 -0
  15. package/dist/assets/static/js/i18n1.56cd2418.chunk.js +1 -0
  16. package/dist/assets/static/js/i18n10.aeff1de7.chunk.js +1 -0
  17. package/dist/assets/static/js/{i18n12.5602b1db.chunk.js → i18n12.6f65b324.chunk.js} +1 -1
  18. package/dist/assets/static/js/i18n13.6f327876.chunk.js +1 -0
  19. package/dist/assets/static/js/i18n14.6ec5cd9e.chunk.js +1 -0
  20. package/dist/assets/static/js/i18n15.b1514484.chunk.js +1 -0
  21. package/dist/assets/static/js/{i18n16.38890f9b.chunk.js → i18n16.869dc2d4.chunk.js} +0 -0
  22. package/dist/assets/static/js/i18n17.aeb268fa.chunk.js +1 -0
  23. package/dist/assets/static/js/i18n18.5d3047d8.chunk.js +1 -0
  24. package/dist/assets/static/js/{i18n19.478d5bb5.chunk.js → i18n19.3d6ca361.chunk.js} +0 -0
  25. package/dist/assets/static/js/i18n20.6b2791ec.chunk.js +1 -0
  26. package/dist/assets/static/js/i18n21.56deb919.chunk.js +1 -0
  27. package/dist/assets/static/js/{i18n23.770cebc4.chunk.js → i18n23.fdbc70e2.chunk.js} +0 -0
  28. package/dist/assets/static/js/i18n25.9d4596e5.chunk.js +1 -0
  29. package/dist/assets/static/js/i18n27.63e10816.chunk.js +1 -0
  30. package/dist/assets/static/js/{i18n28.1b0d1e31.chunk.js → i18n28.c413c38d.chunk.js} +0 -0
  31. package/dist/assets/static/js/i18n3.2b2b98df.chunk.js +1 -0
  32. package/dist/assets/static/js/{i18n4.e36e8df5.chunk.js → i18n4.4eadf1d2.chunk.js} +0 -0
  33. package/dist/assets/static/js/i18n5.e952c5c2.chunk.js +1 -0
  34. package/dist/assets/static/js/i18n8.1e9b463e.chunk.js +1 -0
  35. package/dist/assets/static/js/i18n9.2e5fac1c.chunk.js +1 -0
  36. package/dist/assets/static/js/main.aea06edd.js +1 -0
  37. package/dist/assets/static/media/ad.1b24595d.png +0 -0
  38. package/dist/assets/static/media/ae.4dd8f55e.png +0 -0
  39. package/dist/assets/static/media/af.4ce660eb.png +0 -0
  40. package/dist/assets/static/media/ag.fd9409e4.png +0 -0
  41. package/dist/assets/static/media/al.a297aacf.png +0 -0
  42. package/dist/assets/static/media/am.c84ee0cf.png +0 -0
  43. package/dist/assets/static/media/ao.a7c9214e.png +0 -0
  44. package/dist/assets/static/media/ar.7e57ef92.png +0 -0
  45. package/dist/assets/static/media/at.5aa9728a.png +0 -0
  46. package/dist/assets/static/media/au.155b51d8.png +0 -0
  47. package/dist/assets/static/media/az.63afef5b.png +0 -0
  48. package/dist/assets/static/media/ba.5ce8f273.png +0 -0
  49. package/dist/assets/static/media/bb.f369fc62.png +0 -0
  50. package/dist/assets/static/media/bd.516278fc.png +0 -0
  51. package/dist/assets/static/media/be.08ec4a8d.png +0 -0
  52. package/dist/assets/static/media/bf.50bfcb31.png +0 -0
  53. package/dist/assets/static/media/bg.d9346b96.png +0 -0
  54. package/dist/assets/static/media/bh.f06d5914.png +0 -0
  55. package/dist/assets/static/media/bi.4923e3a3.png +0 -0
  56. package/dist/assets/static/media/bj.019fa79b.png +0 -0
  57. package/dist/assets/static/media/bn.077671e2.png +0 -0
  58. package/dist/assets/static/media/bo.8fb15fc6.png +0 -0
  59. package/dist/assets/static/media/br.ec051f0c.png +0 -0
  60. package/dist/assets/static/media/bs.a74a126f.png +0 -0
  61. package/dist/assets/static/media/bt.4217b804.png +0 -0
  62. package/dist/assets/static/media/bw.21fe1567.png +0 -0
  63. package/dist/assets/static/media/by.d247fe16.png +0 -0
  64. package/dist/assets/static/media/bz.98ec59f6.png +0 -0
  65. package/dist/assets/static/media/ca.25743e11.png +0 -0
  66. package/dist/assets/static/media/cd.a5bfda53.png +0 -0
  67. package/dist/assets/static/media/cf.de7d5d92.png +0 -0
  68. package/dist/assets/static/media/cg.a47b626b.png +0 -0
  69. package/dist/assets/static/media/ch.445f47a1.png +0 -0
  70. package/dist/assets/static/media/ci.a6009c5b.png +0 -0
  71. package/dist/assets/static/media/cl.de1d715e.png +0 -0
  72. package/dist/assets/static/media/cm.3ce8a86a.png +0 -0
  73. package/dist/assets/static/media/cn.e6a26073.png +0 -0
  74. package/dist/assets/static/media/co.e9244faa.png +0 -0
  75. package/dist/assets/static/media/cr.c895e035.png +0 -0
  76. package/dist/assets/static/media/cu.e486c055.png +0 -0
  77. package/dist/assets/static/media/cv.a9585acf.png +0 -0
  78. package/dist/assets/static/media/cw.df13039d.png +0 -0
  79. package/dist/assets/static/media/cy.b31f43a9.png +0 -0
  80. package/dist/assets/static/media/cz.8ec5948b.png +0 -0
  81. package/dist/assets/static/media/de.d12f391a.png +0 -0
  82. package/dist/assets/static/media/dj.154c3580.png +0 -0
  83. package/dist/assets/static/media/dk.da382fe2.png +0 -0
  84. package/dist/assets/static/media/dm.f452e6cd.png +0 -0
  85. package/dist/assets/static/media/do.c6bd7637.png +0 -0
  86. package/dist/assets/static/media/dz.672a69c0.png +0 -0
  87. package/dist/assets/static/media/ec.349d9bd7.png +0 -0
  88. package/dist/assets/static/media/ee.2396205f.png +0 -0
  89. package/dist/assets/static/media/eg.ccbf3f45.png +0 -0
  90. package/dist/assets/static/media/eh.af65674a.png +0 -0
  91. package/dist/assets/static/media/er.21afb638.png +0 -0
  92. package/dist/assets/static/media/es.2a6eaee4.png +0 -0
  93. package/dist/assets/static/media/et.8beb65c8.png +0 -0
  94. package/dist/assets/static/media/fi.331f70fd.png +0 -0
  95. package/dist/assets/static/media/fj.7724d800.png +0 -0
  96. package/dist/assets/static/media/fm.eeaf71e9.png +0 -0
  97. package/dist/assets/static/media/fr.5d5ab008.png +0 -0
  98. package/dist/assets/static/media/ga.77ed474c.png +0 -0
  99. package/dist/assets/static/media/gb.e00065bf.png +0 -0
  100. package/dist/assets/static/media/gd.b4522267.png +0 -0
  101. package/dist/assets/static/media/ge.91a7654d.png +0 -0
  102. package/dist/assets/static/media/gh.4759f92f.png +0 -0
  103. package/dist/assets/static/media/gm.81cd9f75.png +0 -0
  104. package/dist/assets/static/media/gn.9f3d376e.png +0 -0
  105. package/dist/assets/static/media/gq.e8ad58be.png +0 -0
  106. package/dist/assets/static/media/gr.26f3ac0b.png +0 -0
  107. package/dist/assets/static/media/gt.9d81c52e.png +0 -0
  108. package/dist/assets/static/media/gw.dc906982.png +0 -0
  109. package/dist/assets/static/media/gy.a4f62b6c.png +0 -0
  110. package/dist/assets/static/media/hk.56555c3f.png +0 -0
  111. package/dist/assets/static/media/hn.64ee6aad.png +0 -0
  112. package/dist/assets/static/media/hr.93ebecd3.png +0 -0
  113. package/dist/assets/static/media/ht.42ca1596.png +0 -0
  114. package/dist/assets/static/media/hu.bb30f05d.png +0 -0
  115. package/dist/assets/static/media/id.2cb49f2d.png +0 -0
  116. package/dist/assets/static/media/ie.b4dd1f19.png +0 -0
  117. package/dist/assets/static/media/il.cd1d1faf.png +0 -0
  118. package/dist/assets/static/media/in.2df03847.png +0 -0
  119. package/dist/assets/static/media/iq.a9b670ab.png +0 -0
  120. package/dist/assets/static/media/ir.9a3de085.png +0 -0
  121. package/dist/assets/static/media/is.d88f4fc9.png +0 -0
  122. package/dist/assets/static/media/it.b73713e3.png +0 -0
  123. package/dist/assets/static/media/je.0353f56a.png +0 -0
  124. package/dist/assets/static/media/jm.20330ef4.png +0 -0
  125. package/dist/assets/static/media/jo.eb66f1d1.png +0 -0
  126. package/dist/assets/static/media/jp.63e382ae.png +0 -0
  127. package/dist/assets/static/media/ke.ab2e43b8.png +0 -0
  128. package/dist/assets/static/media/kg.2c47c2af.png +0 -0
  129. package/dist/assets/static/media/kh.4732c810.png +0 -0
  130. package/dist/assets/static/media/ki.5fba09fd.png +0 -0
  131. package/dist/assets/static/media/km.7bbed3e9.png +0 -0
  132. package/dist/assets/static/media/kn.a9595a16.png +0 -0
  133. package/dist/assets/static/media/kp.8a4dc30a.png +0 -0
  134. package/dist/assets/static/media/kr.5273be1d.png +0 -0
  135. package/dist/assets/static/media/ks.99f78645.png +0 -0
  136. package/dist/assets/static/media/kw.af3521bc.png +0 -0
  137. package/dist/assets/static/media/kz.ea47ef79.png +0 -0
  138. package/dist/assets/static/media/la.78a598d7.png +0 -0
  139. package/dist/assets/static/media/lb.7a7c15a9.png +0 -0
  140. package/dist/assets/static/media/lc.6083a4ff.png +0 -0
  141. package/dist/assets/static/media/li.61c564a4.png +0 -0
  142. package/dist/assets/static/media/lk.6fa85802.png +0 -0
  143. package/dist/assets/static/media/lr.8063f7db.png +0 -0
  144. package/dist/assets/static/media/ls.901ddb71.png +0 -0
  145. package/dist/assets/static/media/lt.9209ace3.png +0 -0
  146. package/dist/assets/static/media/lu.c9872bc1.png +0 -0
  147. package/dist/assets/static/media/lv.7bcacf0a.png +0 -0
  148. package/dist/assets/static/media/ly.2830aa63.png +0 -0
  149. package/dist/assets/static/media/ma.ce5f697b.png +0 -0
  150. package/dist/assets/static/media/mc.4bd5d57a.png +0 -0
  151. package/dist/assets/static/media/md.fb4b5bdf.png +0 -0
  152. package/dist/assets/static/media/me.1f1d1772.png +0 -0
  153. package/dist/assets/static/media/mg.89101bd2.png +0 -0
  154. package/dist/assets/static/media/mh.ff11dff7.png +0 -0
  155. package/dist/assets/static/media/mk.8420e604.png +0 -0
  156. package/dist/assets/static/media/ml.4db47c66.png +0 -0
  157. package/dist/assets/static/media/mm.8e4ac30a.png +0 -0
  158. package/dist/assets/static/media/mn.dc1daa04.png +0 -0
  159. package/dist/assets/static/media/mr.7cbca6d0.png +0 -0
  160. package/dist/assets/static/media/mt.28a4b863.png +0 -0
  161. package/dist/assets/static/media/mu.d93db6c7.png +0 -0
  162. package/dist/assets/static/media/mv.7d026bf1.png +0 -0
  163. package/dist/assets/static/media/mw.960cd4fb.png +0 -0
  164. package/dist/assets/static/media/mx.39b78eb2.png +0 -0
  165. package/dist/assets/static/media/my.916a8392.png +0 -0
  166. package/dist/assets/static/media/mz.facb4ea3.png +0 -0
  167. package/dist/assets/static/media/na.472666a9.png +0 -0
  168. package/dist/assets/static/media/ne.d774701f.png +0 -0
  169. package/dist/assets/static/media/ng.7b06a49f.png +0 -0
  170. package/dist/assets/static/media/ni.7140131c.png +0 -0
  171. package/dist/assets/static/media/nl.4c04aa96.png +0 -0
  172. package/dist/assets/static/media/no.c19eb00d.png +0 -0
  173. package/dist/assets/static/media/np.54fb4f2f.png +0 -0
  174. package/dist/assets/static/media/nr.7527cc38.png +0 -0
  175. package/dist/assets/static/media/nz.738be05b.png +0 -0
  176. package/dist/assets/static/media/om.b25e0a17.png +0 -0
  177. package/dist/assets/static/media/pa.b28a9059.png +0 -0
  178. package/dist/assets/static/media/pe.c1fc1d96.png +0 -0
  179. package/dist/assets/static/media/pg.380115db.png +0 -0
  180. package/dist/assets/static/media/ph.02199ddc.png +0 -0
  181. package/dist/assets/static/media/pk.094f9517.png +0 -0
  182. package/dist/assets/static/media/pl.41521283.png +0 -0
  183. package/dist/assets/static/media/pt.1f82dc04.png +0 -0
  184. package/dist/assets/static/media/pw.a26c2316.png +0 -0
  185. package/dist/assets/static/media/py.926c65ed.png +0 -0
  186. package/dist/assets/static/media/qa.c6a3c20e.png +0 -0
  187. package/dist/assets/static/media/ro.a36876c9.png +0 -0
  188. package/dist/assets/static/media/rs.c6629de8.png +0 -0
  189. package/dist/assets/static/media/ru.a9b948c1.png +0 -0
  190. package/dist/assets/static/media/rw.e8aecba0.png +0 -0
  191. package/dist/assets/static/media/sa.859049c8.png +0 -0
  192. package/dist/assets/static/media/sb.4ad27b27.png +0 -0
  193. package/dist/assets/static/media/sc.3293efde.png +0 -0
  194. package/dist/assets/static/media/sd.19c94faa.png +0 -0
  195. package/dist/assets/static/media/se.195b3f93.png +0 -0
  196. package/dist/assets/static/media/sg.19d81907.png +0 -0
  197. package/dist/assets/static/media/si.367c5443.png +0 -0
  198. package/dist/assets/static/media/sk.4e5b8a39.png +0 -0
  199. package/dist/assets/static/media/sl.4b174b1c.png +0 -0
  200. package/dist/assets/static/media/sm.2cba3dac.png +0 -0
  201. package/dist/assets/static/media/sn.a4c1041d.png +0 -0
  202. package/dist/assets/static/media/so.b455e3bf.png +0 -0
  203. package/dist/assets/static/media/sr.5adc1c00.png +0 -0
  204. package/dist/assets/static/media/st.5ae44155.png +0 -0
  205. package/dist/assets/static/media/sv.43aa6cdf.png +0 -0
  206. package/dist/assets/static/media/sy.0fbd24f7.png +0 -0
  207. package/dist/assets/static/media/sz.ff204912.png +0 -0
  208. package/dist/assets/static/media/td.c7aa2a4e.png +0 -0
  209. package/dist/assets/static/media/tg.857c3bec.png +0 -0
  210. package/dist/assets/static/media/th.683600c7.png +0 -0
  211. package/dist/assets/static/media/tj.d20c5570.png +0 -0
  212. package/dist/assets/static/media/tl.5edd8ea7.png +0 -0
  213. package/dist/assets/static/media/tm.15960215.png +0 -0
  214. package/dist/assets/static/media/tn.40df718e.png +0 -0
  215. package/dist/assets/static/media/to.c3b054df.png +0 -0
  216. package/dist/assets/static/media/tr.adeace6d.png +0 -0
  217. package/dist/assets/static/media/tt.839bd7f1.png +0 -0
  218. package/dist/assets/static/media/tv.628cae3e.png +0 -0
  219. package/dist/assets/static/media/tw.4e885914.png +0 -0
  220. package/dist/assets/static/media/tz.b2f0dc37.png +0 -0
  221. package/dist/assets/static/media/ua.6b103313.png +0 -0
  222. package/dist/assets/static/media/ug.c84042fc.png +0 -0
  223. package/dist/assets/static/media/us.8523c31d.png +0 -0
  224. package/dist/assets/static/media/uy.a943f85e.png +0 -0
  225. package/dist/assets/static/media/uz.25552673.png +0 -0
  226. package/dist/assets/static/media/va.a29e1b53.png +0 -0
  227. package/dist/assets/static/media/vc.7480bd37.png +0 -0
  228. package/dist/assets/static/media/ve.fd4273c2.png +0 -0
  229. package/dist/assets/static/media/vn.7d2eff1b.png +0 -0
  230. package/dist/assets/static/media/vu.48b64cf3.png +0 -0
  231. package/dist/assets/static/media/ws.f3d9202f.png +0 -0
  232. package/dist/assets/static/media/ye.311a0e50.png +0 -0
  233. package/dist/assets/static/media/za.090a856f.png +0 -0
  234. package/dist/assets/static/media/zm.8371e197.png +0 -0
  235. package/dist/assets/static/media/zw.a6809447.png +0 -0
  236. package/dist/index.js +1 -436
  237. package/node_modules/async/CHANGELOG.md +3 -0
  238. package/node_modules/async/dist/async.js +3 -0
  239. package/node_modules/async/dist/async.min.js +1 -1
  240. package/node_modules/async/dist/async.min.map +1 -1
  241. package/node_modules/async/internal/iterator.js +3 -0
  242. package/node_modules/async/package.json +1 -1
  243. package/node_modules/geoip-country/README.md +10 -0
  244. package/node_modules/geoip-country/data/geoip-country.dat +0 -0
  245. package/node_modules/geoip-country/data/geoip-country6.dat +0 -0
  246. package/node_modules/geoip-country/lib/geoip.js +34 -0
  247. package/node_modules/geoip-country/package.json +3 -4
  248. package/node_modules/geoip-country/scripts/updatedb.js +4 -7
  249. package/node_modules/geoip-country/test/tests.js +1 -0
  250. package/node_modules/glob/README.md +3 -0
  251. package/node_modules/glob/common.js +4 -0
  252. package/node_modules/glob/glob.js +8 -6
  253. package/node_modules/glob/package.json +6 -2
  254. package/node_modules/glob/sync.js +10 -8
  255. package/node_modules/minimatch/README.md +22 -1
  256. package/node_modules/minimatch/minimatch.js +93 -69
  257. package/node_modules/minimatch/package.json +6 -3
  258. package/package.json +132 -148
  259. package/dist/assets/static/css/436.d8500a1f0d02633b4a0d.css +0 -1
  260. package/dist/assets/static/css/main.2ebaf7d2bdfde0e34b47.css +0 -1
  261. package/dist/assets/static/js/436.7a384b15.chunk.js +0 -1
  262. package/dist/assets/static/js/770.b668eaab.chunk.js +0 -1
  263. package/dist/assets/static/js/834.330395c7.chunk.js +0 -1
  264. package/dist/assets/static/js/90.5a95cd85.chunk.js +0 -1
  265. package/dist/assets/static/js/about.e3123c78.chunk.js +0 -1
  266. package/dist/assets/static/js/flag1.ecb9d518.chunk.js +0 -1
  267. package/dist/assets/static/js/flag2.acd46c7c.chunk.js +0 -1
  268. package/dist/assets/static/js/flag3.e5ce5887.chunk.js +0 -1
  269. package/dist/assets/static/js/flag6.e4cc84b7.chunk.js +0 -1
  270. package/dist/assets/static/js/i18n1.484157f0.chunk.js +0 -1
  271. package/dist/assets/static/js/i18n10.53e82cec.chunk.js +0 -1
  272. package/dist/assets/static/js/i18n13.861f4e1c.chunk.js +0 -1
  273. package/dist/assets/static/js/i18n14.4776d86f.chunk.js +0 -1
  274. package/dist/assets/static/js/i18n15.b615f4fb.chunk.js +0 -1
  275. package/dist/assets/static/js/i18n17.96921c98.chunk.js +0 -1
  276. package/dist/assets/static/js/i18n18.c3b75c54.chunk.js +0 -1
  277. package/dist/assets/static/js/i18n20.7967370d.chunk.js +0 -1
  278. package/dist/assets/static/js/i18n21.74d654b0.chunk.js +0 -1
  279. package/dist/assets/static/js/i18n25.42e2bf7c.chunk.js +0 -1
  280. package/dist/assets/static/js/i18n27.46f3b361.chunk.js +0 -1
  281. package/dist/assets/static/js/i18n3.5fe5c06f.chunk.js +0 -1
  282. package/dist/assets/static/js/i18n5.e1954075.chunk.js +0 -1
  283. package/dist/assets/static/js/i18n6.16c7f0c4.chunk.js +0 -1
  284. package/dist/assets/static/js/i18n8.1f3d8301.chunk.js +0 -1
  285. package/dist/assets/static/js/i18n9.023b4728.chunk.js +0 -1
  286. package/dist/assets/static/js/main.0345ab31.js +0 -1
  287. package/node_modules/glob/changelog.md +0 -67
@@ -40,7 +40,6 @@
40
40
 
41
41
  module.exports = glob
42
42
 
43
- var fs = require('fs')
44
43
  var rp = require('fs.realpath')
45
44
  var minimatch = require('minimatch')
46
45
  var Minimatch = minimatch.Minimatch
@@ -343,7 +342,10 @@ Glob.prototype._process = function (pattern, index, inGlobStar, cb) {
343
342
  var read
344
343
  if (prefix === null)
345
344
  read = '.'
346
- else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
345
+ else if (isAbsolute(prefix) ||
346
+ isAbsolute(pattern.map(function (p) {
347
+ return typeof p === 'string' ? p : '[*]'
348
+ }).join('/'))) {
347
349
  if (!prefix || !isAbsolute(prefix))
348
350
  prefix = '/' + prefix
349
351
  read = prefix
@@ -501,7 +503,7 @@ Glob.prototype._readdirInGlobStar = function (abs, cb) {
501
503
  var lstatcb = inflight(lstatkey, lstatcb_)
502
504
 
503
505
  if (lstatcb)
504
- fs.lstat(abs, lstatcb)
506
+ self.fs.lstat(abs, lstatcb)
505
507
 
506
508
  function lstatcb_ (er, lstat) {
507
509
  if (er && er.code === 'ENOENT')
@@ -542,7 +544,7 @@ Glob.prototype._readdir = function (abs, inGlobStar, cb) {
542
544
  }
543
545
 
544
546
  var self = this
545
- fs.readdir(abs, readdirCb(this, abs, cb))
547
+ self.fs.readdir(abs, readdirCb(this, abs, cb))
546
548
  }
547
549
 
548
550
  function readdirCb (self, abs, cb) {
@@ -746,13 +748,13 @@ Glob.prototype._stat = function (f, cb) {
746
748
  var self = this
747
749
  var statcb = inflight('stat\0' + abs, lstatcb_)
748
750
  if (statcb)
749
- fs.lstat(abs, statcb)
751
+ self.fs.lstat(abs, statcb)
750
752
 
751
753
  function lstatcb_ (er, lstat) {
752
754
  if (lstat && lstat.isSymbolicLink()) {
753
755
  // If it's a symlink, then treat it as the target, unless
754
756
  // the target does not exist, then treat it as a file.
755
- return fs.stat(abs, function (er, stat) {
757
+ return self.fs.stat(abs, function (er, stat) {
756
758
  if (er)
757
759
  self._stat2(f, abs, null, lstat, cb)
758
760
  else
@@ -2,7 +2,10 @@
2
2
  "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
3
3
  "name": "glob",
4
4
  "description": "a little globber",
5
- "version": "7.1.7",
5
+ "version": "7.2.3",
6
+ "publishConfig": {
7
+ "tag": "v7-legacy"
8
+ },
6
9
  "repository": {
7
10
  "type": "git",
8
11
  "url": "git://github.com/isaacs/node-glob.git"
@@ -20,11 +23,12 @@
20
23
  "fs.realpath": "^1.0.0",
21
24
  "inflight": "^1.0.4",
22
25
  "inherits": "2",
23
- "minimatch": "^3.0.4",
26
+ "minimatch": "^3.1.1",
24
27
  "once": "^1.3.0",
25
28
  "path-is-absolute": "^1.0.0"
26
29
  },
27
30
  "devDependencies": {
31
+ "memfs": "^3.2.0",
28
32
  "mkdirp": "0",
29
33
  "rimraf": "^2.2.8",
30
34
  "tap": "^15.0.6",
@@ -1,7 +1,6 @@
1
1
  module.exports = globSync
2
2
  globSync.GlobSync = GlobSync
3
3
 
4
- var fs = require('fs')
5
4
  var rp = require('fs.realpath')
6
5
  var minimatch = require('minimatch')
7
6
  var Minimatch = minimatch.Minimatch
@@ -49,7 +48,7 @@ function GlobSync (pattern, options) {
49
48
  }
50
49
 
51
50
  GlobSync.prototype._finish = function () {
52
- assert(this instanceof GlobSync)
51
+ assert.ok(this instanceof GlobSync)
53
52
  if (this.realpath) {
54
53
  var self = this
55
54
  this.matches.forEach(function (matchset, index) {
@@ -73,7 +72,7 @@ GlobSync.prototype._finish = function () {
73
72
 
74
73
 
75
74
  GlobSync.prototype._process = function (pattern, index, inGlobStar) {
76
- assert(this instanceof GlobSync)
75
+ assert.ok(this instanceof GlobSync)
77
76
 
78
77
  // Get the first [n] parts of pattern that are all strings.
79
78
  var n = 0
@@ -110,7 +109,10 @@ GlobSync.prototype._process = function (pattern, index, inGlobStar) {
110
109
  var read
111
110
  if (prefix === null)
112
111
  read = '.'
113
- else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
112
+ else if (isAbsolute(prefix) ||
113
+ isAbsolute(pattern.map(function (p) {
114
+ return typeof p === 'string' ? p : '[*]'
115
+ }).join('/'))) {
114
116
  if (!prefix || !isAbsolute(prefix))
115
117
  prefix = '/' + prefix
116
118
  read = prefix
@@ -246,7 +248,7 @@ GlobSync.prototype._readdirInGlobStar = function (abs) {
246
248
  var lstat
247
249
  var stat
248
250
  try {
249
- lstat = fs.lstatSync(abs)
251
+ lstat = this.fs.lstatSync(abs)
250
252
  } catch (er) {
251
253
  if (er.code === 'ENOENT') {
252
254
  // lstat failed, doesn't exist
@@ -283,7 +285,7 @@ GlobSync.prototype._readdir = function (abs, inGlobStar) {
283
285
  }
284
286
 
285
287
  try {
286
- return this._readdirEntries(abs, fs.readdirSync(abs))
288
+ return this._readdirEntries(abs, this.fs.readdirSync(abs))
287
289
  } catch (er) {
288
290
  this._readdirError(abs, er)
289
291
  return null
@@ -442,7 +444,7 @@ GlobSync.prototype._stat = function (f) {
442
444
  if (!stat) {
443
445
  var lstat
444
446
  try {
445
- lstat = fs.lstatSync(abs)
447
+ lstat = this.fs.lstatSync(abs)
446
448
  } catch (er) {
447
449
  if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) {
448
450
  this.statCache[abs] = false
@@ -452,7 +454,7 @@ GlobSync.prototype._stat = function (f) {
452
454
 
453
455
  if (lstat && lstat.isSymbolicLink()) {
454
456
  try {
455
- stat = fs.statSync(abs)
457
+ stat = this.fs.statSync(abs)
456
458
  } catch (er) {
457
459
  stat = lstat
458
460
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  A minimal matching utility.
4
4
 
5
- [![Build Status](https://secure.travis-ci.org/isaacs/minimatch.svg)](http://travis-ci.org/isaacs/minimatch)
5
+ [![Build Status](https://travis-ci.org/isaacs/minimatch.svg?branch=master)](http://travis-ci.org/isaacs/minimatch)
6
6
 
7
7
 
8
8
  This is the matching library used internally by npm.
@@ -171,6 +171,27 @@ Suppress the behavior of treating a leading `!` character as negation.
171
171
  Returns from negate expressions the same as if they were not negated.
172
172
  (Ie, true on a hit, false on a miss.)
173
173
 
174
+ ### partial
175
+
176
+ Compare a partial path to a pattern. As long as the parts of the path that
177
+ are present are not contradicted by the pattern, it will be treated as a
178
+ match. This is useful in applications where you're walking through a
179
+ folder structure, and don't yet have the full path, but want to ensure that
180
+ you do not walk down paths that can never be a match.
181
+
182
+ For example,
183
+
184
+ ```js
185
+ minimatch('/a/b', '/a/*/c/d', { partial: true }) // true, might be /a/b/c/d
186
+ minimatch('/a/b', '/**/d', { partial: true }) // true, might be /a/b/.../d
187
+ minimatch('/x/y/z', '/a/**/z', { partial: true }) // false, because x !== a
188
+ ```
189
+
190
+ ### allowWindowsEscape
191
+
192
+ Windows path separator `\` is by default converted to `/`, which
193
+ prohibits the usage of `\` as a escape character. This flag skips that
194
+ behavior and allows using the escape character.
174
195
 
175
196
  ## Comparisons to other fnmatch/glob implementations
176
197
 
@@ -1,10 +1,10 @@
1
1
  module.exports = minimatch
2
2
  minimatch.Minimatch = Minimatch
3
3
 
4
- var path = { sep: '/' }
5
- try {
6
- path = require('path')
7
- } catch (er) {}
4
+ var path = (function () { try { return require('path') } catch (e) {}}()) || {
5
+ sep: '/'
6
+ }
7
+ minimatch.sep = path.sep
8
8
 
9
9
  var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}
10
10
  var expand = require('brace-expansion')
@@ -56,43 +56,64 @@ function filter (pattern, options) {
56
56
  }
57
57
 
58
58
  function ext (a, b) {
59
- a = a || {}
60
59
  b = b || {}
61
60
  var t = {}
62
- Object.keys(b).forEach(function (k) {
63
- t[k] = b[k]
64
- })
65
61
  Object.keys(a).forEach(function (k) {
66
62
  t[k] = a[k]
67
63
  })
64
+ Object.keys(b).forEach(function (k) {
65
+ t[k] = b[k]
66
+ })
68
67
  return t
69
68
  }
70
69
 
71
70
  minimatch.defaults = function (def) {
72
- if (!def || !Object.keys(def).length) return minimatch
71
+ if (!def || typeof def !== 'object' || !Object.keys(def).length) {
72
+ return minimatch
73
+ }
73
74
 
74
75
  var orig = minimatch
75
76
 
76
77
  var m = function minimatch (p, pattern, options) {
77
- return orig.minimatch(p, pattern, ext(def, options))
78
+ return orig(p, pattern, ext(def, options))
78
79
  }
79
80
 
80
81
  m.Minimatch = function Minimatch (pattern, options) {
81
82
  return new orig.Minimatch(pattern, ext(def, options))
82
83
  }
84
+ m.Minimatch.defaults = function defaults (options) {
85
+ return orig.defaults(ext(def, options)).Minimatch
86
+ }
87
+
88
+ m.filter = function filter (pattern, options) {
89
+ return orig.filter(pattern, ext(def, options))
90
+ }
91
+
92
+ m.defaults = function defaults (options) {
93
+ return orig.defaults(ext(def, options))
94
+ }
95
+
96
+ m.makeRe = function makeRe (pattern, options) {
97
+ return orig.makeRe(pattern, ext(def, options))
98
+ }
99
+
100
+ m.braceExpand = function braceExpand (pattern, options) {
101
+ return orig.braceExpand(pattern, ext(def, options))
102
+ }
103
+
104
+ m.match = function (list, pattern, options) {
105
+ return orig.match(list, pattern, ext(def, options))
106
+ }
83
107
 
84
108
  return m
85
109
  }
86
110
 
87
111
  Minimatch.defaults = function (def) {
88
- if (!def || !Object.keys(def).length) return Minimatch
89
112
  return minimatch.defaults(def).Minimatch
90
113
  }
91
114
 
92
115
  function minimatch (p, pattern, options) {
93
- if (typeof pattern !== 'string') {
94
- throw new TypeError('glob pattern string required')
95
- }
116
+ assertValidPattern(pattern)
96
117
 
97
118
  if (!options) options = {}
98
119
 
@@ -101,9 +122,6 @@ function minimatch (p, pattern, options) {
101
122
  return false
102
123
  }
103
124
 
104
- // "" only matches ""
105
- if (pattern.trim() === '') return p === ''
106
-
107
125
  return new Minimatch(pattern, options).match(p)
108
126
  }
109
127
 
@@ -112,15 +130,14 @@ function Minimatch (pattern, options) {
112
130
  return new Minimatch(pattern, options)
113
131
  }
114
132
 
115
- if (typeof pattern !== 'string') {
116
- throw new TypeError('glob pattern string required')
117
- }
133
+ assertValidPattern(pattern)
118
134
 
119
135
  if (!options) options = {}
136
+
120
137
  pattern = pattern.trim()
121
138
 
122
139
  // windows support: need to use /, not \
123
- if (path.sep !== '/') {
140
+ if (!options.allowWindowsEscape && path.sep !== '/') {
124
141
  pattern = pattern.split(path.sep).join('/')
125
142
  }
126
143
 
@@ -131,6 +148,7 @@ function Minimatch (pattern, options) {
131
148
  this.negate = false
132
149
  this.comment = false
133
150
  this.empty = false
151
+ this.partial = !!options.partial
134
152
 
135
153
  // make the set of regexps etc.
136
154
  this.make()
@@ -140,9 +158,6 @@ Minimatch.prototype.debug = function () {}
140
158
 
141
159
  Minimatch.prototype.make = make
142
160
  function make () {
143
- // don't do it more than once.
144
- if (this._made) return
145
-
146
161
  var pattern = this.pattern
147
162
  var options = this.options
148
163
 
@@ -162,7 +177,7 @@ function make () {
162
177
  // step 2: expand braces
163
178
  var set = this.globSet = this.braceExpand()
164
179
 
165
- if (options.debug) this.debug = console.error
180
+ if (options.debug) this.debug = function debug() { console.error.apply(console, arguments) }
166
181
 
167
182
  this.debug(this.pattern, set)
168
183
 
@@ -242,12 +257,11 @@ function braceExpand (pattern, options) {
242
257
  pattern = typeof pattern === 'undefined'
243
258
  ? this.pattern : pattern
244
259
 
245
- if (typeof pattern === 'undefined') {
246
- throw new TypeError('undefined pattern')
247
- }
260
+ assertValidPattern(pattern)
248
261
 
249
- if (options.nobrace ||
250
- !pattern.match(/\{.*\}/)) {
262
+ // Thanks to Yeting Li <https://github.com/yetingli> for
263
+ // improving this regexp to avoid a ReDOS vulnerability.
264
+ if (options.nobrace || !/\{(?:(?!\{).)*\}/.test(pattern)) {
251
265
  // shortcut. no need to expand.
252
266
  return [pattern]
253
267
  }
@@ -255,6 +269,17 @@ function braceExpand (pattern, options) {
255
269
  return expand(pattern)
256
270
  }
257
271
 
272
+ var MAX_PATTERN_LENGTH = 1024 * 64
273
+ var assertValidPattern = function (pattern) {
274
+ if (typeof pattern !== 'string') {
275
+ throw new TypeError('invalid pattern')
276
+ }
277
+
278
+ if (pattern.length > MAX_PATTERN_LENGTH) {
279
+ throw new TypeError('pattern is too long')
280
+ }
281
+ }
282
+
258
283
  // parse a component of the expanded set.
259
284
  // At this point, no pattern may contain "/" in it
260
285
  // so we're going to return a 2d array, where each entry is the full
@@ -269,14 +294,17 @@ function braceExpand (pattern, options) {
269
294
  Minimatch.prototype.parse = parse
270
295
  var SUBPARSE = {}
271
296
  function parse (pattern, isSub) {
272
- if (pattern.length > 1024 * 64) {
273
- throw new TypeError('pattern is too long')
274
- }
297
+ assertValidPattern(pattern)
275
298
 
276
299
  var options = this.options
277
300
 
278
301
  // shortcuts
279
- if (!options.noglobstar && pattern === '**') return GLOBSTAR
302
+ if (pattern === '**') {
303
+ if (!options.noglobstar)
304
+ return GLOBSTAR
305
+ else
306
+ pattern = '*'
307
+ }
280
308
  if (pattern === '') return ''
281
309
 
282
310
  var re = ''
@@ -332,10 +360,12 @@ function parse (pattern, isSub) {
332
360
  }
333
361
 
334
362
  switch (c) {
335
- case '/':
363
+ /* istanbul ignore next */
364
+ case '/': {
336
365
  // completely not allowed, even escaped.
337
366
  // Should already be path-split by now.
338
367
  return false
368
+ }
339
369
 
340
370
  case '\\':
341
371
  clearStateChar()
@@ -454,25 +484,23 @@ function parse (pattern, isSub) {
454
484
 
455
485
  // handle the case where we left a class open.
456
486
  // "[z-a]" is valid, equivalent to "\[z-a\]"
457
- if (inClass) {
458
- // split where the last [ was, make sure we don't have
459
- // an invalid re. if so, re-walk the contents of the
460
- // would-be class to re-translate any characters that
461
- // were passed through as-is
462
- // TODO: It would probably be faster to determine this
463
- // without a try/catch and a new RegExp, but it's tricky
464
- // to do safely. For now, this is safe and works.
465
- var cs = pattern.substring(classStart + 1, i)
466
- try {
467
- RegExp('[' + cs + ']')
468
- } catch (er) {
469
- // not a valid class!
470
- var sp = this.parse(cs, SUBPARSE)
471
- re = re.substr(0, reClassStart) + '\\[' + sp[0] + '\\]'
472
- hasMagic = hasMagic || sp[1]
473
- inClass = false
474
- continue
475
- }
487
+ // split where the last [ was, make sure we don't have
488
+ // an invalid re. if so, re-walk the contents of the
489
+ // would-be class to re-translate any characters that
490
+ // were passed through as-is
491
+ // TODO: It would probably be faster to determine this
492
+ // without a try/catch and a new RegExp, but it's tricky
493
+ // to do safely. For now, this is safe and works.
494
+ var cs = pattern.substring(classStart + 1, i)
495
+ try {
496
+ RegExp('[' + cs + ']')
497
+ } catch (er) {
498
+ // not a valid class!
499
+ var sp = this.parse(cs, SUBPARSE)
500
+ re = re.substr(0, reClassStart) + '\\[' + sp[0] + '\\]'
501
+ hasMagic = hasMagic || sp[1]
502
+ inClass = false
503
+ continue
476
504
  }
477
505
 
478
506
  // finish up the class.
@@ -556,9 +584,7 @@ function parse (pattern, isSub) {
556
584
  // something that could conceivably capture a dot
557
585
  var addPatternStart = false
558
586
  switch (re.charAt(0)) {
559
- case '.':
560
- case '[':
561
- case '(': addPatternStart = true
587
+ case '[': case '.': case '(': addPatternStart = true
562
588
  }
563
589
 
564
590
  // Hack to work around lack of negative lookbehind in JS
@@ -620,7 +646,7 @@ function parse (pattern, isSub) {
620
646
  var flags = options.nocase ? 'i' : ''
621
647
  try {
622
648
  var regExp = new RegExp('^' + re + '$', flags)
623
- } catch (er) {
649
+ } catch (er) /* istanbul ignore next - should be impossible */ {
624
650
  // If it was an invalid regular expression, then it can't match
625
651
  // anything. This trick looks for a character after the end of
626
652
  // the string, which is of course impossible, except in multi-line
@@ -678,7 +704,7 @@ function makeRe () {
678
704
 
679
705
  try {
680
706
  this.regexp = new RegExp(re, flags)
681
- } catch (ex) {
707
+ } catch (ex) /* istanbul ignore next - should be impossible */ {
682
708
  this.regexp = false
683
709
  }
684
710
  return this.regexp
@@ -696,8 +722,8 @@ minimatch.match = function (list, pattern, options) {
696
722
  return list
697
723
  }
698
724
 
699
- Minimatch.prototype.match = match
700
- function match (f, partial) {
725
+ Minimatch.prototype.match = function match (f, partial) {
726
+ if (typeof partial === 'undefined') partial = this.partial
701
727
  this.debug('match', f, this.pattern)
702
728
  // short-circuit in the case of busted things.
703
729
  // comments, etc.
@@ -779,6 +805,7 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) {
779
805
 
780
806
  // should be impossible.
781
807
  // some invalid regexp stuff in the set.
808
+ /* istanbul ignore if */
782
809
  if (p === false) return false
783
810
 
784
811
  if (p === GLOBSTAR) {
@@ -852,6 +879,7 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) {
852
879
  // no match was found.
853
880
  // However, in partial mode, we can't say this is necessarily over.
854
881
  // If there's more *pattern* left, then
882
+ /* istanbul ignore if */
855
883
  if (partial) {
856
884
  // ran out of file
857
885
  this.debug('\n>>> no match, partial?', file, fr, pattern, pr)
@@ -865,11 +893,7 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) {
865
893
  // patterns with magic have been turned into regexps.
866
894
  var hit
867
895
  if (typeof p === 'string') {
868
- if (options.nocase) {
869
- hit = f.toLowerCase() === p.toLowerCase()
870
- } else {
871
- hit = f === p
872
- }
896
+ hit = f === p
873
897
  this.debug('string match', p, f, hit)
874
898
  } else {
875
899
  hit = f.match(p)
@@ -900,16 +924,16 @@ Minimatch.prototype.matchOne = function (file, pattern, partial) {
900
924
  // this is ok if we're doing the match as part of
901
925
  // a glob fs traversal.
902
926
  return partial
903
- } else if (pi === pl) {
927
+ } else /* istanbul ignore else */ if (pi === pl) {
904
928
  // ran out of pattern, still have file left.
905
929
  // this is only acceptable if we're on the very last
906
930
  // empty segment of a file with a trailing slash.
907
931
  // a/* should match a/b/
908
- var emptyFileEnd = (fi === fl - 1) && (file[fi] === '')
909
- return emptyFileEnd
932
+ return (fi === fl - 1) && (file[fi] === '')
910
933
  }
911
934
 
912
935
  // should be unreachable.
936
+ /* istanbul ignore next */
913
937
  throw new Error('wtf?')
914
938
  }
915
939
 
@@ -2,14 +2,17 @@
2
2
  "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me)",
3
3
  "name": "minimatch",
4
4
  "description": "a glob matcher in javascript",
5
- "version": "3.0.4",
5
+ "version": "3.1.2",
6
+ "publishConfig": {
7
+ "tag": "v3-legacy"
8
+ },
6
9
  "repository": {
7
10
  "type": "git",
8
11
  "url": "git://github.com/isaacs/minimatch.git"
9
12
  },
10
13
  "main": "minimatch.js",
11
14
  "scripts": {
12
- "test": "tap test/*.js --cov",
15
+ "test": "tap",
13
16
  "preversion": "npm test",
14
17
  "postversion": "npm publish",
15
18
  "postpublish": "git push origin --all; git push origin --tags"
@@ -21,7 +24,7 @@
21
24
  "brace-expansion": "^1.1.7"
22
25
  },
23
26
  "devDependencies": {
24
- "tap": "^10.3.2"
27
+ "tap": "^15.1.6"
25
28
  },
26
29
  "license": "ISC",
27
30
  "files": [