├── .gitignore ├── extraParams.hxml ├── haxe_libraries ├── mime.hxml ├── ansi.hxml ├── tink_core.hxml ├── tink_chunk.hxml ├── tink_priority.hxml ├── tink_macro.hxml ├── tink_io.hxml ├── tink_stringly.hxml ├── hxcs.hxml ├── hxcpp.hxml ├── hxjava.hxml ├── tink_testrunner.hxml ├── tink_syntaxhub.hxml ├── tink_cli.hxml ├── tink_streams.hxml ├── tink_unittest.hxml ├── hxnodejs.hxml └── travix.hxml ├── .haxerc ├── tests.hxml ├── haxelib.json ├── package.json ├── README.md ├── tests └── RunTests.hx ├── .travis.yml ├── src └── mime │ └── Mime.hx └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *.zip 3 | bin -------------------------------------------------------------------------------- /extraParams.hxml: -------------------------------------------------------------------------------- 1 | --macro mime.Mime.init() -------------------------------------------------------------------------------- /haxe_libraries/mime.hxml: -------------------------------------------------------------------------------- 1 | -cp src 2 | --macro mime.Mime.init() -------------------------------------------------------------------------------- /.haxerc: -------------------------------------------------------------------------------- 1 | { 2 | "version": "4.0.0-rc.1", 3 | "resolveLibs": "scoped" 4 | } -------------------------------------------------------------------------------- /tests.hxml: -------------------------------------------------------------------------------- 1 | -cp tests 2 | -lib tink_unittest 3 | -main RunTests 4 | -dce full -------------------------------------------------------------------------------- /haxe_libraries/ansi.hxml: -------------------------------------------------------------------------------- 1 | -D ansi=1.0.0 2 | # @install: lix --silent download "haxelib:/ansi#1.0.0" into ansi/1.0.0/haxelib 3 | -cp ${HAXE_LIBCACHE}/ansi/1.0.0/haxelib/src 4 | -------------------------------------------------------------------------------- /haxe_libraries/tink_core.hxml: -------------------------------------------------------------------------------- 1 | -D tink_core=1.21.0 2 | # @install: lix --silent download "haxelib:/tink_core#1.21.0" into tink_core/1.21.0/haxelib 3 | -cp ${HAXE_LIBCACHE}/tink_core/1.21.0/haxelib/src 4 | -------------------------------------------------------------------------------- /haxe_libraries/tink_chunk.hxml: -------------------------------------------------------------------------------- 1 | -D tink_chunk=0.2.0 2 | # @install: lix --silent download "haxelib:/tink_chunk#0.2.0" into tink_chunk/0.2.0/haxelib 3 | -cp ${HAXE_LIBCACHE}/tink_chunk/0.2.0/haxelib/src 4 | -------------------------------------------------------------------------------- /haxe_libraries/tink_priority.hxml: -------------------------------------------------------------------------------- 1 | -D tink_priority=0.1.4 2 | # @install: lix --silent download "haxelib:/tink_priority#0.1.4" into tink_priority/0.1.4/haxelib 3 | -cp ${HAXE_LIBCACHE}/tink_priority/0.1.4/haxelib/src 4 | -------------------------------------------------------------------------------- /haxe_libraries/tink_macro.hxml: -------------------------------------------------------------------------------- 1 | -D tink_macro=0.17.4 2 | # @install: lix --silent download "haxelib:/tink_macro#0.17.4" into tink_macro/0.17.4/haxelib 3 | -lib tink_core 4 | -cp ${HAXE_LIBCACHE}/tink_macro/0.17.4/haxelib/src 5 | -------------------------------------------------------------------------------- /haxe_libraries/tink_io.hxml: -------------------------------------------------------------------------------- 1 | -D tink_io=0.6.2 2 | # @install: lix --silent download "haxelib:/tink_io#0.6.2" into tink_io/0.6.2/haxelib 3 | -lib tink_chunk 4 | -lib tink_streams 5 | -cp ${HAXE_LIBCACHE}/tink_io/0.6.2/haxelib/src 6 | -------------------------------------------------------------------------------- /haxe_libraries/tink_stringly.hxml: -------------------------------------------------------------------------------- 1 | -D tink_stringly=0.3.1 2 | # @install: lix --silent download "haxelib:/tink_stringly#0.3.1" into tink_stringly/0.3.1/haxelib 3 | -lib tink_core 4 | -cp ${HAXE_LIBCACHE}/tink_stringly/0.3.1/haxelib/src 5 | -------------------------------------------------------------------------------- /haxe_libraries/hxcs.hxml: -------------------------------------------------------------------------------- 1 | -D hxcs=3.4.0 2 | # @install: lix --silent download "haxelib:/hxcs#3.4.0" into hxcs/3.4.0/haxelib 3 | # @run: haxelib run-dir hxcs ${HAXE_LIBCACHE}/hxcs/3.4.0/haxelib 4 | -cp ${HAXE_LIBCACHE}/hxcs/3.4.0/haxelib/ 5 | -------------------------------------------------------------------------------- /haxe_libraries/hxcpp.hxml: -------------------------------------------------------------------------------- 1 | -D hxcpp=4.0.8 2 | # @install: lix --silent download "haxelib:/hxcpp#4.0.8" into hxcpp/4.0.8/haxelib 3 | # @run: haxelib run-dir hxcpp ${HAXE_LIBCACHE}/hxcpp/4.0.8/haxelib 4 | -cp ${HAXE_LIBCACHE}/hxcpp/4.0.8/haxelib/ 5 | -------------------------------------------------------------------------------- /haxe_libraries/hxjava.hxml: -------------------------------------------------------------------------------- 1 | -D hxjava=3.2.0 2 | # @install: lix --silent download "haxelib:/hxjava#3.2.0" into hxjava/3.2.0/haxelib 3 | # @run: haxelib run-dir hxjava ${HAXE_LIBCACHE}/hxjava/3.2.0/haxelib 4 | -cp ${HAXE_LIBCACHE}/hxjava/3.2.0/haxelib/ 5 | -java-lib lib/hxjava-std.jar 6 | -------------------------------------------------------------------------------- /haxe_libraries/tink_testrunner.hxml: -------------------------------------------------------------------------------- 1 | -D tink_testrunner=0.7.2 2 | # @install: lix --silent download "haxelib:/tink_testrunner#0.7.2" into tink_testrunner/0.7.2/haxelib 3 | -lib ansi 4 | -lib tink_macro 5 | -lib tink_streams 6 | -cp ${HAXE_LIBCACHE}/tink_testrunner/0.7.2/haxelib/src 7 | -------------------------------------------------------------------------------- /haxe_libraries/tink_syntaxhub.hxml: -------------------------------------------------------------------------------- 1 | -D tink_syntaxhub=0.4.3 2 | # @install: lix --silent download "haxelib:/tink_syntaxhub#0.4.3" into tink_syntaxhub/0.4.3/haxelib 3 | -lib tink_priority 4 | -lib tink_macro 5 | -cp ${HAXE_LIBCACHE}/tink_syntaxhub/0.4.3/haxelib/src 6 | --macro tink.SyntaxHub.use() -------------------------------------------------------------------------------- /haxe_libraries/tink_cli.hxml: -------------------------------------------------------------------------------- 1 | -D tink_cli=0.4.1 2 | # @install: lix --silent download "haxelib:/tink_cli#0.4.1" into tink_cli/0.4.1/haxelib 3 | -lib tink_io 4 | -lib tink_stringly 5 | -lib tink_macro 6 | -cp ${HAXE_LIBCACHE}/tink_cli/0.4.1/haxelib/src 7 | # Make sure docs are generated 8 | -D use-rtti-doc -------------------------------------------------------------------------------- /haxe_libraries/tink_streams.hxml: -------------------------------------------------------------------------------- 1 | -D tink_streams=0.3.2 2 | # @install: lix --silent download "haxelib:/tink_streams#0.3.2" into tink_streams/0.3.2/haxelib 3 | -lib tink_core 4 | -cp ${HAXE_LIBCACHE}/tink_streams/0.3.2/haxelib/src 5 | # temp for development, delete this file when pure branch merged 6 | -D pure -------------------------------------------------------------------------------- /haxe_libraries/tink_unittest.hxml: -------------------------------------------------------------------------------- 1 | -D tink_unittest=0.6.2 2 | # @install: lix --silent download "haxelib:/tink_unittest#0.6.2" into tink_unittest/0.6.2/haxelib 3 | -lib tink_testrunner 4 | -lib tink_syntaxhub 5 | -cp ${HAXE_LIBCACHE}/tink_unittest/0.6.2/haxelib/src 6 | --macro tink.unit.AssertionBufferInjector.use() -------------------------------------------------------------------------------- /haxe_libraries/hxnodejs.hxml: -------------------------------------------------------------------------------- 1 | -D hxnodejs=6.9.0 2 | # @install: lix --silent download "haxelib:/hxnodejs#6.9.0" into hxnodejs/6.9.0/haxelib 3 | -cp ${HAXE_LIBCACHE}/hxnodejs/6.9.0/haxelib/src 4 | --macro allowPackage('sys') 5 | # should behave like other target defines and not be defined in macro context 6 | --macro define('nodejs') 7 | -------------------------------------------------------------------------------- /haxelib.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "mime", 3 | "url" : "https://github.com/benmerckx/mime", 4 | "license": "MIT", 5 | "tags": ["js", "html", "web", "cross"], 6 | "description": "Media Type Database", 7 | "version": "0.1.2", 8 | "releasenote": "Actually cache extensions", 9 | "contributors": ["benmerckx"], 10 | "classPath": "src" 11 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "test": "lix run travix node", 4 | "submit": "run-s prepare zip submit-haxelib cleanup", 5 | "prepare": "cp node_modules/mime-db/db.json src/mime-db.json", 6 | "postinstall": "lix download", 7 | "zip": "bestzip mime.zip src/* haxelib.json extraParams.hxml README.md", 8 | "submit-haxelib": "haxelib submit mime.zip", 9 | "cleanup": "rm mime.zip" 10 | }, 11 | "dependencies": { 12 | "bestzip": "^2.1.2", 13 | "mime-db": "^1.38.0", 14 | "npm-run-all": "^4.1.5" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /haxe_libraries/travix.hxml: -------------------------------------------------------------------------------- 1 | -D travix=0.12.2 2 | # @install: lix --silent download "gh://github.com/back2dos/travix#7b5274136056a97c6142ac19a3a46ccc4dce7780" into travix/0.12.2/github/7b5274136056a97c6142ac19a3a46ccc4dce7780 3 | # @post-install: cd ${HAXE_LIBCACHE}/travix/0.12.2/github/7b5274136056a97c6142ac19a3a46ccc4dce7780 && haxe -cp src --run travix.PostDownload 4 | # @run: haxelib run-dir travix ${HAXE_LIBCACHE}/travix/0.12.2/github/7b5274136056a97c6142ac19a3a46ccc4dce7780 5 | -lib tink_cli 6 | -cp ${HAXE_LIBCACHE}/travix/0.12.2/github/7b5274136056a97c6142ac19a3a46ccc4dce7780/src 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # mime 2 | 3 | [![Build Status](https://travis-ci.org/benmerckx/mime.svg?branch=master)](https://travis-ci.org/benmerckx/mime) 4 | 5 | Packages [mime-db](https://github.com/jshttp/mime-db) for haxelib 6 | 7 | ```haxe 8 | Mime.lookup('/path/to/file.txt'); // text/plain 9 | Mime.lookup('file.txt'); // text/plain 10 | Mime.lookup('.TXT'); // text/plain 11 | Mime.lookup('htm'); // text/html 12 | 13 | Mime.extension('text/html'); // html 14 | Mime.extension('application/pdf'); // pdf 15 | 16 | Mime.db.get('text/html'); // {compressible => true, extensions => [html,htm,shtml], source => iana} 17 | ``` -------------------------------------------------------------------------------- /tests/RunTests.hx: -------------------------------------------------------------------------------- 1 | package; 2 | 3 | import tink.unit.*; 4 | import tink.testrunner.*; 5 | import mime.Mime; 6 | 7 | @:asserts 8 | class RunTests { 9 | 10 | static function main() { 11 | Runner.run(TestBatch.make([ 12 | new RunTests(), 13 | ])).handle(Runner.exit); 14 | } 15 | 16 | public function new() {} 17 | 18 | public function testLookup() { 19 | asserts.assert(Mime.lookup('test.json') == 'application/json'); 20 | asserts.assert(Mime.lookup('test.txt') == 'text/plain'); 21 | return asserts.done(); 22 | } 23 | 24 | public function testExtension() { 25 | asserts.assert(Mime.extension('application/json') == 'json'); 26 | asserts.assert(Mime.extension('text/plain') == 'txt'); 27 | return asserts.done(); 28 | } 29 | 30 | } -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: required 2 | dist: trusty 3 | 4 | language: node_js 5 | node_js: 10 6 | 7 | cache: 8 | yarn: true 9 | directories: 10 | - $HOME/haxe 11 | 12 | os: 13 | - linux 14 | 15 | env: 16 | - HAXE_VERSION=4.0.0-rc.1 17 | 18 | install: 19 | - yarn global add lix && yarn 20 | - lix install haxe $HAXE_VERSION && lix use haxe $HAXE_VERSION 21 | - neko -version 22 | - haxe -version 23 | 24 | script: 25 | - lix run travix interp 26 | - lix run travix neko 27 | - lix run travix node 28 | - lix run travix python 29 | - lix run travix php 30 | - lix run travix java 31 | - lix run travix cs 32 | - lix run travix lua 33 | - lix run travix cpp 34 | # These work but slow down the tests a lot 35 | #- lix run travix js 36 | #- lix run travix flash -------------------------------------------------------------------------------- /src/mime/Mime.hx: -------------------------------------------------------------------------------- 1 | package mime; 2 | 3 | import haxe.DynamicAccess; 4 | import haxe.Resource; 5 | import haxe.Json; 6 | 7 | #if macro 8 | import haxe.macro.Context; 9 | import sys.FileSystem; 10 | import sys.io.File; 11 | #end 12 | 13 | typedef TypeInfo = { 14 | ?source: String, 15 | ?compressible: Bool, 16 | ?extensions: Array, 17 | ?charset: String 18 | } 19 | 20 | class Mime { 21 | #if !macro 22 | public static var db(default, never): DynamicAccess = 23 | #if (java || cpp) 24 | Json.parse(Resource.getString('mime-db')); 25 | #else 26 | data(); 27 | #end 28 | 29 | @:isVar 30 | public static var extensions(get, null): Map; 31 | static function get_extensions() 32 | return if (extensions != null) extensions else { 33 | extensions = new Map(); 34 | for (type in db.keys()) 35 | switch db.get(type) { 36 | case {extensions: e} if (e != null): 37 | for (extension in e) 38 | extensions.set(extension, type); 39 | } 40 | extensions; 41 | } 42 | 43 | public static function lookup(path: String): Null 44 | return extensions.get( 45 | path.split('.').pop().toLowerCase() 46 | ); 47 | 48 | public static function extension(type: String): Null 49 | return switch db.get(type) { 50 | case {extensions: e} if (e != null): e[0]; 51 | default: null; 52 | } 53 | #end 54 | 55 | 56 | public static function init() { 57 | #if macro 58 | if(Context.defined('java') || Context.defined('cpp')) { 59 | Context.addResource('mime-db', sys.io.File.getBytes( 60 | Context.resolvePath('mime-db.json') 61 | )); 62 | } 63 | #end 64 | } 65 | 66 | public static macro function data() { 67 | #if macro 68 | var path = Context.resolvePath('mime-db.json'); 69 | return Context.parseInlineString( 70 | File.getContent(path), 71 | Context.makePosition({file: path, min: 0, max: FileSystem.stat(path).size}) 72 | ); 73 | #end 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | ansi-regex@^2.0.0: 6 | version "2.1.1" 7 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 8 | 9 | ansi-regex@^3.0.0: 10 | version "3.0.0" 11 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 12 | 13 | ansi-styles@^3.2.1: 14 | version "3.2.1" 15 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 16 | dependencies: 17 | color-convert "^1.9.0" 18 | 19 | archiver-utils@^2.0.0: 20 | version "2.0.0" 21 | resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.0.0.tgz#5639818a8b5d89d0ffc51b72c39283cf4fea14a1" 22 | dependencies: 23 | glob "^7.0.0" 24 | graceful-fs "^4.1.0" 25 | lazystream "^1.0.0" 26 | lodash.assign "^4.2.0" 27 | lodash.defaults "^4.2.0" 28 | lodash.difference "^4.5.0" 29 | lodash.flatten "^4.4.0" 30 | lodash.isplainobject "^4.0.6" 31 | lodash.toarray "^4.4.0" 32 | lodash.union "^4.6.0" 33 | normalize-path "^3.0.0" 34 | readable-stream "^2.0.0" 35 | 36 | archiver@^3.0.0: 37 | version "3.0.0" 38 | resolved "https://registry.yarnpkg.com/archiver/-/archiver-3.0.0.tgz#50b2628cf032adcbf35d35d111b5324db95bfb69" 39 | dependencies: 40 | archiver-utils "^2.0.0" 41 | async "^2.0.0" 42 | buffer-crc32 "^0.2.1" 43 | glob "^7.0.0" 44 | readable-stream "^2.0.0" 45 | tar-stream "^1.5.0" 46 | zip-stream "^2.0.1" 47 | 48 | array-filter@~0.0.0: 49 | version "0.0.1" 50 | resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" 51 | 52 | array-map@~0.0.0: 53 | version "0.0.0" 54 | resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" 55 | 56 | array-reduce@~0.0.0: 57 | version "0.0.0" 58 | resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" 59 | 60 | async@^2.0.0, async@^2.6.1: 61 | version "2.6.2" 62 | resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381" 63 | dependencies: 64 | lodash "^4.17.11" 65 | 66 | balanced-match@^1.0.0: 67 | version "1.0.0" 68 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 69 | 70 | base64-js@^1.0.2: 71 | version "1.3.0" 72 | resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" 73 | 74 | bestzip@^2.1.2: 75 | version "2.1.2" 76 | resolved "https://registry.yarnpkg.com/bestzip/-/bestzip-2.1.2.tgz#ba0ec79b22d6b180c1ee4867e3790d9405ddc909" 77 | dependencies: 78 | archiver "^3.0.0" 79 | async "^2.6.1" 80 | concat-stream "^1.6.2" 81 | glob "^7.1.3" 82 | lodash "^4.17.11" 83 | yargs "^12.0.2" 84 | 85 | bl@^1.0.0: 86 | version "1.2.2" 87 | resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" 88 | dependencies: 89 | readable-stream "^2.3.5" 90 | safe-buffer "^5.1.1" 91 | 92 | brace-expansion@^1.1.7: 93 | version "1.1.11" 94 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 95 | dependencies: 96 | balanced-match "^1.0.0" 97 | concat-map "0.0.1" 98 | 99 | buffer-alloc-unsafe@^1.1.0: 100 | version "1.1.0" 101 | resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" 102 | 103 | buffer-alloc@^1.2.0: 104 | version "1.2.0" 105 | resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" 106 | dependencies: 107 | buffer-alloc-unsafe "^1.1.0" 108 | buffer-fill "^1.0.0" 109 | 110 | buffer-crc32@^0.2.1: 111 | version "0.2.13" 112 | resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" 113 | 114 | buffer-fill@^1.0.0: 115 | version "1.0.0" 116 | resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" 117 | 118 | buffer-from@^1.0.0: 119 | version "1.1.1" 120 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" 121 | 122 | buffer@^5.1.0: 123 | version "5.2.1" 124 | resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.2.1.tgz#dd57fa0f109ac59c602479044dca7b8b3d0b71d6" 125 | dependencies: 126 | base64-js "^1.0.2" 127 | ieee754 "^1.1.4" 128 | 129 | camelcase@^5.0.0: 130 | version "5.2.0" 131 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.2.0.tgz#e7522abda5ed94cc0489e1b8466610e88404cf45" 132 | 133 | chalk@^2.4.1: 134 | version "2.4.2" 135 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 136 | dependencies: 137 | ansi-styles "^3.2.1" 138 | escape-string-regexp "^1.0.5" 139 | supports-color "^5.3.0" 140 | 141 | cliui@^4.0.0: 142 | version "4.1.0" 143 | resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" 144 | dependencies: 145 | string-width "^2.1.1" 146 | strip-ansi "^4.0.0" 147 | wrap-ansi "^2.0.0" 148 | 149 | code-point-at@^1.0.0: 150 | version "1.1.0" 151 | resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" 152 | 153 | color-convert@^1.9.0: 154 | version "1.9.3" 155 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 156 | dependencies: 157 | color-name "1.1.3" 158 | 159 | color-name@1.1.3: 160 | version "1.1.3" 161 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 162 | 163 | compress-commons@^1.2.0: 164 | version "1.2.2" 165 | resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-1.2.2.tgz#524a9f10903f3a813389b0225d27c48bb751890f" 166 | dependencies: 167 | buffer-crc32 "^0.2.1" 168 | crc32-stream "^2.0.0" 169 | normalize-path "^2.0.0" 170 | readable-stream "^2.0.0" 171 | 172 | concat-map@0.0.1: 173 | version "0.0.1" 174 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 175 | 176 | concat-stream@^1.6.2: 177 | version "1.6.2" 178 | resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" 179 | dependencies: 180 | buffer-from "^1.0.0" 181 | inherits "^2.0.3" 182 | readable-stream "^2.2.2" 183 | typedarray "^0.0.6" 184 | 185 | core-util-is@~1.0.0: 186 | version "1.0.2" 187 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 188 | 189 | crc32-stream@^2.0.0: 190 | version "2.0.0" 191 | resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-2.0.0.tgz#e3cdd3b4df3168dd74e3de3fbbcb7b297fe908f4" 192 | dependencies: 193 | crc "^3.4.4" 194 | readable-stream "^2.0.0" 195 | 196 | crc@^3.4.4: 197 | version "3.8.0" 198 | resolved "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6" 199 | dependencies: 200 | buffer "^5.1.0" 201 | 202 | cross-spawn@^6.0.0, cross-spawn@^6.0.5: 203 | version "6.0.5" 204 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 205 | dependencies: 206 | nice-try "^1.0.4" 207 | path-key "^2.0.1" 208 | semver "^5.5.0" 209 | shebang-command "^1.2.0" 210 | which "^1.2.9" 211 | 212 | decamelize@^1.2.0: 213 | version "1.2.0" 214 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 215 | 216 | define-properties@^1.1.2: 217 | version "1.1.3" 218 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 219 | dependencies: 220 | object-keys "^1.0.12" 221 | 222 | end-of-stream@^1.0.0, end-of-stream@^1.1.0: 223 | version "1.4.1" 224 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" 225 | dependencies: 226 | once "^1.4.0" 227 | 228 | error-ex@^1.3.1: 229 | version "1.3.2" 230 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 231 | dependencies: 232 | is-arrayish "^0.2.1" 233 | 234 | es-abstract@^1.4.3: 235 | version "1.13.0" 236 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" 237 | dependencies: 238 | es-to-primitive "^1.2.0" 239 | function-bind "^1.1.1" 240 | has "^1.0.3" 241 | is-callable "^1.1.4" 242 | is-regex "^1.0.4" 243 | object-keys "^1.0.12" 244 | 245 | es-to-primitive@^1.2.0: 246 | version "1.2.0" 247 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" 248 | dependencies: 249 | is-callable "^1.1.4" 250 | is-date-object "^1.0.1" 251 | is-symbol "^1.0.2" 252 | 253 | escape-string-regexp@^1.0.5: 254 | version "1.0.5" 255 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 256 | 257 | execa@^1.0.0: 258 | version "1.0.0" 259 | resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" 260 | dependencies: 261 | cross-spawn "^6.0.0" 262 | get-stream "^4.0.0" 263 | is-stream "^1.1.0" 264 | npm-run-path "^2.0.0" 265 | p-finally "^1.0.0" 266 | signal-exit "^3.0.0" 267 | strip-eof "^1.0.0" 268 | 269 | find-up@^3.0.0: 270 | version "3.0.0" 271 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 272 | dependencies: 273 | locate-path "^3.0.0" 274 | 275 | fs-constants@^1.0.0: 276 | version "1.0.0" 277 | resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" 278 | 279 | fs.realpath@^1.0.0: 280 | version "1.0.0" 281 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 282 | 283 | function-bind@^1.0.2, function-bind@^1.1.1: 284 | version "1.1.1" 285 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 286 | 287 | get-caller-file@^1.0.1: 288 | version "1.0.3" 289 | resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" 290 | 291 | get-stream@^4.0.0: 292 | version "4.1.0" 293 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" 294 | dependencies: 295 | pump "^3.0.0" 296 | 297 | glob@^7.0.0, glob@^7.1.3: 298 | version "7.1.3" 299 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" 300 | dependencies: 301 | fs.realpath "^1.0.0" 302 | inflight "^1.0.4" 303 | inherits "2" 304 | minimatch "^3.0.4" 305 | once "^1.3.0" 306 | path-is-absolute "^1.0.0" 307 | 308 | graceful-fs@^4.1.0, graceful-fs@^4.1.2: 309 | version "4.1.15" 310 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" 311 | 312 | has-flag@^3.0.0: 313 | version "3.0.0" 314 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 315 | 316 | has-symbols@^1.0.0: 317 | version "1.0.0" 318 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" 319 | 320 | has@^1.0.1, has@^1.0.3: 321 | version "1.0.3" 322 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 323 | dependencies: 324 | function-bind "^1.1.1" 325 | 326 | hosted-git-info@^2.1.4: 327 | version "2.7.1" 328 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" 329 | 330 | ieee754@^1.1.4: 331 | version "1.1.12" 332 | resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.12.tgz#50bf24e5b9c8bb98af4964c941cdb0918da7b60b" 333 | 334 | inflight@^1.0.4: 335 | version "1.0.6" 336 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 337 | dependencies: 338 | once "^1.3.0" 339 | wrappy "1" 340 | 341 | inherits@2, inherits@^2.0.3, inherits@~2.0.3: 342 | version "2.0.3" 343 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 344 | 345 | invert-kv@^2.0.0: 346 | version "2.0.0" 347 | resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" 348 | 349 | is-arrayish@^0.2.1: 350 | version "0.2.1" 351 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 352 | 353 | is-callable@^1.1.4: 354 | version "1.1.4" 355 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" 356 | 357 | is-date-object@^1.0.1: 358 | version "1.0.1" 359 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" 360 | 361 | is-fullwidth-code-point@^1.0.0: 362 | version "1.0.0" 363 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" 364 | dependencies: 365 | number-is-nan "^1.0.0" 366 | 367 | is-fullwidth-code-point@^2.0.0: 368 | version "2.0.0" 369 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 370 | 371 | is-regex@^1.0.4: 372 | version "1.0.4" 373 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" 374 | dependencies: 375 | has "^1.0.1" 376 | 377 | is-stream@^1.1.0: 378 | version "1.1.0" 379 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 380 | 381 | is-symbol@^1.0.2: 382 | version "1.0.2" 383 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" 384 | dependencies: 385 | has-symbols "^1.0.0" 386 | 387 | isarray@~1.0.0: 388 | version "1.0.0" 389 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 390 | 391 | isexe@^2.0.0: 392 | version "2.0.0" 393 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 394 | 395 | json-parse-better-errors@^1.0.1: 396 | version "1.0.2" 397 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 398 | 399 | jsonify@~0.0.0: 400 | version "0.0.0" 401 | resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" 402 | 403 | lazystream@^1.0.0: 404 | version "1.0.0" 405 | resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4" 406 | dependencies: 407 | readable-stream "^2.0.5" 408 | 409 | lcid@^2.0.0: 410 | version "2.0.0" 411 | resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" 412 | dependencies: 413 | invert-kv "^2.0.0" 414 | 415 | load-json-file@^4.0.0: 416 | version "4.0.0" 417 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" 418 | dependencies: 419 | graceful-fs "^4.1.2" 420 | parse-json "^4.0.0" 421 | pify "^3.0.0" 422 | strip-bom "^3.0.0" 423 | 424 | locate-path@^3.0.0: 425 | version "3.0.0" 426 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 427 | dependencies: 428 | p-locate "^3.0.0" 429 | path-exists "^3.0.0" 430 | 431 | lodash.assign@^4.2.0: 432 | version "4.2.0" 433 | resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" 434 | 435 | lodash.defaults@^4.2.0: 436 | version "4.2.0" 437 | resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" 438 | 439 | lodash.difference@^4.5.0: 440 | version "4.5.0" 441 | resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" 442 | 443 | lodash.flatten@^4.4.0: 444 | version "4.4.0" 445 | resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" 446 | 447 | lodash.isplainobject@^4.0.6: 448 | version "4.0.6" 449 | resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" 450 | 451 | lodash.toarray@^4.4.0: 452 | version "4.4.0" 453 | resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" 454 | 455 | lodash.union@^4.6.0: 456 | version "4.6.0" 457 | resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" 458 | 459 | lodash@^4.17.11: 460 | version "4.17.11" 461 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" 462 | 463 | map-age-cleaner@^0.1.1: 464 | version "0.1.3" 465 | resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" 466 | dependencies: 467 | p-defer "^1.0.0" 468 | 469 | mem@^4.0.0: 470 | version "4.2.0" 471 | resolved "https://registry.yarnpkg.com/mem/-/mem-4.2.0.tgz#5ee057680ed9cb8dad8a78d820f9a8897a102025" 472 | dependencies: 473 | map-age-cleaner "^0.1.1" 474 | mimic-fn "^2.0.0" 475 | p-is-promise "^2.0.0" 476 | 477 | memorystream@^0.3.1: 478 | version "0.3.1" 479 | resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" 480 | 481 | mime-db@^1.38.0: 482 | version "1.38.0" 483 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.38.0.tgz#1a2aab16da9eb167b49c6e4df2d9c68d63d8e2ad" 484 | 485 | mimic-fn@^2.0.0: 486 | version "2.0.0" 487 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.0.0.tgz#0913ff0b121db44ef5848242c38bbb35d44cabde" 488 | 489 | minimatch@^3.0.4: 490 | version "3.0.4" 491 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 492 | dependencies: 493 | brace-expansion "^1.1.7" 494 | 495 | nice-try@^1.0.4: 496 | version "1.0.5" 497 | resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 498 | 499 | normalize-package-data@^2.3.2: 500 | version "2.5.0" 501 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" 502 | dependencies: 503 | hosted-git-info "^2.1.4" 504 | resolve "^1.10.0" 505 | semver "2 || 3 || 4 || 5" 506 | validate-npm-package-license "^3.0.1" 507 | 508 | normalize-path@^2.0.0: 509 | version "2.1.1" 510 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" 511 | dependencies: 512 | remove-trailing-separator "^1.0.1" 513 | 514 | normalize-path@^3.0.0: 515 | version "3.0.0" 516 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" 517 | 518 | npm-run-all@^4.1.5: 519 | version "4.1.5" 520 | resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.5.tgz#04476202a15ee0e2e214080861bff12a51d98fba" 521 | dependencies: 522 | ansi-styles "^3.2.1" 523 | chalk "^2.4.1" 524 | cross-spawn "^6.0.5" 525 | memorystream "^0.3.1" 526 | minimatch "^3.0.4" 527 | pidtree "^0.3.0" 528 | read-pkg "^3.0.0" 529 | shell-quote "^1.6.1" 530 | string.prototype.padend "^3.0.0" 531 | 532 | npm-run-path@^2.0.0: 533 | version "2.0.2" 534 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" 535 | dependencies: 536 | path-key "^2.0.0" 537 | 538 | number-is-nan@^1.0.0: 539 | version "1.0.1" 540 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 541 | 542 | object-keys@^1.0.12: 543 | version "1.1.0" 544 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.0.tgz#11bd22348dd2e096a045ab06f6c85bcc340fa032" 545 | 546 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 547 | version "1.4.0" 548 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 549 | dependencies: 550 | wrappy "1" 551 | 552 | os-locale@^3.0.0: 553 | version "3.1.0" 554 | resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" 555 | dependencies: 556 | execa "^1.0.0" 557 | lcid "^2.0.0" 558 | mem "^4.0.0" 559 | 560 | p-defer@^1.0.0: 561 | version "1.0.0" 562 | resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" 563 | 564 | p-finally@^1.0.0: 565 | version "1.0.0" 566 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 567 | 568 | p-is-promise@^2.0.0: 569 | version "2.0.0" 570 | resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.0.0.tgz#7554e3d572109a87e1f3f53f6a7d85d1b194f4c5" 571 | 572 | p-limit@^2.0.0: 573 | version "2.2.0" 574 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.0.tgz#417c9941e6027a9abcba5092dd2904e255b5fbc2" 575 | dependencies: 576 | p-try "^2.0.0" 577 | 578 | p-locate@^3.0.0: 579 | version "3.0.0" 580 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 581 | dependencies: 582 | p-limit "^2.0.0" 583 | 584 | p-try@^2.0.0: 585 | version "2.0.0" 586 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" 587 | 588 | parse-json@^4.0.0: 589 | version "4.0.0" 590 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" 591 | dependencies: 592 | error-ex "^1.3.1" 593 | json-parse-better-errors "^1.0.1" 594 | 595 | path-exists@^3.0.0: 596 | version "3.0.0" 597 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 598 | 599 | path-is-absolute@^1.0.0: 600 | version "1.0.1" 601 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 602 | 603 | path-key@^2.0.0, path-key@^2.0.1: 604 | version "2.0.1" 605 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 606 | 607 | path-parse@^1.0.6: 608 | version "1.0.6" 609 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 610 | 611 | path-type@^3.0.0: 612 | version "3.0.0" 613 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" 614 | dependencies: 615 | pify "^3.0.0" 616 | 617 | pidtree@^0.3.0: 618 | version "0.3.0" 619 | resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.0.tgz#f6fada10fccc9f99bf50e90d0b23d72c9ebc2e6b" 620 | 621 | pify@^3.0.0: 622 | version "3.0.0" 623 | resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" 624 | 625 | process-nextick-args@~2.0.0: 626 | version "2.0.0" 627 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" 628 | 629 | pump@^3.0.0: 630 | version "3.0.0" 631 | resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 632 | dependencies: 633 | end-of-stream "^1.1.0" 634 | once "^1.3.1" 635 | 636 | read-pkg@^3.0.0: 637 | version "3.0.0" 638 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" 639 | dependencies: 640 | load-json-file "^4.0.0" 641 | normalize-package-data "^2.3.2" 642 | path-type "^3.0.0" 643 | 644 | readable-stream@^2.0.0, readable-stream@^2.0.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.5: 645 | version "2.3.6" 646 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" 647 | dependencies: 648 | core-util-is "~1.0.0" 649 | inherits "~2.0.3" 650 | isarray "~1.0.0" 651 | process-nextick-args "~2.0.0" 652 | safe-buffer "~5.1.1" 653 | string_decoder "~1.1.1" 654 | util-deprecate "~1.0.1" 655 | 656 | remove-trailing-separator@^1.0.1: 657 | version "1.1.0" 658 | resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" 659 | 660 | require-directory@^2.1.1: 661 | version "2.1.1" 662 | resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" 663 | 664 | require-main-filename@^1.0.1: 665 | version "1.0.1" 666 | resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" 667 | 668 | resolve@^1.10.0: 669 | version "1.10.0" 670 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba" 671 | dependencies: 672 | path-parse "^1.0.6" 673 | 674 | safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: 675 | version "5.1.2" 676 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 677 | 678 | "semver@2 || 3 || 4 || 5", semver@^5.5.0: 679 | version "5.6.0" 680 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" 681 | 682 | set-blocking@^2.0.0: 683 | version "2.0.0" 684 | resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 685 | 686 | shebang-command@^1.2.0: 687 | version "1.2.0" 688 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 689 | dependencies: 690 | shebang-regex "^1.0.0" 691 | 692 | shebang-regex@^1.0.0: 693 | version "1.0.0" 694 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 695 | 696 | shell-quote@^1.6.1: 697 | version "1.6.1" 698 | resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" 699 | dependencies: 700 | array-filter "~0.0.0" 701 | array-map "~0.0.0" 702 | array-reduce "~0.0.0" 703 | jsonify "~0.0.0" 704 | 705 | signal-exit@^3.0.0: 706 | version "3.0.2" 707 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" 708 | 709 | spdx-correct@^3.0.0: 710 | version "3.1.0" 711 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" 712 | dependencies: 713 | spdx-expression-parse "^3.0.0" 714 | spdx-license-ids "^3.0.0" 715 | 716 | spdx-exceptions@^2.1.0: 717 | version "2.2.0" 718 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" 719 | 720 | spdx-expression-parse@^3.0.0: 721 | version "3.0.0" 722 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" 723 | dependencies: 724 | spdx-exceptions "^2.1.0" 725 | spdx-license-ids "^3.0.0" 726 | 727 | spdx-license-ids@^3.0.0: 728 | version "3.0.3" 729 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz#81c0ce8f21474756148bbb5f3bfc0f36bf15d76e" 730 | 731 | string-width@^1.0.1: 732 | version "1.0.2" 733 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" 734 | dependencies: 735 | code-point-at "^1.0.0" 736 | is-fullwidth-code-point "^1.0.0" 737 | strip-ansi "^3.0.0" 738 | 739 | string-width@^2.0.0, string-width@^2.1.1: 740 | version "2.1.1" 741 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 742 | dependencies: 743 | is-fullwidth-code-point "^2.0.0" 744 | strip-ansi "^4.0.0" 745 | 746 | string.prototype.padend@^3.0.0: 747 | version "3.0.0" 748 | resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0" 749 | dependencies: 750 | define-properties "^1.1.2" 751 | es-abstract "^1.4.3" 752 | function-bind "^1.0.2" 753 | 754 | string_decoder@~1.1.1: 755 | version "1.1.1" 756 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" 757 | dependencies: 758 | safe-buffer "~5.1.0" 759 | 760 | strip-ansi@^3.0.0, strip-ansi@^3.0.1: 761 | version "3.0.1" 762 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 763 | dependencies: 764 | ansi-regex "^2.0.0" 765 | 766 | strip-ansi@^4.0.0: 767 | version "4.0.0" 768 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 769 | dependencies: 770 | ansi-regex "^3.0.0" 771 | 772 | strip-bom@^3.0.0: 773 | version "3.0.0" 774 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" 775 | 776 | strip-eof@^1.0.0: 777 | version "1.0.0" 778 | resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" 779 | 780 | supports-color@^5.3.0: 781 | version "5.5.0" 782 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 783 | dependencies: 784 | has-flag "^3.0.0" 785 | 786 | tar-stream@^1.5.0: 787 | version "1.6.2" 788 | resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555" 789 | dependencies: 790 | bl "^1.0.0" 791 | buffer-alloc "^1.2.0" 792 | end-of-stream "^1.0.0" 793 | fs-constants "^1.0.0" 794 | readable-stream "^2.3.0" 795 | to-buffer "^1.1.1" 796 | xtend "^4.0.0" 797 | 798 | to-buffer@^1.1.1: 799 | version "1.1.1" 800 | resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80" 801 | 802 | typedarray@^0.0.6: 803 | version "0.0.6" 804 | resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" 805 | 806 | util-deprecate@~1.0.1: 807 | version "1.0.2" 808 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 809 | 810 | validate-npm-package-license@^3.0.1: 811 | version "3.0.4" 812 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" 813 | dependencies: 814 | spdx-correct "^3.0.0" 815 | spdx-expression-parse "^3.0.0" 816 | 817 | which-module@^2.0.0: 818 | version "2.0.0" 819 | resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" 820 | 821 | which@^1.2.9: 822 | version "1.3.1" 823 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 824 | dependencies: 825 | isexe "^2.0.0" 826 | 827 | wrap-ansi@^2.0.0: 828 | version "2.1.0" 829 | resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" 830 | dependencies: 831 | string-width "^1.0.1" 832 | strip-ansi "^3.0.1" 833 | 834 | wrappy@1: 835 | version "1.0.2" 836 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 837 | 838 | xtend@^4.0.0: 839 | version "4.0.1" 840 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" 841 | 842 | "y18n@^3.2.1 || ^4.0.0": 843 | version "4.0.0" 844 | resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" 845 | 846 | yargs-parser@^11.1.1: 847 | version "11.1.1" 848 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" 849 | dependencies: 850 | camelcase "^5.0.0" 851 | decamelize "^1.2.0" 852 | 853 | yargs@^12.0.2: 854 | version "12.0.5" 855 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" 856 | dependencies: 857 | cliui "^4.0.0" 858 | decamelize "^1.2.0" 859 | find-up "^3.0.0" 860 | get-caller-file "^1.0.1" 861 | os-locale "^3.0.0" 862 | require-directory "^2.1.1" 863 | require-main-filename "^1.0.1" 864 | set-blocking "^2.0.0" 865 | string-width "^2.0.0" 866 | which-module "^2.0.0" 867 | y18n "^3.2.1 || ^4.0.0" 868 | yargs-parser "^11.1.1" 869 | 870 | zip-stream@^2.0.1: 871 | version "2.0.1" 872 | resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-2.0.1.tgz#48a062488afe91dda42f823700fae589753ccd34" 873 | dependencies: 874 | archiver-utils "^2.0.0" 875 | compress-commons "^1.2.0" 876 | readable-stream "^2.0.0" 877 | --------------------------------------------------------------------------------