UrgentcareCLI 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (308) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -0
  3. data/Gemfile.lock +60 -25
  4. data/Notes +1 -1
  5. data/README.md +5 -5
  6. data/Rakefile +2 -0
  7. data/UrgentCare.gemspec +3 -3
  8. data/background.jpg +0 -0
  9. data/lib/UrgentCare.rb +3 -0
  10. data/lib/UrgentCare/CLI.rb +6 -2
  11. data/lib/UrgentCare/version.rb +1 -1
  12. data/lib/Urgentcare/Scraper.rb +65 -23
  13. data/node_modules/.bin/rimraf +1 -0
  14. data/node_modules/.package-lock.json +250 -0
  15. data/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  16. data/node_modules/balanced-match/LICENSE.md +21 -0
  17. data/node_modules/balanced-match/README.md +97 -0
  18. data/node_modules/balanced-match/index.js +62 -0
  19. data/node_modules/balanced-match/package.json +48 -0
  20. data/node_modules/brace-expansion/LICENSE +21 -0
  21. data/node_modules/brace-expansion/README.md +129 -0
  22. data/node_modules/brace-expansion/index.js +201 -0
  23. data/node_modules/brace-expansion/package.json +47 -0
  24. data/node_modules/concat-map/.travis.yml +4 -0
  25. data/node_modules/concat-map/LICENSE +18 -0
  26. data/node_modules/concat-map/README.markdown +62 -0
  27. data/node_modules/concat-map/example/map.js +6 -0
  28. data/node_modules/concat-map/index.js +13 -0
  29. data/node_modules/concat-map/package.json +43 -0
  30. data/node_modules/concat-map/test/map.js +39 -0
  31. data/node_modules/core-util-is/LICENSE +19 -0
  32. data/node_modules/core-util-is/README.md +3 -0
  33. data/node_modules/core-util-is/float.patch +604 -0
  34. data/node_modules/core-util-is/lib/util.js +107 -0
  35. data/node_modules/core-util-is/package.json +32 -0
  36. data/node_modules/core-util-is/test.js +68 -0
  37. data/node_modules/fs.realpath/LICENSE +43 -0
  38. data/node_modules/fs.realpath/README.md +33 -0
  39. data/node_modules/fs.realpath/index.js +66 -0
  40. data/node_modules/fs.realpath/old.js +303 -0
  41. data/node_modules/fs.realpath/package.json +26 -0
  42. data/node_modules/glob/LICENSE +21 -0
  43. data/node_modules/glob/README.md +375 -0
  44. data/node_modules/glob/changelog.md +67 -0
  45. data/node_modules/glob/common.js +234 -0
  46. data/node_modules/glob/glob.js +788 -0
  47. data/node_modules/glob/package.json +51 -0
  48. data/node_modules/glob/sync.js +484 -0
  49. data/node_modules/immediate/LICENSE.txt +20 -0
  50. data/node_modules/immediate/README.md +93 -0
  51. data/node_modules/immediate/dist/immediate.js +75 -0
  52. data/node_modules/immediate/dist/immediate.min.js +1 -0
  53. data/node_modules/immediate/lib/browser.js +69 -0
  54. data/node_modules/immediate/lib/index.js +73 -0
  55. data/node_modules/immediate/package.json +42 -0
  56. data/node_modules/inflight/LICENSE +15 -0
  57. data/node_modules/inflight/README.md +37 -0
  58. data/node_modules/inflight/inflight.js +54 -0
  59. data/node_modules/inflight/package.json +29 -0
  60. data/node_modules/inherits/LICENSE +16 -0
  61. data/node_modules/inherits/README.md +42 -0
  62. data/node_modules/inherits/inherits.js +9 -0
  63. data/node_modules/inherits/inherits_browser.js +27 -0
  64. data/node_modules/inherits/package.json +29 -0
  65. data/node_modules/isarray/.npmignore +1 -0
  66. data/node_modules/isarray/.travis.yml +4 -0
  67. data/node_modules/isarray/Makefile +6 -0
  68. data/node_modules/isarray/README.md +60 -0
  69. data/node_modules/isarray/component.json +19 -0
  70. data/node_modules/isarray/index.js +5 -0
  71. data/node_modules/isarray/package.json +45 -0
  72. data/node_modules/isarray/test.js +20 -0
  73. data/node_modules/jszip/.codeclimate.yml +16 -0
  74. data/node_modules/jszip/.editorconfig +8 -0
  75. data/node_modules/jszip/.jshintignore +1 -0
  76. data/node_modules/jszip/.jshintrc +21 -0
  77. data/node_modules/jszip/.travis.yml +17 -0
  78. data/node_modules/jszip/CHANGES.md +163 -0
  79. data/node_modules/jszip/LICENSE.markdown +651 -0
  80. data/node_modules/jszip/README.markdown +35 -0
  81. data/node_modules/jszip/dist/jszip.js +30 -0
  82. data/node_modules/jszip/dist/jszip.min.js +13 -0
  83. data/node_modules/jszip/index.d.ts +270 -0
  84. data/node_modules/jszip/lib/base64.js +106 -0
  85. data/node_modules/jszip/lib/compressedObject.js +74 -0
  86. data/node_modules/jszip/lib/compressions.js +14 -0
  87. data/node_modules/jszip/lib/crc32.js +77 -0
  88. data/node_modules/jszip/lib/defaults.js +11 -0
  89. data/node_modules/jszip/lib/external.js +19 -0
  90. data/node_modules/jszip/lib/flate.js +85 -0
  91. data/node_modules/jszip/lib/generate/ZipFileWorker.js +540 -0
  92. data/node_modules/jszip/lib/generate/index.js +57 -0
  93. data/node_modules/jszip/lib/index.js +52 -0
  94. data/node_modules/jszip/lib/license_header.js +11 -0
  95. data/node_modules/jszip/lib/load.js +81 -0
  96. data/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +74 -0
  97. data/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +42 -0
  98. data/node_modules/jszip/lib/nodejsUtils.js +57 -0
  99. data/node_modules/jszip/lib/object.js +389 -0
  100. data/node_modules/jszip/lib/readable-stream-browser.js +9 -0
  101. data/node_modules/jszip/lib/reader/ArrayReader.js +57 -0
  102. data/node_modules/jszip/lib/reader/DataReader.js +116 -0
  103. data/node_modules/jszip/lib/reader/NodeBufferReader.js +19 -0
  104. data/node_modules/jszip/lib/reader/StringReader.js +38 -0
  105. data/node_modules/jszip/lib/reader/Uint8ArrayReader.js +22 -0
  106. data/node_modules/jszip/lib/reader/readerFor.js +28 -0
  107. data/node_modules/jszip/lib/signature.js +7 -0
  108. data/node_modules/jszip/lib/stream/ConvertWorker.js +26 -0
  109. data/node_modules/jszip/lib/stream/Crc32Probe.js +24 -0
  110. data/node_modules/jszip/lib/stream/DataLengthProbe.js +29 -0
  111. data/node_modules/jszip/lib/stream/DataWorker.js +116 -0
  112. data/node_modules/jszip/lib/stream/GenericWorker.js +263 -0
  113. data/node_modules/jszip/lib/stream/StreamHelper.js +212 -0
  114. data/node_modules/jszip/lib/support.js +38 -0
  115. data/node_modules/jszip/lib/utf8.js +275 -0
  116. data/node_modules/jszip/lib/utils.js +476 -0
  117. data/node_modules/jszip/lib/zipEntries.js +262 -0
  118. data/node_modules/jszip/lib/zipEntry.js +294 -0
  119. data/node_modules/jszip/lib/zipObject.js +133 -0
  120. data/node_modules/jszip/package.json +63 -0
  121. data/node_modules/jszip/vendor/FileSaver.js +247 -0
  122. data/node_modules/lie/README.md +62 -0
  123. data/node_modules/lie/dist/lie.js +350 -0
  124. data/node_modules/lie/dist/lie.min.js +1 -0
  125. data/node_modules/lie/dist/lie.polyfill.js +358 -0
  126. data/node_modules/lie/dist/lie.polyfill.min.js +1 -0
  127. data/node_modules/lie/lib/browser.js +273 -0
  128. data/node_modules/lie/lib/index.js +298 -0
  129. data/node_modules/lie/license.md +7 -0
  130. data/node_modules/lie/lie.d.ts +244 -0
  131. data/node_modules/lie/package.json +69 -0
  132. data/node_modules/lie/polyfill.js +4 -0
  133. data/node_modules/minimatch/LICENSE +15 -0
  134. data/node_modules/minimatch/README.md +209 -0
  135. data/node_modules/minimatch/minimatch.js +923 -0
  136. data/node_modules/minimatch/package.json +30 -0
  137. data/node_modules/once/LICENSE +15 -0
  138. data/node_modules/once/README.md +79 -0
  139. data/node_modules/once/once.js +42 -0
  140. data/node_modules/once/package.json +33 -0
  141. data/node_modules/pako/CHANGELOG.md +164 -0
  142. data/node_modules/pako/LICENSE +21 -0
  143. data/node_modules/pako/README.md +191 -0
  144. data/node_modules/pako/dist/pako.js +6818 -0
  145. data/node_modules/pako/dist/pako.min.js +1 -0
  146. data/node_modules/pako/dist/pako_deflate.js +3997 -0
  147. data/node_modules/pako/dist/pako_deflate.min.js +1 -0
  148. data/node_modules/pako/dist/pako_inflate.js +3300 -0
  149. data/node_modules/pako/dist/pako_inflate.min.js +1 -0
  150. data/node_modules/pako/index.js +14 -0
  151. data/node_modules/pako/lib/deflate.js +400 -0
  152. data/node_modules/pako/lib/inflate.js +423 -0
  153. data/node_modules/pako/lib/utils/common.js +105 -0
  154. data/node_modules/pako/lib/utils/strings.js +187 -0
  155. data/node_modules/pako/lib/zlib/README +59 -0
  156. data/node_modules/pako/lib/zlib/adler32.js +51 -0
  157. data/node_modules/pako/lib/zlib/constants.js +68 -0
  158. data/node_modules/pako/lib/zlib/crc32.js +59 -0
  159. data/node_modules/pako/lib/zlib/deflate.js +1874 -0
  160. data/node_modules/pako/lib/zlib/gzheader.js +58 -0
  161. data/node_modules/pako/lib/zlib/inffast.js +345 -0
  162. data/node_modules/pako/lib/zlib/inflate.js +1556 -0
  163. data/node_modules/pako/lib/zlib/inftrees.js +343 -0
  164. data/node_modules/pako/lib/zlib/messages.js +32 -0
  165. data/node_modules/pako/lib/zlib/trees.js +1222 -0
  166. data/node_modules/pako/lib/zlib/zstream.js +47 -0
  167. data/node_modules/pako/package.json +44 -0
  168. data/node_modules/path-is-absolute/index.js +20 -0
  169. data/node_modules/path-is-absolute/license +21 -0
  170. data/node_modules/path-is-absolute/package.json +43 -0
  171. data/node_modules/path-is-absolute/readme.md +59 -0
  172. data/node_modules/process-nextick-args/index.js +45 -0
  173. data/node_modules/process-nextick-args/license.md +19 -0
  174. data/node_modules/process-nextick-args/package.json +25 -0
  175. data/node_modules/process-nextick-args/readme.md +18 -0
  176. data/node_modules/readable-stream/.travis.yml +34 -0
  177. data/node_modules/readable-stream/CONTRIBUTING.md +38 -0
  178. data/node_modules/readable-stream/GOVERNANCE.md +136 -0
  179. data/node_modules/readable-stream/LICENSE +47 -0
  180. data/node_modules/readable-stream/README.md +58 -0
  181. data/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
  182. data/node_modules/readable-stream/duplex-browser.js +1 -0
  183. data/node_modules/readable-stream/duplex.js +1 -0
  184. data/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
  185. data/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
  186. data/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
  187. data/node_modules/readable-stream/lib/_stream_transform.js +214 -0
  188. data/node_modules/readable-stream/lib/_stream_writable.js +687 -0
  189. data/node_modules/readable-stream/lib/internal/streams/BufferList.js +79 -0
  190. data/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  191. data/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
  192. data/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
  193. data/node_modules/readable-stream/package.json +52 -0
  194. data/node_modules/readable-stream/passthrough.js +1 -0
  195. data/node_modules/readable-stream/readable-browser.js +7 -0
  196. data/node_modules/readable-stream/readable.js +19 -0
  197. data/node_modules/readable-stream/transform.js +1 -0
  198. data/node_modules/readable-stream/writable-browser.js +1 -0
  199. data/node_modules/readable-stream/writable.js +8 -0
  200. data/node_modules/rimraf/LICENSE +15 -0
  201. data/node_modules/rimraf/README.md +101 -0
  202. data/node_modules/rimraf/bin.js +50 -0
  203. data/node_modules/rimraf/package.json +29 -0
  204. data/node_modules/rimraf/rimraf.js +372 -0
  205. data/node_modules/safe-buffer/LICENSE +21 -0
  206. data/node_modules/safe-buffer/README.md +584 -0
  207. data/node_modules/safe-buffer/index.d.ts +187 -0
  208. data/node_modules/safe-buffer/index.js +62 -0
  209. data/node_modules/safe-buffer/package.json +37 -0
  210. data/node_modules/selenium-webdriver/CHANGES.md +1114 -0
  211. data/node_modules/selenium-webdriver/LICENSE +202 -0
  212. data/node_modules/selenium-webdriver/NOTICE +2 -0
  213. data/node_modules/selenium-webdriver/README.md +229 -0
  214. data/node_modules/selenium-webdriver/chrome.js +295 -0
  215. data/node_modules/selenium-webdriver/chromium.js +829 -0
  216. data/node_modules/selenium-webdriver/devtools/CDPConnection.js +35 -0
  217. data/node_modules/selenium-webdriver/edge.js +224 -0
  218. data/node_modules/selenium-webdriver/example/chrome_android.js +45 -0
  219. data/node_modules/selenium-webdriver/example/chrome_mobile_emulation.js +46 -0
  220. data/node_modules/selenium-webdriver/example/firefox_channels.js +84 -0
  221. data/node_modules/selenium-webdriver/example/google_search.js +50 -0
  222. data/node_modules/selenium-webdriver/example/google_search_test.js +70 -0
  223. data/node_modules/selenium-webdriver/example/headless.js +63 -0
  224. data/node_modules/selenium-webdriver/example/logging.js +64 -0
  225. data/node_modules/selenium-webdriver/firefox.js +789 -0
  226. data/node_modules/selenium-webdriver/http/index.js +324 -0
  227. data/node_modules/selenium-webdriver/http/util.js +172 -0
  228. data/node_modules/selenium-webdriver/ie.js +503 -0
  229. data/node_modules/selenium-webdriver/index.js +825 -0
  230. data/node_modules/selenium-webdriver/io/exec.js +162 -0
  231. data/node_modules/selenium-webdriver/io/index.js +348 -0
  232. data/node_modules/selenium-webdriver/io/zip.js +223 -0
  233. data/node_modules/selenium-webdriver/lib/atoms/find-elements.js +123 -0
  234. data/node_modules/selenium-webdriver/lib/atoms/get-attribute.js +101 -0
  235. data/node_modules/selenium-webdriver/lib/atoms/is-displayed.js +101 -0
  236. data/node_modules/selenium-webdriver/lib/atoms/mutation-listener.js +55 -0
  237. data/node_modules/selenium-webdriver/lib/by.js +415 -0
  238. data/node_modules/selenium-webdriver/lib/capabilities.js +553 -0
  239. data/node_modules/selenium-webdriver/lib/command.js +206 -0
  240. data/node_modules/selenium-webdriver/lib/error.js +605 -0
  241. data/node_modules/selenium-webdriver/lib/http.js +704 -0
  242. data/node_modules/selenium-webdriver/lib/input.js +946 -0
  243. data/node_modules/selenium-webdriver/lib/logging.js +661 -0
  244. data/node_modules/selenium-webdriver/lib/promise.js +285 -0
  245. data/node_modules/selenium-webdriver/lib/proxy.js +212 -0
  246. data/node_modules/selenium-webdriver/lib/session.js +77 -0
  247. data/node_modules/selenium-webdriver/lib/symbols.js +37 -0
  248. data/node_modules/selenium-webdriver/lib/until.js +429 -0
  249. data/node_modules/selenium-webdriver/lib/webdriver.js +2919 -0
  250. data/node_modules/selenium-webdriver/net/index.js +107 -0
  251. data/node_modules/selenium-webdriver/net/portprober.js +75 -0
  252. data/node_modules/selenium-webdriver/opera.js +406 -0
  253. data/node_modules/selenium-webdriver/package.json +54 -0
  254. data/node_modules/selenium-webdriver/proxy.js +32 -0
  255. data/node_modules/selenium-webdriver/remote/index.js +624 -0
  256. data/node_modules/selenium-webdriver/safari.js +168 -0
  257. data/node_modules/selenium-webdriver/testing/index.js +504 -0
  258. data/node_modules/set-immediate-shim/index.js +7 -0
  259. data/node_modules/set-immediate-shim/package.json +34 -0
  260. data/node_modules/set-immediate-shim/readme.md +31 -0
  261. data/node_modules/string_decoder/.travis.yml +50 -0
  262. data/node_modules/string_decoder/LICENSE +48 -0
  263. data/node_modules/string_decoder/README.md +47 -0
  264. data/node_modules/string_decoder/lib/string_decoder.js +296 -0
  265. data/node_modules/string_decoder/package.json +31 -0
  266. data/node_modules/tmp/CHANGELOG.md +288 -0
  267. data/node_modules/tmp/LICENSE +21 -0
  268. data/node_modules/tmp/README.md +365 -0
  269. data/node_modules/tmp/lib/tmp.js +780 -0
  270. data/node_modules/tmp/node_modules/.bin/rimraf +1 -0
  271. data/node_modules/tmp/node_modules/rimraf/CHANGELOG.md +65 -0
  272. data/node_modules/tmp/node_modules/rimraf/LICENSE +15 -0
  273. data/node_modules/tmp/node_modules/rimraf/README.md +101 -0
  274. data/node_modules/tmp/node_modules/rimraf/bin.js +68 -0
  275. data/node_modules/tmp/node_modules/rimraf/package.json +32 -0
  276. data/node_modules/tmp/node_modules/rimraf/rimraf.js +360 -0
  277. data/node_modules/tmp/package.json +58 -0
  278. data/node_modules/util-deprecate/History.md +16 -0
  279. data/node_modules/util-deprecate/LICENSE +24 -0
  280. data/node_modules/util-deprecate/README.md +53 -0
  281. data/node_modules/util-deprecate/browser.js +67 -0
  282. data/node_modules/util-deprecate/node.js +6 -0
  283. data/node_modules/util-deprecate/package.json +27 -0
  284. data/node_modules/wrappy/LICENSE +15 -0
  285. data/node_modules/wrappy/README.md +36 -0
  286. data/node_modules/wrappy/package.json +29 -0
  287. data/node_modules/wrappy/wrappy.js +33 -0
  288. data/node_modules/ws/LICENSE +21 -0
  289. data/node_modules/ws/README.md +496 -0
  290. data/node_modules/ws/browser.js +8 -0
  291. data/node_modules/ws/index.js +10 -0
  292. data/node_modules/ws/lib/buffer-util.js +129 -0
  293. data/node_modules/ws/lib/constants.js +10 -0
  294. data/node_modules/ws/lib/event-target.js +184 -0
  295. data/node_modules/ws/lib/extension.js +223 -0
  296. data/node_modules/ws/lib/limiter.js +55 -0
  297. data/node_modules/ws/lib/permessage-deflate.js +517 -0
  298. data/node_modules/ws/lib/receiver.js +507 -0
  299. data/node_modules/ws/lib/sender.js +405 -0
  300. data/node_modules/ws/lib/stream.js +165 -0
  301. data/node_modules/ws/lib/validation.js +104 -0
  302. data/node_modules/ws/lib/websocket-server.js +418 -0
  303. data/node_modules/ws/lib/websocket.js +942 -0
  304. data/node_modules/ws/package.json +56 -0
  305. data/package-lock.json +458 -0
  306. data/package.json +5 -0
  307. data/selenium.log +1 -0
  308. metadata +314 -19
@@ -0,0 +1,7 @@
1
+ #Copyright (c) 2014-2018 Calvin Metcalf, Jordan Harband
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
+
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
+
7
+ **THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.**
@@ -0,0 +1,244 @@
1
+ // Type definitions for lie 3.2
2
+ // Project: https://github.com/calvinmetcalf/lie#readme
3
+ // Definitions by: Andre Wiggins <https://github.com/andrewiggins>
4
+ // TypeScript Version: 2.3
5
+
6
+ // These types are copied from TypeScript's built-in Promise types
7
+ // and extended with extra Lie utilities namely, finally.
8
+
9
+ export as namespace Promise;
10
+
11
+ /**
12
+ * Represents the completion of an asynchronous operation
13
+ */
14
+ interface Promise<T> {
15
+ /**
16
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
17
+ * @param onfulfilled The callback to execute when the Promise is resolved.
18
+ * @param onrejected The callback to execute when the Promise is rejected.
19
+ * @returns A Promise for the completion of which ever callback is executed.
20
+ */
21
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<TResult1 | TResult2>;
22
+
23
+ /**
24
+ * Attaches a callback for only the rejection of the Promise.
25
+ * @param onrejected The callback to execute when the Promise is rejected.
26
+ * @returns A Promise for the completion of the callback.
27
+ */
28
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): Promise<T | TResult>;
29
+
30
+ /**
31
+ * When the promise is settled, whether fulfilled or rejected, execute the
32
+ * specified callback function. This provides a way for code that must be
33
+ * executed once the Promise has been dealt with to be run whether the promise
34
+ * was fulfilled successfully or rejected.
35
+ * @param onfinally Function called when the Promise is settled
36
+ * @returns A Promise whose finally handler is set to the specified function, onfinally.
37
+ */
38
+ finally<TResult = never>(onfinally?: (() => TResult | PromiseLike<TResult>) | undefined | null): Promise<T | TResult>;
39
+ }
40
+
41
+ interface PromiseConstructor {
42
+ /**
43
+ * A reference to the prototype.
44
+ */
45
+ readonly prototype: Promise<any>;
46
+
47
+ /**
48
+ * Creates a new Promise.
49
+ * @param executor A callback used to initialize the promise. This callback is passed two arguments:
50
+ * a resolve callback used resolve the promise with a value or the result of another promise,
51
+ * and a reject callback used to reject the promise with a provided reason or error.
52
+ */
53
+ new <T>(executor: (resolve: (value?: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void): Promise<T>;
54
+
55
+ /**
56
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
57
+ * resolve, or rejected when any Promise is rejected.
58
+ * @param values An array of Promises.
59
+ * @returns A new Promise.
60
+ */
61
+ all<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>, T8 | PromiseLike<T8>, T9 | PromiseLike<T9>, T10 | PromiseLike<T10>]): Promise<[T1, T2, T3, T4, T5, T6, T7, T8, T9, T10]>;
62
+
63
+ /**
64
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
65
+ * resolve, or rejected when any Promise is rejected.
66
+ * @param values An array of Promises.
67
+ * @returns A new Promise.
68
+ */
69
+ all<T1, T2, T3, T4, T5, T6, T7, T8, T9>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>, T8 | PromiseLike<T8>, T9 | PromiseLike<T9>]): Promise<[T1, T2, T3, T4, T5, T6, T7, T8, T9]>;
70
+
71
+ /**
72
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
73
+ * resolve, or rejected when any Promise is rejected.
74
+ * @param values An array of Promises.
75
+ * @returns A new Promise.
76
+ */
77
+ all<T1, T2, T3, T4, T5, T6, T7, T8>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>, T8 | PromiseLike<T8>]): Promise<[T1, T2, T3, T4, T5, T6, T7, T8]>;
78
+
79
+ /**
80
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
81
+ * resolve, or rejected when any Promise is rejected.
82
+ * @param values An array of Promises.
83
+ * @returns A new Promise.
84
+ */
85
+ all<T1, T2, T3, T4, T5, T6, T7>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>]): Promise<[T1, T2, T3, T4, T5, T6, T7]>;
86
+
87
+ /**
88
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
89
+ * resolve, or rejected when any Promise is rejected.
90
+ * @param values An array of Promises.
91
+ * @returns A new Promise.
92
+ */
93
+ all<T1, T2, T3, T4, T5, T6>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>]): Promise<[T1, T2, T3, T4, T5, T6]>;
94
+
95
+ /**
96
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
97
+ * resolve, or rejected when any Promise is rejected.
98
+ * @param values An array of Promises.
99
+ * @returns A new Promise.
100
+ */
101
+ all<T1, T2, T3, T4, T5>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>]): Promise<[T1, T2, T3, T4, T5]>;
102
+
103
+ /**
104
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
105
+ * resolve, or rejected when any Promise is rejected.
106
+ * @param values An array of Promises.
107
+ * @returns A new Promise.
108
+ */
109
+ all<T1, T2, T3, T4>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>]): Promise<[T1, T2, T3, T4]>;
110
+
111
+ /**
112
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
113
+ * resolve, or rejected when any Promise is rejected.
114
+ * @param values An array of Promises.
115
+ * @returns A new Promise.
116
+ */
117
+ all<T1, T2, T3>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>]): Promise<[T1, T2, T3]>;
118
+
119
+ /**
120
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
121
+ * resolve, or rejected when any Promise is rejected.
122
+ * @param values An array of Promises.
123
+ * @returns A new Promise.
124
+ */
125
+ all<T1, T2>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>]): Promise<[T1, T2]>;
126
+
127
+ /**
128
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
129
+ * resolve, or rejected when any Promise is rejected.
130
+ * @param values An array of Promises.
131
+ * @returns A new Promise.
132
+ */
133
+ all<T>(values: (T | PromiseLike<T>)[]): Promise<T[]>;
134
+
135
+ /**
136
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
137
+ * or rejected.
138
+ * @param values An array of Promises.
139
+ * @returns A new Promise.
140
+ */
141
+ race<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>, T8 | PromiseLike<T8>, T9 | PromiseLike<T9>, T10 | PromiseLike<T10>]): Promise<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8 | T9 | T10>;
142
+
143
+ /**
144
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
145
+ * or rejected.
146
+ * @param values An array of Promises.
147
+ * @returns A new Promise.
148
+ */
149
+ race<T1, T2, T3, T4, T5, T6, T7, T8, T9>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>, T8 | PromiseLike<T8>, T9 | PromiseLike<T9>]): Promise<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8 | T9>;
150
+
151
+ /**
152
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
153
+ * or rejected.
154
+ * @param values An array of Promises.
155
+ * @returns A new Promise.
156
+ */
157
+ race<T1, T2, T3, T4, T5, T6, T7, T8>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>, T8 | PromiseLike<T8>]): Promise<T1 | T2 | T3 | T4 | T5 | T6 | T7 | T8>;
158
+
159
+ /**
160
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
161
+ * or rejected.
162
+ * @param values An array of Promises.
163
+ * @returns A new Promise.
164
+ */
165
+ race<T1, T2, T3, T4, T5, T6, T7>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>, T7 | PromiseLike<T7>]): Promise<T1 | T2 | T3 | T4 | T5 | T6 | T7>;
166
+
167
+ /**
168
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
169
+ * or rejected.
170
+ * @param values An array of Promises.
171
+ * @returns A new Promise.
172
+ */
173
+ race<T1, T2, T3, T4, T5, T6>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>, T6 | PromiseLike<T6>]): Promise<T1 | T2 | T3 | T4 | T5 | T6>;
174
+
175
+ /**
176
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
177
+ * or rejected.
178
+ * @param values An array of Promises.
179
+ * @returns A new Promise.
180
+ */
181
+ race<T1, T2, T3, T4, T5>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>, T5 | PromiseLike<T5>]): Promise<T1 | T2 | T3 | T4 | T5>;
182
+
183
+ /**
184
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
185
+ * or rejected.
186
+ * @param values An array of Promises.
187
+ * @returns A new Promise.
188
+ */
189
+ race<T1, T2, T3, T4>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>, T4 | PromiseLike<T4>]): Promise<T1 | T2 | T3 | T4>;
190
+
191
+ /**
192
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
193
+ * or rejected.
194
+ * @param values An array of Promises.
195
+ * @returns A new Promise.
196
+ */
197
+ race<T1, T2, T3>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>, T3 | PromiseLike<T3>]): Promise<T1 | T2 | T3>;
198
+
199
+ /**
200
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
201
+ * or rejected.
202
+ * @param values An array of Promises.
203
+ * @returns A new Promise.
204
+ */
205
+ race<T1, T2>(values: [T1 | PromiseLike<T1>, T2 | PromiseLike<T2>]): Promise<T1 | T2>;
206
+
207
+ /**
208
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
209
+ * or rejected.
210
+ * @param values An array of Promises.
211
+ * @returns A new Promise.
212
+ */
213
+ race<T>(values: (T | PromiseLike<T>)[]): Promise<T>;
214
+
215
+ /**
216
+ * Creates a new rejected promise for the provided reason.
217
+ * @param reason The reason the promise was rejected.
218
+ * @returns A new rejected Promise.
219
+ */
220
+ reject(reason: any): Promise<never>;
221
+
222
+ /**
223
+ * Creates a new rejected promise for the provided reason.
224
+ * @param reason The reason the promise was rejected.
225
+ * @returns A new rejected Promise.
226
+ */
227
+ reject<T>(reason: any): Promise<T>;
228
+
229
+ /**
230
+ * Creates a new resolved promise for the provided value.
231
+ * @param value A promise.
232
+ * @returns A promise whose internal state matches the provided promise.
233
+ */
234
+ resolve<T>(value: T | PromiseLike<T>): Promise<T>;
235
+
236
+ /**
237
+ * Creates a new resolved promise .
238
+ * @returns A resolved promise.
239
+ */
240
+ resolve(): Promise<void>;
241
+ }
242
+
243
+ declare const Promise: PromiseConstructor;
244
+ export default Promise;
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "lie",
3
+ "version": "3.3.0",
4
+ "description": "A basic but performant promise implementation",
5
+ "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/calvinmetcalf/lie.git"
9
+ },
10
+ "bugs": {
11
+ "url": "https://github.com/calvinmetcalf/lie/issues"
12
+ },
13
+ "keywords": [
14
+ "lie",
15
+ "promise",
16
+ "async",
17
+ "aplus"
18
+ ],
19
+ "main": "lib/index.js",
20
+ "scripts": {
21
+ "pretest": "npm run build",
22
+ "test": "npm run jshint && mocha -R nyan ./test/cover.js && tsc --noEmit ./test/types.ts",
23
+ "build-node": "copyfiles -f src/index.js lib && browserify-transform-cli inline-process-browser unreachable-branch-transform es3ify < src/index.js > lib/browser.js",
24
+ "build-js": "browserify -s Promise -p bundle-collapser/plugin . | derequire > ./dist/lie.js",
25
+ "build-min": "uglifyjs ./dist/lie.js -mc > ./dist/lie.min.js",
26
+ "build-poly-js": "browserify -p bundle-collapser/plugin ./polyfill.js | derequire > ./dist/lie.polyfill.js",
27
+ "build-poly-min": "uglifyjs ./dist/lie.polyfill.js -mc > ./dist/lie.polyfill.min.js",
28
+ "build-poly": "npm run build-poly-js && npm run build-poly-min",
29
+ "build": "npm run build-node && npm run build-js && npm run build-min && npm run build-poly",
30
+ "prebuild": "rimraf lib dist && mkdirp lib dist",
31
+ "cover": "istanbul cover _mocha ./test/cover.js -- -R spec && istanbul check-coverage --lines 100 --function 100 --statements 100 --branches 100",
32
+ "jshint": "jshint src",
33
+ "node": "mocha -R spec ./test/cover.js",
34
+ "browser": "browserify test/cover.js > test/browser.js && mocha-phantomjs test/test.html"
35
+ },
36
+ "devDependencies": {
37
+ "browserify": "^13.0.0",
38
+ "browserify-transform-cli": "^1.1.1",
39
+ "bundle-collapser": "^1.2.1",
40
+ "copyfiles": "^1.0.0",
41
+ "derequire": "^1.2.0",
42
+ "es3ify": "^0.2.2",
43
+ "inline-process-browser": "^1.0.0",
44
+ "istanbul": "^0.2.6",
45
+ "jshint": "^2.4.4",
46
+ "mkdirp": "^0.5.1",
47
+ "mocha": "^1.18.0",
48
+ "mocha-phantomjs": "~3.5.0",
49
+ "phantomjs": "^1.9.9",
50
+ "promises-aplus-tests": "calvinmetcalf/promises-tests#phantom",
51
+ "rimraf": "^2.5.4",
52
+ "typescript": "^2.7.1",
53
+ "uglify-js": "^2.4.13",
54
+ "unreachable-branch-transform": "^0.3.0"
55
+ },
56
+ "dependencies": {
57
+ "immediate": "~3.0.5"
58
+ },
59
+ "browser": {
60
+ "./lib/index.js": "./lib/browser.js"
61
+ },
62
+ "files": [
63
+ "lib",
64
+ "dist",
65
+ "polyfill.js",
66
+ "lie.d.ts"
67
+ ],
68
+ "types": "lie.d.ts"
69
+ }
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+ if (typeof global.Promise !== 'function') {
3
+ global.Promise = require('./lib');
4
+ }
@@ -0,0 +1,15 @@
1
+ The ISC License
2
+
3
+ Copyright (c) Isaac Z. Schlueter and Contributors
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any
6
+ purpose with or without fee is hereby granted, provided that the above
7
+ copyright notice and this permission notice appear in all copies.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15
+ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
@@ -0,0 +1,209 @@
1
+ # minimatch
2
+
3
+ A minimal matching utility.
4
+
5
+ [![Build Status](https://secure.travis-ci.org/isaacs/minimatch.svg)](http://travis-ci.org/isaacs/minimatch)
6
+
7
+
8
+ This is the matching library used internally by npm.
9
+
10
+ It works by converting glob expressions into JavaScript `RegExp`
11
+ objects.
12
+
13
+ ## Usage
14
+
15
+ ```javascript
16
+ var minimatch = require("minimatch")
17
+
18
+ minimatch("bar.foo", "*.foo") // true!
19
+ minimatch("bar.foo", "*.bar") // false!
20
+ minimatch("bar.foo", "*.+(bar|foo)", { debug: true }) // true, and noisy!
21
+ ```
22
+
23
+ ## Features
24
+
25
+ Supports these glob features:
26
+
27
+ * Brace Expansion
28
+ * Extended glob matching
29
+ * "Globstar" `**` matching
30
+
31
+ See:
32
+
33
+ * `man sh`
34
+ * `man bash`
35
+ * `man 3 fnmatch`
36
+ * `man 5 gitignore`
37
+
38
+ ## Minimatch Class
39
+
40
+ Create a minimatch object by instantiating the `minimatch.Minimatch` class.
41
+
42
+ ```javascript
43
+ var Minimatch = require("minimatch").Minimatch
44
+ var mm = new Minimatch(pattern, options)
45
+ ```
46
+
47
+ ### Properties
48
+
49
+ * `pattern` The original pattern the minimatch object represents.
50
+ * `options` The options supplied to the constructor.
51
+ * `set` A 2-dimensional array of regexp or string expressions.
52
+ Each row in the
53
+ array corresponds to a brace-expanded pattern. Each item in the row
54
+ corresponds to a single path-part. For example, the pattern
55
+ `{a,b/c}/d` would expand to a set of patterns like:
56
+
57
+ [ [ a, d ]
58
+ , [ b, c, d ] ]
59
+
60
+ If a portion of the pattern doesn't have any "magic" in it
61
+ (that is, it's something like `"foo"` rather than `fo*o?`), then it
62
+ will be left as a string rather than converted to a regular
63
+ expression.
64
+
65
+ * `regexp` Created by the `makeRe` method. A single regular expression
66
+ expressing the entire pattern. This is useful in cases where you wish
67
+ to use the pattern somewhat like `fnmatch(3)` with `FNM_PATH` enabled.
68
+ * `negate` True if the pattern is negated.
69
+ * `comment` True if the pattern is a comment.
70
+ * `empty` True if the pattern is `""`.
71
+
72
+ ### Methods
73
+
74
+ * `makeRe` Generate the `regexp` member if necessary, and return it.
75
+ Will return `false` if the pattern is invalid.
76
+ * `match(fname)` Return true if the filename matches the pattern, or
77
+ false otherwise.
78
+ * `matchOne(fileArray, patternArray, partial)` Take a `/`-split
79
+ filename, and match it against a single row in the `regExpSet`. This
80
+ method is mainly for internal use, but is exposed so that it can be
81
+ used by a glob-walker that needs to avoid excessive filesystem calls.
82
+
83
+ All other methods are internal, and will be called as necessary.
84
+
85
+ ### minimatch(path, pattern, options)
86
+
87
+ Main export. Tests a path against the pattern using the options.
88
+
89
+ ```javascript
90
+ var isJS = minimatch(file, "*.js", { matchBase: true })
91
+ ```
92
+
93
+ ### minimatch.filter(pattern, options)
94
+
95
+ Returns a function that tests its
96
+ supplied argument, suitable for use with `Array.filter`. Example:
97
+
98
+ ```javascript
99
+ var javascripts = fileList.filter(minimatch.filter("*.js", {matchBase: true}))
100
+ ```
101
+
102
+ ### minimatch.match(list, pattern, options)
103
+
104
+ Match against the list of
105
+ files, in the style of fnmatch or glob. If nothing is matched, and
106
+ options.nonull is set, then return a list containing the pattern itself.
107
+
108
+ ```javascript
109
+ var javascripts = minimatch.match(fileList, "*.js", {matchBase: true}))
110
+ ```
111
+
112
+ ### minimatch.makeRe(pattern, options)
113
+
114
+ Make a regular expression object from the pattern.
115
+
116
+ ## Options
117
+
118
+ All options are `false` by default.
119
+
120
+ ### debug
121
+
122
+ Dump a ton of stuff to stderr.
123
+
124
+ ### nobrace
125
+
126
+ Do not expand `{a,b}` and `{1..3}` brace sets.
127
+
128
+ ### noglobstar
129
+
130
+ Disable `**` matching against multiple folder names.
131
+
132
+ ### dot
133
+
134
+ Allow patterns to match filenames starting with a period, even if
135
+ the pattern does not explicitly have a period in that spot.
136
+
137
+ Note that by default, `a/**/b` will **not** match `a/.d/b`, unless `dot`
138
+ is set.
139
+
140
+ ### noext
141
+
142
+ Disable "extglob" style patterns like `+(a|b)`.
143
+
144
+ ### nocase
145
+
146
+ Perform a case-insensitive match.
147
+
148
+ ### nonull
149
+
150
+ When a match is not found by `minimatch.match`, return a list containing
151
+ the pattern itself if this option is set. When not set, an empty list
152
+ is returned if there are no matches.
153
+
154
+ ### matchBase
155
+
156
+ If set, then patterns without slashes will be matched
157
+ against the basename of the path if it contains slashes. For example,
158
+ `a?b` would match the path `/xyz/123/acb`, but not `/xyz/acb/123`.
159
+
160
+ ### nocomment
161
+
162
+ Suppress the behavior of treating `#` at the start of a pattern as a
163
+ comment.
164
+
165
+ ### nonegate
166
+
167
+ Suppress the behavior of treating a leading `!` character as negation.
168
+
169
+ ### flipNegate
170
+
171
+ Returns from negate expressions the same as if they were not negated.
172
+ (Ie, true on a hit, false on a miss.)
173
+
174
+
175
+ ## Comparisons to other fnmatch/glob implementations
176
+
177
+ While strict compliance with the existing standards is a worthwhile
178
+ goal, some discrepancies exist between minimatch and other
179
+ implementations, and are intentional.
180
+
181
+ If the pattern starts with a `!` character, then it is negated. Set the
182
+ `nonegate` flag to suppress this behavior, and treat leading `!`
183
+ characters normally. This is perhaps relevant if you wish to start the
184
+ pattern with a negative extglob pattern like `!(a|B)`. Multiple `!`
185
+ characters at the start of a pattern will negate the pattern multiple
186
+ times.
187
+
188
+ If a pattern starts with `#`, then it is treated as a comment, and
189
+ will not match anything. Use `\#` to match a literal `#` at the
190
+ start of a line, or set the `nocomment` flag to suppress this behavior.
191
+
192
+ The double-star character `**` is supported by default, unless the
193
+ `noglobstar` flag is set. This is supported in the manner of bsdglob
194
+ and bash 4.1, where `**` only has special significance if it is the only
195
+ thing in a path part. That is, `a/**/b` will match `a/x/y/b`, but
196
+ `a/**b` will not.
197
+
198
+ If an escaped pattern has no matches, and the `nonull` flag is set,
199
+ then minimatch.match returns the pattern as-provided, rather than
200
+ interpreting the character escapes. For example,
201
+ `minimatch.match([], "\\*a\\?")` will return `"\\*a\\?"` rather than
202
+ `"*a?"`. This is akin to setting the `nullglob` option in bash, except
203
+ that it does not resolve escaped pattern characters.
204
+
205
+ If brace expansion is not disabled, then it is performed before any
206
+ other interpretation of the glob pattern. Thus, a pattern like
207
+ `+(a|{b),c)}`, which would not be valid in bash or zsh, is expanded
208
+ **first** into the set of `+(a|b)` and `+(a|c)`, and those patterns are
209
+ checked for validity. Since those two are valid, matching proceeds.