├── .DS_Store
├── .gitignore
├── Procfile
├── README.md
├── app.js
├── client
├── .DS_Store
├── README.md
├── build
│ ├── asset-manifest.json
│ ├── favicon.ico
│ ├── index.html
│ ├── logo192.png
│ ├── logo512.png
│ ├── manifest.json
│ ├── precache-manifest.07db7a979aa9759aef3051540ddccaa3.js
│ ├── robots.txt
│ ├── service-worker.js
│ └── static
│ │ ├── css
│ │ ├── main.cf0a5a8c.chunk.css
│ │ └── main.cf0a5a8c.chunk.css.map
│ │ └── js
│ │ ├── 2.4d8a0161.chunk.js
│ │ ├── 2.4d8a0161.chunk.js.LICENSE.txt
│ │ ├── 2.4d8a0161.chunk.js.map
│ │ ├── main.6f1325f0.chunk.js
│ │ ├── main.6f1325f0.chunk.js.map
│ │ ├── runtime-main.09b85ec0.js
│ │ └── runtime-main.09b85ec0.js.map
├── package-lock.json
├── package.json
├── public
│ ├── .DS_Store
│ ├── favicon.ico
│ ├── index.html
│ ├── logo192.png
│ ├── logo512.png
│ ├── manifest.json
│ └── robots.txt
└── src
│ ├── .DS_Store
│ ├── App.css
│ ├── App.js
│ ├── App.test.js
│ ├── action
│ ├── action.js
│ └── type.js
│ ├── assets
│ ├── .DS_Store
│ ├── 212021.gif
│ ├── logo_transparent.png
│ └── profile.png
│ ├── component
│ ├── .DS_Store
│ ├── PrivateRoute.js
│ ├── checkout
│ │ ├── Checkout.js
│ │ └── Checkout.module.css
│ ├── dashboard
│ │ └── Dashboard.js
│ ├── favlistdetail
│ │ ├── FavListDetail.js
│ │ └── FavListDetail.module.css
│ ├── findpassword
│ │ ├── FindPassword.js
│ │ └── FindPassword.module.css
│ ├── login
│ │ ├── Login.js
│ │ └── Login.module.css
│ ├── main
│ │ ├── Main.js
│ │ └── Main.module.css
│ ├── nav
│ │ ├── Nav.js
│ │ └── Nav.module.css
│ ├── orderSummary
│ │ ├── OrderSummary.js
│ │ └── OrderSummary.module.css
│ ├── orderhistory
│ │ ├── OrderHistory.js
│ │ └── OrderHistory.module.css
│ ├── payment
│ │ ├── Payment.js
│ │ └── Payment.module.css
│ ├── products
│ │ ├── ProductDetail.js
│ │ ├── ProductDetail.module.css
│ │ ├── Products.js
│ │ └── Products.module.css
│ ├── resetPassword
│ │ ├── ResetPassword.js
│ │ └── ResetPassword.module.css
│ ├── shippingInfo
│ │ ├── ShippingInfo.js
│ │ └── ShippingInfo.module.css
│ ├── shoppingcart
│ │ ├── ShoppingCart.js
│ │ └── ShoppingCart.module.css
│ ├── signup
│ │ ├── Signup.js
│ │ └── Signup.module.css
│ └── ui
│ │ ├── FilterSort.js
│ │ ├── FilterSort.module.css
│ │ ├── objects.js
│ │ └── paypal
│ │ ├── PayPal.js
│ │ └── PayPal.module.css
│ ├── index.css
│ ├── index.js
│ ├── logo.svg
│ ├── middleware
│ └── middleware.js
│ ├── reducer
│ ├── authReducer.js
│ ├── backendDataReducer.js
│ ├── errorReducer.js
│ ├── favoriteListReducer.js
│ ├── index.js
│ ├── isUserLoginReducer.js
│ ├── orderReducer.js
│ └── shoppingCartReducer.js
│ ├── serviceWorker.js
│ └── setupTests.js
├── controllers
├── auth.js
└── products.js
├── middleware
└── is-auth.js
├── models
├── order.js
├── products.js
└── users.js
├── node_modules
├── .bin
│ ├── is-ci
│ ├── mime
│ ├── nodemon
│ ├── nodetouch
│ ├── nopt
│ ├── rc
│ └── semver
├── @sindresorhus
│ └── is
│ │ ├── dist
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── index.js.map
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
├── @szmarczak
│ └── http-timer
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── package.json
│ │ └── source
│ │ └── index.js
├── abbrev
│ ├── LICENSE
│ ├── README.md
│ ├── abbrev.js
│ └── package.json
├── accepts
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── ansi-align
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── node_modules
│ │ └── string-width
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ └── package.json
├── ansi-regex
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── ansi-styles
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── anymatch
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ └── package.json
├── array-flatten
│ ├── LICENSE
│ ├── README.md
│ ├── array-flatten.js
│ └── package.json
├── balanced-match
│ ├── .npmignore
│ ├── LICENSE.md
│ ├── README.md
│ ├── index.js
│ └── package.json
├── binary-extensions
│ ├── binary-extensions.json
│ ├── binary-extensions.json.d.ts
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── body-parser
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── read.js
│ │ └── types
│ │ │ ├── json.js
│ │ │ ├── raw.js
│ │ │ ├── text.js
│ │ │ └── urlencoded.js
│ └── package.json
├── boxen
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── brace-expansion
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── braces
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── compile.js
│ │ ├── constants.js
│ │ ├── expand.js
│ │ ├── parse.js
│ │ ├── stringify.js
│ │ └── utils.js
│ └── package.json
├── bytes
│ ├── History.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ └── package.json
├── cacheable-request
│ ├── LICENSE
│ ├── README.md
│ ├── node_modules
│ │ ├── get-stream
│ │ │ ├── buffer-stream.js
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ │ └── lowercase-keys
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── camelcase
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── chalk
│ ├── index.d.ts
│ ├── license
│ ├── node_modules
│ │ ├── has-flag
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ │ └── supports-color
│ │ │ ├── browser.js
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ ├── readme.md
│ └── source
│ │ ├── index.js
│ │ ├── templates.js
│ │ └── util.js
├── chokidar
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── constants.js
│ │ ├── fsevents-handler.js
│ │ └── nodefs-handler.js
│ ├── package.json
│ └── types
│ │ └── index.d.ts
├── ci-info
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── vendors.json
├── cli-boxes
│ ├── boxes.json
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── clone-response
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── color-convert
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── conversions.js
│ ├── index.js
│ ├── package.json
│ └── route.js
├── color-name
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── concat-map
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.markdown
│ ├── example
│ │ └── map.js
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── map.js
├── configstore
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── content-disposition
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── content-type
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── cookie-signature
│ ├── .npmignore
│ ├── History.md
│ ├── Readme.md
│ ├── index.js
│ └── package.json
├── cookie
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── crypto-random-string
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── debug
│ ├── .coveralls.yml
│ ├── .eslintrc
│ ├── .npmignore
│ ├── .travis.yml
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── Makefile
│ ├── README.md
│ ├── component.json
│ ├── karma.conf.js
│ ├── node.js
│ ├── package.json
│ └── src
│ │ ├── browser.js
│ │ ├── debug.js
│ │ ├── index.js
│ │ ├── inspector-log.js
│ │ └── node.js
├── decompress-response
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── deep-extend
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ └── deep-extend.js
│ └── package.json
├── defer-to-connect
│ ├── LICENSE
│ ├── README.md
│ ├── dist
│ │ ├── index.d.ts
│ │ └── index.js
│ └── package.json
├── depd
│ ├── History.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ ├── lib
│ │ ├── browser
│ │ │ └── index.js
│ │ └── compat
│ │ │ ├── callsite-tostring.js
│ │ │ ├── event-listener-count.js
│ │ │ └── index.js
│ └── package.json
├── destroy
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── dot-prop
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── duplexer3
│ ├── LICENSE.md
│ ├── README.md
│ ├── index.js
│ └── package.json
├── ee-first
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── emoji-regex
│ ├── LICENSE-MIT.txt
│ ├── README.md
│ ├── es2015
│ │ ├── index.js
│ │ └── text.js
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── text.js
├── encodeurl
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── end-of-stream
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── escape-goat
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── escape-html
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ └── package.json
├── etag
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── express
│ ├── History.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ ├── lib
│ │ ├── application.js
│ │ ├── express.js
│ │ ├── middleware
│ │ │ ├── init.js
│ │ │ └── query.js
│ │ ├── request.js
│ │ ├── response.js
│ │ ├── router
│ │ │ ├── index.js
│ │ │ ├── layer.js
│ │ │ └── route.js
│ │ ├── utils.js
│ │ └── view.js
│ └── package.json
├── fill-range
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── finalhandler
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── forwarded
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── fresh
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── fsevents
│ ├── LICENSE
│ ├── README.md
│ ├── fsevents.d.ts
│ ├── fsevents.js
│ ├── fsevents.node
│ └── package.json
├── get-stream
│ ├── buffer-stream.js
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── glob-parent
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── global-dirs
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── got
│ ├── license
│ ├── package.json
│ ├── readme.md
│ └── source
│ │ ├── as-promise.js
│ │ ├── as-stream.js
│ │ ├── create.js
│ │ ├── errors.js
│ │ ├── get-response.js
│ │ ├── index.js
│ │ ├── known-hook-events.js
│ │ ├── merge.js
│ │ ├── normalize-arguments.js
│ │ ├── progress.js
│ │ ├── request-as-event-emitter.js
│ │ └── utils
│ │ ├── deep-freeze.js
│ │ ├── get-body-size.js
│ │ ├── is-form-data.js
│ │ ├── timed-out.js
│ │ └── url-to-options.js
├── graceful-fs
│ ├── LICENSE
│ ├── README.md
│ ├── clone.js
│ ├── graceful-fs.js
│ ├── legacy-streams.js
│ ├── package.json
│ └── polyfills.js
├── has-flag
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── has-yarn
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── http-cache-semantics
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── http-errors
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── iconv-lite
│ ├── Changelog.md
│ ├── LICENSE
│ ├── README.md
│ ├── encodings
│ │ ├── dbcs-codec.js
│ │ ├── dbcs-data.js
│ │ ├── index.js
│ │ ├── internal.js
│ │ ├── sbcs-codec.js
│ │ ├── sbcs-data-generated.js
│ │ ├── sbcs-data.js
│ │ ├── tables
│ │ │ ├── big5-added.json
│ │ │ ├── cp936.json
│ │ │ ├── cp949.json
│ │ │ ├── cp950.json
│ │ │ ├── eucjp.json
│ │ │ ├── gb18030-ranges.json
│ │ │ ├── gbk-added.json
│ │ │ └── shiftjis.json
│ │ ├── utf16.js
│ │ └── utf7.js
│ ├── lib
│ │ ├── bom-handling.js
│ │ ├── extend-node.js
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── streams.js
│ └── package.json
├── ignore-by-default
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── import-lazy
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── imurmurhash
│ ├── README.md
│ ├── imurmurhash.js
│ ├── imurmurhash.min.js
│ └── package.json
├── inherits
│ ├── LICENSE
│ ├── README.md
│ ├── inherits.js
│ ├── inherits_browser.js
│ └── package.json
├── ini
│ ├── LICENSE
│ ├── README.md
│ ├── ini.js
│ └── package.json
├── ipaddr.js
│ ├── LICENSE
│ ├── README.md
│ ├── ipaddr.min.js
│ ├── lib
│ │ ├── ipaddr.js
│ │ └── ipaddr.js.d.ts
│ └── package.json
├── is-binary-path
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-ci
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── bin.js
│ ├── index.js
│ └── package.json
├── is-extglob
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── is-fullwidth-code-point
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-glob
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── is-installed-globally
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-npm
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-number
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── is-obj
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-path-inside
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── is-typedarray
│ ├── LICENSE.md
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── test.js
├── is-yarn-global
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── json-buffer
│ ├── .npmignore
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── index.js
├── keyv
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── latest-version
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── lowercase-keys
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── make-dir
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ ├── .bin
│ │ │ └── semver
│ │ └── semver
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── bin
│ │ │ └── semver.js
│ │ │ ├── package.json
│ │ │ ├── range.bnf
│ │ │ └── semver.js
│ ├── package.json
│ └── readme.md
├── media-typer
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── merge-descriptors
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── methods
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── mime-db
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── db.json
│ ├── index.js
│ └── package.json
├── mime-types
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── mime
│ ├── .npmignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── cli.js
│ ├── mime.js
│ ├── package.json
│ ├── src
│ │ ├── build.js
│ │ └── test.js
│ └── types.json
├── mimic-response
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── minimatch
│ ├── LICENSE
│ ├── README.md
│ ├── minimatch.js
│ └── package.json
├── minimist
│ ├── .travis.yml
│ ├── LICENSE
│ ├── example
│ │ └── parse.js
│ ├── index.js
│ ├── package.json
│ ├── readme.markdown
│ └── test
│ │ ├── all_bool.js
│ │ ├── bool.js
│ │ ├── dash.js
│ │ ├── default_bool.js
│ │ ├── dotted.js
│ │ ├── kv_short.js
│ │ ├── long.js
│ │ ├── num.js
│ │ ├── parse.js
│ │ ├── parse_modified.js
│ │ ├── proto.js
│ │ ├── short.js
│ │ ├── stop_early.js
│ │ ├── unknown.js
│ │ └── whitespace.js
├── ms
│ ├── index.js
│ ├── license.md
│ ├── package.json
│ └── readme.md
├── negotiator
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── charset.js
│ │ ├── encoding.js
│ │ ├── language.js
│ │ └── mediaType.js
│ └── package.json
├── nodemon
│ ├── .jscsrc
│ ├── .jshintrc
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ ├── nodemon.js
│ │ └── postinstall.js
│ ├── commitlint.config.js
│ ├── doc
│ │ └── cli
│ │ │ ├── authors.txt
│ │ │ ├── config.txt
│ │ │ ├── help.txt
│ │ │ ├── logo.txt
│ │ │ ├── options.txt
│ │ │ ├── topics.txt
│ │ │ ├── usage.txt
│ │ │ └── whoami.txt
│ ├── lib
│ │ ├── cli
│ │ │ ├── index.js
│ │ │ └── parse.js
│ │ ├── config
│ │ │ ├── command.js
│ │ │ ├── defaults.js
│ │ │ ├── exec.js
│ │ │ ├── index.js
│ │ │ └── load.js
│ │ ├── help
│ │ │ └── index.js
│ │ ├── index.js
│ │ ├── monitor
│ │ │ ├── index.js
│ │ │ ├── match.js
│ │ │ ├── run.js
│ │ │ ├── signals.js
│ │ │ └── watch.js
│ │ ├── nodemon.js
│ │ ├── rules
│ │ │ ├── add.js
│ │ │ ├── index.js
│ │ │ └── parse.js
│ │ ├── spawn.js
│ │ ├── utils
│ │ │ ├── bus.js
│ │ │ ├── clone.js
│ │ │ ├── colour.js
│ │ │ ├── index.js
│ │ │ ├── log.js
│ │ │ └── merge.js
│ │ └── version.js
│ ├── node_modules
│ │ ├── debug
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── dist
│ │ │ │ └── debug.js
│ │ │ ├── node.js
│ │ │ ├── package.json
│ │ │ └── src
│ │ │ │ ├── browser.js
│ │ │ │ ├── common.js
│ │ │ │ ├── index.js
│ │ │ │ └── node.js
│ │ └── ms
│ │ │ ├── index.js
│ │ │ ├── license.md
│ │ │ ├── package.json
│ │ │ └── readme.md
│ └── package.json
├── nopt
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── nopt.js
│ ├── examples
│ │ └── my-program.js
│ ├── lib
│ │ └── nopt.js
│ └── package.json
├── normalize-path
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── normalize-url
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── on-finished
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── once
│ ├── LICENSE
│ ├── README.md
│ ├── once.js
│ └── package.json
├── p-cancelable
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── package-json
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ ├── .bin
│ │ │ └── semver
│ │ └── semver
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── bin
│ │ │ └── semver.js
│ │ │ ├── package.json
│ │ │ ├── range.bnf
│ │ │ └── semver.js
│ ├── package.json
│ └── readme.md
├── parseurl
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── path-to-regexp
│ ├── History.md
│ ├── LICENSE
│ ├── Readme.md
│ ├── index.js
│ └── package.json
├── picomatch
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── lib
│ │ ├── constants.js
│ │ ├── parse.js
│ │ ├── picomatch.js
│ │ ├── scan.js
│ │ └── utils.js
│ └── package.json
├── prepend-http
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── proxy-addr
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── pstree.remy
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── lib
│ │ ├── index.js
│ │ ├── tree.js
│ │ └── utils.js
│ ├── package.json
│ └── tests
│ │ ├── fixtures
│ │ ├── index.js
│ │ ├── out1
│ │ └── out2
│ │ └── index.test.js
├── pump
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── test-browser.js
│ └── test-node.js
├── pupa
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── qs
│ ├── .editorconfig
│ ├── .eslintignore
│ ├── .eslintrc
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── dist
│ │ └── qs.js
│ ├── lib
│ │ ├── formats.js
│ │ ├── index.js
│ │ ├── parse.js
│ │ ├── stringify.js
│ │ └── utils.js
│ ├── package.json
│ └── test
│ │ ├── .eslintrc
│ │ ├── index.js
│ │ ├── parse.js
│ │ ├── stringify.js
│ │ └── utils.js
├── range-parser
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── raw-body
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ └── package.json
├── rc
│ ├── LICENSE.APACHE2
│ ├── LICENSE.BSD
│ ├── LICENSE.MIT
│ ├── README.md
│ ├── browser.js
│ ├── cli.js
│ ├── index.js
│ ├── lib
│ │ └── utils.js
│ ├── package.json
│ └── test
│ │ ├── ini.js
│ │ ├── nested-env-vars.js
│ │ └── test.js
├── readdirp
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ └── package.json
├── registry-auth-token
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── base64.js
│ ├── index.js
│ ├── package.json
│ ├── registry-url.js
│ └── test
│ │ ├── auth-token.test.js
│ │ └── registry-url.test.js
├── registry-url
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── responselike
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── src
│ │ └── index.js
├── safe-buffer
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ └── package.json
├── safer-buffer
│ ├── LICENSE
│ ├── Porting-Buffer.md
│ ├── Readme.md
│ ├── dangerous.js
│ ├── package.json
│ ├── safer.js
│ └── tests.js
├── semver-diff
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ ├── .bin
│ │ │ └── semver
│ │ └── semver
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── bin
│ │ │ └── semver.js
│ │ │ ├── package.json
│ │ │ ├── range.bnf
│ │ │ └── semver.js
│ ├── package.json
│ └── readme.md
├── semver
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── semver
│ ├── package.json
│ ├── range.bnf
│ └── semver.js
├── send
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── node_modules
│ │ └── ms
│ │ │ ├── index.js
│ │ │ ├── license.md
│ │ │ ├── package.json
│ │ │ └── readme.md
│ └── package.json
├── serve-static
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── setprototypeof
│ ├── LICENSE
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── index.js
├── signal-exit
│ ├── CHANGELOG.md
│ ├── LICENSE.txt
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── signals.js
├── statuses
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── codes.json
│ ├── index.js
│ └── package.json
├── string-width
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── node_modules
│ │ ├── ansi-regex
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ │ ├── emoji-regex
│ │ │ ├── LICENSE-MIT.txt
│ │ │ ├── README.md
│ │ │ ├── es2015
│ │ │ │ ├── index.js
│ │ │ │ └── text.js
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── package.json
│ │ │ └── text.js
│ │ ├── is-fullwidth-code-point
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ │ └── strip-ansi
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ ├── license
│ │ │ ├── package.json
│ │ │ └── readme.md
│ ├── package.json
│ └── readme.md
├── strip-ansi
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── strip-json-comments
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── supports-color
│ ├── browser.js
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── term-size
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ ├── readme.md
│ └── vendor
│ │ ├── .DS_Store
│ │ ├── macos
│ │ ├── .DS_Store
│ │ └── term-size
│ │ └── windows
│ │ └── term-size.exe
├── to-readable-stream
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── to-regex-range
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── toidentifier
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── touch
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ └── nodetouch.js
│ ├── index.js
│ └── package.json
├── type-fest
│ ├── index.d.ts
│ ├── license
│ ├── package.json
│ ├── readme.md
│ └── source
│ │ ├── basic.d.ts
│ │ ├── except.d.ts
│ │ ├── literal-union.d.ts
│ │ ├── merge-exclusive.d.ts
│ │ ├── merge.d.ts
│ │ ├── mutable.d.ts
│ │ ├── opaque.d.ts
│ │ ├── package-json.d.ts
│ │ ├── partial-deep.d.ts
│ │ ├── promisable.d.ts
│ │ ├── readonly-deep.d.ts
│ │ ├── require-at-least-one.d.ts
│ │ ├── require-exactly-one.d.ts
│ │ ├── set-optional.d.ts
│ │ └── set-required.d.ts
├── type-is
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── typedarray-to-buffer
│ ├── .airtap.yml
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── test
│ │ └── basic.js
├── undefsafe
│ ├── .jscsrc
│ ├── .jshintrc
│ ├── .npmignore
│ ├── .travis.yml
│ ├── LICENSE
│ ├── README.md
│ ├── example.js
│ ├── lib
│ │ └── undefsafe.js
│ └── package.json
├── unique-string
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── unpipe
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── update-notifier
│ ├── check.js
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── url-parse-lax
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── utils-merge
│ ├── .npmignore
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── vary
│ ├── HISTORY.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
├── widest-line
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── wrappy
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── wrappy.js
├── write-file-atomic
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── index.js
│ └── package.json
└── xdg-basedir
│ ├── index.d.ts
│ ├── index.js
│ ├── license
│ ├── package.json
│ └── readme.md
├── package-lock.json
├── package.json
└── routes
├── auth.js
└── products.js
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/.DS_Store
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 |
3 | .env
4 |
5 | keys.js
6 |
7 | .DS_Store
8 |
9 |
--------------------------------------------------------------------------------
/Procfile:
--------------------------------------------------------------------------------
1 | web: node app.js
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # L&S Kids Clothing Store(MERN)
2 |
3 |
4 |
5 |
Hey, 🖐 This is my MERN stack E-Commerce Website aiming to sell my kiddos clothes. Of course, selling is not the point. Honing my coding skill is the primary reason.
6 | The stack: MongoDB, Express, React, Node.js. Redux for the global state management.
7 | Here is the deomo. 👉https://morning-castle-57375.herokuapp.com/
8 |
9 | If you like the project, don't forget to give me a star🌟 or buy me a coffee .
10 |
--------------------------------------------------------------------------------
/client/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/.DS_Store
--------------------------------------------------------------------------------
/client/build/asset-manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "files": {
3 | "main.css": "/static/css/main.cf0a5a8c.chunk.css",
4 | "main.js": "/static/js/main.6f1325f0.chunk.js",
5 | "main.js.map": "/static/js/main.6f1325f0.chunk.js.map",
6 | "runtime-main.js": "/static/js/runtime-main.09b85ec0.js",
7 | "runtime-main.js.map": "/static/js/runtime-main.09b85ec0.js.map",
8 | "static/js/2.4d8a0161.chunk.js": "/static/js/2.4d8a0161.chunk.js",
9 | "static/js/2.4d8a0161.chunk.js.map": "/static/js/2.4d8a0161.chunk.js.map",
10 | "index.html": "/index.html",
11 | "precache-manifest.07db7a979aa9759aef3051540ddccaa3.js": "/precache-manifest.07db7a979aa9759aef3051540ddccaa3.js",
12 | "service-worker.js": "/service-worker.js",
13 | "static/css/main.cf0a5a8c.chunk.css.map": "/static/css/main.cf0a5a8c.chunk.css.map",
14 | "static/js/2.4d8a0161.chunk.js.LICENSE.txt": "/static/js/2.4d8a0161.chunk.js.LICENSE.txt"
15 | },
16 | "entrypoints": [
17 | "static/js/runtime-main.09b85ec0.js",
18 | "static/js/2.4d8a0161.chunk.js",
19 | "static/css/main.cf0a5a8c.chunk.css",
20 | "static/js/main.6f1325f0.chunk.js"
21 | ]
22 | }
--------------------------------------------------------------------------------
/client/build/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/build/favicon.ico
--------------------------------------------------------------------------------
/client/build/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/build/logo192.png
--------------------------------------------------------------------------------
/client/build/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/build/logo512.png
--------------------------------------------------------------------------------
/client/build/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/client/build/precache-manifest.07db7a979aa9759aef3051540ddccaa3.js:
--------------------------------------------------------------------------------
1 | self.__precacheManifest = (self.__precacheManifest || []).concat([
2 | {
3 | "revision": "55da4b324184d62a28ff0cb7c84fc792",
4 | "url": "/index.html"
5 | },
6 | {
7 | "revision": "fdc106bbb4c2d1e18eb8",
8 | "url": "/static/css/main.cf0a5a8c.chunk.css"
9 | },
10 | {
11 | "revision": "5bf96dafc2bfeae0f9a9",
12 | "url": "/static/js/2.4d8a0161.chunk.js"
13 | },
14 | {
15 | "revision": "4274e1fda1b3d215c14740400b5c04ad",
16 | "url": "/static/js/2.4d8a0161.chunk.js.LICENSE.txt"
17 | },
18 | {
19 | "revision": "fdc106bbb4c2d1e18eb8",
20 | "url": "/static/js/main.6f1325f0.chunk.js"
21 | },
22 | {
23 | "revision": "9b4e396c183e42c1fa5c",
24 | "url": "/static/js/runtime-main.09b85ec0.js"
25 | }
26 | ]);
--------------------------------------------------------------------------------
/client/build/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/client/public/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/public/.DS_Store
--------------------------------------------------------------------------------
/client/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/public/favicon.ico
--------------------------------------------------------------------------------
/client/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/public/logo192.png
--------------------------------------------------------------------------------
/client/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/public/logo512.png
--------------------------------------------------------------------------------
/client/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/client/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/client/src/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/src/.DS_Store
--------------------------------------------------------------------------------
/client/src/App.css:
--------------------------------------------------------------------------------
1 | .App {
2 | text-align: center;
3 | }
4 |
5 | .App-logo {
6 | height: 40vmin;
7 | pointer-events: none;
8 | }
9 |
10 | @media (prefers-reduced-motion: no-preference) {
11 | .App-logo {
12 | animation: App-logo-spin infinite 20s linear;
13 | }
14 | }
15 |
16 | .App-header {
17 | background-color: #282c34;
18 | min-height: 100vh;
19 | display: flex;
20 | flex-direction: column;
21 | align-items: center;
22 | justify-content: center;
23 | font-size: calc(10px + 2vmin);
24 | color: white;
25 | }
26 |
27 | .App-link {
28 | color: #61dafb;
29 | }
30 |
31 | @keyframes App-logo-spin {
32 | from {
33 | transform: rotate(0deg);
34 | }
35 | to {
36 | transform: rotate(360deg);
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/client/src/App.test.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { render } from '@testing-library/react';
3 | import App from './App';
4 |
5 | test('renders learn react link', () => {
6 | const { getByText } = render( );
7 | const linkElement = getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/client/src/assets/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/src/assets/.DS_Store
--------------------------------------------------------------------------------
/client/src/assets/212021.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/src/assets/212021.gif
--------------------------------------------------------------------------------
/client/src/assets/logo_transparent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/src/assets/logo_transparent.png
--------------------------------------------------------------------------------
/client/src/assets/profile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/src/assets/profile.png
--------------------------------------------------------------------------------
/client/src/component/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/client/src/component/.DS_Store
--------------------------------------------------------------------------------
/client/src/component/checkout/Checkout.module.css:
--------------------------------------------------------------------------------
1 | .Container {
2 | /* background-color: rebeccapurple; */
3 | width: 80vw;
4 | margin-left: auto;
5 | margin-right: auto;
6 | }
--------------------------------------------------------------------------------
/client/src/component/dashboard/Dashboard.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import {connect} from 'react-redux';
3 | import {withRouter} from 'react-router';
4 | import {logoutUser} from '../../action/action';
5 |
6 | const Dashboard = (props) => {
7 |
8 | const logoutHandler = () => {
9 | props.dispatch(logoutUser(props.history))
10 | }
11 |
12 | return (
13 |
14 |
Hey there, {props.auth.user.userName}
15 | You are logged in a full-stack MERN application.
16 | LOGOUT
17 |
18 | )
19 | };
20 |
21 | const mapStateToProps = (state) => {
22 | return {
23 | auth: state.auth
24 | }
25 | }
26 |
27 | export default connect(mapStateToProps)(withRouter(Dashboard));
28 |
--------------------------------------------------------------------------------
/client/src/component/main/Main.module.css:
--------------------------------------------------------------------------------
1 | .Container {
2 | background-color: rgb(255, 255, 255);
3 | margin-top: 0px;
4 | z-index: 100;
5 | height: 80px;
6 | display: flex;
7 | justify-content: flex-end;
8 | position: sticky;
9 | top: 0;
10 | /* -webkit-box-shadow: 0px 10px 20px 0px rgba(240, 240, 240, 1);
11 | -moz-box-shadow: 0px 10px 20px 0px rgba(240, 240, 240, 1);
12 | box-shadow: 0px 10px 20px 0px rgba(240, 240, 240, 1); */
13 | }
14 |
15 | .Logo {
16 | position: absolute;
17 | top: 20px;
18 | right: 70vw;
19 | }
20 |
21 | .List {
22 | list-style: none;
23 | margin: auto 12px;
24 | margin-right: 20px;
25 | }
26 |
27 | .Nav {
28 | position: sticky;
29 | top: 0;
30 | z-index: 1000;
31 | }
32 |
33 | @media only screen and (min-width: 768px) {
34 | .Logo {
35 | position: absolute;
36 | top: 20px;
37 | /* right: 84vw; */
38 | left: 80px;
39 | }
40 | }
--------------------------------------------------------------------------------
/client/src/component/nav/Nav.module.css:
--------------------------------------------------------------------------------
1 | .List {
2 | list-style: none;
3 | /* background-color: red; */
4 | border: none;
5 | width: 160px;
6 | margin-left: auto;
7 | margin-right: auto;
8 | margin: 0;
9 | padding: 0;
10 | text-align: center;
11 | box-sizing: border-box;
12 | }
13 |
14 | .ListItem {
15 | /* background-color: green; */
16 | margin: 24px auto;
17 | color: #1a1918;
18 | font-weight: 600;
19 | font-size: 16px;
20 | }
21 |
22 | .Button {
23 | /* background-color: yellow; */
24 | margin-top: 24px;
25 | height: 44px;
26 | width: 160px;
27 | margin-bottom: 24px;
28 | border: none;
29 | background-color: #fc5359;
30 | color: white;
31 | font-weight: 600;
32 | }
33 |
34 | .SignupButton {
35 | height: 44px;
36 | width: 160px;
37 | margin-bottom: 24px;
38 | border: #fc5359;
39 | background-color: #ffddde;
40 | color: #fc5359;
41 | font-weight: 600;
42 | }
43 |
44 | .Alink {
45 | text-decoration: none;
46 | color: black;
47 | }
--------------------------------------------------------------------------------
/client/src/component/orderSummary/OrderSummary.module.css:
--------------------------------------------------------------------------------
1 | .SubContainer {
2 | /* background-color: yellow; */
3 | width: 80vw;
4 | margin-left: auto;
5 | margin-right: auto;
6 | }
7 |
8 | .ListContainer {
9 | padding-inline-start: 0;
10 | }
11 |
12 | .List {
13 | list-style: none;
14 | }
15 |
16 | .Image {
17 | width: 80px;
18 | height: auto;
19 | }
20 |
21 | hr {
22 | border: 1px solid #eeeeee;
23 | }
24 |
25 | @media only screen and (min-width: 768px) {
26 | .SubContainer {
27 | /* background-color: yellow; */
28 | width: 80vw;
29 | margin-left: auto;
30 | margin-right: auto;
31 | display: flex;
32 | flex-direction: column;
33 | }
34 | .ListContainer {
35 | /* background-color: red; */
36 | padding-inline-start: 0;
37 | }
38 | .Image {
39 | width: 180px;
40 | height: auto;
41 | }
42 | }
--------------------------------------------------------------------------------
/client/src/component/orderhistory/OrderHistory.module.css:
--------------------------------------------------------------------------------
1 | .SubContainer {
2 | /* background-color: yellow; */
3 | width: 80vw;
4 | margin-left: auto;
5 | margin-right: auto;
6 | }
7 |
8 | .ListContainer {
9 | padding-inline-start: 0;
10 | }
11 |
12 | .List {
13 | list-style: none;
14 | }
15 |
16 | .Image {
17 | width: 80px;
18 | height: auto;
19 | }
20 |
21 | hr {
22 | border: 1px solid #eeeeee;
23 | }
24 |
25 | @media only screen and (min-width: 768px) {
26 | .SubContainer {
27 | /* background-color: yellow; */
28 | width: 80vw;
29 | margin-left: auto;
30 | margin-right: auto;
31 | display: flex;
32 | flex-direction: column;
33 | }
34 | .ListContainer {
35 | /* background-color: red; */
36 | padding-inline-start: 0;
37 | }
38 | .Image {
39 | width: 180px;
40 | height: auto;
41 | }
42 | }
--------------------------------------------------------------------------------
/client/src/component/payment/Payment.module.css:
--------------------------------------------------------------------------------
1 | .Container {
2 | /* background-color: rebeccapurple; */
3 | width: 80vw;
4 | margin-left: auto;
5 | margin-right: auto;
6 | }
--------------------------------------------------------------------------------
/client/src/component/products/ProductDetail.module.css:
--------------------------------------------------------------------------------
1 | .Container {
2 | /* background-color: red; */
3 | margin-top: 80px;
4 | }
5 |
6 | .List {
7 | /* background-color: yellow; */
8 | list-style: none;
9 | margin-top: -60px;
10 | }
11 |
12 | .Image {
13 | display: inline-block;
14 | width: 300px;
15 | height: auto;
16 | margin-left: auto;
17 | margin-right: auto;
18 | object-fit: contain;
19 | }
20 |
21 | .Button {
22 | height: 44px;
23 | width: 160px;
24 | margin-top: 12px;
25 | background-color: #333333;
26 | color: #eeeeee;
27 | font-weight: 300;
28 | border: none;
29 | }
30 |
31 | .FavButton {
32 | background-color: transparent;
33 | border-style: none;
34 | position: absolute;
35 | display: block;
36 | margin-top: -28%;
37 | margin-left: 2%;
38 | font-size: 20px;
39 | }
40 |
41 | @media only screen and (min-width: 768px) {
42 | .FavButton {
43 | margin-top: -10%;
44 | }
45 | }
--------------------------------------------------------------------------------
/client/src/component/resetPassword/ResetPassword.module.css:
--------------------------------------------------------------------------------
1 | .Container {
2 | /* background-color: red; */
3 | width: 90vw;
4 | height: 100vh;
5 | margin-left: auto;
6 | margin-right: auto;
7 | display: flex;
8 | flex-direction: column;
9 | }
10 |
11 | .LabelContainer {
12 | /* background-color: red; */
13 | margin-bottom: 4px;
14 | }
15 |
16 | .Input {
17 | width: 88vw;
18 | height: 40px;
19 | margin-bottom: 12px;
20 | border-style: solid 1px black;
21 | }
22 |
23 | .Button {
24 | margin-top: 12px;
25 | width: 90vw;
26 | height: 48px;
27 | border: none;
28 | background-color: #fc5359;
29 | color: #1a1918;
30 | font-weight: 600;
31 | }
32 |
33 | @media only screen and (min-width: 768px) {
34 | .Container {
35 | width: 40vw;
36 | }
37 | .Input {
38 | width: 40vw;
39 | }
40 | .Button {
41 | width: 41vw;
42 | }
43 | .ErrorMessage {
44 | width: 38vw;
45 | }
46 | .Link {
47 | margin-right: 440px;
48 | }
49 | }
--------------------------------------------------------------------------------
/client/src/component/shippingInfo/ShippingInfo.module.css:
--------------------------------------------------------------------------------
1 | .Container {
2 | /* background-color: red; */
3 | width: 80vw;
4 | /* height: 100vh; */
5 | margin-left: auto;
6 | margin-right: auto;
7 | display: flex;
8 | flex-direction: column;
9 | }
10 |
11 | .LabelContainer {
12 | /* background-color: red; */
13 | margin-bottom: 4px;
14 | }
15 |
16 | .Input {
17 | width: 78vw;
18 | height: 40px;
19 | margin-bottom: 12px;
20 | border-style: solid 1px black;
21 | }
22 |
23 | .Button {
24 | margin-top: 12px;
25 | width: 80vw;
26 | height: 48px;
27 | border: none;
28 | background-color: #fc5359;
29 | color: #1a1918;
30 | font-weight: 600;
31 | }
--------------------------------------------------------------------------------
/client/src/component/ui/paypal/PayPal.module.css:
--------------------------------------------------------------------------------
1 | .Container {
2 | /* background-color: rebeccapurple; */
3 | width: 80vw;
4 | margin-left: auto;
5 | margin-right: auto;
6 | }
7 |
8 | .Price {
9 | margin-left: 8px;
10 | }
11 |
12 | .Button {
13 | margin-top: 12px;
14 | width: 80vw;
15 | height: 48px;
16 | border: none;
17 | background-color: #fc5359;
18 | color: #1a1918;
19 | font-weight: 600;
20 | }
--------------------------------------------------------------------------------
/client/src/index.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | font-family: 'Montserrat', 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
4 | -webkit-font-smoothing: antialiased;
5 | -moz-osx-font-smoothing: grayscale;
6 | }
7 |
8 | code {
9 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace;
10 | }
--------------------------------------------------------------------------------
/client/src/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom';
3 | // import {BrowserRouter} from 'react-router-dom';
4 | import './index.css';
5 | import App from './App';
6 | import * as serviceWorker from './serviceWorker';
7 |
8 | ReactDOM.render(
9 | ,
10 | document.getElementById('root')
11 | );
12 |
13 | // If you want your app to work offline and load faster, you can change
14 | // unregister() to register() below. Note this comes with some pitfalls.
15 | // Learn more about service workers: https://bit.ly/CRA-PWA
16 | serviceWorker.unregister();
17 |
--------------------------------------------------------------------------------
/client/src/middleware/middleware.js:
--------------------------------------------------------------------------------
1 | import axios from 'axios';
2 |
3 | const setAuthToken = (token) => {
4 | if (token) {
5 | axios.defaults.headers.common['Authorization'] = 'Bearer ' + token;
6 | } else {
7 | delete axios.defaults.headers.common["Authorization"];
8 | }
9 | };
10 |
11 | export default setAuthToken;
--------------------------------------------------------------------------------
/client/src/reducer/backendDataReducer.js:
--------------------------------------------------------------------------------
1 | import { GET_BACKEND_DATA } from '../action/type';
2 |
3 | const initialState = {
4 | backendData: ''
5 | }
6 |
7 | const backendDataReducer = (state = initialState, action) => {
8 | switch (action.type) {
9 | case 'GET_BACKEND_DATA':
10 | return {
11 | ...state,
12 | backendData: action.payload
13 | }
14 | default:
15 | return state;
16 | }
17 | }
18 |
19 | export default backendDataReducer;
--------------------------------------------------------------------------------
/client/src/reducer/errorReducer.js:
--------------------------------------------------------------------------------
1 | import { GET_ERROR, CLEAR_ERROR, LOGIN_FAIL } from '../action/type';
2 |
3 | const initialState = {
4 | message: null,
5 | hasError: false
6 | };
7 |
8 | const errorReducer = (state = initialState, action) => {
9 | switch (action.type) {
10 | case 'GET_ERROR':
11 | case 'LOGIN_FAIL':
12 | case 'SIGNUP_FAIL':
13 | return {
14 | ...state,
15 | message: action.payload,
16 | hasError: true
17 | }
18 | case 'CLEAR_ERROR':
19 | return {
20 | ...state,
21 | message: null
22 | }
23 | default:
24 | return state
25 | }
26 | }
27 |
28 |
29 | export default errorReducer;
--------------------------------------------------------------------------------
/client/src/reducer/favoriteListReducer.js:
--------------------------------------------------------------------------------
1 | import * as actionTypes from '../action/type';
2 |
3 | const initialState = {
4 | favoriteList: []
5 | }
6 |
7 | const favoriteListReducer = (state = initialState, action) => {
8 | switch (action.type) {
9 | case actionTypes.ADD_PRODUCT_FAVORITE_LIST:
10 | return {
11 | ...state,
12 | favoriteList: [...state.favoriteList, action.payload]
13 | }
14 | case actionTypes.REMOVE_PRODUCT_FAVORITE_LIST:
15 | return {
16 | ...state,
17 | favoriteList: state.favoriteList.filter(id => id !== action.payload)
18 | }
19 | case actionTypes.GET_PRODUCT_FAVORITE_LIST:
20 | return {...state, favoriteList: action.payload }
21 | case actionTypes.EMPTY_PRODUCT_FAVORITE_LIST:
22 | return {
23 | ...state,
24 | favoriteList: []
25 | };
26 | default:
27 | return state
28 | }
29 | }
30 |
31 |
32 | export default favoriteListReducer;
--------------------------------------------------------------------------------
/client/src/reducer/isUserLoginReducer.js:
--------------------------------------------------------------------------------
1 | import * as actionTypes from '../action/type';
2 |
3 | const initialState = {
4 | user: {}
5 | }
6 |
7 | const isUserLoginReducer = (state = initialState, action) => {
8 | switch (action.type) {
9 | case actionTypes.LOGIN_REQUEST:
10 | return {
11 | loading: true
12 | }
13 | case actionTypes.LOGIN_SUCCESS:
14 | return {
15 | loading: false,
16 | user: action.payload
17 | }
18 | case actionTypes.LOGIN_FAIL:
19 | return {
20 | loading: false,
21 | error: action.payload
22 | }
23 | case actionTypes.USER_LOGOUT:
24 | return {}
25 | default:
26 | return state
27 | }
28 | };
29 |
30 | export default isUserLoginReducer;
--------------------------------------------------------------------------------
/client/src/reducer/orderReducer.js:
--------------------------------------------------------------------------------
1 | import * as actionTypes from '../action/type';
2 |
3 | const initialState = {
4 | shippingInfo: {},
5 | paymentInfo: {},
6 | order: {}
7 | }
8 |
9 | const orderReducer = (state = initialState, action) => {
10 | switch (action.type) {
11 | case actionTypes.SAVE_SHIPPING_INFORMATION:
12 | return {
13 | ...state,
14 | shippingInfo: action.payload
15 | }
16 | case actionTypes.SAVE_PAYMENT:
17 | return {
18 | ...state,
19 | paymentInfo: action.payload
20 | }
21 | case actionTypes.ON_SUCCESS_BUY:
22 | return {
23 | ...state,
24 | order: action.payload.data.result
25 | }
26 | default:
27 | return state
28 | }
29 | }
30 |
31 |
32 | export default orderReducer;
--------------------------------------------------------------------------------
/client/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom/extend-expect';
6 |
--------------------------------------------------------------------------------
/models/products.js:
--------------------------------------------------------------------------------
1 | const mongoose = require('mongoose');
2 |
3 | const Schema = mongoose.Schema;
4 |
5 | const productsSchema = new Schema({
6 | name: {
7 | type: String,
8 | required: true
9 | },
10 | gender: {
11 | type: String,
12 | required: true
13 | },
14 | price: {
15 | type: Number,
16 | required: true
17 | },
18 | size: {
19 | type: String,
20 | required: true
21 | },
22 | stock: {
23 | type: Number,
24 | require: true
25 | },
26 | category: {
27 | type: String,
28 | required: true
29 | },
30 | image: {
31 | type: String,
32 | required: true
33 | },
34 | userId: {
35 | type: Schema.Types.ObjectId,
36 | ref: 'User',
37 | required: true
38 | }
39 | });
40 |
41 |
42 | module.exports = mongoose.model('Products', productsSchema);
--------------------------------------------------------------------------------
/node_modules/.bin/is-ci:
--------------------------------------------------------------------------------
1 | ../is-ci/bin.js
--------------------------------------------------------------------------------
/node_modules/.bin/mime:
--------------------------------------------------------------------------------
1 | ../mime/cli.js
--------------------------------------------------------------------------------
/node_modules/.bin/nodemon:
--------------------------------------------------------------------------------
1 | ../nodemon/bin/nodemon.js
--------------------------------------------------------------------------------
/node_modules/.bin/nodetouch:
--------------------------------------------------------------------------------
1 | ../touch/bin/nodetouch.js
--------------------------------------------------------------------------------
/node_modules/.bin/nopt:
--------------------------------------------------------------------------------
1 | ../nopt/bin/nopt.js
--------------------------------------------------------------------------------
/node_modules/.bin/rc:
--------------------------------------------------------------------------------
1 | ../rc/cli.js
--------------------------------------------------------------------------------
/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../semver/bin/semver
--------------------------------------------------------------------------------
/node_modules/abbrev/README.md:
--------------------------------------------------------------------------------
1 | # abbrev-js
2 |
3 | Just like [ruby's Abbrev](http://apidock.com/ruby/Abbrev).
4 |
5 | Usage:
6 |
7 | var abbrev = require("abbrev");
8 | abbrev("foo", "fool", "folding", "flop");
9 |
10 | // returns:
11 | { fl: 'flop'
12 | , flo: 'flop'
13 | , flop: 'flop'
14 | , fol: 'folding'
15 | , fold: 'folding'
16 | , foldi: 'folding'
17 | , foldin: 'folding'
18 | , folding: 'folding'
19 | , foo: 'foo'
20 | , fool: 'fool'
21 | }
22 |
23 | This is handy for command-line scripts, or other cases where you want to be able to accept shorthands.
24 |
--------------------------------------------------------------------------------
/node_modules/ansi-align/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2016, Contributors
2 |
3 | Permission to use, copy, modify, and/or distribute this software for any purpose
4 | with or without fee is hereby granted, provided that the above copyright notice
5 | and this permission notice appear in all copies.
6 |
7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
9 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
11 | OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
12 | TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
13 | THIS SOFTWARE.
14 |
--------------------------------------------------------------------------------
/node_modules/ansi-align/node_modules/string-width/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const stripAnsi = require('strip-ansi');
3 | const isFullwidthCodePoint = require('is-fullwidth-code-point');
4 | const emojiRegex = require('emoji-regex')();
5 |
6 | module.exports = input => {
7 | input = input.replace(emojiRegex, ' ');
8 |
9 | if (typeof input !== 'string' || input.length === 0) {
10 | return 0;
11 | }
12 |
13 | input = stripAnsi(input);
14 |
15 | let width = 0;
16 |
17 | for (let i = 0; i < input.length; i++) {
18 | const code = input.codePointAt(i);
19 |
20 | // Ignore control characters
21 | if (code <= 0x1F || (code >= 0x7F && code <= 0x9F)) {
22 | continue;
23 | }
24 |
25 | // Ignore combining characters
26 | if (code >= 0x300 && code <= 0x36F) {
27 | continue;
28 | }
29 |
30 | // Surrogates
31 | if (code > 0xFFFF) {
32 | i++;
33 | }
34 |
35 | width += isFullwidthCodePoint(code) ? 2 : 1;
36 | }
37 |
38 | return width;
39 | };
40 |
--------------------------------------------------------------------------------
/node_modules/ansi-regex/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = options => {
4 | options = Object.assign({
5 | onlyFirst: false
6 | }, options);
7 |
8 | const pattern = [
9 | '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
10 | '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))'
11 | ].join('|');
12 |
13 | return new RegExp(pattern, options.onlyFirst ? undefined : 'g');
14 | };
15 |
--------------------------------------------------------------------------------
/node_modules/ansi-regex/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/ansi-styles/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/anymatch/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) 2019 Elan Shanker, Paul Miller (https://paulmillr.com)
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.
16 |
--------------------------------------------------------------------------------
/node_modules/anymatch/index.d.ts:
--------------------------------------------------------------------------------
1 | type AnymatchFn = (testString: string) => boolean;
2 | type AnymatchPattern = string|RegExp|AnymatchFn;
3 | type AnymatchMatcher = AnymatchPattern|AnymatchPattern[]
4 | type AnymatchTester = {
5 | (testString: string|any[], returnIndex: true): number;
6 | (testString: string|any[]): boolean;
7 | }
8 |
9 | type PicomatchOptions = {dot: boolean};
10 |
11 | declare const anymatch: {
12 | (matchers: AnymatchMatcher): AnymatchTester;
13 | (matchers: AnymatchMatcher, testString: string|any[], returnIndex: true | PicomatchOptions): number;
14 | (matchers: AnymatchMatcher, testString: string|any[]): boolean;
15 | }
16 |
17 | export {AnymatchMatcher as Matcher}
18 | export {AnymatchTester as Tester}
19 | export default anymatch
20 |
--------------------------------------------------------------------------------
/node_modules/balanced-match/.npmignore:
--------------------------------------------------------------------------------
1 | test
2 | .gitignore
3 | .travis.yml
4 | Makefile
5 | example.js
6 |
--------------------------------------------------------------------------------
/node_modules/binary-extensions/binary-extensions.json.d.ts:
--------------------------------------------------------------------------------
1 | declare const binaryExtensionsJson: readonly string[];
2 |
3 | export = binaryExtensionsJson;
4 |
--------------------------------------------------------------------------------
/node_modules/binary-extensions/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | List of binary file extensions.
3 |
4 | @example
5 | ```
6 | import binaryExtensions = require('binary-extensions');
7 |
8 | console.log(binaryExtensions);
9 | //=> ['3ds', '3g2', …]
10 | ```
11 | */
12 | declare const binaryExtensions: readonly string[];
13 |
14 | export = binaryExtensions;
15 |
--------------------------------------------------------------------------------
/node_modules/binary-extensions/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./binary-extensions.json');
2 |
--------------------------------------------------------------------------------
/node_modules/boxen/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/braces/lib/stringify.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const utils = require('./utils');
4 |
5 | module.exports = (ast, options = {}) => {
6 | let stringify = (node, parent = {}) => {
7 | let invalidBlock = options.escapeInvalid && utils.isInvalidBrace(parent);
8 | let invalidNode = node.invalid === true && options.escapeInvalid === true;
9 | let output = '';
10 |
11 | if (node.value) {
12 | if ((invalidBlock || invalidNode) && utils.isOpenOrClose(node)) {
13 | return '\\' + node.value;
14 | }
15 | return node.value;
16 | }
17 |
18 | if (node.value) {
19 | return node.value;
20 | }
21 |
22 | if (node.nodes) {
23 | for (let child of node.nodes) {
24 | output += stringify(child);
25 | }
26 | }
27 | return output;
28 | };
29 |
30 | return stringify(ast);
31 | };
32 |
33 |
--------------------------------------------------------------------------------
/node_modules/cacheable-request/node_modules/lowercase-keys/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Lowercase the keys of an object.
3 |
4 | @returns A new object with the keys lowercased.
5 |
6 | @example
7 | ```
8 | import lowercaseKeys = require('lowercase-keys');
9 |
10 | lowercaseKeys({FOO: true, bAr: false});
11 | //=> {foo: true, bar: false}
12 | ```
13 | */
14 | declare function lowercaseKeys(object: {[key: string]: T}): {[key: string]: T};
15 |
16 | export = lowercaseKeys;
17 |
--------------------------------------------------------------------------------
/node_modules/cacheable-request/node_modules/lowercase-keys/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = object => {
3 | const result = {};
4 |
5 | for (const [key, value] of Object.entries(object)) {
6 | result[key.toLowerCase()] = value;
7 | }
8 |
9 | return result;
10 | };
11 |
--------------------------------------------------------------------------------
/node_modules/cacheable-request/node_modules/lowercase-keys/readme.md:
--------------------------------------------------------------------------------
1 | # lowercase-keys [](https://travis-ci.org/sindresorhus/lowercase-keys)
2 |
3 | > Lowercase the keys of an object
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install lowercase-keys
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const lowercaseKeys = require('lowercase-keys');
17 |
18 | lowercaseKeys({FOO: true, bAr: false});
19 | //=> {foo: true, bar: false}
20 | ```
21 |
22 |
23 | ## API
24 |
25 | ### lowercaseKeys(object)
26 |
27 | Returns a new object with the keys lowercased.
28 |
29 |
30 | ## License
31 |
32 | MIT © [Sindre Sorhus](https://sindresorhus.com)
33 |
--------------------------------------------------------------------------------
/node_modules/camelcase/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/chalk/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/chalk/node_modules/has-flag/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if [`argv`](https://nodejs.org/docs/latest/api/process.html#process_process_argv) has a specific flag.
3 |
4 | @param flag - CLI flag to look for. The `--` prefix is optional.
5 | @param argv - CLI arguments. Default: `process.argv`.
6 | @returns Whether the flag exists.
7 |
8 | @example
9 | ```
10 | // $ ts-node foo.ts -f --unicorn --foo=bar -- --rainbow
11 |
12 | // foo.ts
13 | import hasFlag = require('has-flag');
14 |
15 | hasFlag('unicorn');
16 | //=> true
17 |
18 | hasFlag('--unicorn');
19 | //=> true
20 |
21 | hasFlag('f');
22 | //=> true
23 |
24 | hasFlag('-f');
25 | //=> true
26 |
27 | hasFlag('foo=bar');
28 | //=> true
29 |
30 | hasFlag('foo');
31 | //=> false
32 |
33 | hasFlag('rainbow');
34 | //=> false
35 | ```
36 | */
37 | declare function hasFlag(flag: string, argv?: string[]): boolean;
38 |
39 | export = hasFlag;
40 |
--------------------------------------------------------------------------------
/node_modules/chalk/node_modules/has-flag/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = (flag, argv = process.argv) => {
4 | const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
5 | const position = argv.indexOf(prefix + flag);
6 | const terminatorPosition = argv.indexOf('--');
7 | return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
8 | };
9 |
--------------------------------------------------------------------------------
/node_modules/chalk/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/node_modules/cli-boxes/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const cliBoxes = require('./boxes.json');
3 |
4 | module.exports = cliBoxes;
5 | // TODO: Remove this for the next major release
6 | module.exports.default = cliBoxes;
7 |
--------------------------------------------------------------------------------
/node_modules/clone-response/src/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const PassThrough = require('stream').PassThrough;
4 | const mimicResponse = require('mimic-response');
5 |
6 | const cloneResponse = response => {
7 | if (!(response && response.pipe)) {
8 | throw new TypeError('Parameter `response` must be a response stream.');
9 | }
10 |
11 | const clone = new PassThrough();
12 | mimicResponse(response, clone);
13 |
14 | return response.pipe(clone);
15 | };
16 |
17 | module.exports = cloneResponse;
18 |
--------------------------------------------------------------------------------
/node_modules/color-name/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 | Copyright (c) 2015 Dmitry Ivanov
3 |
4 | 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:
5 |
6 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
7 |
8 | 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.
--------------------------------------------------------------------------------
/node_modules/color-name/README.md:
--------------------------------------------------------------------------------
1 | A JSON with color names and its values. Based on http://dev.w3.org/csswg/css-color/#named-colors.
2 |
3 | [](https://nodei.co/npm/color-name/)
4 |
5 |
6 | ```js
7 | var colors = require('color-name');
8 | colors.red //[255,0,0]
9 | ```
10 |
11 |
12 |
--------------------------------------------------------------------------------
/node_modules/concat-map/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.4
4 | - 0.6
5 |
--------------------------------------------------------------------------------
/node_modules/concat-map/example/map.js:
--------------------------------------------------------------------------------
1 | var concatMap = require('../');
2 | var xs = [ 1, 2, 3, 4, 5, 6 ];
3 | var ys = concatMap(xs, function (x) {
4 | return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
5 | });
6 | console.dir(ys);
7 |
--------------------------------------------------------------------------------
/node_modules/concat-map/index.js:
--------------------------------------------------------------------------------
1 | module.exports = function (xs, fn) {
2 | var res = [];
3 | for (var i = 0; i < xs.length; i++) {
4 | var x = fn(xs[i], i);
5 | if (isArray(x)) res.push.apply(res, x);
6 | else res.push(x);
7 | }
8 | return res;
9 | };
10 |
11 | var isArray = Array.isArray || function (xs) {
12 | return Object.prototype.toString.call(xs) === '[object Array]';
13 | };
14 |
--------------------------------------------------------------------------------
/node_modules/content-type/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.4 / 2017-09-11
2 | ==================
3 |
4 | * perf: skip parameter parsing when no parameters
5 |
6 | 1.0.3 / 2017-09-10
7 | ==================
8 |
9 | * perf: remove argument reassignment
10 |
11 | 1.0.2 / 2016-05-09
12 | ==================
13 |
14 | * perf: enable strict mode
15 |
16 | 1.0.1 / 2015-02-13
17 | ==================
18 |
19 | * Improve missing `Content-Type` header error message
20 |
21 | 1.0.0 / 2015-02-01
22 | ==================
23 |
24 | * Initial implementation, derived from `media-typer@0.3.0`
25 |
--------------------------------------------------------------------------------
/node_modules/cookie-signature/.npmignore:
--------------------------------------------------------------------------------
1 | support
2 | test
3 | examples
4 | *.sock
5 |
--------------------------------------------------------------------------------
/node_modules/cookie-signature/History.md:
--------------------------------------------------------------------------------
1 | 1.0.6 / 2015-02-03
2 | ==================
3 |
4 | * use `npm test` instead of `make test` to run tests
5 | * clearer assertion messages when checking input
6 |
7 |
8 | 1.0.5 / 2014-09-05
9 | ==================
10 |
11 | * add license to package.json
12 |
13 | 1.0.4 / 2014-06-25
14 | ==================
15 |
16 | * corrected avoidance of timing attacks (thanks @tenbits!)
17 |
18 | 1.0.3 / 2014-01-28
19 | ==================
20 |
21 | * [incorrect] fix for timing attacks
22 |
23 | 1.0.2 / 2014-01-28
24 | ==================
25 |
26 | * fix missing repository warning
27 | * fix typo in test
28 |
29 | 1.0.1 / 2013-04-15
30 | ==================
31 |
32 | * Revert "Changed underlying HMAC algo. to sha512."
33 | * Revert "Fix for timing attacks on MAC verification."
34 |
35 | 0.0.1 / 2010-01-03
36 | ==================
37 |
38 | * Initial release
39 |
--------------------------------------------------------------------------------
/node_modules/crypto-random-string/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Generate a [cryptographically strong](https://en.m.wikipedia.org/wiki/Strong_cryptography) random string.
3 |
4 | @param length - Length of the returned string.
5 | @returns A [`hex`](https://en.wikipedia.org/wiki/Hexadecimal) string.
6 |
7 | @example
8 | ```
9 | import cryptoRandomString = require('crypto-random-string');
10 |
11 | cryptoRandomString(10);
12 | //=> '2cf05d94db'
13 | ```
14 | */
15 | declare function cryptoRandomString(length: number): string;
16 |
17 | export = cryptoRandomString;
18 |
--------------------------------------------------------------------------------
/node_modules/crypto-random-string/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const crypto = require('crypto');
3 |
4 | module.exports = length => {
5 | if (!Number.isFinite(length)) {
6 | throw new TypeError('Expected a finite number');
7 | }
8 |
9 | return crypto.randomBytes(Math.ceil(length / 2)).toString('hex').slice(0, length);
10 | };
11 |
--------------------------------------------------------------------------------
/node_modules/debug/.coveralls.yml:
--------------------------------------------------------------------------------
1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve
2 |
--------------------------------------------------------------------------------
/node_modules/debug/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "browser": true,
4 | "node": true
5 | },
6 | "rules": {
7 | "no-console": 0,
8 | "no-empty": [1, { "allowEmptyCatch": true }]
9 | },
10 | "extends": "eslint:recommended"
11 | }
12 |
--------------------------------------------------------------------------------
/node_modules/debug/.npmignore:
--------------------------------------------------------------------------------
1 | support
2 | test
3 | examples
4 | example
5 | *.sock
6 | dist
7 | yarn.lock
8 | coverage
9 | bower.json
10 |
--------------------------------------------------------------------------------
/node_modules/debug/.travis.yml:
--------------------------------------------------------------------------------
1 |
2 | language: node_js
3 | node_js:
4 | - "6"
5 | - "5"
6 | - "4"
7 |
8 | install:
9 | - make node_modules
10 |
11 | script:
12 | - make lint
13 | - make test
14 | - make coveralls
15 |
--------------------------------------------------------------------------------
/node_modules/debug/component.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "debug",
3 | "repo": "visionmedia/debug",
4 | "description": "small debugging utility",
5 | "version": "2.6.9",
6 | "keywords": [
7 | "debug",
8 | "log",
9 | "debugger"
10 | ],
11 | "main": "src/browser.js",
12 | "scripts": [
13 | "src/browser.js",
14 | "src/debug.js"
15 | ],
16 | "dependencies": {
17 | "rauchg/ms.js": "0.7.1"
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/node_modules/debug/src/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Detect Electron renderer process, which is node, but we should
3 | * treat as a browser.
4 | */
5 |
6 | if (typeof process !== 'undefined' && process.type === 'renderer') {
7 | module.exports = require('./browser.js');
8 | } else {
9 | module.exports = require('./node.js');
10 | }
11 |
--------------------------------------------------------------------------------
/node_modules/debug/src/inspector-log.js:
--------------------------------------------------------------------------------
1 | module.exports = inspectorLog;
2 |
3 | // black hole
4 | const nullStream = new (require('stream').Writable)();
5 | nullStream._write = () => {};
6 |
7 | /**
8 | * Outputs a `console.log()` to the Node.js Inspector console *only*.
9 | */
10 | function inspectorLog() {
11 | const stdout = console._stdout;
12 | console._stdout = nullStream;
13 | console.log.apply(console, arguments);
14 | console._stdout = stdout;
15 | }
16 |
--------------------------------------------------------------------------------
/node_modules/decompress-response/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const PassThrough = require('stream').PassThrough;
3 | const zlib = require('zlib');
4 | const mimicResponse = require('mimic-response');
5 |
6 | module.exports = response => {
7 | // TODO: Use Array#includes when targeting Node.js 6
8 | if (['gzip', 'deflate'].indexOf(response.headers['content-encoding']) === -1) {
9 | return response;
10 | }
11 |
12 | const unzip = zlib.createUnzip();
13 | const stream = new PassThrough();
14 |
15 | mimicResponse(response, stream);
16 |
17 | unzip.on('error', err => {
18 | if (err.code === 'Z_BUF_ERROR') {
19 | stream.end();
20 | return;
21 | }
22 |
23 | stream.emit('error', err);
24 | });
25 |
26 | response.pipe(unzip).pipe(stream);
27 |
28 | return stream;
29 | };
30 |
--------------------------------------------------------------------------------
/node_modules/decompress-response/readme.md:
--------------------------------------------------------------------------------
1 | # decompress-response [](https://travis-ci.org/sindresorhus/decompress-response)
2 |
3 | > Decompress a HTTP response if needed
4 |
5 | Decompresses the [response](https://nodejs.org/api/http.html#http_class_http_incomingmessage) from [`http.request`](https://nodejs.org/api/http.html#http_http_request_options_callback) if it's gzipped or deflated, otherwise just passes it through.
6 |
7 | Used by [`got`](https://github.com/sindresorhus/got).
8 |
9 |
10 | ## Install
11 |
12 | ```
13 | $ npm install decompress-response
14 | ```
15 |
16 |
17 | ## Usage
18 |
19 | ```js
20 | const http = require('http');
21 | const decompressResponse = require('decompress-response');
22 |
23 | http.get('http://sindresorhus.com', response => {
24 | response = decompressResponse(response);
25 | });
26 | ```
27 |
28 |
29 | ## License
30 |
31 | MIT © [Sindre Sorhus](https://sindresorhus.com)
32 |
--------------------------------------------------------------------------------
/node_modules/deep-extend/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/deep-extend');
2 |
--------------------------------------------------------------------------------
/node_modules/defer-to-connect/README.md:
--------------------------------------------------------------------------------
1 | # defer-to-connect
2 |
3 | > The safe way to handle the `connect` socket event
4 |
5 | [](https://coveralls.io/github/szmarczak/defer-to-connect?branch=master)
6 |
7 | Once you receive the socket, it may be already connected (or disconnected).
8 | To avoid checking that, use `defer-to-connect`. It'll do that for you.
9 |
10 | ## Usage
11 |
12 | ```js
13 | const deferToConnect = require('defer-to-connect');
14 |
15 | deferToConnect(socket, () => {
16 | console.log('Connected!');
17 | });
18 | ```
19 |
20 | ## API
21 |
22 | ### deferToConnect(socket, connectListener)
23 |
24 | Calls `connectListener()` when connected.
25 |
26 | ### deferToConnect(socket, listeners)
27 |
28 | #### listeners
29 |
30 | An object representing `connect`, `secureConnect` and `close` properties.
31 |
32 | Calls `connect()` when the socket is connected.
33 | Calls `secureConnect()` when the socket is securely connected.
34 | Calls `close()` when the socket is destroyed.
35 |
36 | ## License
37 |
38 | MIT
39 |
--------------------------------------------------------------------------------
/node_modules/defer-to-connect/dist/index.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | import { Socket } from 'net';
3 | import { TLSSocket } from 'tls';
4 | interface Listeners {
5 | connect?: () => void;
6 | secureConnect?: () => void;
7 | close?: (hadError: boolean) => void;
8 | }
9 | declare const deferToConnect: (socket: Socket | TLSSocket, fn: Listeners | (() => void)) => void;
10 | export default deferToConnect;
11 |
--------------------------------------------------------------------------------
/node_modules/depd/lib/compat/event-listener-count.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * depd
3 | * Copyright(c) 2015 Douglas Christopher Wilson
4 | * MIT Licensed
5 | */
6 |
7 | 'use strict'
8 |
9 | /**
10 | * Module exports.
11 | * @public
12 | */
13 |
14 | module.exports = eventListenerCount
15 |
16 | /**
17 | * Get the count of listeners on an event emitter of a specific type.
18 | */
19 |
20 | function eventListenerCount (emitter, type) {
21 | return emitter.listeners(type).length
22 | }
23 |
--------------------------------------------------------------------------------
/node_modules/dot-prop/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/emoji-regex/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'emoji-regex' {
2 | function emojiRegex(): RegExp;
3 |
4 | export default emojiRegex;
5 | }
6 |
--------------------------------------------------------------------------------
/node_modules/encodeurl/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.2 / 2018-01-21
2 | ==================
3 |
4 | * Fix encoding `%` as last character
5 |
6 | 1.0.1 / 2016-06-09
7 | ==================
8 |
9 | * Fix encoding unpaired surrogates at start/end of string
10 |
11 | 1.0.0 / 2016-06-08
12 | ==================
13 |
14 | * Initial release
15 |
--------------------------------------------------------------------------------
/node_modules/escape-goat/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | exports.htmlEscape = string => string
4 | .replace(/&/g, '&')
5 | .replace(/"/g, '"')
6 | .replace(/'/g, ''')
7 | .replace(//g, '>');
9 |
10 | exports.htmlUnescape = htmlString => htmlString
11 | .replace(/>/g, '>')
12 | .replace(/</g, '<')
13 | .replace(/?39;/g, '\'')
14 | .replace(/"/g, '"')
15 | .replace(/&/g, '&');
16 |
17 | exports.htmlEscapeTag = (strings, ...values) => {
18 | let output = strings[0];
19 | for (let i = 0; i < values.length; i++) {
20 | output = output + exports.htmlEscape(String(values[i])) + strings[i + 1];
21 | }
22 |
23 | return output;
24 | };
25 |
26 | exports.htmlUnescapeTag = (strings, ...values) => {
27 | let output = strings[0];
28 | for (let i = 0; i < values.length; i++) {
29 | output = output + exports.htmlUnescape(String(values[i])) + strings[i + 1];
30 | }
31 |
32 | return output;
33 | };
34 |
--------------------------------------------------------------------------------
/node_modules/escape-goat/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/escape-html/Readme.md:
--------------------------------------------------------------------------------
1 |
2 | # escape-html
3 |
4 | Escape string for use in HTML
5 |
6 | ## Example
7 |
8 | ```js
9 | var escape = require('escape-html');
10 | var html = escape('foo & bar');
11 | // -> foo & bar
12 | ```
13 |
14 | ## Benchmark
15 |
16 | ```
17 | $ npm run-script bench
18 |
19 | > escape-html@1.0.3 bench nodejs-escape-html
20 | > node benchmark/index.js
21 |
22 |
23 | http_parser@1.0
24 | node@0.10.33
25 | v8@3.14.5.9
26 | ares@1.9.0-DEV
27 | uv@0.10.29
28 | zlib@1.2.3
29 | modules@11
30 | openssl@1.0.1j
31 |
32 | 1 test completed.
33 | 2 tests completed.
34 | 3 tests completed.
35 |
36 | no special characters x 19,435,271 ops/sec ±0.85% (187 runs sampled)
37 | single special character x 6,132,421 ops/sec ±0.67% (194 runs sampled)
38 | many special characters x 3,175,826 ops/sec ±0.65% (193 runs sampled)
39 | ```
40 |
41 | ## License
42 |
43 | MIT
--------------------------------------------------------------------------------
/node_modules/express/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * express
3 | * Copyright(c) 2009-2013 TJ Holowaychuk
4 | * Copyright(c) 2013 Roman Shtylman
5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson
6 | * MIT Licensed
7 | */
8 |
9 | 'use strict';
10 |
11 | module.exports = require('./lib/express');
12 |
--------------------------------------------------------------------------------
/node_modules/express/lib/middleware/init.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * express
3 | * Copyright(c) 2009-2013 TJ Holowaychuk
4 | * Copyright(c) 2013 Roman Shtylman
5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson
6 | * MIT Licensed
7 | */
8 |
9 | 'use strict';
10 |
11 | /**
12 | * Module dependencies.
13 | * @private
14 | */
15 |
16 | var setPrototypeOf = require('setprototypeof')
17 |
18 | /**
19 | * Initialization middleware, exposing the
20 | * request and response to each other, as well
21 | * as defaulting the X-Powered-By header field.
22 | *
23 | * @param {Function} app
24 | * @return {Function}
25 | * @api private
26 | */
27 |
28 | exports.init = function(app){
29 | return function expressInit(req, res, next){
30 | if (app.enabled('x-powered-by')) res.setHeader('X-Powered-By', 'Express');
31 | req.res = res;
32 | res.req = req;
33 | req.next = next;
34 |
35 | setPrototypeOf(req, app.request)
36 | setPrototypeOf(res, app.response)
37 |
38 | res.locals = res.locals || Object.create(null);
39 |
40 | next();
41 | };
42 | };
43 |
44 |
--------------------------------------------------------------------------------
/node_modules/express/lib/middleware/query.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * express
3 | * Copyright(c) 2009-2013 TJ Holowaychuk
4 | * Copyright(c) 2013 Roman Shtylman
5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson
6 | * MIT Licensed
7 | */
8 |
9 | 'use strict';
10 |
11 | /**
12 | * Module dependencies.
13 | */
14 |
15 | var merge = require('utils-merge')
16 | var parseUrl = require('parseurl');
17 | var qs = require('qs');
18 |
19 | /**
20 | * @param {Object} options
21 | * @return {Function}
22 | * @api public
23 | */
24 |
25 | module.exports = function query(options) {
26 | var opts = merge({}, options)
27 | var queryparse = qs.parse;
28 |
29 | if (typeof options === 'function') {
30 | queryparse = options;
31 | opts = undefined;
32 | }
33 |
34 | if (opts !== undefined && opts.allowPrototypes === undefined) {
35 | // back-compat for qs module
36 | opts.allowPrototypes = true;
37 | }
38 |
39 | return function query(req, res, next){
40 | if (!req.query) {
41 | var val = parseUrl(req).query;
42 | req.query = queryparse(val, opts);
43 | }
44 |
45 | next();
46 | };
47 | };
48 |
--------------------------------------------------------------------------------
/node_modules/forwarded/HISTORY.md:
--------------------------------------------------------------------------------
1 | 0.1.2 / 2017-09-14
2 | ==================
3 |
4 | * perf: improve header parsing
5 | * perf: reduce overhead when no `X-Forwarded-For` header
6 |
7 | 0.1.1 / 2017-09-10
8 | ==================
9 |
10 | * Fix trimming leading / trailing OWS
11 | * perf: hoist regular expression
12 |
13 | 0.1.0 / 2014-09-21
14 | ==================
15 |
16 | * Initial release
17 |
--------------------------------------------------------------------------------
/node_modules/fsevents/fsevents.node:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/node_modules/fsevents/fsevents.node
--------------------------------------------------------------------------------
/node_modules/get-stream/buffer-stream.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const {PassThrough} = require('stream');
3 |
4 | module.exports = options => {
5 | options = Object.assign({}, options);
6 |
7 | const {array} = options;
8 | let {encoding} = options;
9 | const buffer = encoding === 'buffer';
10 | let objectMode = false;
11 |
12 | if (array) {
13 | objectMode = !(encoding || buffer);
14 | } else {
15 | encoding = encoding || 'utf8';
16 | }
17 |
18 | if (buffer) {
19 | encoding = null;
20 | }
21 |
22 | let len = 0;
23 | const ret = [];
24 | const stream = new PassThrough({objectMode});
25 |
26 | if (encoding) {
27 | stream.setEncoding(encoding);
28 | }
29 |
30 | stream.on('data', chunk => {
31 | ret.push(chunk);
32 |
33 | if (objectMode) {
34 | len = ret.length;
35 | } else {
36 | len += chunk.length;
37 | }
38 | });
39 |
40 | stream.getBufferedValue = () => {
41 | if (array) {
42 | return ret;
43 | }
44 |
45 | return buffer ? Buffer.concat(ret, len) : ret.join('');
46 | };
47 |
48 | stream.getBufferedLength = () => len;
49 |
50 | return stream;
51 | };
52 |
--------------------------------------------------------------------------------
/node_modules/get-stream/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/glob-parent/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) 2015, 2019 Elan Shanker
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.
16 |
--------------------------------------------------------------------------------
/node_modules/global-dirs/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/got/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/got/source/get-response.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const decompressResponse = require('decompress-response');
3 | const is = require('@sindresorhus/is');
4 | const mimicResponse = require('mimic-response');
5 | const progress = require('./progress');
6 |
7 | module.exports = (response, options, emitter) => {
8 | const downloadBodySize = Number(response.headers['content-length']) || null;
9 |
10 | const progressStream = progress.download(response, emitter, downloadBodySize);
11 |
12 | mimicResponse(response, progressStream);
13 |
14 | const newResponse = options.decompress === true &&
15 | is.function(decompressResponse) &&
16 | options.method !== 'HEAD' ? decompressResponse(progressStream) : progressStream;
17 |
18 | if (!options.decompress && ['gzip', 'deflate'].includes(response.headers['content-encoding'])) {
19 | options.encoding = null;
20 | }
21 |
22 | emitter.emit('response', newResponse);
23 |
24 | emitter.emit('downloadProgress', {
25 | percent: 0,
26 | transferred: 0,
27 | total: downloadBodySize
28 | });
29 |
30 | response.pipe(progressStream);
31 | };
32 |
--------------------------------------------------------------------------------
/node_modules/got/source/known-hook-events.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = [
4 | 'beforeError',
5 | 'init',
6 | 'beforeRequest',
7 | 'beforeRedirect',
8 | 'beforeRetry',
9 | 'afterResponse'
10 | ];
11 |
--------------------------------------------------------------------------------
/node_modules/got/source/utils/deep-freeze.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const is = require('@sindresorhus/is');
3 |
4 | module.exports = function deepFreeze(object) {
5 | for (const [key, value] of Object.entries(object)) {
6 | if (is.plainObject(value) || is.array(value)) {
7 | deepFreeze(object[key]);
8 | }
9 | }
10 |
11 | return Object.freeze(object);
12 | };
13 |
--------------------------------------------------------------------------------
/node_modules/got/source/utils/get-body-size.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const fs = require('fs');
3 | const util = require('util');
4 | const is = require('@sindresorhus/is');
5 | const isFormData = require('./is-form-data');
6 |
7 | module.exports = async options => {
8 | const {body} = options;
9 |
10 | if (options.headers['content-length']) {
11 | return Number(options.headers['content-length']);
12 | }
13 |
14 | if (!body && !options.stream) {
15 | return 0;
16 | }
17 |
18 | if (is.string(body)) {
19 | return Buffer.byteLength(body);
20 | }
21 |
22 | if (isFormData(body)) {
23 | return util.promisify(body.getLength.bind(body))();
24 | }
25 |
26 | if (body instanceof fs.ReadStream) {
27 | const {size} = await util.promisify(fs.stat)(body.path);
28 | return size;
29 | }
30 |
31 | return null;
32 | };
33 |
--------------------------------------------------------------------------------
/node_modules/got/source/utils/is-form-data.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const is = require('@sindresorhus/is');
3 |
4 | module.exports = body => is.nodeStream(body) && is.function(body.getBoundary);
5 |
--------------------------------------------------------------------------------
/node_modules/got/source/utils/url-to-options.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const is = require('@sindresorhus/is');
3 |
4 | module.exports = url => {
5 | const options = {
6 | protocol: url.protocol,
7 | hostname: url.hostname.startsWith('[') ? url.hostname.slice(1, -1) : url.hostname,
8 | hash: url.hash,
9 | search: url.search,
10 | pathname: url.pathname,
11 | href: url.href
12 | };
13 |
14 | if (is.string(url.port) && url.port.length > 0) {
15 | options.port = Number(url.port);
16 | }
17 |
18 | if (url.username || url.password) {
19 | options.auth = `${url.username}:${url.password}`;
20 | }
21 |
22 | options.path = is.null(url.search) ? url.pathname : `${url.pathname}${url.search}`;
23 |
24 | return options;
25 | };
26 |
--------------------------------------------------------------------------------
/node_modules/graceful-fs/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter, Ben Noordhuis, 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.
16 |
--------------------------------------------------------------------------------
/node_modules/graceful-fs/clone.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | module.exports = clone
4 |
5 | function clone (obj) {
6 | if (obj === null || typeof obj !== 'object')
7 | return obj
8 |
9 | if (obj instanceof Object)
10 | var copy = { __proto__: obj.__proto__ }
11 | else
12 | var copy = Object.create(null)
13 |
14 | Object.getOwnPropertyNames(obj).forEach(function (key) {
15 | Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key))
16 | })
17 |
18 | return copy
19 | }
20 |
--------------------------------------------------------------------------------
/node_modules/has-flag/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = (flag, argv) => {
3 | argv = argv || process.argv;
4 | const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');
5 | const pos = argv.indexOf(prefix + flag);
6 | const terminatorPos = argv.indexOf('--');
7 | return pos !== -1 && (terminatorPos === -1 ? true : pos < terminatorPos);
8 | };
9 |
--------------------------------------------------------------------------------
/node_modules/has-flag/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/has-yarn/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const hasYarn: {
2 | /**
3 | * Check if a project is using [Yarn](https://yarnpkg.com).
4 | *
5 | * @param cwd - Current working directory. Default: `process.cwd()`.
6 | * @returns Whether the project uses Yarn.
7 | */
8 | (cwd?: string): boolean;
9 |
10 | // TODO: Remove this for the next major release, refactor the whole definition to:
11 | // declare function hasYarn(cwd?: string): boolean;
12 | // export = hasYarn;
13 | default: typeof hasYarn;
14 | };
15 |
16 | export = hasYarn;
17 |
--------------------------------------------------------------------------------
/node_modules/has-yarn/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const path = require('path');
3 | const fs = require('fs');
4 |
5 | const hasYarn = (cwd = process.cwd()) => fs.existsSync(path.resolve(cwd, 'yarn.lock'));
6 |
7 | module.exports = hasYarn;
8 | // TODO: Remove this for the next major release
9 | module.exports.default = hasYarn;
10 |
--------------------------------------------------------------------------------
/node_modules/has-yarn/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/iconv-lite/encodings/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | // Update this array if you add/rename/remove files in this directory.
4 | // We support Browserify by skipping automatic module discovery and requiring modules directly.
5 | var modules = [
6 | require("./internal"),
7 | require("./utf16"),
8 | require("./utf7"),
9 | require("./sbcs-codec"),
10 | require("./sbcs-data"),
11 | require("./sbcs-data-generated"),
12 | require("./dbcs-codec"),
13 | require("./dbcs-data"),
14 | ];
15 |
16 | // Put all encoding/alias/codec definitions to single object and export it.
17 | for (var i = 0; i < modules.length; i++) {
18 | var module = modules[i];
19 | for (var enc in module)
20 | if (Object.prototype.hasOwnProperty.call(module, enc))
21 | exports[enc] = module[enc];
22 | }
23 |
--------------------------------------------------------------------------------
/node_modules/iconv-lite/lib/index.d.ts:
--------------------------------------------------------------------------------
1 | /*---------------------------------------------------------------------------------------------
2 | * Copyright (c) Microsoft Corporation. All rights reserved.
3 | * Licensed under the MIT License.
4 | * REQUIREMENT: This definition is dependent on the @types/node definition.
5 | * Install with `npm install @types/node --save-dev`
6 | *--------------------------------------------------------------------------------------------*/
7 |
8 | declare module 'iconv-lite' {
9 | export function decode(buffer: Buffer, encoding: string, options?: Options): string;
10 |
11 | export function encode(content: string, encoding: string, options?: Options): Buffer;
12 |
13 | export function encodingExists(encoding: string): boolean;
14 |
15 | export function decodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream;
16 |
17 | export function encodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream;
18 | }
19 |
20 | export interface Options {
21 | stripBOM?: boolean;
22 | addBOM?: boolean;
23 | defaultEncoding?: string;
24 | }
25 |
--------------------------------------------------------------------------------
/node_modules/ignore-by-default/LICENSE:
--------------------------------------------------------------------------------
1 | ISC License (ISC)
2 | Copyright (c) 2016, Mark Wubben
3 |
4 | Permission to use, copy, modify, and/or distribute this software for any purpose
5 | with or without fee is hereby granted, provided that the above copyright notice
6 | and this permission notice appear in all copies.
7 |
8 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
10 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
12 | OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
13 | TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
14 | THIS SOFTWARE.
15 |
--------------------------------------------------------------------------------
/node_modules/ignore-by-default/README.md:
--------------------------------------------------------------------------------
1 | # ignore-by-default
2 |
3 | This is a package aimed at Node.js development tools. It provides a list of
4 | directories that should probably be ignored by such tools, e.g. when watching
5 | for file changes.
6 |
7 | It's used by [AVA](https://www.npmjs.com/package/ava) and
8 | [nodemon](https://www.npmjs.com/package/nodemon).
9 |
10 | [Please contribute!](./CONTRIBUTING.md)
11 |
12 | ## Installation
13 |
14 | ```
15 | npm install --save ignore-by-default
16 | ```
17 |
18 | ## Usage
19 |
20 | The `ignore-by-default` module exports a `directories()` function, which will
21 | return an array of directory names. These are the ones you should ignore.
22 |
23 | ```js
24 | // ['.git', '.sass_cache', …]
25 | var ignoredDirectories = require('ignore-by-default').directories()
26 | ```
27 |
--------------------------------------------------------------------------------
/node_modules/ignore-by-default/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | exports.directories = function () {
4 | return [
5 | '.git', // Git repository files, see
6 | '.nyc_output', // Temporary directory where nyc stores coverage data, see
7 | '.sass-cache', // Cache folder for node-sass, see
8 | 'bower_components', // Where Bower packages are installed, see
9 | 'coverage', // Standard output directory for code coverage reports, see
10 | 'node_modules' // Where Node modules are installed, see
11 | ]
12 | }
13 |
--------------------------------------------------------------------------------
/node_modules/inherits/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter
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 WITH
10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15 | PERFORMANCE OF THIS SOFTWARE.
16 |
17 |
--------------------------------------------------------------------------------
/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | if (typeof util.inherits !== 'function') throw '';
4 | module.exports = util.inherits;
5 | } catch (e) {
6 | module.exports = require('./inherits_browser.js');
7 | }
8 |
--------------------------------------------------------------------------------
/node_modules/inherits/inherits_browser.js:
--------------------------------------------------------------------------------
1 | if (typeof Object.create === 'function') {
2 | // implementation from standard node.js 'util' module
3 | module.exports = function inherits(ctor, superCtor) {
4 | ctor.super_ = superCtor
5 | ctor.prototype = Object.create(superCtor.prototype, {
6 | constructor: {
7 | value: ctor,
8 | enumerable: false,
9 | writable: true,
10 | configurable: true
11 | }
12 | });
13 | };
14 | } else {
15 | // old school shim for old browsers
16 | module.exports = function inherits(ctor, superCtor) {
17 | ctor.super_ = superCtor
18 | var TempCtor = function () {}
19 | TempCtor.prototype = superCtor.prototype
20 | ctor.prototype = new TempCtor()
21 | ctor.prototype.constructor = ctor
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/node_modules/ini/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/is-binary-path/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if a file path is a binary file.
3 |
4 | @example
5 | ```
6 | import isBinaryPath = require('is-binary-path');
7 |
8 | isBinaryPath('source/unicorn.png');
9 | //=> true
10 |
11 | isBinaryPath('source/unicorn.txt');
12 | //=> false
13 | ```
14 | */
15 | declare function isBinaryPath(filePath: string): boolean;
16 |
17 | export = isBinaryPath;
18 |
--------------------------------------------------------------------------------
/node_modules/is-binary-path/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const path = require('path');
3 | const binaryExtensions = require('binary-extensions');
4 |
5 | const extensions = new Set(binaryExtensions);
6 |
7 | module.exports = filePath => extensions.has(path.extname(filePath).slice(1).toLowerCase());
8 |
--------------------------------------------------------------------------------
/node_modules/is-binary-path/readme.md:
--------------------------------------------------------------------------------
1 | # is-binary-path [](https://travis-ci.org/sindresorhus/is-binary-path)
2 |
3 | > Check if a file path is a binary file
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install is-binary-path
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const isBinaryPath = require('is-binary-path');
17 |
18 | isBinaryPath('source/unicorn.png');
19 | //=> true
20 |
21 | isBinaryPath('source/unicorn.txt');
22 | //=> false
23 | ```
24 |
25 |
26 | ## Related
27 |
28 | - [binary-extensions](https://github.com/sindresorhus/binary-extensions) - List of binary file extensions
29 | - [is-text-path](https://github.com/sindresorhus/is-text-path) - Check if a filepath is a text file
30 |
31 |
32 | ## License
33 |
34 | MIT © [Sindre Sorhus](https://sindresorhus.com), [Paul Miller](https://paulmillr.com)
35 |
--------------------------------------------------------------------------------
/node_modules/is-ci/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | ## v2.0.0
4 |
5 | Breaking changes:
6 |
7 | * Drop support for Node.js end-of-life versions: 0.10, 0.12, 4, 5, 7,
8 | and 9
9 |
10 | Other changes:
11 |
12 | See [ci-info
13 | changelog](https://github.com/watson/ci-info/blob/master/CHANGELOG.md#v200)
14 | for a list of newly supported CI servers.
15 |
--------------------------------------------------------------------------------
/node_modules/is-ci/bin.js:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 | 'use strict'
3 |
4 | process.exit(require('./') ? 0 : 1)
5 |
--------------------------------------------------------------------------------
/node_modules/is-ci/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 |
3 | module.exports = require('ci-info').isCI
4 |
--------------------------------------------------------------------------------
/node_modules/is-extglob/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * is-extglob
3 | *
4 | * Copyright (c) 2014-2016, Jon Schlinkert.
5 | * Licensed under the MIT License.
6 | */
7 |
8 | module.exports = function isExtglob(str) {
9 | if (typeof str !== 'string' || str === '') {
10 | return false;
11 | }
12 |
13 | var match;
14 | while ((match = /(\\).|([@?!+*]\(.*\))/g.exec(str))) {
15 | if (match[2]) return true;
16 | str = str.slice(match.index + match[0].length);
17 | }
18 |
19 | return false;
20 | };
21 |
--------------------------------------------------------------------------------
/node_modules/is-fullwidth-code-point/readme.md:
--------------------------------------------------------------------------------
1 | # is-fullwidth-code-point [](https://travis-ci.org/sindresorhus/is-fullwidth-code-point)
2 |
3 | > Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms)
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install --save is-fullwidth-code-point
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const isFullwidthCodePoint = require('is-fullwidth-code-point');
17 |
18 | isFullwidthCodePoint('谢'.codePointAt());
19 | //=> true
20 |
21 | isFullwidthCodePoint('a'.codePointAt());
22 | //=> false
23 | ```
24 |
25 |
26 | ## API
27 |
28 | ### isFullwidthCodePoint(input)
29 |
30 | #### input
31 |
32 | Type: `number`
33 |
34 | [Code point](https://en.wikipedia.org/wiki/Code_point) of a character.
35 |
36 |
37 | ## License
38 |
39 | MIT © [Sindre Sorhus](https://sindresorhus.com)
40 |
--------------------------------------------------------------------------------
/node_modules/is-installed-globally/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if your package was installed globally.
3 |
4 | @example
5 | ```
6 | import isInstalledGlobally = require('is-installed-globally');
7 |
8 | // With `npm install your-package`
9 | console.log(isInstalledGlobally);
10 | //=> false
11 |
12 | // With `npm install --global your-package`
13 | console.log(isInstalledGlobally);
14 | //=> true
15 | ```
16 | */
17 | declare const isInstalledGlobally: boolean;
18 |
19 | export = isInstalledGlobally;
20 |
--------------------------------------------------------------------------------
/node_modules/is-installed-globally/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const fs = require('fs');
3 | const globalDirs = require('global-dirs');
4 | const isPathInside = require('is-path-inside');
5 |
6 | module.exports = (() => {
7 | try {
8 | return (
9 | isPathInside(__dirname, globalDirs.yarn.packages) ||
10 | isPathInside(__dirname, fs.realpathSync(globalDirs.npm.packages))
11 | );
12 | } catch (_) {
13 | return false;
14 | }
15 | })();
16 |
--------------------------------------------------------------------------------
/node_modules/is-npm/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if your code is running as an [npm](https://docs.npmjs.com/misc/scripts) or [yarn](https://yarnpkg.com/lang/en/docs/cli/run/) script.
3 |
4 | @example
5 | ```
6 | import {isNpmOrYarn} from 'is-npm';
7 |
8 | if (isNpmOrYarn) {
9 | console.log('Running as an npm or yarn script!');
10 | }
11 | ```
12 | */
13 | export const isNpmOrYarn: boolean;
14 |
15 | /**
16 | Check if your code is running as an [npm](https://docs.npmjs.com/misc/scripts) script.
17 |
18 | @example
19 | ```
20 | import {isNpm} from 'is-npm';
21 |
22 | if (isNpm) {
23 | console.log('Running as an npm script!');
24 | }
25 | ```
26 | */
27 | export const isNpm: boolean;
28 |
29 | /**
30 | Check if your code is running as a [yarn](https://yarnpkg.com/lang/en/docs/cli/run/) script.
31 |
32 | @example
33 | ```
34 | import {isYarn} from 'is-npm';
35 |
36 | if (isYarn) {
37 | console.log('Running as a yarn script!');
38 | }
39 | ```
40 | */
41 | export const isYarn: boolean;
42 |
--------------------------------------------------------------------------------
/node_modules/is-npm/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const userAgent = process.env.npm_config_user_agent;
4 | const isYarn = Boolean(userAgent && userAgent.startsWith('yarn'));
5 | const isNpm = Boolean(userAgent && userAgent.startsWith('npm'));
6 |
7 | module.exports.isNpmOrYarn = isNpm || isYarn;
8 | module.exports.isNpm = isNpm;
9 | module.exports.isYarn = isYarn;
10 |
--------------------------------------------------------------------------------
/node_modules/is-npm/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/is-number/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * is-number
3 | *
4 | * Copyright (c) 2014-present, Jon Schlinkert.
5 | * Released under the MIT License.
6 | */
7 |
8 | 'use strict';
9 |
10 | module.exports = function(num) {
11 | if (typeof num === 'number') {
12 | return num - num === 0;
13 | }
14 | if (typeof num === 'string' && num.trim() !== '') {
15 | return Number.isFinite ? Number.isFinite(+num) : isFinite(+num);
16 | }
17 | return false;
18 | };
19 |
--------------------------------------------------------------------------------
/node_modules/is-obj/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if a value is an object.
3 |
4 | Keep in mind that array, function, regexp, etc, are objects in JavaScript.
5 |
6 | @example
7 | ```
8 | import isObject = require('is-obj');
9 |
10 | isObject({foo: 'bar'});
11 | //=> true
12 |
13 | isObject([1, 2, 3]);
14 | //=> true
15 |
16 | isObject('foo');
17 | //=> false
18 | ```
19 | */
20 | declare function isObject(value: unknown): value is object;
21 |
22 | export = isObject;
23 |
--------------------------------------------------------------------------------
/node_modules/is-obj/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = value => {
4 | const type = typeof value;
5 | return value !== null && (type === 'object' || type === 'function');
6 | };
7 |
--------------------------------------------------------------------------------
/node_modules/is-obj/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/is-obj/readme.md:
--------------------------------------------------------------------------------
1 | # is-obj [](https://travis-ci.org/sindresorhus/is-obj)
2 |
3 | > Check if a value is an object
4 |
5 | Keep in mind that array, function, regexp, etc, are objects in JavaScript.
6 | See [`is-plain-obj`](https://github.com/sindresorhus/is-plain-obj) if you want to check for plain objects.
7 |
8 |
9 | ## Install
10 |
11 | ```
12 | $ npm install is-obj
13 | ```
14 |
15 |
16 | ## Usage
17 |
18 | ```js
19 | const isObject = require('is-obj');
20 |
21 | isObject({foo: 'bar'});
22 | //=> true
23 |
24 | isObject([1, 2, 3]);
25 | //=> true
26 |
27 | isObject('foo');
28 | //=> false
29 | ```
30 |
31 |
32 | ## Related
33 |
34 | - [is](https://github.com/sindresorhus/is) - Type check values
35 |
36 |
37 | ## License
38 |
39 | MIT © [Sindre Sorhus](https://sindresorhus.com)
40 |
--------------------------------------------------------------------------------
/node_modules/is-path-inside/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if a path is inside another path.
3 |
4 | Note that relative paths are resolved against `process.cwd()` to make them absolute.
5 |
6 | _Important:_ This package is meant for use with path manipulation. It does not check if the paths exist nor does it resolve symlinks. You should not use this as a security mechanism to guard against access to certain places on the file system.
7 |
8 | @example
9 | ```
10 | import isPathInside = require('is-path-inside');
11 |
12 | isPathInside('a/b/c', 'a/b');
13 | //=> true
14 |
15 | isPathInside('a/b/c', 'x/y');
16 | //=> false
17 |
18 | isPathInside('a/b/c', 'a/b/c');
19 | //=> false
20 |
21 | isPathInside('/Users/sindresorhus/dev/unicorn', '/Users/sindresorhus');
22 | //=> true
23 | ```
24 | */
25 | declare function isPathInside(childPath: string, parentPath: string): boolean;
26 |
27 | export = isPathInside;
28 |
--------------------------------------------------------------------------------
/node_modules/is-path-inside/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const path = require('path');
3 |
4 | module.exports = (childPath, parentPath) => {
5 | childPath = path.resolve(childPath);
6 | parentPath = path.resolve(parentPath);
7 |
8 | if (process.platform === 'win32') {
9 | childPath = childPath.toLowerCase();
10 | parentPath = parentPath.toLowerCase();
11 | }
12 |
13 | if (childPath === parentPath) {
14 | return false;
15 | }
16 |
17 | childPath += path.sep;
18 | parentPath += path.sep;
19 |
20 | return childPath.startsWith(parentPath);
21 | };
22 |
--------------------------------------------------------------------------------
/node_modules/is-typedarray/README.md:
--------------------------------------------------------------------------------
1 | # is-typedarray [](http://github.com/badges/stability-badges)
2 |
3 | Detect whether or not an object is a
4 | [Typed Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays).
5 |
6 | ## Usage
7 |
8 | [](https://nodei.co/npm/is-typedarray/)
9 |
10 | ### isTypedArray(array)
11 |
12 | Returns `true` when array is a Typed Array, and `false` when it is not.
13 |
14 | ## License
15 |
16 | MIT. See [LICENSE.md](http://github.com/hughsk/is-typedarray/blob/master/LICENSE.md) for details.
17 |
--------------------------------------------------------------------------------
/node_modules/is-yarn-global/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "8"
4 | - "6"
5 |
--------------------------------------------------------------------------------
/node_modules/is-yarn-global/README.md:
--------------------------------------------------------------------------------
1 | # is-yarn-global
2 |
3 | [](https://travis-ci.org/LitoMore/is-yarn-global)
4 | [](https://www.npmjs.com/package/is-yarn-global)
5 | [](https://github.com/LitoMore/is-yarn-global/blob/master/LICENSE)
6 | [](https://github.com/sindresorhus/xo)
7 |
8 | Check if installed by yarn globally without any `fs` calls
9 |
10 | ## Install
11 |
12 | ```bash
13 | $ npm install is-yarn-global
14 | ```
15 |
16 | ## Usage
17 |
18 | Just require it in your package.
19 |
20 | ```javascript
21 | const isYarnGlobal = require('is-yarn-global');
22 |
23 | console.log(isYarnGlobal());
24 | ```
25 |
26 | ## License
27 |
28 | MIT © [LitoMore](https://github.com/LitoMore)
29 |
--------------------------------------------------------------------------------
/node_modules/is-yarn-global/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const path = require('path');
4 |
5 | module.exports = function () {
6 | const isWindows = process.platform === 'win32';
7 | const yarnPath = isWindows ? path.join('Yarn', 'config', 'global') : path.join('.config', 'yarn', 'global');
8 | if (__dirname.includes(yarnPath)) {
9 | return true;
10 | }
11 | return false;
12 | };
13 |
--------------------------------------------------------------------------------
/node_modules/json-buffer/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | node_modules/*
3 | npm_debug.log
4 |
--------------------------------------------------------------------------------
/node_modules/json-buffer/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - '0.10'
4 |
--------------------------------------------------------------------------------
/node_modules/json-buffer/README.md:
--------------------------------------------------------------------------------
1 | # json-buffer
2 |
3 | JSON functions that can convert buffers!
4 |
5 | [](http://travis-ci.org/dominictarr/json-buffer)
6 |
7 | [](https://ci.testling.com/dominictarr/json-buffer)
8 |
9 | JSON mangles buffers by converting to an array...
10 | which isn't helpful. json-buffers converts to base64 instead,
11 | and deconverts base64 to a buffer.
12 |
13 | ``` js
14 | var JSONB = require('json-buffer')
15 | var Buffer = require('buffer').Buffer
16 |
17 | var str = JSONB.stringify(new Buffer('hello there!'))
18 |
19 | console.log(JSONB.parse(str)) //GET a BUFFER back
20 | ```
21 |
22 | ## License
23 |
24 | MIT
25 |
--------------------------------------------------------------------------------
/node_modules/latest-version/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const packageJson = require('package-json');
3 |
4 | const lastestVersion = async (packageName, options) => {
5 | const {version} = await packageJson(packageName.toLowerCase(), options);
6 | return version;
7 | };
8 |
9 | module.exports = lastestVersion;
10 | // TODO: Remove this for the next major release
11 | module.exports.default = lastestVersion;
12 |
--------------------------------------------------------------------------------
/node_modules/lowercase-keys/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = function (obj) {
3 | var ret = {};
4 | var keys = Object.keys(Object(obj));
5 |
6 | for (var i = 0; i < keys.length; i++) {
7 | ret[keys[i].toLowerCase()] = obj[keys[i]];
8 | }
9 |
10 | return ret;
11 | };
12 |
--------------------------------------------------------------------------------
/node_modules/lowercase-keys/readme.md:
--------------------------------------------------------------------------------
1 | # lowercase-keys [](https://travis-ci.org/sindresorhus/lowercase-keys)
2 |
3 | > Lowercase the keys of an object
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install --save lowercase-keys
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | var lowercaseKeys = require('lowercase-keys');
17 |
18 | lowercaseKeys({FOO: true, bAr: false});
19 | //=> {foo: true, bar: false}
20 | ```
21 |
22 |
23 | ## API
24 |
25 | ### lowercaseKeys(object)
26 |
27 | Lowercases the keys and returns a new object.
28 |
29 |
30 |
31 | ## License
32 |
33 | MIT © [Sindre Sorhus](http://sindresorhus.com)
34 |
--------------------------------------------------------------------------------
/node_modules/make-dir/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/make-dir/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../semver/bin/semver.js
--------------------------------------------------------------------------------
/node_modules/make-dir/node_modules/semver/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/make-dir/node_modules/semver/range.bnf:
--------------------------------------------------------------------------------
1 | range-set ::= range ( logical-or range ) *
2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) *
3 | range ::= hyphen | simple ( ' ' simple ) * | ''
4 | hyphen ::= partial ' - ' partial
5 | simple ::= primitive | partial | tilde | caret
6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial
7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
8 | xr ::= 'x' | 'X' | '*' | nr
9 | nr ::= '0' | [1-9] ( [0-9] ) *
10 | tilde ::= '~' partial
11 | caret ::= '^' partial
12 | qualifier ::= ( '-' pre )? ( '+' build )?
13 | pre ::= parts
14 | build ::= parts
15 | parts ::= part ( '.' part ) *
16 | part ::= nr | [-0-9A-Za-z]+
17 |
--------------------------------------------------------------------------------
/node_modules/media-typer/HISTORY.md:
--------------------------------------------------------------------------------
1 | 0.3.0 / 2014-09-07
2 | ==================
3 |
4 | * Support Node.js 0.6
5 | * Throw error when parameter format invalid on parse
6 |
7 | 0.2.0 / 2014-06-18
8 | ==================
9 |
10 | * Add `typer.format()` to format media types
11 |
12 | 0.1.0 / 2014-06-17
13 | ==================
14 |
15 | * Accept `req` as argument to `parse`
16 | * Accept `res` as argument to `parse`
17 | * Parse media type with extra LWS between type and first parameter
18 |
19 | 0.0.0 / 2014-06-13
20 | ==================
21 |
22 | * Initial implementation
23 |
--------------------------------------------------------------------------------
/node_modules/merge-descriptors/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.1 / 2016-01-17
2 | ==================
3 |
4 | * perf: enable strict mode
5 |
6 | 1.0.0 / 2015-03-01
7 | ==================
8 |
9 | * Add option to only add new descriptors
10 | * Add simple argument validation
11 | * Add jsdoc to source file
12 |
13 | 0.0.2 / 2013-12-14
14 | ==================
15 |
16 | * Move repository to `component` organization
17 |
18 | 0.0.1 / 2013-10-29
19 | ==================
20 |
21 | * Initial release
22 |
--------------------------------------------------------------------------------
/node_modules/methods/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.1.2 / 2016-01-17
2 | ==================
3 |
4 | * perf: enable strict mode
5 |
6 | 1.1.1 / 2014-12-30
7 | ==================
8 |
9 | * Improve `browserify` support
10 |
11 | 1.1.0 / 2014-07-05
12 | ==================
13 |
14 | * Add `CONNECT` method
15 |
16 | 1.0.1 / 2014-06-02
17 | ==================
18 |
19 | * Fix module to work with harmony transform
20 |
21 | 1.0.0 / 2014-05-08
22 | ==================
23 |
24 | * Add `PURGE` method
25 |
26 | 0.1.0 / 2013-10-28
27 | ==================
28 |
29 | * Add `http.METHODS` support
30 |
--------------------------------------------------------------------------------
/node_modules/mime-db/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * mime-db
3 | * Copyright(c) 2014 Jonathan Ong
4 | * MIT Licensed
5 | */
6 |
7 | /**
8 | * Module exports.
9 | */
10 |
11 | module.exports = require('./db.json')
12 |
--------------------------------------------------------------------------------
/node_modules/mime/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/node_modules/mime/.npmignore
--------------------------------------------------------------------------------
/node_modules/mime/cli.js:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | var mime = require('./mime.js');
4 | var file = process.argv[2];
5 | var type = mime.lookup(file);
6 |
7 | process.stdout.write(type + '\n');
8 |
9 |
--------------------------------------------------------------------------------
/node_modules/mimic-response/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | // We define these manually to ensure they're always copied
4 | // even if they would move up the prototype chain
5 | // https://nodejs.org/api/http.html#http_class_http_incomingmessage
6 | const knownProps = [
7 | 'destroy',
8 | 'setTimeout',
9 | 'socket',
10 | 'headers',
11 | 'trailers',
12 | 'rawHeaders',
13 | 'statusCode',
14 | 'httpVersion',
15 | 'httpVersionMinor',
16 | 'httpVersionMajor',
17 | 'rawTrailers',
18 | 'statusMessage'
19 | ];
20 |
21 | module.exports = (fromStream, toStream) => {
22 | const fromProps = new Set(Object.keys(fromStream).concat(knownProps));
23 |
24 | for (const prop of fromProps) {
25 | // Don't overwrite existing properties
26 | if (prop in toStream) {
27 | continue;
28 | }
29 |
30 | toStream[prop] = typeof fromStream[prop] === 'function' ? fromStream[prop].bind(fromStream) : fromStream[prop];
31 | }
32 | };
33 |
--------------------------------------------------------------------------------
/node_modules/minimatch/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/minimist/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.8"
4 | - "0.10"
5 | - "0.12"
6 | - "iojs"
7 | before_install:
8 | - npm install -g npm@~1.4.6
9 |
--------------------------------------------------------------------------------
/node_modules/minimist/example/parse.js:
--------------------------------------------------------------------------------
1 | var argv = require('../')(process.argv.slice(2));
2 | console.log(argv);
3 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/all_bool.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('flag boolean true (default all --args to boolean)', function (t) {
5 | var argv = parse(['moo', '--honk', 'cow'], {
6 | boolean: true
7 | });
8 |
9 | t.deepEqual(argv, {
10 | honk: true,
11 | _: ['moo', 'cow']
12 | });
13 |
14 | t.deepEqual(typeof argv.honk, 'boolean');
15 | t.end();
16 | });
17 |
18 | test('flag boolean true only affects double hyphen arguments without equals signs', function (t) {
19 | var argv = parse(['moo', '--honk', 'cow', '-p', '55', '--tacos=good'], {
20 | boolean: true
21 | });
22 |
23 | t.deepEqual(argv, {
24 | honk: true,
25 | tacos: 'good',
26 | p: 55,
27 | _: ['moo', 'cow']
28 | });
29 |
30 | t.deepEqual(typeof argv.honk, 'boolean');
31 | t.end();
32 | });
33 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/dash.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('-', function (t) {
5 | t.plan(5);
6 | t.deepEqual(parse([ '-n', '-' ]), { n: '-', _: [] });
7 | t.deepEqual(parse([ '-' ]), { _: [ '-' ] });
8 | t.deepEqual(parse([ '-f-' ]), { f: '-', _: [] });
9 | t.deepEqual(
10 | parse([ '-b', '-' ], { boolean: 'b' }),
11 | { b: true, _: [ '-' ] }
12 | );
13 | t.deepEqual(
14 | parse([ '-s', '-' ], { string: 's' }),
15 | { s: '-', _: [] }
16 | );
17 | });
18 |
19 | test('-a -- b', function (t) {
20 | t.plan(3);
21 | t.deepEqual(parse([ '-a', '--', 'b' ]), { a: true, _: [ 'b' ] });
22 | t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
23 | t.deepEqual(parse([ '--a', '--', 'b' ]), { a: true, _: [ 'b' ] });
24 | });
25 |
26 | test('move arguments after the -- into their own `--` array', function(t) {
27 | t.plan(1);
28 | t.deepEqual(
29 | parse([ '--name', 'John', 'before', '--', 'after' ], { '--': true }),
30 | { name: 'John', _: [ 'before' ], '--': [ 'after' ] });
31 | });
32 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/default_bool.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var parse = require('../');
3 |
4 | test('boolean default true', function (t) {
5 | var argv = parse([], {
6 | boolean: 'sometrue',
7 | default: { sometrue: true }
8 | });
9 | t.equal(argv.sometrue, true);
10 | t.end();
11 | });
12 |
13 | test('boolean default false', function (t) {
14 | var argv = parse([], {
15 | boolean: 'somefalse',
16 | default: { somefalse: false }
17 | });
18 | t.equal(argv.somefalse, false);
19 | t.end();
20 | });
21 |
22 | test('boolean default to null', function (t) {
23 | var argv = parse([], {
24 | boolean: 'maybe',
25 | default: { maybe: null }
26 | });
27 | t.equal(argv.maybe, null);
28 | var argv = parse(['--maybe'], {
29 | boolean: 'maybe',
30 | default: { maybe: null }
31 | });
32 | t.equal(argv.maybe, true);
33 | t.end();
34 |
35 | })
36 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/dotted.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('dotted alias', function (t) {
5 | var argv = parse(['--a.b', '22'], {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
6 | t.equal(argv.a.b, 22);
7 | t.equal(argv.aa.bb, 22);
8 | t.end();
9 | });
10 |
11 | test('dotted default', function (t) {
12 | var argv = parse('', {default: {'a.b': 11}, alias: {'a.b': 'aa.bb'}});
13 | t.equal(argv.a.b, 11);
14 | t.equal(argv.aa.bb, 11);
15 | t.end();
16 | });
17 |
18 | test('dotted default with no alias', function (t) {
19 | var argv = parse('', {default: {'a.b': 11}});
20 | t.equal(argv.a.b, 11);
21 | t.end();
22 | });
23 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/kv_short.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('short -k=v' , function (t) {
5 | t.plan(1);
6 |
7 | var argv = parse([ '-b=123' ]);
8 | t.deepEqual(argv, { b: 123, _: [] });
9 | });
10 |
11 | test('multi short -k=v' , function (t) {
12 | t.plan(1);
13 |
14 | var argv = parse([ '-a=whatever', '-b=robots' ]);
15 | t.deepEqual(argv, { a: 'whatever', b: 'robots', _: [] });
16 | });
17 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/long.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var parse = require('../');
3 |
4 | test('long opts', function (t) {
5 | t.deepEqual(
6 | parse([ '--bool' ]),
7 | { bool : true, _ : [] },
8 | 'long boolean'
9 | );
10 | t.deepEqual(
11 | parse([ '--pow', 'xixxle' ]),
12 | { pow : 'xixxle', _ : [] },
13 | 'long capture sp'
14 | );
15 | t.deepEqual(
16 | parse([ '--pow=xixxle' ]),
17 | { pow : 'xixxle', _ : [] },
18 | 'long capture eq'
19 | );
20 | t.deepEqual(
21 | parse([ '--host', 'localhost', '--port', '555' ]),
22 | { host : 'localhost', port : 555, _ : [] },
23 | 'long captures sp'
24 | );
25 | t.deepEqual(
26 | parse([ '--host=localhost', '--port=555' ]),
27 | { host : 'localhost', port : 555, _ : [] },
28 | 'long captures eq'
29 | );
30 | t.end();
31 | });
32 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/num.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('nums', function (t) {
5 | var argv = parse([
6 | '-x', '1234',
7 | '-y', '5.67',
8 | '-z', '1e7',
9 | '-w', '10f',
10 | '--hex', '0xdeadbeef',
11 | '789'
12 | ]);
13 | t.deepEqual(argv, {
14 | x : 1234,
15 | y : 5.67,
16 | z : 1e7,
17 | w : '10f',
18 | hex : 0xdeadbeef,
19 | _ : [ 789 ]
20 | });
21 | t.deepEqual(typeof argv.x, 'number');
22 | t.deepEqual(typeof argv.y, 'number');
23 | t.deepEqual(typeof argv.z, 'number');
24 | t.deepEqual(typeof argv.w, 'string');
25 | t.deepEqual(typeof argv.hex, 'number');
26 | t.deepEqual(typeof argv._[0], 'number');
27 | t.end();
28 | });
29 |
30 | test('already a number', function (t) {
31 | var argv = parse([ '-x', 1234, 789 ]);
32 | t.deepEqual(argv, { x : 1234, _ : [ 789 ] });
33 | t.deepEqual(typeof argv.x, 'number');
34 | t.deepEqual(typeof argv._[0], 'number');
35 | t.end();
36 | });
37 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/parse_modified.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('parse with modifier functions' , function (t) {
5 | t.plan(1);
6 |
7 | var argv = parse([ '-b', '123' ], { boolean: 'b' });
8 | t.deepEqual(argv, { b: true, _: [123] });
9 | });
10 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/stop_early.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('stops parsing on the first non-option when stopEarly is set', function (t) {
5 | var argv = parse(['--aaa', 'bbb', 'ccc', '--ddd'], {
6 | stopEarly: true
7 | });
8 |
9 | t.deepEqual(argv, {
10 | aaa: 'bbb',
11 | _: ['ccc', '--ddd']
12 | });
13 |
14 | t.end();
15 | });
16 |
--------------------------------------------------------------------------------
/node_modules/minimist/test/whitespace.js:
--------------------------------------------------------------------------------
1 | var parse = require('../');
2 | var test = require('tape');
3 |
4 | test('whitespace should be whitespace' , function (t) {
5 | t.plan(1);
6 | var x = parse([ '-x', '\t' ]).x;
7 | t.equal(x, '\t');
8 | });
9 |
--------------------------------------------------------------------------------
/node_modules/nodemon/.jscsrc:
--------------------------------------------------------------------------------
1 | {
2 | "preset": "node-style-guide",
3 | "requireCapitalizedComments": null,
4 | "requireSpacesInAnonymousFunctionExpression": {
5 | "beforeOpeningCurlyBrace": true,
6 | "beforeOpeningRoundBrace": true
7 | },
8 | "disallowSpacesInNamedFunctionExpression": {
9 | "beforeOpeningRoundBrace": true
10 | },
11 | "excludeFiles": ["node_modules/**"],
12 | "disallowSpacesInFunction": null
13 | }
--------------------------------------------------------------------------------
/node_modules/nodemon/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "browser": true,
3 | "camelcase": true,
4 | "curly": true,
5 | "devel": true,
6 | "eqeqeq": true,
7 | "forin": true,
8 | "indent": 2,
9 | "noarg": true,
10 | "node": true,
11 | "quotmark": "single",
12 | "undef": true,
13 | "strict": false,
14 | "unused": true
15 | }
16 |
17 |
--------------------------------------------------------------------------------
/node_modules/nodemon/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | cache:
3 | directories:
4 | - ~/.npm
5 | notifications:
6 | email: false
7 | node_js:
8 | - '12'
9 | - '11'
10 | - '10'
11 | - '8'
12 | before_install:
13 | - if [ "$TRAVIS_PULL_REQUEST_BRANCH" == "" ]; then echo "//registry.npmjs.org/:_authToken=\${NPM_TOKEN}" >> .npmrc; fi
14 | after_success:
15 | - npm run semantic-release
16 | branches:
17 | except:
18 | - /^v\d+\.\d+\.\d+$/
19 |
--------------------------------------------------------------------------------
/node_modules/nodemon/bin/nodemon.js:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | const cli = require('../lib/cli');
4 | const nodemon = require('../lib/');
5 | const options = cli.parse(process.argv);
6 |
7 | nodemon(options);
8 |
9 | const fs = require('fs');
10 |
11 | // checks for available update and returns an instance
12 | const pkg = JSON.parse(fs.readFileSync(__dirname + '/../package.json'));
13 |
14 | if (pkg.version.indexOf('0.0.0') !== 0 && options.noUpdateNotifier !== true) {
15 | require('update-notifier')({ pkg }).notify();
16 | }
17 |
--------------------------------------------------------------------------------
/node_modules/nodemon/commitlint.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | rules: {
3 | 'body-tense': [0, 'never', 0],
4 | lang: 'eng',
5 | },
6 | extends: ['@commitlint/config-angular'],
7 | };
8 |
--------------------------------------------------------------------------------
/node_modules/nodemon/doc/cli/authors.txt:
--------------------------------------------------------------------------------
1 |
2 | Remy Sharp - author and maintainer
3 | https://github.com/remy
4 | https://twitter.com/rem
5 |
6 | Contributors: https://github.com/remy/nodemon/graphs/contributors ❤︎
7 |
8 | Please help make nodemon better: https://github.com/remy/nodemon/
9 |
--------------------------------------------------------------------------------
/node_modules/nodemon/doc/cli/logo.txt:
--------------------------------------------------------------------------------
1 | ; ;
2 | kO. x0
3 | KMX, .:x0kc. 'KMN
4 | 0MMM0: 'oKMMMMMMMXd, ;OMMMX
5 | oMMMMMWKOONMMMMMMMMMMMMMWOOKWMMMMMx
6 | OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMK.
7 | .oWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMd.
8 | KMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN
9 | KMMMMMMMMMMMMMMW0k0WMMMMMMMMMMMMMMW
10 | KMMMMMMMMMMMNk:. :xNMMMMMMMMMMMW
11 | KMMMMMMMMMMK OMMMMMMMMMMW
12 | KMMMMMMMMMMO xMMMMMMMMMMN
13 | KMMMMMMMMMMO xMMMMMMMMMMN
14 | KMMMMMMMMMMO xMMMMMMMMMMN
15 | KMMMMMMMMMMO xMMMMMMMMMMN
16 | KMMMMMMMMMMO xMMMMMMMMMMN
17 | KMMMMMMMMMNc ;NMMMMMMMMMN
18 | KMMMMMW0o' .lOWMMMMMN
19 | KMMKd; ,oKMMN
20 | kX: ,K0
--------------------------------------------------------------------------------
/node_modules/nodemon/doc/cli/topics.txt:
--------------------------------------------------------------------------------
1 |
2 | options .................. show all available nodemon options
3 | config ................... default config options using nodemon.json
4 | authors .................. contributors to this project
5 | logo ..................... <3
6 | whoami ................... I, AM, NODEMON \o/
7 |
8 | Please support https://github.com/remy/nodemon/
9 |
--------------------------------------------------------------------------------
/node_modules/nodemon/doc/cli/usage.txt:
--------------------------------------------------------------------------------
1 | Usage: nodemon [nodemon options] [script.js] [args]
2 |
3 | See "nodemon --help" for more.
4 |
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/config/defaults.js:
--------------------------------------------------------------------------------
1 | var ignoreRoot = require('ignore-by-default').directories();
2 |
3 | // default options for config.options
4 | module.exports = {
5 | restartable: 'rs',
6 | colours: true,
7 | execMap: {
8 | py: 'python',
9 | rb: 'ruby',
10 | ts: 'ts-node',
11 | // more can be added here such as ls: lsc - but please ensure it's cross
12 | // compatible with linux, mac and windows, or make the default.js
13 | // dynamically append the `.cmd` for node based utilities
14 | },
15 | ignoreRoot: ignoreRoot.map(_ => `**/${_}/**`),
16 | watch: ['*.*'],
17 | stdin: true,
18 | runOnChangeOnly: false,
19 | verbose: false,
20 | signal: 'SIGUSR2',
21 | // 'stdout' refers to the default behaviour of a required nodemon's child,
22 | // but also includes stderr. If this is false, data is still dispatched via
23 | // nodemon.on('stdout/stderr')
24 | stdout: true,
25 | watchOptions: {
26 |
27 | },
28 | };
29 |
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/help/index.js:
--------------------------------------------------------------------------------
1 | var fs = require('fs');
2 | var path = require('path');
3 | const supportsColor = require('supports-color');
4 |
5 | module.exports = help;
6 |
7 | const highlight = supportsColor.stdout ? '\x1B\[$1m' : '';
8 |
9 | function help(item) {
10 | if (!item) {
11 | item = 'help';
12 | } else if (item === true) { // if used with -h or --help and no args
13 | item = 'help';
14 | }
15 |
16 | // cleanse the filename to only contain letters
17 | // aka: /\W/g but figured this was eaiser to read
18 | item = item.replace(/[^a-z]/gi, '');
19 |
20 | try {
21 | var dir = path.join(__dirname, '..', '..', 'doc', 'cli', item + '.txt');
22 | var body = fs.readFileSync(dir, 'utf8');
23 | return body.replace(/\\x1B\[(.)m/g, highlight);
24 | } catch (e) {
25 | return '"' + item + '" help can\'t be found';
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./nodemon');
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/monitor/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | run: require('./run'),
3 | watch: require('./watch').watch,
4 | };
5 |
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/monitor/signals.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | SIGHUP: 1,
3 | SIGINT: 2,
4 | SIGQUIT: 3,
5 | SIGILL: 4,
6 | SIGTRAP: 5,
7 | SIGABRT: 6,
8 | SIGBUS: 7,
9 | SIGFPE: 8,
10 | SIGKILL: 9,
11 | SIGUSR1: 10,
12 | SIGSEGV: 11,
13 | SIGUSR2: 12,
14 | SIGPIPE: 13,
15 | SIGALRM: 14,
16 | SIGTERM: 15,
17 | SIGSTKFLT: 16,
18 | SIGCHLD: 17,
19 | SIGCONT: 18,
20 | SIGSTOP: 19,
21 | SIGTSTP: 20,
22 | SIGTTIN: 21,
23 | SIGTTOU: 22,
24 | SIGURG: 23,
25 | SIGXCPU: 24,
26 | SIGXFSZ: 25,
27 | SIGVTALRM: 26,
28 | SIGPROF: 27,
29 | SIGWINCH: 28,
30 | SIGIO: 29,
31 | SIGPWR: 30,
32 | SIGSYS: 31,
33 | SIGRTMIN: 35,
34 | }
35 |
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/rules/parse.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | var fs = require('fs');
3 |
4 | /**
5 | * Parse the nodemon config file, supporting both old style
6 | * plain text config file, and JSON version of the config
7 | *
8 | * @param {String} filename
9 | * @param {Function} callback
10 | */
11 | function parse(filename, callback) {
12 | var rules = {
13 | ignore: [],
14 | watch: [],
15 | };
16 |
17 | fs.readFile(filename, 'utf8', function (err, content) {
18 |
19 | if (err) {
20 | return callback(err);
21 | }
22 |
23 | var json = null;
24 | try {
25 | json = JSON.parse(content);
26 | } catch (e) {}
27 |
28 | if (json !== null) {
29 | rules = {
30 | ignore: json.ignore || [],
31 | watch: json.watch || [],
32 | };
33 |
34 | return callback(null, rules);
35 | }
36 |
37 | // otherwise return the raw file
38 | return callback(null, { raw: content.split(/\n/) });
39 | });
40 | }
41 |
42 | module.exports = parse;
43 |
44 |
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/utils/clone.js:
--------------------------------------------------------------------------------
1 | module.exports = clone;
2 |
3 | // via http://stackoverflow.com/a/728694/22617
4 | function clone(obj) {
5 | // Handle the 3 simple types, and null or undefined
6 | if (null === obj || 'object' !== typeof obj) {
7 | return obj;
8 | }
9 |
10 | var copy;
11 |
12 | // Handle Date
13 | if (obj instanceof Date) {
14 | copy = new Date();
15 | copy.setTime(obj.getTime());
16 | return copy;
17 | }
18 |
19 | // Handle Array
20 | if (obj instanceof Array) {
21 | copy = [];
22 | for (var i = 0, len = obj.length; i < len; i++) {
23 | copy[i] = clone(obj[i]);
24 | }
25 | return copy;
26 | }
27 |
28 | // Handle Object
29 | if (obj instanceof Object) {
30 | copy = {};
31 | for (var attr in obj) {
32 | if (obj.hasOwnProperty && obj.hasOwnProperty(attr)) {
33 | copy[attr] = clone(obj[attr]);
34 | }
35 | }
36 | return copy;
37 | }
38 |
39 | throw new Error('Unable to copy obj! Its type isn\'t supported.');
40 | }
--------------------------------------------------------------------------------
/node_modules/nodemon/lib/utils/colour.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Encodes a string in a colour: red, yellow or green
3 | * @param {String} c colour to highlight in
4 | * @param {String} str the string to encode
5 | * @return {String} coloured string for terminal printing
6 | */
7 | function colour(c, str) {
8 | return (colour[c] || colour.black) + str + colour.black;
9 | }
10 |
11 | function strip(str) {
12 | re.lastIndex = 0; // reset position
13 | return str.replace(re, '');
14 | }
15 |
16 | colour.red = '\x1B[31m';
17 | colour.yellow = '\x1B[33m';
18 | colour.green = '\x1B[32m';
19 | colour.black = '\x1B[39m';
20 |
21 | var reStr = Object.keys(colour).map(key => colour[key]).join('|');
22 | var re = new RegExp(('(' + reStr + ')').replace(/\[/g, '\\['), 'g');
23 |
24 | colour.strip = strip;
25 |
26 | module.exports = colour;
27 |
--------------------------------------------------------------------------------
/node_modules/nodemon/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/node_modules/nodemon/node_modules/debug/src/index.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | /**
4 | * Detect Electron renderer / nwjs process, which is node, but we should
5 | * treat as a browser.
6 | */
7 | if (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {
8 | module.exports = require('./browser.js');
9 | } else {
10 | module.exports = require('./node.js');
11 | }
12 |
13 |
--------------------------------------------------------------------------------
/node_modules/nopt/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/node_modules/nopt/.npmignore
--------------------------------------------------------------------------------
/node_modules/once/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/once/once.js:
--------------------------------------------------------------------------------
1 | var wrappy = require('wrappy')
2 | module.exports = wrappy(once)
3 | module.exports.strict = wrappy(onceStrict)
4 |
5 | once.proto = once(function () {
6 | Object.defineProperty(Function.prototype, 'once', {
7 | value: function () {
8 | return once(this)
9 | },
10 | configurable: true
11 | })
12 |
13 | Object.defineProperty(Function.prototype, 'onceStrict', {
14 | value: function () {
15 | return onceStrict(this)
16 | },
17 | configurable: true
18 | })
19 | })
20 |
21 | function once (fn) {
22 | var f = function () {
23 | if (f.called) return f.value
24 | f.called = true
25 | return f.value = fn.apply(this, arguments)
26 | }
27 | f.called = false
28 | return f
29 | }
30 |
31 | function onceStrict (fn) {
32 | var f = function () {
33 | if (f.called)
34 | throw new Error(f.onceError)
35 | f.called = true
36 | return f.value = fn.apply(this, arguments)
37 | }
38 | var name = fn.name || 'Function wrapped with `once`'
39 | f.onceError = name + " shouldn't be called more than once"
40 | f.called = false
41 | return f
42 | }
43 |
--------------------------------------------------------------------------------
/node_modules/p-cancelable/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/package-json/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/package-json/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../semver/bin/semver.js
--------------------------------------------------------------------------------
/node_modules/package-json/node_modules/semver/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/package-json/node_modules/semver/range.bnf:
--------------------------------------------------------------------------------
1 | range-set ::= range ( logical-or range ) *
2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) *
3 | range ::= hyphen | simple ( ' ' simple ) * | ''
4 | hyphen ::= partial ' - ' partial
5 | simple ::= primitive | partial | tilde | caret
6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial
7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
8 | xr ::= 'x' | 'X' | '*' | nr
9 | nr ::= '0' | [1-9] ( [0-9] ) *
10 | tilde ::= '~' partial
11 | caret ::= '^' partial
12 | qualifier ::= ( '-' pre )? ( '+' build )?
13 | pre ::= parts
14 | build ::= parts
15 | parts ::= part ( '.' part ) *
16 | part ::= nr | [-0-9A-Za-z]+
17 |
--------------------------------------------------------------------------------
/node_modules/path-to-regexp/History.md:
--------------------------------------------------------------------------------
1 | 0.1.7 / 2015-07-28
2 | ==================
3 |
4 | * Fixed regression with escaped round brackets and matching groups.
5 |
6 | 0.1.6 / 2015-06-19
7 | ==================
8 |
9 | * Replace `index` feature by outputting all parameters, unnamed and named.
10 |
11 | 0.1.5 / 2015-05-08
12 | ==================
13 |
14 | * Add an index property for position in match result.
15 |
16 | 0.1.4 / 2015-03-05
17 | ==================
18 |
19 | * Add license information
20 |
21 | 0.1.3 / 2014-07-06
22 | ==================
23 |
24 | * Better array support
25 | * Improved support for trailing slash in non-ending mode
26 |
27 | 0.1.0 / 2014-03-06
28 | ==================
29 |
30 | * add options.end
31 |
32 | 0.0.2 / 2013-02-10
33 | ==================
34 |
35 | * Update to match current express
36 | * add .license property to component.json
37 |
--------------------------------------------------------------------------------
/node_modules/picomatch/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = require('./lib/picomatch');
4 |
--------------------------------------------------------------------------------
/node_modules/prepend-http/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = (url, opts) => {
3 | if (typeof url !== 'string') {
4 | throw new TypeError(`Expected \`url\` to be of type \`string\`, got \`${typeof url}\``);
5 | }
6 |
7 | url = url.trim();
8 | opts = Object.assign({https: false}, opts);
9 |
10 | if (/^\.*\/|^(?!localhost)\w+:/.test(url)) {
11 | return url;
12 | }
13 |
14 | return url.replace(/^(?!(?:\w+:)?\/\/)/, opts.https ? 'https://' : 'http://');
15 | };
16 |
--------------------------------------------------------------------------------
/node_modules/prepend-http/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/prepend-http/readme.md:
--------------------------------------------------------------------------------
1 | # prepend-http [](https://travis-ci.org/sindresorhus/prepend-http)
2 |
3 | > Prepend `http://` to humanized URLs like `todomvc.com` and `localhost`
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install prepend-http
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const prependHttp = require('prepend-http');
17 |
18 | prependHttp('todomvc.com');
19 | //=> 'http://todomvc.com'
20 |
21 | prependHttp('localhost');
22 | //=> 'http://localhost'
23 |
24 | prependHttp('http://todomvc.com');
25 | //=> 'http://todomvc.com'
26 |
27 | prependHttp('todomvc.com', {https: true});
28 | //=> 'https://todomvc.com'
29 | ```
30 |
31 |
32 | ## API
33 |
34 | ### prependHttp(url, [options])
35 |
36 | #### url
37 |
38 | Type: `string`
39 |
40 | URL to prepend `http://` on.
41 |
42 | #### options
43 |
44 | Type: `Object`
45 |
46 | ##### https
47 |
48 | Type: `boolean`
49 | Default: `false`
50 |
51 | Prepend `https://` instead of `http://`.
52 |
53 |
54 | ## License
55 |
56 | MIT © [Sindre Sorhus](https://sindresorhus.com)
57 |
--------------------------------------------------------------------------------
/node_modules/pstree.remy/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | cache:
3 | directories:
4 | - ~/.npm
5 | notifications:
6 | email: false
7 | node_js:
8 | - '8'
9 |
--------------------------------------------------------------------------------
/node_modules/pstree.remy/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 | Copyright © 2019 Remy Sharp, https://remysharp.com
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.
8 |
--------------------------------------------------------------------------------
/node_modules/pstree.remy/README.md:
--------------------------------------------------------------------------------
1 | # pstree.remy
2 |
3 | > Cross platform ps-tree (including unix flavours without ps)
4 |
5 | ## Installation
6 |
7 | ```shel
8 | npm install pstree.remy
9 | ```
10 |
11 | ## Usage
12 |
13 | ```js
14 | const psTree = psTree require('pstree.remy');
15 |
16 | psTree(PID, (err, pids) => {
17 | if (err) {
18 | console.error(err);
19 | }
20 | console.log(pids)
21 | });
22 |
23 | console.log(psTree.hasPS
24 | ? "This platform has the ps shell command"
25 | : "This platform does not have the ps shell command");
26 | ```
27 |
--------------------------------------------------------------------------------
/node_modules/pstree.remy/lib/index.js:
--------------------------------------------------------------------------------
1 | const exec = require('child_process').exec;
2 | const tree = require('./tree');
3 | const utils = require('./utils');
4 | var hasPS = true;
5 |
6 | // discover if the OS has `ps`, and therefore can use psTree
7 | exec('ps', (error) => {
8 | module.exports.hasPS = hasPS = !error;
9 | });
10 |
11 | module.exports = function main(pid, callback) {
12 | if (typeof pid === 'number') {
13 | pid = pid.toString();
14 | }
15 |
16 | if (hasPS && !process.env.NO_PS) {
17 | return tree(pid, callback);
18 | }
19 |
20 | utils
21 | .getStat()
22 | .then(utils.tree)
23 | .then((tree) => utils.pidsForTree(tree, pid))
24 | .then((res) =>
25 | callback(
26 | null,
27 | res.map((p) => p.PID)
28 | )
29 | )
30 | .catch((error) => callback(error));
31 | };
32 |
33 | if (!module.parent) {
34 | module.exports(process.argv[2], (e, pids) => console.log(pids));
35 | }
36 |
37 | module.exports.hasPS = hasPS;
38 |
--------------------------------------------------------------------------------
/node_modules/pstree.remy/lib/tree.js:
--------------------------------------------------------------------------------
1 | const spawn = require('child_process').spawn;
2 |
3 | module.exports = function (rootPid, callback) {
4 | const pidsOfInterest = new Set([parseInt(rootPid, 10)]);
5 | var output = '';
6 |
7 | // *nix
8 | const ps = spawn('ps', ['-A', '-o', 'ppid,pid']);
9 | ps.stdout.on('data', (data) => {
10 | output += data.toString('ascii');
11 | });
12 |
13 | ps.on('close', () => {
14 | try {
15 | const res = output
16 | .split('\n')
17 | .slice(1)
18 | .map((_) => _.trim())
19 | .reduce((acc, line) => {
20 | const pids = line.split(/\s+/);
21 | const ppid = parseInt(pids[0], 10);
22 |
23 | if (pidsOfInterest.has(ppid)) {
24 | const pid = parseInt(pids[1], 10);
25 | acc.push(pid);
26 | pidsOfInterest.add(pid);
27 | }
28 |
29 | return acc;
30 | }, []);
31 |
32 | callback(null, res);
33 | } catch (e) {
34 | callback(e, null);
35 | }
36 | });
37 | };
38 |
--------------------------------------------------------------------------------
/node_modules/pstree.remy/tests/fixtures/index.js:
--------------------------------------------------------------------------------
1 | const spawn = require('child_process').spawn;
2 | function run() {
3 | spawn(
4 | 'sh',
5 | ['-c', 'node -e "setInterval(() => console.log(`running`), 200)"'],
6 | {
7 | stdio: 'pipe',
8 | }
9 | );
10 | }
11 |
12 | var runCallCount = process.argv[2] || 1;
13 | for (var i = 0; i < runCallCount; i++) run();
14 |
--------------------------------------------------------------------------------
/node_modules/pump/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.10"
4 |
5 | script: "npm test"
6 |
--------------------------------------------------------------------------------
/node_modules/pupa/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Simple micro templating.
3 |
4 | @param template - Text with placeholders for `data` properties.
5 | @param data - Data to interpolate into `template`.
6 |
7 | @example
8 | ```
9 | import pupa = require('pupa');
10 |
11 | pupa('The mobile number of {name} is {phone.mobile}', {
12 | name: 'Sindre',
13 | phone: {
14 | mobile: '609 24 363'
15 | }
16 | });
17 | //=> 'The mobile number of Sindre is 609 24 363'
18 |
19 | pupa('I like {0} and {1}', ['🦄', '🐮']);
20 | //=> 'I like 🦄 and 🐮'
21 |
22 | // Double braces encodes the HTML entities to avoid code injection
23 | pupa('I like {{0}} and {{1}}', [' 🦄', '🐮 ']);
24 | //=> 'I like <br>🦄</br> and <i>🐮</i>'
25 | ```
26 | */
27 | declare function pupa(
28 | template: string,
29 | data: unknown[] | {[key: string]: any}
30 | ): string;
31 |
32 | export = pupa;
33 |
--------------------------------------------------------------------------------
/node_modules/pupa/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const {htmlEscape} = require('escape-goat');
3 |
4 | module.exports = (template, data) => {
5 | if (typeof template !== 'string') {
6 | throw new TypeError(`Expected a \`string\` in the first argument, got \`${typeof template}\``);
7 | }
8 |
9 | if (typeof data !== 'object') {
10 | throw new TypeError(`Expected an \`object\` or \`Array\` in the second argument, got \`${typeof data}\``);
11 | }
12 |
13 | const doubleBraceRegex = /{{(.*?)}}/g;
14 |
15 | if (doubleBraceRegex.test(template)) {
16 | template = template.replace(doubleBraceRegex, (_, key) => {
17 | let result = data;
18 |
19 | for (const property of key.split('.')) {
20 | result = result ? result[property] : '';
21 | }
22 |
23 | return htmlEscape(String(result));
24 | });
25 | }
26 |
27 | const braceRegex = /{(.*?)}/g;
28 |
29 | return template.replace(braceRegex, (_, key) => {
30 | let result = data;
31 |
32 | for (const property of key.split('.')) {
33 | result = result ? result[property] : '';
34 | }
35 |
36 | return String(result);
37 | });
38 | };
39 |
--------------------------------------------------------------------------------
/node_modules/pupa/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/qs/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | indent_style = space
5 | indent_size = 4
6 | end_of_line = lf
7 | charset = utf-8
8 | trim_trailing_whitespace = true
9 | insert_final_newline = true
10 | max_line_length = 160
11 |
12 | [test/*]
13 | max_line_length = off
14 |
15 | [*.md]
16 | max_line_length = off
17 |
18 | [*.json]
19 | max_line_length = off
20 |
21 | [Makefile]
22 | max_line_length = off
23 |
24 | [CHANGELOG.md]
25 | indent_style = space
26 | indent_size = 2
27 |
28 | [LICENSE]
29 | indent_size = 2
30 | max_line_length = off
31 |
--------------------------------------------------------------------------------
/node_modules/qs/.eslintignore:
--------------------------------------------------------------------------------
1 | dist
2 |
--------------------------------------------------------------------------------
/node_modules/qs/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "complexity": 0,
8 | "consistent-return": 1,
9 | "func-name-matching": 0,
10 | "id-length": [2, { "min": 1, "max": 25, "properties": "never" }],
11 | "indent": [2, 4],
12 | "max-lines-per-function": [2, { "max": 150 }],
13 | "max-params": [2, 14],
14 | "max-statements": [2, 52],
15 | "multiline-comment-style": 0,
16 | "no-continue": 1,
17 | "no-magic-numbers": 0,
18 | "no-restricted-syntax": [2, "BreakStatement", "DebuggerStatement", "ForInStatement", "LabeledStatement", "WithStatement"],
19 | "operator-linebreak": [2, "before"],
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/node_modules/qs/lib/formats.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var replace = String.prototype.replace;
4 | var percentTwenties = /%20/g;
5 |
6 | module.exports = {
7 | 'default': 'RFC3986',
8 | formatters: {
9 | RFC1738: function (value) {
10 | return replace.call(value, percentTwenties, '+');
11 | },
12 | RFC3986: function (value) {
13 | return value;
14 | }
15 | },
16 | RFC1738: 'RFC1738',
17 | RFC3986: 'RFC3986'
18 | };
19 |
--------------------------------------------------------------------------------
/node_modules/qs/lib/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var stringify = require('./stringify');
4 | var parse = require('./parse');
5 | var formats = require('./formats');
6 |
7 | module.exports = {
8 | formats: formats,
9 | parse: parse,
10 | stringify: stringify
11 | };
12 |
--------------------------------------------------------------------------------
/node_modules/qs/test/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "rules": {
3 | "array-bracket-newline": 0,
4 | "array-element-newline": 0,
5 | "consistent-return": 2,
6 | "function-paren-newline": 0,
7 | "max-lines": 0,
8 | "max-lines-per-function": 0,
9 | "max-nested-callbacks": [2, 3],
10 | "max-statements": 0,
11 | "no-buffer-constructor": 0,
12 | "no-extend-native": 0,
13 | "no-magic-numbers": 0,
14 | "object-curly-newline": 0,
15 | "sort-keys": 0
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/node_modules/qs/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | require('./parse');
4 |
5 | require('./stringify');
6 |
7 | require('./utils');
8 |
--------------------------------------------------------------------------------
/node_modules/rc/LICENSE.APACHE2:
--------------------------------------------------------------------------------
1 | Apache License, Version 2.0
2 |
3 | Copyright (c) 2011 Dominic Tarr
4 |
5 | Licensed under the Apache License, Version 2.0 (the "License");
6 | you may not use this file except in compliance with the License.
7 | You may obtain a copy of the License at
8 |
9 | http://www.apache.org/licenses/LICENSE-2.0
10 |
11 | Unless required by applicable law or agreed to in writing, software
12 | distributed under the License is distributed on an "AS IS" BASIS,
13 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 | See the License for the specific language governing permissions and
15 | limitations under the License.
16 |
--------------------------------------------------------------------------------
/node_modules/rc/browser.js:
--------------------------------------------------------------------------------
1 |
2 | // when this is loaded into the browser,
3 | // just use the defaults...
4 |
5 | module.exports = function (name, defaults) {
6 | return defaults
7 | }
8 |
--------------------------------------------------------------------------------
/node_modules/rc/cli.js:
--------------------------------------------------------------------------------
1 | #! /usr/bin/env node
2 | var rc = require('./index')
3 |
4 | console.log(JSON.stringify(rc(process.argv[2]), false, 2))
5 |
--------------------------------------------------------------------------------
/node_modules/rc/test/ini.js:
--------------------------------------------------------------------------------
1 | var cc =require('../lib/utils')
2 | var INI = require('ini')
3 | var assert = require('assert')
4 |
5 | function test(obj) {
6 |
7 | var _json, _ini
8 | var json = cc.parse (_json = JSON.stringify(obj))
9 | var ini = cc.parse (_ini = INI.stringify(obj))
10 | console.log(_ini, _json)
11 | assert.deepEqual(json, ini)
12 | }
13 |
14 |
15 | test({hello: true})
16 |
17 |
--------------------------------------------------------------------------------
/node_modules/registry-auth-token/base64.js:
--------------------------------------------------------------------------------
1 | function decodeBase64 (base64) {
2 | return Buffer.from(base64, 'base64').toString('utf8')
3 | }
4 |
5 | function encodeBase64 (string) {
6 | return Buffer.from(string, 'utf8').toString('base64')
7 | }
8 |
9 | module.exports = {
10 | decodeBase64: decodeBase64,
11 | encodeBase64: encodeBase64
12 | }
13 |
--------------------------------------------------------------------------------
/node_modules/registry-auth-token/registry-url.js:
--------------------------------------------------------------------------------
1 | module.exports = function (scope, npmrc) {
2 | var rc = npmrc || require('rc')('npm', { registry: 'https://registry.npmjs.org/' })
3 | var url = rc[scope + ':registry'] || rc.registry
4 | return url.slice(-1) === '/' ? url : url + '/'
5 | }
6 |
--------------------------------------------------------------------------------
/node_modules/registry-url/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const registryUrl: {
2 | /**
3 | Get the set npm registry URL.
4 |
5 | @param scope - Retrieve the registry URL associated with an [npm scope](https://docs.npmjs.com/misc/scope). If the provided scope is not in the user's `.npmrc` file, then `registry-url` will check for the existence of `registry`, or if that's not set, fallback to the default npm registry.
6 |
7 | @example
8 | ```
9 | import registryUrl = require('registry-url');
10 |
11 | // # .npmrc
12 | // registry = 'https://custom-registry.com/'
13 |
14 | console.log(registryUrl());
15 | //=> 'https://custom-registry.com/'
16 |
17 |
18 | // # .npmrc
19 | // @myco:registry = 'https://custom-registry.com/'
20 |
21 | console.log(registryUrl('@myco'));
22 | //=> 'https://custom-registry.com/'
23 | ```
24 | */
25 | (scope?: string): string;
26 |
27 | // TODO: Remove this for the next major release, refactor the whole definition to:
28 | // declare function registryUrl(scope?: string): string;
29 | // export = registryUrl;
30 | default: typeof registryUrl;
31 | };
32 |
33 | export = registryUrl;
34 |
--------------------------------------------------------------------------------
/node_modules/registry-url/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const rc = require('rc');
3 |
4 | const registryUrl = scope => {
5 | const result = rc('npm', {registry: 'https://registry.npmjs.org/'});
6 | const url = result[`${scope}:registry`] || result.config_registry || result.registry;
7 | return url.slice(-1) === '/' ? url : `${url}/`;
8 | };
9 |
10 | module.exports = registryUrl;
11 | // TODO: Remove this for the next major release
12 | module.exports.default = registryUrl;
13 |
--------------------------------------------------------------------------------
/node_modules/registry-url/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/responselike/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2017 Luke Childs
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining a copy
4 | of this software and associated documentation files (the "Software"), to deal
5 | in the Software without restriction, including without limitation the rights
6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 | copies of the Software, and to permit persons to whom the Software is
8 | furnished to do so, subject to the following conditions:
9 |
10 | The above copyright notice and this permission notice shall be included in
11 | all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 | THE SOFTWARE.
20 |
--------------------------------------------------------------------------------
/node_modules/responselike/src/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const Readable = require('stream').Readable;
4 | const lowercaseKeys = require('lowercase-keys');
5 |
6 | class Response extends Readable {
7 | constructor(statusCode, headers, body, url) {
8 | if (typeof statusCode !== 'number') {
9 | throw new TypeError('Argument `statusCode` should be a number');
10 | }
11 | if (typeof headers !== 'object') {
12 | throw new TypeError('Argument `headers` should be an object');
13 | }
14 | if (!(body instanceof Buffer)) {
15 | throw new TypeError('Argument `body` should be a buffer');
16 | }
17 | if (typeof url !== 'string') {
18 | throw new TypeError('Argument `url` should be a string');
19 | }
20 |
21 | super();
22 | this.statusCode = statusCode;
23 | this.headers = lowercaseKeys(headers);
24 | this.body = body;
25 | this.url = url;
26 | }
27 |
28 | _read() {
29 | this.push(this.body);
30 | this.push(null);
31 | }
32 | }
33 |
34 | module.exports = Response;
35 |
--------------------------------------------------------------------------------
/node_modules/semver-diff/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const semver = require('semver');
3 |
4 | module.exports = (versionA, versionB) => {
5 | versionA = semver.parse(versionA);
6 | versionB = semver.parse(versionB);
7 |
8 | if (semver.compareBuild(versionA, versionB) >= 0) {
9 | return;
10 | }
11 |
12 | return semver.diff(versionA, versionB) || 'build';
13 | };
14 |
--------------------------------------------------------------------------------
/node_modules/semver-diff/license:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) Sindre Sorhus (sindresorhus.com)
4 |
5 | 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:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | 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.
10 |
--------------------------------------------------------------------------------
/node_modules/semver-diff/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | ../semver/bin/semver.js
--------------------------------------------------------------------------------
/node_modules/semver-diff/node_modules/semver/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/semver-diff/node_modules/semver/range.bnf:
--------------------------------------------------------------------------------
1 | range-set ::= range ( logical-or range ) *
2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) *
3 | range ::= hyphen | simple ( ' ' simple ) * | ''
4 | hyphen ::= partial ' - ' partial
5 | simple ::= primitive | partial | tilde | caret
6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial
7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
8 | xr ::= 'x' | 'X' | '*' | nr
9 | nr ::= '0' | [1-9] ( [0-9] ) *
10 | tilde ::= '~' partial
11 | caret ::= '^' partial
12 | qualifier ::= ( '-' pre )? ( '+' build )?
13 | pre ::= parts
14 | build ::= parts
15 | parts ::= part ( '.' part ) *
16 | part ::= nr | [-0-9A-Za-z]+
17 |
--------------------------------------------------------------------------------
/node_modules/semver/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # changes log
2 |
3 | ## 5.7
4 |
5 | * Add `minVersion` method
6 |
7 | ## 5.6
8 |
9 | * Move boolean `loose` param to an options object, with
10 | backwards-compatibility protection.
11 | * Add ability to opt out of special prerelease version handling with
12 | the `includePrerelease` option flag.
13 |
14 | ## 5.5
15 |
16 | * Add version coercion capabilities
17 |
18 | ## 5.4
19 |
20 | * Add intersection checking
21 |
22 | ## 5.3
23 |
24 | * Add `minSatisfying` method
25 |
26 | ## 5.2
27 |
28 | * Add `prerelease(v)` that returns prerelease components
29 |
30 | ## 5.1
31 |
32 | * Add Backus-Naur for ranges
33 | * Remove excessively cute inspection methods
34 |
35 | ## 5.0
36 |
37 | * Remove AMD/Browserified build artifacts
38 | * Fix ltr and gtr when using the `*` range
39 | * Fix for range `*` with a prerelease identifier
40 |
--------------------------------------------------------------------------------
/node_modules/semver/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/semver/range.bnf:
--------------------------------------------------------------------------------
1 | range-set ::= range ( logical-or range ) *
2 | logical-or ::= ( ' ' ) * '||' ( ' ' ) *
3 | range ::= hyphen | simple ( ' ' simple ) * | ''
4 | hyphen ::= partial ' - ' partial
5 | simple ::= primitive | partial | tilde | caret
6 | primitive ::= ( '<' | '>' | '>=' | '<=' | '=' ) partial
7 | partial ::= xr ( '.' xr ( '.' xr qualifier ? )? )?
8 | xr ::= 'x' | 'X' | '*' | nr
9 | nr ::= '0' | [1-9] ( [0-9] ) *
10 | tilde ::= '~' partial
11 | caret ::= '^' partial
12 | qualifier ::= ( '-' pre )? ( '+' build )?
13 | pre ::= parts
14 | build ::= parts
15 | parts ::= part ( '.' part ) *
16 | part ::= nr | [-0-9A-Za-z]+
17 |
--------------------------------------------------------------------------------
/node_modules/setprototypeof/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015, Wes Todd
2 |
3 | Permission to use, copy, modify, and/or distribute this software for any
4 | purpose with or without fee is hereby granted, provided that the above
5 | copyright notice and this permission notice appear in all copies.
6 |
7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
10 | SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
12 | OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
13 | CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
14 |
--------------------------------------------------------------------------------
/node_modules/setprototypeof/README.md:
--------------------------------------------------------------------------------
1 | # Polyfill for `Object.setPrototypeOf`
2 |
3 | [](https://npmjs.org/package/setprototypeof)
4 | [](https://npmjs.org/package/setprototypeof)
5 | [](https://github.com/standard/standard)
6 |
7 | A simple cross platform implementation to set the prototype of an instianted object. Supports all modern browsers and at least back to IE8.
8 |
9 | ## Usage:
10 |
11 | ```
12 | $ npm install --save setprototypeof
13 | ```
14 |
15 | ```javascript
16 | var setPrototypeOf = require('setprototypeof')
17 |
18 | var obj = {}
19 | setPrototypeOf(obj, {
20 | foo: function () {
21 | return 'bar'
22 | }
23 | })
24 | obj.foo() // bar
25 | ```
26 |
27 | TypeScript is also supported:
28 |
29 | ```typescript
30 | import setPrototypeOf = require('setprototypeof')
31 | ```
32 |
--------------------------------------------------------------------------------
/node_modules/setprototypeof/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function setPrototypeOf(o: any, proto: object | null): any;
2 | export = setPrototypeOf;
3 |
--------------------------------------------------------------------------------
/node_modules/setprototypeof/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | /* eslint no-proto: 0 */
3 | module.exports = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties)
4 |
5 | function setProtoOf (obj, proto) {
6 | obj.__proto__ = proto
7 | return obj
8 | }
9 |
10 | function mixinProperties (obj, proto) {
11 | for (var prop in proto) {
12 | if (!obj.hasOwnProperty(prop)) {
13 | obj[prop] = proto[prop]
14 | }
15 | }
16 | return obj
17 | }
18 |
--------------------------------------------------------------------------------
/node_modules/setprototypeof/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | /* eslint-env mocha */
3 | /* eslint no-proto: 0 */
4 | var assert = require('assert')
5 | var setPrototypeOf = require('..')
6 |
7 | describe('setProtoOf(obj, proto)', function () {
8 | it('should merge objects', function () {
9 | var obj = { a: 1, b: 2 }
10 | var proto = { b: 3, c: 4 }
11 | var mergeObj = setPrototypeOf(obj, proto)
12 |
13 | if (Object.getPrototypeOf) {
14 | assert.strictEqual(Object.getPrototypeOf(obj), proto)
15 | } else if ({ __proto__: [] } instanceof Array) {
16 | assert.strictEqual(obj.__proto__, proto)
17 | } else {
18 | assert.strictEqual(obj.a, 1)
19 | assert.strictEqual(obj.b, 2)
20 | assert.strictEqual(obj.c, 4)
21 | }
22 | assert.strictEqual(mergeObj, obj)
23 | })
24 | })
25 |
--------------------------------------------------------------------------------
/node_modules/signal-exit/LICENSE.txt:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) 2015, Contributors
4 |
5 | Permission to use, copy, modify, and/or distribute this software
6 | for any purpose with or without fee is hereby granted, provided
7 | that the above copyright notice and this permission notice
8 | appear in all copies.
9 |
10 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
12 | OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
13 | LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
14 | OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
15 | WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
16 | ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 |
--------------------------------------------------------------------------------
/node_modules/string-width/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const stringWidth: {
2 | /**
3 | Get the visual width of a string - the number of columns required to display it.
4 |
5 | Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width.
6 |
7 | @example
8 | ```
9 | import stringWidth = require('string-width');
10 |
11 | stringWidth('a');
12 | //=> 1
13 |
14 | stringWidth('古');
15 | //=> 2
16 |
17 | stringWidth('\u001B[1m古\u001B[22m');
18 | //=> 2
19 | ```
20 | */
21 | (string: string): number;
22 |
23 | // TODO: remove this in the next major version, refactor the whole definition to:
24 | // declare function stringWidth(string: string): number;
25 | // export = stringWidth;
26 | default: typeof stringWidth;
27 | }
28 |
29 | export = stringWidth;
30 |
--------------------------------------------------------------------------------
/node_modules/string-width/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const stripAnsi = require('strip-ansi');
3 | const isFullwidthCodePoint = require('is-fullwidth-code-point');
4 | const emojiRegex = require('emoji-regex');
5 |
6 | const stringWidth = string => {
7 | string = string.replace(emojiRegex(), ' ');
8 |
9 | if (typeof string !== 'string' || string.length === 0) {
10 | return 0;
11 | }
12 |
13 | string = stripAnsi(string);
14 |
15 | let width = 0;
16 |
17 | for (let i = 0; i < string.length; i++) {
18 | const code = string.codePointAt(i);
19 |
20 | // Ignore control characters
21 | if (code <= 0x1F || (code >= 0x7F && code <= 0x9F)) {
22 | continue;
23 | }
24 |
25 | // Ignore combining characters
26 | if (code >= 0x300 && code <= 0x36F) {
27 | continue;
28 | }
29 |
30 | // Surrogates
31 | if (code > 0xFFFF) {
32 | i++;
33 | }
34 |
35 | width += isFullwidthCodePoint(code) ? 2 : 1;
36 | }
37 |
38 | return width;
39 | };
40 |
41 | module.exports = stringWidth;
42 | // TODO: remove this in the next major version
43 | module.exports.default = stringWidth;
44 |
--------------------------------------------------------------------------------
/node_modules/string-width/node_modules/ansi-regex/index.d.ts:
--------------------------------------------------------------------------------
1 | declare namespace ansiRegex {
2 | interface Options {
3 | /**
4 | Match only the first ANSI escape.
5 |
6 | @default false
7 | */
8 | onlyFirst: boolean;
9 | }
10 | }
11 |
12 | /**
13 | Regular expression for matching ANSI escape codes.
14 |
15 | @example
16 | ```
17 | import ansiRegex = require('ansi-regex');
18 |
19 | ansiRegex().test('\u001B[4mcake\u001B[0m');
20 | //=> true
21 |
22 | ansiRegex().test('cake');
23 | //=> false
24 |
25 | '\u001B[4mcake\u001B[0m'.match(ansiRegex());
26 | //=> ['\u001B[4m', '\u001B[0m']
27 |
28 | '\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true}));
29 | //=> ['\u001B[4m']
30 |
31 | '\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex());
32 | //=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007']
33 | ```
34 | */
35 | declare function ansiRegex(options?: ansiRegex.Options): RegExp;
36 |
37 | export = ansiRegex;
38 |
--------------------------------------------------------------------------------
/node_modules/string-width/node_modules/ansi-regex/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = ({onlyFirst = false} = {}) => {
4 | const pattern = [
5 | '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:[a-zA-Z\\d]*(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
6 | '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))'
7 | ].join('|');
8 |
9 | return new RegExp(pattern, onlyFirst ? undefined : 'g');
10 | };
11 |
--------------------------------------------------------------------------------
/node_modules/string-width/node_modules/emoji-regex/index.d.ts:
--------------------------------------------------------------------------------
1 | declare module 'emoji-regex' {
2 | function emojiRegex(): RegExp;
3 |
4 | export default emojiRegex;
5 | }
6 |
7 | declare module 'emoji-regex/text' {
8 | function emojiRegex(): RegExp;
9 |
10 | export default emojiRegex;
11 | }
12 |
13 | declare module 'emoji-regex/es2015' {
14 | function emojiRegex(): RegExp;
15 |
16 | export default emojiRegex;
17 | }
18 |
19 | declare module 'emoji-regex/es2015/text' {
20 | function emojiRegex(): RegExp;
21 |
22 | export default emojiRegex;
23 | }
24 |
--------------------------------------------------------------------------------
/node_modules/string-width/node_modules/is-fullwidth-code-point/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms).
3 |
4 | @param codePoint - The [code point](https://en.wikipedia.org/wiki/Code_point) of a character.
5 |
6 | @example
7 | ```
8 | import isFullwidthCodePoint from 'is-fullwidth-code-point';
9 |
10 | isFullwidthCodePoint('谢'.codePointAt(0));
11 | //=> true
12 |
13 | isFullwidthCodePoint('a'.codePointAt(0));
14 | //=> false
15 | ```
16 | */
17 | export default function isFullwidthCodePoint(codePoint: number): boolean;
18 |
--------------------------------------------------------------------------------
/node_modules/string-width/node_modules/is-fullwidth-code-point/readme.md:
--------------------------------------------------------------------------------
1 | # is-fullwidth-code-point [](https://travis-ci.org/sindresorhus/is-fullwidth-code-point)
2 |
3 | > Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms)
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install is-fullwidth-code-point
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const isFullwidthCodePoint = require('is-fullwidth-code-point');
17 |
18 | isFullwidthCodePoint('谢'.codePointAt(0));
19 | //=> true
20 |
21 | isFullwidthCodePoint('a'.codePointAt(0));
22 | //=> false
23 | ```
24 |
25 |
26 | ## API
27 |
28 | ### isFullwidthCodePoint(codePoint)
29 |
30 | #### codePoint
31 |
32 | Type: `number`
33 |
34 | The [code point](https://en.wikipedia.org/wiki/Code_point) of a character.
35 |
36 |
37 | ## License
38 |
39 | MIT © [Sindre Sorhus](https://sindresorhus.com)
40 |
--------------------------------------------------------------------------------
/node_modules/string-width/node_modules/strip-ansi/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string.
3 |
4 | @example
5 | ```
6 | import stripAnsi = require('strip-ansi');
7 |
8 | stripAnsi('\u001B[4mUnicorn\u001B[0m');
9 | //=> 'Unicorn'
10 |
11 | stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
12 | //=> 'Click'
13 | ```
14 | */
15 | declare function stripAnsi(string: string): string;
16 |
17 | export = stripAnsi;
18 |
--------------------------------------------------------------------------------
/node_modules/string-width/node_modules/strip-ansi/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const ansiRegex = require('ansi-regex');
3 |
4 | module.exports = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string;
5 |
--------------------------------------------------------------------------------
/node_modules/strip-ansi/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string.
3 |
4 | @example
5 | ```
6 | import stripAnsi from 'strip-ansi';
7 |
8 | stripAnsi('\u001B[4mUnicorn\u001B[0m');
9 | //=> 'Unicorn'
10 |
11 | stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
12 | //=> 'Click'
13 | ```
14 | */
15 | export default function stripAnsi(string: string): string;
16 |
--------------------------------------------------------------------------------
/node_modules/strip-ansi/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const ansiRegex = require('ansi-regex');
3 |
4 | const stripAnsi = string => typeof string === 'string' ? string.replace(ansiRegex(), '') : string;
5 |
6 | module.exports = stripAnsi;
7 | module.exports.default = stripAnsi;
8 |
--------------------------------------------------------------------------------
/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/node_modules/term-size/index.d.ts:
--------------------------------------------------------------------------------
1 | declare namespace terminalSize {
2 | interface Size {
3 | columns: number;
4 | rows: number;
5 | }
6 | }
7 |
8 | /**
9 | Reliably get the terminal window size.
10 |
11 | @example
12 | ```
13 | import terminalSize = require('term-size');
14 |
15 | terminalSize();
16 | //=> {columns: 143, rows: 24}
17 | ```
18 | */
19 | declare function terminalSize(): terminalSize.Size;
20 |
21 | export = terminalSize;
22 |
--------------------------------------------------------------------------------
/node_modules/term-size/vendor/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/node_modules/term-size/vendor/.DS_Store
--------------------------------------------------------------------------------
/node_modules/term-size/vendor/macos/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/node_modules/term-size/vendor/macos/.DS_Store
--------------------------------------------------------------------------------
/node_modules/term-size/vendor/macos/term-size:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/node_modules/term-size/vendor/macos/term-size
--------------------------------------------------------------------------------
/node_modules/term-size/vendor/windows/term-size.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xnslx/mern-stack-application/0130082a01bce6646cc21e2c04be027528e52873/node_modules/term-size/vendor/windows/term-size.exe
--------------------------------------------------------------------------------
/node_modules/to-readable-stream/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const {Readable} = require('stream');
3 |
4 | module.exports = input => (
5 | new Readable({
6 | read() {
7 | this.push(input);
8 | this.push(null);
9 | }
10 | })
11 | );
12 |
--------------------------------------------------------------------------------
/node_modules/to-readable-stream/readme.md:
--------------------------------------------------------------------------------
1 | # to-readable-stream [](https://travis-ci.org/sindresorhus/to-readable-stream)
2 |
3 | > Convert a string/Buffer/Uint8Array to a [readable stream](https://nodejs.org/api/stream.html#stream_readable_streams)
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install to-readable-stream
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const toReadableStream = require('to-readable-stream');
17 |
18 | toReadableStream('🦄🌈').pipe(process.stdout);
19 | ```
20 |
21 |
22 | ## API
23 |
24 | ### toReadableStream(input)
25 |
26 | Returns a [`stream.Readable`](https://nodejs.org/api/stream.html#stream_readable_streams).
27 |
28 | #### input
29 |
30 | Type: `string` `Buffer` `Uint8Array`
31 |
32 | Value to convert to a stream.
33 |
34 |
35 | ## Related
36 |
37 | - [into-stream](https://github.com/sindresorhus/into-stream) - More advanced version of this module
38 |
39 |
40 | ## License
41 |
42 | MIT © [Sindre Sorhus](https://sindresorhus.com)
43 |
--------------------------------------------------------------------------------
/node_modules/toidentifier/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * toidentifier
3 | * Copyright(c) 2016 Douglas Christopher Wilson
4 | * MIT Licensed
5 | */
6 |
7 | /**
8 | * Module exports.
9 | * @public
10 | */
11 |
12 | module.exports = toIdentifier
13 |
14 | /**
15 | * Trasform the given string into a JavaScript identifier
16 | *
17 | * @param {string} str
18 | * @returns {string}
19 | * @public
20 | */
21 |
22 | function toIdentifier (str) {
23 | return str
24 | .split(' ')
25 | .map(function (token) {
26 | return token.slice(0, 1).toUpperCase() + token.slice(1)
27 | })
28 | .join('')
29 | .replace(/[^ _0-9a-z]/gi, '')
30 | }
31 |
--------------------------------------------------------------------------------
/node_modules/touch/LICENSE:
--------------------------------------------------------------------------------
1 | The ISC License
2 |
3 | Copyright (c) Isaac Z. Schlueter
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.
16 |
--------------------------------------------------------------------------------
/node_modules/type-fest/index.d.ts:
--------------------------------------------------------------------------------
1 | // Basic
2 | export * from './source/basic';
3 |
4 | // Utilities
5 | export {Except} from './source/except';
6 | export {Mutable} from './source/mutable';
7 | export {Merge} from './source/merge';
8 | export {MergeExclusive} from './source/merge-exclusive';
9 | export {RequireAtLeastOne} from './source/require-at-least-one';
10 | export {RequireExactlyOne} from './source/require-exactly-one';
11 | export {PartialDeep} from './source/partial-deep';
12 | export {ReadonlyDeep} from './source/readonly-deep';
13 | export {LiteralUnion} from './source/literal-union';
14 | export {Promisable} from './source/promisable';
15 | export {Opaque} from './source/opaque';
16 | export {SetOptional} from './source/set-optional';
17 | export {SetRequired} from './source/set-required';
18 |
19 | // Miscellaneous
20 | export {PackageJson} from './source/package-json';
21 |
--------------------------------------------------------------------------------
/node_modules/type-fest/source/except.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Create a type from an object type without certain keys.
3 |
4 | This type is a stricter version of [`Omit`](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-5.html#the-omit-helper-type). The `Omit` type does not restrict the omitted keys to be keys present on the given type, while `Except` does. The benefits of a stricter type are avoiding typos and allowing the compiler to pick up on rename refactors automatically.
5 |
6 | Please upvote [this issue](https://github.com/microsoft/TypeScript/issues/30825) if you want to have the stricter version as a built-in in TypeScript.
7 |
8 | @example
9 | ```
10 | import {Except} from 'type-fest';
11 |
12 | type Foo = {
13 | a: number;
14 | b: string;
15 | c: boolean;
16 | };
17 |
18 | type FooWithoutA = Except;
19 | //=> {b: string};
20 | ```
21 | */
22 | export type Except = Pick>;
23 |
--------------------------------------------------------------------------------
/node_modules/type-fest/source/merge.d.ts:
--------------------------------------------------------------------------------
1 | import {Except} from './except';
2 |
3 | /**
4 | Merge two types into a new type. Keys of the second type overrides keys of the first type.
5 |
6 | @example
7 | ```
8 | import {Merge} from 'type-fest';
9 |
10 | type Foo = {
11 | a: number;
12 | b: string;
13 | };
14 |
15 | type Bar = {
16 | b: number;
17 | };
18 |
19 | const ab: Merge = {a: 1, b: 2};
20 | ```
21 | */
22 | export type Merge = Except> & SecondType;
23 |
--------------------------------------------------------------------------------
/node_modules/type-fest/source/mutable.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Convert an object with `readonly` keys into a mutable object. Inverse of `Readonly`.
3 |
4 | This can be used to [store and mutate options within a class](https://github.com/sindresorhus/pageres/blob/4a5d05fca19a5fbd2f53842cbf3eb7b1b63bddd2/source/index.ts#L72), [edit `readonly` objects within tests](https://stackoverflow.com/questions/50703834), and [construct a `readonly` object within a function](https://github.com/Microsoft/TypeScript/issues/24509).
5 |
6 | @example
7 | ```
8 | import {Mutable} from 'type-fest';
9 |
10 | type Foo = {
11 | readonly a: number;
12 | readonly b: string;
13 | };
14 |
15 | const mutableFoo: Mutable = {a: 1, b: '2'};
16 | mutableFoo.a = 3;
17 | ```
18 | */
19 | export type Mutable = {
20 | // For each `Key` in the keys of `ObjectType`, make a mapped type by removing the `readonly` modifier from the key.
21 | -readonly [KeyType in keyof ObjectType]: ObjectType[KeyType];
22 | };
23 |
--------------------------------------------------------------------------------
/node_modules/type-fest/source/promisable.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Create a type that represents either the value or the value wrapped in `PromiseLike`.
3 |
4 | Use-cases:
5 | - A function accepts a callback that may either return a value synchronously or may return a promised value.
6 | - This type could be the return type of `Promise#then()`, `Promise#catch()`, and `Promise#finally()` callbacks.
7 |
8 | Please upvote [this issue](https://github.com/microsoft/TypeScript/issues/31394) if you want to have this type as a built-in in TypeScript.
9 |
10 | @example
11 | ```
12 | import {Promisable} from 'type-fest';
13 |
14 | async function logger(getLogEntry: () => Promisable): Promise {
15 | const entry = await getLogEntry();
16 | console.log(entry);
17 | }
18 |
19 | logger(() => 'foo');
20 | logger(() => Promise.resolve('bar'));
21 | ```
22 | */
23 | export type Promisable = T | PromiseLike;
24 |
--------------------------------------------------------------------------------
/node_modules/type-fest/source/require-at-least-one.d.ts:
--------------------------------------------------------------------------------
1 | import {Except} from './except';
2 |
3 | /**
4 | Create a type that requires at least one of the given keys. The remaining keys are kept as is.
5 |
6 | @example
7 | ```
8 | import {RequireAtLeastOne} from 'type-fest';
9 |
10 | type Responder = {
11 | text?: () => string;
12 | json?: () => string;
13 |
14 | secure?: boolean;
15 | };
16 |
17 | const responder: RequireAtLeastOne = {
18 | json: () => '{"message": "ok"}',
19 | secure: true
20 | };
21 | ```
22 | */
23 | export type RequireAtLeastOne =
24 | {
25 | // For each Key in KeysType make a mapped type
26 | [Key in KeysType]: (
27 | // …by picking that Key's type and making it required
28 | Required>
29 | )
30 | }[KeysType]
31 | // …then, make intersection types by adding the remaining keys to each mapped type.
32 | & Except;
33 |
--------------------------------------------------------------------------------
/node_modules/typedarray-to-buffer/.airtap.yml:
--------------------------------------------------------------------------------
1 | sauce_connect: true
2 | loopback: airtap.local
3 | browsers:
4 | - name: chrome
5 | version: latest
6 | - name: firefox
7 | version: latest
8 | - name: safari
9 | version: latest
10 | - name: microsoftedge
11 | version: latest
12 | - name: ie
13 | version: latest
14 | - name: iphone
15 | version: latest
16 |
--------------------------------------------------------------------------------
/node_modules/typedarray-to-buffer/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - lts/*
4 | addons:
5 | sauce_connect: true
6 | hosts:
7 | - airtap.local
8 | env:
9 | global:
10 | - secure: i51rE9rZGHbcZWlL58j3H1qtL23OIV2r0X4TcQKNI3pw2mubdHFJmfPNNO19ItfReu8wwQMxOehKamwaNvqMiKWyHfn/QcThFQysqzgGZ6AgnUbYx9od6XFNDeWd1sVBf7QBAL07y7KWlYGWCwFwWjabSVySzQhEBdisPcskfkI=
11 | - secure: BKq6/5z9LK3KDkTjs7BGeBZ1KsWgz+MsAXZ4P64NSeVGFaBdXU45+ww1mwxXFt5l22/mhyOQZfebQl+kGVqRSZ+DEgQeCymkNZ6CD8c6w6cLuOJXiXwuu/cDM2DD0tfGeu2YZC7yEikP7BqEFwH3D324rRzSGLF2RSAAwkOI7bE=
12 |
--------------------------------------------------------------------------------
/node_modules/typedarray-to-buffer/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Convert a typed array to a Buffer without a copy
3 | *
4 | * Author: Feross Aboukhadijeh
5 | * License: MIT
6 | *
7 | * `npm install typedarray-to-buffer`
8 | */
9 |
10 | var isTypedArray = require('is-typedarray').strict
11 |
12 | module.exports = function typedarrayToBuffer (arr) {
13 | if (isTypedArray(arr)) {
14 | // To avoid a copy, use the typed array's underlying ArrayBuffer to back new Buffer
15 | var buf = Buffer.from(arr.buffer)
16 | if (arr.byteLength !== arr.buffer.byteLength) {
17 | // Respect the "view", i.e. byteOffset and byteLength, without doing a copy
18 | buf = buf.slice(arr.byteOffset, arr.byteOffset + arr.byteLength)
19 | }
20 | return buf
21 | } else {
22 | // Pass through all other types to `Buffer.from`
23 | return Buffer.from(arr)
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/node_modules/undefsafe/.jscsrc:
--------------------------------------------------------------------------------
1 | {
2 | "preset": "node-style-guide",
3 | "requireCapitalizedComments": null,
4 | "requireSpacesInAnonymousFunctionExpression": {
5 | "beforeOpeningCurlyBrace": true,
6 | "beforeOpeningRoundBrace": true
7 | },
8 | "disallowSpacesInNamedFunctionExpression": {
9 | "beforeOpeningRoundBrace": true
10 | },
11 | "excludeFiles": ["node_modules/**"],
12 | "disallowSpacesInFunction": null
13 | }
14 |
--------------------------------------------------------------------------------
/node_modules/undefsafe/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "browser": false,
3 | "camelcase": true,
4 | "curly": true,
5 | "devel": true,
6 | "eqeqeq": true,
7 | "forin": true,
8 | "indent": 2,
9 | "noarg": true,
10 | "node": true,
11 | "quotmark": "single",
12 | "undef": true,
13 | "strict": false,
14 | "unused": true
15 | }
16 |
17 |
--------------------------------------------------------------------------------
/node_modules/undefsafe/.npmignore:
--------------------------------------------------------------------------------
1 | # .npmignore file
2 | test/
3 |
--------------------------------------------------------------------------------
/node_modules/undefsafe/.travis.yml:
--------------------------------------------------------------------------------
1 | sudo: false
2 | language: node_js
3 | cache:
4 | directories:
5 | - node_modules
6 | notifications:
7 | email: false
8 | node_js:
9 | - '4'
10 | before_install:
11 | - npm i -g npm@^2.0.0
12 | before_script:
13 | - npm prune
14 | after_success:
15 | - npm run semantic-release
16 | branches:
17 | except:
18 | - "/^v\\d+\\.\\d+\\.\\d+$/"
19 |
--------------------------------------------------------------------------------
/node_modules/undefsafe/example.js:
--------------------------------------------------------------------------------
1 | var undefsafe = require('undefsafe');
2 |
3 | var object = {
4 | a: {
5 | b: {
6 | c: 1,
7 | d: [1, 2, 3],
8 | e: 'remy'
9 | }
10 | }
11 | };
12 |
13 | console.log(undefsafe(object, 'a.b.e')); // "remy"
14 | console.log(undefsafe(object, 'a.b.not.found')); // undefined
15 |
--------------------------------------------------------------------------------
/node_modules/unique-string/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | Generate a unique random string.
3 |
4 | @returns A 32 character unique string. Matches the length of MD5, which is [unique enough](https://stackoverflow.com/a/2444336/64949) for non-crypto purposes.
5 |
6 | @example
7 | ```
8 | import uniqueString = require('unique-string');
9 |
10 | uniqueString();
11 | //=> 'b4de2a49c8ffa3fbee04446f045483b2'
12 | ```
13 | */
14 | declare function uniqueString(): string;
15 |
16 | export = uniqueString;
17 |
--------------------------------------------------------------------------------
/node_modules/unique-string/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const cryptoRandomString = require('crypto-random-string');
3 |
4 | module.exports = () => cryptoRandomString(32);
5 |
--------------------------------------------------------------------------------
/node_modules/unique-string/readme.md:
--------------------------------------------------------------------------------
1 | # unique-string [](https://travis-ci.org/sindresorhus/unique-string)
2 |
3 | > Generate a unique random string
4 |
5 |
6 | ## Install
7 |
8 | ```
9 | $ npm install unique-string
10 | ```
11 |
12 |
13 | ## Usage
14 |
15 | ```js
16 | const uniqueString = require('unique-string');
17 |
18 | uniqueString();
19 | //=> 'b4de2a49c8ffa3fbee04446f045483b2'
20 | ```
21 |
22 |
23 | ## API
24 |
25 | ### uniqueString()
26 |
27 | Returns a 32 character unique string. Matches the length of MD5, which is [unique enough](https://stackoverflow.com/a/2444336/64949) for non-crypto purposes.
28 |
29 |
30 | ## License
31 |
32 | MIT © [Sindre Sorhus](https://sindresorhus.com)
33 |
--------------------------------------------------------------------------------
/node_modules/unpipe/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.0 / 2015-06-14
2 | ==================
3 |
4 | * Initial release
5 |
--------------------------------------------------------------------------------
/node_modules/update-notifier/check.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable unicorn/no-process-exit */
2 | 'use strict';
3 | let updateNotifier = require('.');
4 |
5 | const options = JSON.parse(process.argv[2]);
6 |
7 | updateNotifier = new updateNotifier.UpdateNotifier(options);
8 |
9 | (async () => {
10 | // Exit process when offline
11 | setTimeout(process.exit, 1000 * 30);
12 |
13 | const update = await updateNotifier.fetchInfo();
14 |
15 | // Only update the last update check time on success
16 | updateNotifier.config.set('lastUpdateCheck', Date.now());
17 |
18 | if (update.type && update.type !== 'latest') {
19 | updateNotifier.config.set('update', update);
20 | }
21 |
22 | // Call process exit explicitly to terminate the child process,
23 | // otherwise the child process will run forever, according to the Node.js docs
24 | process.exit();
25 | })().catch(error => {
26 | console.error(error);
27 | process.exit(1);
28 | });
29 |
--------------------------------------------------------------------------------
/node_modules/url-parse-lax/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const url = require('url');
3 | const prependHttp = require('prepend-http');
4 |
5 | module.exports = (input, options) => {
6 | if (typeof input !== 'string') {
7 | throw new TypeError(`Expected \`url\` to be of type \`string\`, got \`${typeof input}\` instead.`);
8 | }
9 |
10 | const finalUrl = prependHttp(input, Object.assign({https: true}, options));
11 | return url.parse(finalUrl);
12 | };
13 |
--------------------------------------------------------------------------------
/node_modules/utils-merge/.npmignore:
--------------------------------------------------------------------------------
1 | CONTRIBUTING.md
2 | Makefile
3 | docs/
4 | examples/
5 | reports/
6 | test/
7 |
8 | .jshintrc
9 | .travis.yml
10 |
--------------------------------------------------------------------------------
/node_modules/utils-merge/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Merge object b with object a.
3 | *
4 | * var a = { foo: 'bar' }
5 | * , b = { bar: 'baz' };
6 | *
7 | * merge(a, b);
8 | * // => { foo: 'bar', bar: 'baz' }
9 | *
10 | * @param {Object} a
11 | * @param {Object} b
12 | * @return {Object}
13 | * @api public
14 | */
15 |
16 | exports = module.exports = function(a, b){
17 | if (a && b) {
18 | for (var key in b) {
19 | a[key] = b[key];
20 | }
21 | }
22 | return a;
23 | };
24 |
--------------------------------------------------------------------------------
/node_modules/vary/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.1.2 / 2017-09-23
2 | ==================
3 |
4 | * perf: improve header token parsing speed
5 |
6 | 1.1.1 / 2017-03-20
7 | ==================
8 |
9 | * perf: hoist regular expression
10 |
11 | 1.1.0 / 2015-09-29
12 | ==================
13 |
14 | * Only accept valid field names in the `field` argument
15 | - Ensures the resulting string is a valid HTTP header value
16 |
17 | 1.0.1 / 2015-07-08
18 | ==================
19 |
20 | * Fix setting empty header from empty `field`
21 | * perf: enable strict mode
22 | * perf: remove argument reassignments
23 |
24 | 1.0.0 / 2014-08-10
25 | ==================
26 |
27 | * Accept valid `Vary` header string as `field`
28 | * Add `vary.append` for low-level string manipulation
29 | * Move to `jshttp` orgainzation
30 |
31 | 0.1.0 / 2014-06-05
32 | ==================
33 |
34 | * Support array of fields to set
35 |
36 | 0.0.0 / 2014-06-04
37 | ==================
38 |
39 | * Initial release
40 |
--------------------------------------------------------------------------------
/node_modules/widest-line/index.d.ts:
--------------------------------------------------------------------------------
1 | declare const widestLine: {
2 | /**
3 | Get the visual width of the widest line in a string - the number of columns required to display it.
4 |
5 | @example
6 | ```
7 | import widestLine = require('widest-line');
8 |
9 | widestLine('古\n\u001B[1m@\u001B[22m');
10 | //=> 2
11 | ```
12 | */
13 | (input: string): number;
14 |
15 | // TODO: remove this in the next major version, refactor definition to:
16 | // declare function widestLine(input: string): number;
17 | // export = widestLine;
18 | default: typeof widestLine;
19 | };
20 |
21 | export = widestLine;
22 |
--------------------------------------------------------------------------------
/node_modules/widest-line/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const stringWidth = require('string-width');
3 |
4 | const widestLine = input => {
5 | let max = 0;
6 |
7 | for (const line of input.split('\n')) {
8 | max = Math.max(max, stringWidth(line));
9 | }
10 |
11 | return max;
12 | };
13 |
14 | module.exports = widestLine;
15 | // TODO: remove this in the next major version
16 | module.exports.default = widestLine;
17 |
--------------------------------------------------------------------------------
/node_modules/widest-line/readme.md:
--------------------------------------------------------------------------------
1 | # widest-line [](https://travis-ci.org/sindresorhus/widest-line)
2 |
3 | > Get the visual width of the widest line in a string - the number of columns required to display it
4 |
5 | Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width.
6 |
7 | Useful to be able to know the maximum width a string will take up in the terminal.
8 |
9 |
10 | ## Install
11 |
12 | ```
13 | $ npm install widest-line
14 | ```
15 |
16 |
17 | ## Usage
18 |
19 | ```js
20 | const widestLine = require('widest-line');
21 |
22 | widestLine('古\n\u001B[1m@\u001B[22m');
23 | //=> 2
24 | ```
25 |
26 |
27 | ## Related
28 |
29 | - [string-width](https://github.com/sindresorhus/string-width) - Get the visual width of a string
30 |
31 |
32 | ## License
33 |
34 | MIT © [Sindre Sorhus](https://sindresorhus.com)
35 |
--------------------------------------------------------------------------------
/node_modules/wrappy/LICENSE:
--------------------------------------------------------------------------------
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.
16 |
--------------------------------------------------------------------------------
/node_modules/wrappy/README.md:
--------------------------------------------------------------------------------
1 | # wrappy
2 |
3 | Callback wrapping utility
4 |
5 | ## USAGE
6 |
7 | ```javascript
8 | var wrappy = require("wrappy")
9 |
10 | // var wrapper = wrappy(wrapperFunction)
11 |
12 | // make sure a cb is called only once
13 | // See also: http://npm.im/once for this specific use case
14 | var once = wrappy(function (cb) {
15 | var called = false
16 | return function () {
17 | if (called) return
18 | called = true
19 | return cb.apply(this, arguments)
20 | }
21 | })
22 |
23 | function printBoo () {
24 | console.log('boo')
25 | }
26 | // has some rando property
27 | printBoo.iAmBooPrinter = true
28 |
29 | var onlyPrintOnce = once(printBoo)
30 |
31 | onlyPrintOnce() // prints 'boo'
32 | onlyPrintOnce() // does nothing
33 |
34 | // random property is retained!
35 | assert.equal(onlyPrintOnce.iAmBooPrinter, true)
36 | ```
37 |
--------------------------------------------------------------------------------
/node_modules/wrappy/wrappy.js:
--------------------------------------------------------------------------------
1 | // Returns a wrapper function that returns a wrapped callback
2 | // The wrapper function should do some stuff, and return a
3 | // presumably different callback function.
4 | // This makes sure that own properties are retained, so that
5 | // decorations and such are not lost along the way.
6 | module.exports = wrappy
7 | function wrappy (fn, cb) {
8 | if (fn && cb) return wrappy(fn)(cb)
9 |
10 | if (typeof fn !== 'function')
11 | throw new TypeError('need wrapper function')
12 |
13 | Object.keys(fn).forEach(function (k) {
14 | wrapper[k] = fn[k]
15 | })
16 |
17 | return wrapper
18 |
19 | function wrapper() {
20 | var args = new Array(arguments.length)
21 | for (var i = 0; i < args.length; i++) {
22 | args[i] = arguments[i]
23 | }
24 | var ret = fn.apply(this, args)
25 | var cb = args[args.length-1]
26 | if (typeof ret === 'function' && ret !== cb) {
27 | Object.keys(cb).forEach(function (k) {
28 | ret[k] = cb[k]
29 | })
30 | }
31 | return ret
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/node_modules/write-file-atomic/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # 3.0.0
2 |
3 | * Implement options.tmpfileCreated callback.
4 | * Drop Node.js 6, modernize code, return Promise from async function.
5 | * Support write TypedArray's like in node fs.writeFile.
6 | * Remove graceful-fs dependency.
7 |
8 | # 2.4.3
9 |
10 | * Ignore errors raised by `fs.closeSync` when cleaning up after a write
11 | error.
12 |
13 | # 2.4.2
14 |
15 | * A pair of patches to fix some fd leaks. We would leak fds with sync use
16 | when errors occured and with async use any time fsync was not in use. (#34)
17 |
18 | # 2.4.1
19 |
20 | * Fix a bug where `signal-exit` instances would be leaked. This was fixed when addressing #35.
21 |
22 | # 2.4.0
23 |
24 | ## Features
25 |
26 | * Allow chown and mode options to be set to false to disable the defaulting behavior. (#20)
27 | * Support passing encoding strings in options slot for compat with Node.js API. (#31)
28 | * Add support for running inside of worker threads (#37)
29 |
30 | ## Fixes
31 |
32 | * Remove unneeded call when returning success (#36)
33 |
--------------------------------------------------------------------------------
/node_modules/write-file-atomic/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2015, Rebecca Turner
2 |
3 | Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
4 |
5 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
6 |
7 |
--------------------------------------------------------------------------------
/node_modules/xdg-basedir/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const os = require('os');
3 | const path = require('path');
4 |
5 | const homeDirectory = os.homedir();
6 | const {env} = process;
7 |
8 | exports.data = env.XDG_DATA_HOME ||
9 | (homeDirectory ? path.join(homeDirectory, '.local', 'share') : undefined);
10 |
11 | exports.config = env.XDG_CONFIG_HOME ||
12 | (homeDirectory ? path.join(homeDirectory, '.config') : undefined);
13 |
14 | exports.cache = env.XDG_CACHE_HOME || (homeDirectory ? path.join(homeDirectory, '.cache') : undefined);
15 |
16 | exports.runtime = env.XDG_RUNTIME_DIR || undefined;
17 |
18 | exports.dataDirs = (env.XDG_DATA_DIRS || '/usr/local/share/:/usr/share/').split(':');
19 |
20 | if (exports.data) {
21 | exports.dataDirs.unshift(exports.data);
22 | }
23 |
24 | exports.configDirs = (env.XDG_CONFIG_DIRS || '/etc/xdg').split(':');
25 |
26 | if (exports.config) {
27 | exports.configDirs.unshift(exports.config);
28 | }
29 |
--------------------------------------------------------------------------------