├── Lesson1
└── node js.odp
├── Lesson10
├── app.js
└── view
│ ├── 404.html
│ ├── contact.html
│ └── index.html
├── Lesson11-17
├── app.js
├── node_modules
│ ├── .bin
│ │ ├── mime
│ │ ├── mime.cmd
│ │ └── mime.ps1
│ ├── .package-lock.json
│ ├── accepts
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── array-flatten
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── array-flatten.js
│ │ └── package.json
│ ├── body-parser
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── read.js
│ │ │ └── types
│ │ │ │ ├── json.js
│ │ │ │ ├── raw.js
│ │ │ │ ├── text.js
│ │ │ │ └── urlencoded.js
│ │ └── package.json
│ ├── bytes
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ └── package.json
│ ├── call-bind
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── callBound.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── callBound.js
│ │ │ └── index.js
│ ├── 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
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── depd
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── browser
│ │ │ │ └── index.js
│ │ └── package.json
│ ├── destroy
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── ee-first
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── encodeurl
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── finalhandler
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.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
│ ├── function-bind
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .jscs.json
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── implementation.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── .eslintrc
│ │ │ └── index.js
│ ├── get-intrinsic
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── GetIntrinsic.js
│ ├── has-symbols
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── shams.js
│ │ └── test
│ │ │ ├── index.js
│ │ │ ├── shams
│ │ │ ├── core-js.js
│ │ │ └── get-own-property-symbols.js
│ │ │ └── tests.js
│ ├── has
│ │ ├── LICENSE-MIT
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src
│ │ │ └── index.js
│ │ └── test
│ │ │ └── index.js
│ ├── 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
│ ├── inherits
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inherits.js
│ │ ├── inherits_browser.js
│ │ └── package.json
│ ├── ipaddr.js
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── ipaddr.min.js
│ │ ├── lib
│ │ │ ├── ipaddr.js
│ │ │ └── ipaddr.js.d.ts
│ │ └── package.json
│ ├── 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
│ ├── 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
│ ├── object-inspect
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── example
│ │ │ ├── all.js
│ │ │ ├── circular.js
│ │ │ ├── fn.js
│ │ │ └── inspect.js
│ │ ├── index.js
│ │ ├── package-support.json
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ ├── test-core-js.js
│ │ ├── test
│ │ │ ├── bigint.js
│ │ │ ├── browser
│ │ │ │ └── dom.js
│ │ │ ├── circular.js
│ │ │ ├── deep.js
│ │ │ ├── element.js
│ │ │ ├── err.js
│ │ │ ├── fakes.js
│ │ │ ├── fn.js
│ │ │ ├── has.js
│ │ │ ├── holes.js
│ │ │ ├── indent-option.js
│ │ │ ├── inspect.js
│ │ │ ├── lowbyte.js
│ │ │ ├── number.js
│ │ │ ├── quoteStyle.js
│ │ │ ├── toStringTag.js
│ │ │ ├── undef.js
│ │ │ └── values.js
│ │ └── util.inspect.js
│ ├── on-finished
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── parseurl
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── path-to-regexp
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ └── package.json
│ ├── proxy-addr
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── qs
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── dist
│ │ │ └── qs.js
│ │ ├── lib
│ │ │ ├── formats.js
│ │ │ ├── index.js
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ ├── range-parser
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── raw-body
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── send
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.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
│ ├── side-channel
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── index.js
│ ├── statuses
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── codes.json
│ │ ├── index.js
│ │ └── package.json
│ ├── toidentifier
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── type-is
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── unpipe
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── utils-merge
│ │ ├── .npmignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ └── vary
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
├── package-lock.json
├── package.json
└── public
│ ├── contact.html
│ └── index.html
├── Lesson18
├── app.js
└── lesson.js
├── Lesson19
├── app.js
├── lesson.js
├── node_modules
│ ├── .bin
│ │ ├── nodemon
│ │ ├── nodemon.cmd
│ │ ├── nodemon.ps1
│ │ ├── nodetouch
│ │ ├── nodetouch.cmd
│ │ ├── nodetouch.ps1
│ │ ├── nopt
│ │ ├── nopt.cmd
│ │ ├── nopt.ps1
│ │ ├── semver
│ │ ├── semver.cmd
│ │ └── semver.ps1
│ ├── .package-lock.json
│ ├── abbrev
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── abbrev.js
│ │ └── package.json
│ ├── anymatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── balanced-match
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── bignumber.js
│ │ ├── CHANGELOG.md
│ │ ├── LICENCE
│ │ ├── README.md
│ │ ├── bignumber.d.ts
│ │ ├── bignumber.js
│ │ ├── bignumber.min.js
│ │ ├── bignumber.min.js.map
│ │ ├── bignumber.mjs
│ │ ├── doc
│ │ │ └── API.html
│ │ └── package.json
│ ├── binary-extensions
│ │ ├── binary-extensions.json
│ │ ├── binary-extensions.json.d.ts
│ │ ├── 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
│ ├── chokidar
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── constants.js
│ │ │ ├── fsevents-handler.js
│ │ │ └── nodefs-handler.js
│ │ ├── package.json
│ │ └── types
│ │ │ └── index.d.ts
│ ├── concat-map
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.markdown
│ │ ├── example
│ │ │ └── map.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── map.js
│ ├── core-util-is
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── util.js
│ │ └── package.json
│ ├── debug
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── node.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── browser.js
│ │ │ ├── common.js
│ │ │ ├── index.js
│ │ │ └── node.js
│ ├── fill-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── glob-parent
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── has-flag
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── ignore-by-default
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── inherits
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inherits.js
│ │ ├── inherits_browser.js
│ │ └── package.json
│ ├── is-binary-path
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── is-extglob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-glob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-number
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── isarray
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── component.json
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test.js
│ ├── minimatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── minimatch.js
│ │ └── package.json
│ ├── ms
│ │ ├── index.js
│ │ ├── license.md
│ │ ├── package.json
│ │ └── readme.md
│ ├── mysql
│ │ ├── Changes.md
│ │ ├── License
│ │ ├── Readme.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── Connection.js
│ │ │ ├── ConnectionConfig.js
│ │ │ ├── Pool.js
│ │ │ ├── PoolCluster.js
│ │ │ ├── PoolConfig.js
│ │ │ ├── PoolConnection.js
│ │ │ ├── PoolNamespace.js
│ │ │ ├── PoolSelector.js
│ │ │ └── protocol
│ │ │ │ ├── Auth.js
│ │ │ │ ├── BufferList.js
│ │ │ │ ├── PacketHeader.js
│ │ │ │ ├── PacketWriter.js
│ │ │ │ ├── Parser.js
│ │ │ │ ├── Protocol.js
│ │ │ │ ├── ResultSet.js
│ │ │ │ ├── SqlString.js
│ │ │ │ ├── Timer.js
│ │ │ │ ├── constants
│ │ │ │ ├── charsets.js
│ │ │ │ ├── client.js
│ │ │ │ ├── errors.js
│ │ │ │ ├── field_flags.js
│ │ │ │ ├── server_status.js
│ │ │ │ ├── ssl_profiles.js
│ │ │ │ └── types.js
│ │ │ │ ├── packets
│ │ │ │ ├── AuthSwitchRequestPacket.js
│ │ │ │ ├── AuthSwitchResponsePacket.js
│ │ │ │ ├── ClientAuthenticationPacket.js
│ │ │ │ ├── ComChangeUserPacket.js
│ │ │ │ ├── ComPingPacket.js
│ │ │ │ ├── ComQueryPacket.js
│ │ │ │ ├── ComQuitPacket.js
│ │ │ │ ├── ComStatisticsPacket.js
│ │ │ │ ├── EmptyPacket.js
│ │ │ │ ├── EofPacket.js
│ │ │ │ ├── ErrorPacket.js
│ │ │ │ ├── Field.js
│ │ │ │ ├── FieldPacket.js
│ │ │ │ ├── HandshakeInitializationPacket.js
│ │ │ │ ├── LocalDataFilePacket.js
│ │ │ │ ├── LocalInfileRequestPacket.js
│ │ │ │ ├── OkPacket.js
│ │ │ │ ├── OldPasswordPacket.js
│ │ │ │ ├── ResultSetHeaderPacket.js
│ │ │ │ ├── RowDataPacket.js
│ │ │ │ ├── SSLRequestPacket.js
│ │ │ │ ├── StatisticsPacket.js
│ │ │ │ ├── UseOldPasswordPacket.js
│ │ │ │ └── index.js
│ │ │ │ └── sequences
│ │ │ │ ├── ChangeUser.js
│ │ │ │ ├── Handshake.js
│ │ │ │ ├── Ping.js
│ │ │ │ ├── Query.js
│ │ │ │ ├── Quit.js
│ │ │ │ ├── Sequence.js
│ │ │ │ ├── Statistics.js
│ │ │ │ └── index.js
│ │ └── package.json
│ ├── nodemon
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ ├── nodemon.js
│ │ │ └── windows-kill.exe
│ │ ├── 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
│ │ └── 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
│ ├── picomatch
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── constants.js
│ │ │ ├── parse.js
│ │ │ ├── picomatch.js
│ │ │ ├── scan.js
│ │ │ └── utils.js
│ │ └── package.json
│ ├── process-nextick-args
│ │ ├── index.js
│ │ ├── license.md
│ │ ├── package.json
│ │ └── readme.md
│ ├── 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
│ ├── readable-stream
│ │ ├── .travis.yml
│ │ ├── CONTRIBUTING.md
│ │ ├── GOVERNANCE.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── doc
│ │ │ └── wg-meetings
│ │ │ │ └── 2015-01-30.md
│ │ ├── duplex-browser.js
│ │ ├── duplex.js
│ │ ├── lib
│ │ │ ├── _stream_duplex.js
│ │ │ ├── _stream_passthrough.js
│ │ │ ├── _stream_readable.js
│ │ │ ├── _stream_transform.js
│ │ │ ├── _stream_writable.js
│ │ │ └── internal
│ │ │ │ └── streams
│ │ │ │ ├── BufferList.js
│ │ │ │ ├── destroy.js
│ │ │ │ ├── stream-browser.js
│ │ │ │ └── stream.js
│ │ ├── package.json
│ │ ├── passthrough.js
│ │ ├── readable-browser.js
│ │ ├── readable.js
│ │ ├── transform.js
│ │ ├── writable-browser.js
│ │ └── writable.js
│ ├── readdirp
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── safe-buffer
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── semver
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── semver
│ │ ├── package.json
│ │ ├── range.bnf
│ │ └── semver.js
│ ├── simple-update-notifier
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build
│ │ │ ├── index.d.ts
│ │ │ └── index.js
│ │ ├── node_modules
│ │ │ ├── .bin
│ │ │ │ ├── semver
│ │ │ │ ├── semver.cmd
│ │ │ │ └── semver.ps1
│ │ │ └── semver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── bin
│ │ │ │ └── semver.js
│ │ │ │ ├── classes
│ │ │ │ ├── comparator.js
│ │ │ │ ├── index.js
│ │ │ │ ├── range.js
│ │ │ │ └── semver.js
│ │ │ │ ├── functions
│ │ │ │ ├── clean.js
│ │ │ │ ├── cmp.js
│ │ │ │ ├── coerce.js
│ │ │ │ ├── compare-build.js
│ │ │ │ ├── compare-loose.js
│ │ │ │ ├── compare.js
│ │ │ │ ├── diff.js
│ │ │ │ ├── eq.js
│ │ │ │ ├── gt.js
│ │ │ │ ├── gte.js
│ │ │ │ ├── inc.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── lte.js
│ │ │ │ ├── major.js
│ │ │ │ ├── minor.js
│ │ │ │ ├── neq.js
│ │ │ │ ├── parse.js
│ │ │ │ ├── patch.js
│ │ │ │ ├── prerelease.js
│ │ │ │ ├── rcompare.js
│ │ │ │ ├── rsort.js
│ │ │ │ ├── satisfies.js
│ │ │ │ ├── sort.js
│ │ │ │ └── valid.js
│ │ │ │ ├── index.js
│ │ │ │ ├── internal
│ │ │ │ ├── constants.js
│ │ │ │ ├── debug.js
│ │ │ │ ├── identifiers.js
│ │ │ │ └── re.js
│ │ │ │ ├── package.json
│ │ │ │ ├── range.bnf
│ │ │ │ └── ranges
│ │ │ │ ├── gtr.js
│ │ │ │ ├── intersects.js
│ │ │ │ ├── ltr.js
│ │ │ │ ├── max-satisfying.js
│ │ │ │ ├── min-satisfying.js
│ │ │ │ ├── min-version.js
│ │ │ │ ├── outside.js
│ │ │ │ ├── to-comparators.js
│ │ │ │ └── valid.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── borderedText.ts
│ │ │ ├── cache.spec.ts
│ │ │ ├── cache.ts
│ │ │ ├── getDistVersion.spec.ts
│ │ │ ├── getDistVersion.ts
│ │ │ ├── hasNewVersion.spec.ts
│ │ │ ├── hasNewVersion.ts
│ │ │ ├── index.spec.ts
│ │ │ ├── index.ts
│ │ │ ├── isNpmOrYarn.ts
│ │ │ └── types.ts
│ ├── sqlstring
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── SqlString.js
│ │ └── package.json
│ ├── string_decoder
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── string_decoder.js
│ │ └── package.json
│ ├── supports-color
│ │ ├── browser.js
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── to-regex-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── touch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── nodetouch.js
│ │ ├── index.js
│ │ └── package.json
│ ├── undefsafe
│ │ ├── .github
│ │ │ └── workflows
│ │ │ │ └── release.yml
│ │ ├── .jscsrc
│ │ ├── .jshintrc
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example.js
│ │ ├── lib
│ │ │ └── undefsafe.js
│ │ └── package.json
│ └── util-deprecate
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── browser.js
│ │ ├── node.js
│ │ └── package.json
├── package-lock.json
└── package.json
├── Lesson20
├── app.js
├── callbacks.js
├── node_modules
│ ├── .bin
│ │ ├── nodemon
│ │ ├── nodemon.cmd
│ │ ├── nodemon.ps1
│ │ ├── nodetouch
│ │ ├── nodetouch.cmd
│ │ ├── nodetouch.ps1
│ │ ├── nopt
│ │ ├── nopt.cmd
│ │ ├── nopt.ps1
│ │ ├── semver
│ │ ├── semver.cmd
│ │ └── semver.ps1
│ ├── .package-lock.json
│ ├── abbrev
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── abbrev.js
│ │ └── package.json
│ ├── anymatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── balanced-match
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── bignumber.js
│ │ ├── CHANGELOG.md
│ │ ├── LICENCE
│ │ ├── README.md
│ │ ├── bignumber.d.ts
│ │ ├── bignumber.js
│ │ ├── bignumber.min.js
│ │ ├── bignumber.min.js.map
│ │ ├── bignumber.mjs
│ │ ├── doc
│ │ │ └── API.html
│ │ └── package.json
│ ├── binary-extensions
│ │ ├── binary-extensions.json
│ │ ├── binary-extensions.json.d.ts
│ │ ├── 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
│ ├── chokidar
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── constants.js
│ │ │ ├── fsevents-handler.js
│ │ │ └── nodefs-handler.js
│ │ ├── package.json
│ │ └── types
│ │ │ └── index.d.ts
│ ├── concat-map
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.markdown
│ │ ├── example
│ │ │ └── map.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── map.js
│ ├── core-util-is
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── util.js
│ │ └── package.json
│ ├── debug
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── node.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── browser.js
│ │ │ ├── common.js
│ │ │ ├── index.js
│ │ │ └── node.js
│ ├── denque
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── fill-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── generate-function
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test.js
│ ├── glob-parent
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── has-flag
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── iconv-lite
│ │ ├── .github
│ │ │ └── dependabot.yml
│ │ ├── .idea
│ │ │ ├── codeStyles
│ │ │ │ ├── Project.xml
│ │ │ │ └── codeStyleConfig.xml
│ │ │ ├── iconv-lite.iml
│ │ │ ├── inspectionProfiles
│ │ │ │ └── Project_Default.xml
│ │ │ ├── modules.xml
│ │ │ └── vcs.xml
│ │ ├── 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
│ │ │ ├── utf32.js
│ │ │ └── utf7.js
│ │ ├── lib
│ │ │ ├── bom-handling.js
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ └── streams.js
│ │ └── package.json
│ ├── ignore-by-default
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── inherits
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inherits.js
│ │ ├── inherits_browser.js
│ │ └── package.json
│ ├── is-binary-path
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── is-extglob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-glob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-number
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-property
│ │ ├── .npmignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── is-property.js
│ │ └── package.json
│ ├── isarray
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── component.json
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test.js
│ ├── long
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ └── umd
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ └── package.json
│ ├── lru-cache
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── dist
│ │ │ ├── cjs
│ │ │ │ ├── index-cjs.d.ts
│ │ │ │ ├── index-cjs.d.ts.map
│ │ │ │ ├── index-cjs.js
│ │ │ │ ├── index-cjs.js.map
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.d.ts.map
│ │ │ │ ├── index.js
│ │ │ │ ├── index.js.map
│ │ │ │ ├── index.min.js
│ │ │ │ ├── index.min.js.map
│ │ │ │ └── package.json
│ │ │ └── mjs
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.d.ts.map
│ │ │ │ ├── index.js
│ │ │ │ ├── index.js.map
│ │ │ │ ├── index.min.js
│ │ │ │ ├── index.min.js.map
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── minimatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── minimatch.js
│ │ └── package.json
│ ├── ms
│ │ ├── index.js
│ │ ├── license.md
│ │ ├── package.json
│ │ └── readme.md
│ ├── mysql
│ │ ├── Changes.md
│ │ ├── License
│ │ ├── Readme.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── Connection.js
│ │ │ ├── ConnectionConfig.js
│ │ │ ├── Pool.js
│ │ │ ├── PoolCluster.js
│ │ │ ├── PoolConfig.js
│ │ │ ├── PoolConnection.js
│ │ │ ├── PoolNamespace.js
│ │ │ ├── PoolSelector.js
│ │ │ └── protocol
│ │ │ │ ├── Auth.js
│ │ │ │ ├── BufferList.js
│ │ │ │ ├── PacketHeader.js
│ │ │ │ ├── PacketWriter.js
│ │ │ │ ├── Parser.js
│ │ │ │ ├── Protocol.js
│ │ │ │ ├── ResultSet.js
│ │ │ │ ├── SqlString.js
│ │ │ │ ├── Timer.js
│ │ │ │ ├── constants
│ │ │ │ ├── charsets.js
│ │ │ │ ├── client.js
│ │ │ │ ├── errors.js
│ │ │ │ ├── field_flags.js
│ │ │ │ ├── server_status.js
│ │ │ │ ├── ssl_profiles.js
│ │ │ │ └── types.js
│ │ │ │ ├── packets
│ │ │ │ ├── AuthSwitchRequestPacket.js
│ │ │ │ ├── AuthSwitchResponsePacket.js
│ │ │ │ ├── ClientAuthenticationPacket.js
│ │ │ │ ├── ComChangeUserPacket.js
│ │ │ │ ├── ComPingPacket.js
│ │ │ │ ├── ComQueryPacket.js
│ │ │ │ ├── ComQuitPacket.js
│ │ │ │ ├── ComStatisticsPacket.js
│ │ │ │ ├── EmptyPacket.js
│ │ │ │ ├── EofPacket.js
│ │ │ │ ├── ErrorPacket.js
│ │ │ │ ├── Field.js
│ │ │ │ ├── FieldPacket.js
│ │ │ │ ├── HandshakeInitializationPacket.js
│ │ │ │ ├── LocalDataFilePacket.js
│ │ │ │ ├── LocalInfileRequestPacket.js
│ │ │ │ ├── OkPacket.js
│ │ │ │ ├── OldPasswordPacket.js
│ │ │ │ ├── ResultSetHeaderPacket.js
│ │ │ │ ├── RowDataPacket.js
│ │ │ │ ├── SSLRequestPacket.js
│ │ │ │ ├── StatisticsPacket.js
│ │ │ │ ├── UseOldPasswordPacket.js
│ │ │ │ └── index.js
│ │ │ │ └── sequences
│ │ │ │ ├── ChangeUser.js
│ │ │ │ ├── Handshake.js
│ │ │ │ ├── Ping.js
│ │ │ │ ├── Query.js
│ │ │ │ ├── Quit.js
│ │ │ │ ├── Sequence.js
│ │ │ │ ├── Statistics.js
│ │ │ │ └── index.js
│ │ └── package.json
│ ├── mysql2
│ │ ├── License
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── auth_41.js
│ │ │ ├── auth_plugins
│ │ │ │ ├── caching_sha2_password.js
│ │ │ │ ├── caching_sha2_password.md
│ │ │ │ ├── index.js
│ │ │ │ ├── mysql_clear_password.js
│ │ │ │ ├── mysql_native_password.js
│ │ │ │ └── sha256_password.js
│ │ │ ├── commands
│ │ │ │ ├── auth_switch.js
│ │ │ │ ├── binlog_dump.js
│ │ │ │ ├── change_user.js
│ │ │ │ ├── client_handshake.js
│ │ │ │ ├── close_statement.js
│ │ │ │ ├── command.js
│ │ │ │ ├── execute.js
│ │ │ │ ├── index.js
│ │ │ │ ├── ping.js
│ │ │ │ ├── prepare.js
│ │ │ │ ├── query.js
│ │ │ │ ├── quit.js
│ │ │ │ ├── register_slave.js
│ │ │ │ └── server_handshake.js
│ │ │ ├── compressed_protocol.js
│ │ │ ├── connection.js
│ │ │ ├── connection_config.js
│ │ │ ├── constants
│ │ │ │ ├── charset_encodings.js
│ │ │ │ ├── charsets.js
│ │ │ │ ├── client.js
│ │ │ │ ├── commands.js
│ │ │ │ ├── cursor.js
│ │ │ │ ├── encoding_charset.js
│ │ │ │ ├── errors.js
│ │ │ │ ├── field_flags.js
│ │ │ │ ├── server_status.js
│ │ │ │ ├── session_track.js
│ │ │ │ ├── ssl_profiles.js
│ │ │ │ └── types.js
│ │ │ ├── helpers.js
│ │ │ ├── packet_parser.js
│ │ │ ├── packets
│ │ │ │ ├── auth_next_factor.js
│ │ │ │ ├── auth_switch_request.js
│ │ │ │ ├── auth_switch_request_more_data.js
│ │ │ │ ├── auth_switch_response.js
│ │ │ │ ├── binary_row.js
│ │ │ │ ├── binlog_dump.js
│ │ │ │ ├── binlog_query_statusvars.js
│ │ │ │ ├── change_user.js
│ │ │ │ ├── close_statement.js
│ │ │ │ ├── column_definition.js
│ │ │ │ ├── execute.js
│ │ │ │ ├── handshake.js
│ │ │ │ ├── handshake_response.js
│ │ │ │ ├── index.js
│ │ │ │ ├── packet.js
│ │ │ │ ├── prepare_statement.js
│ │ │ │ ├── prepared_statement_header.js
│ │ │ │ ├── query.js
│ │ │ │ ├── register_slave.js
│ │ │ │ ├── resultset_header.js
│ │ │ │ ├── ssl_request.js
│ │ │ │ └── text_row.js
│ │ │ ├── parsers
│ │ │ │ ├── binary_parser.js
│ │ │ │ ├── parser_cache.js
│ │ │ │ ├── string.js
│ │ │ │ └── text_parser.js
│ │ │ ├── pool.js
│ │ │ ├── pool_cluster.js
│ │ │ ├── pool_config.js
│ │ │ ├── pool_connection.js
│ │ │ ├── results_stream.js
│ │ │ └── server.js
│ │ ├── node_modules
│ │ │ └── sqlstring
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── index.js
│ │ │ │ ├── lib
│ │ │ │ └── SqlString.js
│ │ │ │ └── package.json
│ │ ├── package.json
│ │ ├── promise.d.ts
│ │ ├── promise.js
│ │ └── typings
│ │ │ └── mysql
│ │ │ ├── LICENSE.txt
│ │ │ ├── index.d.ts
│ │ │ ├── info.txt
│ │ │ └── lib
│ │ │ ├── Connection.d.ts
│ │ │ ├── Pool.d.ts
│ │ │ ├── PoolCluster.d.ts
│ │ │ ├── PoolConnection.d.ts
│ │ │ ├── Server.d.ts
│ │ │ └── protocol
│ │ │ ├── packets
│ │ │ ├── Field.d.ts
│ │ │ ├── FieldPacket.d.ts
│ │ │ ├── OkPacket.d.ts
│ │ │ ├── ResultSetHeader.d.ts
│ │ │ ├── RowDataPacket.d.ts
│ │ │ ├── index.d.ts
│ │ │ └── params
│ │ │ │ ├── ErrorPacketParams.d.ts
│ │ │ │ └── OkPacketParams.d.ts
│ │ │ └── sequences
│ │ │ ├── Prepare.d.ts
│ │ │ ├── Query.d.ts
│ │ │ └── Sequence.d.ts
│ ├── named-placeholders
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── node_modules
│ │ │ └── lru-cache
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ ├── index.mjs
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── nodemon
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ ├── nodemon.js
│ │ │ └── windows-kill.exe
│ │ ├── 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
│ │ └── 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
│ ├── picomatch
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── constants.js
│ │ │ ├── parse.js
│ │ │ ├── picomatch.js
│ │ │ ├── scan.js
│ │ │ └── utils.js
│ │ └── package.json
│ ├── process-nextick-args
│ │ ├── index.js
│ │ ├── license.md
│ │ ├── package.json
│ │ └── readme.md
│ ├── 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
│ ├── readable-stream
│ │ ├── .travis.yml
│ │ ├── CONTRIBUTING.md
│ │ ├── GOVERNANCE.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── doc
│ │ │ └── wg-meetings
│ │ │ │ └── 2015-01-30.md
│ │ ├── duplex-browser.js
│ │ ├── duplex.js
│ │ ├── lib
│ │ │ ├── _stream_duplex.js
│ │ │ ├── _stream_passthrough.js
│ │ │ ├── _stream_readable.js
│ │ │ ├── _stream_transform.js
│ │ │ ├── _stream_writable.js
│ │ │ └── internal
│ │ │ │ └── streams
│ │ │ │ ├── BufferList.js
│ │ │ │ ├── destroy.js
│ │ │ │ ├── stream-browser.js
│ │ │ │ └── stream.js
│ │ ├── package.json
│ │ ├── passthrough.js
│ │ ├── readable-browser.js
│ │ ├── readable.js
│ │ ├── transform.js
│ │ ├── writable-browser.js
│ │ └── writable.js
│ ├── readdirp
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── semver
│ │ ├── package.json
│ │ ├── range.bnf
│ │ └── semver.js
│ ├── seq-queue
│ │ ├── .jshintrc
│ │ ├── .npmignore
│ │ ├── AUTHORS
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── .npmignore
│ │ │ └── seq-queue.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── seq-queue-test.js
│ ├── simple-update-notifier
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build
│ │ │ ├── index.d.ts
│ │ │ └── index.js
│ │ ├── node_modules
│ │ │ ├── .bin
│ │ │ │ ├── semver
│ │ │ │ ├── semver.cmd
│ │ │ │ └── semver.ps1
│ │ │ └── semver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── bin
│ │ │ │ └── semver.js
│ │ │ │ ├── classes
│ │ │ │ ├── comparator.js
│ │ │ │ ├── index.js
│ │ │ │ ├── range.js
│ │ │ │ └── semver.js
│ │ │ │ ├── functions
│ │ │ │ ├── clean.js
│ │ │ │ ├── cmp.js
│ │ │ │ ├── coerce.js
│ │ │ │ ├── compare-build.js
│ │ │ │ ├── compare-loose.js
│ │ │ │ ├── compare.js
│ │ │ │ ├── diff.js
│ │ │ │ ├── eq.js
│ │ │ │ ├── gt.js
│ │ │ │ ├── gte.js
│ │ │ │ ├── inc.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── lte.js
│ │ │ │ ├── major.js
│ │ │ │ ├── minor.js
│ │ │ │ ├── neq.js
│ │ │ │ ├── parse.js
│ │ │ │ ├── patch.js
│ │ │ │ ├── prerelease.js
│ │ │ │ ├── rcompare.js
│ │ │ │ ├── rsort.js
│ │ │ │ ├── satisfies.js
│ │ │ │ ├── sort.js
│ │ │ │ └── valid.js
│ │ │ │ ├── index.js
│ │ │ │ ├── internal
│ │ │ │ ├── constants.js
│ │ │ │ ├── debug.js
│ │ │ │ ├── identifiers.js
│ │ │ │ └── re.js
│ │ │ │ ├── package.json
│ │ │ │ ├── range.bnf
│ │ │ │ └── ranges
│ │ │ │ ├── gtr.js
│ │ │ │ ├── intersects.js
│ │ │ │ ├── ltr.js
│ │ │ │ ├── max-satisfying.js
│ │ │ │ ├── min-satisfying.js
│ │ │ │ ├── min-version.js
│ │ │ │ ├── outside.js
│ │ │ │ ├── to-comparators.js
│ │ │ │ └── valid.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── borderedText.ts
│ │ │ ├── cache.spec.ts
│ │ │ ├── cache.ts
│ │ │ ├── getDistVersion.spec.ts
│ │ │ ├── getDistVersion.ts
│ │ │ ├── hasNewVersion.spec.ts
│ │ │ ├── hasNewVersion.ts
│ │ │ ├── index.spec.ts
│ │ │ ├── index.ts
│ │ │ ├── isNpmOrYarn.ts
│ │ │ └── types.ts
│ ├── sqlstring
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── SqlString.js
│ │ └── package.json
│ ├── string_decoder
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── lib
│ │ │ └── string_decoder.js
│ │ └── package.json
│ ├── supports-color
│ │ ├── browser.js
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── to-regex-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── touch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── nodetouch.js
│ │ ├── index.js
│ │ └── package.json
│ ├── undefsafe
│ │ ├── .github
│ │ │ └── workflows
│ │ │ │ └── release.yml
│ │ ├── .jscsrc
│ │ ├── .jshintrc
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example.js
│ │ ├── lib
│ │ │ └── undefsafe.js
│ │ └── package.json
│ └── util-deprecate
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── browser.js
│ │ ├── node.js
│ │ └── package.json
├── package-lock.json
└── package.json
├── Lesson21
├── app.js
├── node_modules
│ ├── .bin
│ │ ├── ejs
│ │ ├── ejs.cmd
│ │ ├── ejs.ps1
│ │ ├── jake
│ │ ├── jake.cmd
│ │ ├── jake.ps1
│ │ ├── mime
│ │ ├── mime.cmd
│ │ ├── mime.ps1
│ │ ├── nodemon
│ │ ├── nodemon.cmd
│ │ ├── nodemon.ps1
│ │ ├── nodetouch
│ │ ├── nodetouch.cmd
│ │ ├── nodetouch.ps1
│ │ ├── nopt
│ │ ├── nopt.cmd
│ │ ├── nopt.ps1
│ │ ├── semver
│ │ ├── semver.cmd
│ │ └── semver.ps1
│ ├── .package-lock.json
│ ├── abbrev
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── abbrev.js
│ │ └── package.json
│ ├── accepts
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── async
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── all.js
│ │ ├── allLimit.js
│ │ ├── allSeries.js
│ │ ├── any.js
│ │ ├── anyLimit.js
│ │ ├── anySeries.js
│ │ ├── apply.js
│ │ ├── applyEach.js
│ │ ├── applyEachSeries.js
│ │ ├── asyncify.js
│ │ ├── auto.js
│ │ ├── autoInject.js
│ │ ├── bower.json
│ │ ├── cargo.js
│ │ ├── cargoQueue.js
│ │ ├── compose.js
│ │ ├── concat.js
│ │ ├── concatLimit.js
│ │ ├── concatSeries.js
│ │ ├── constant.js
│ │ ├── detect.js
│ │ ├── detectLimit.js
│ │ ├── detectSeries.js
│ │ ├── dir.js
│ │ ├── dist
│ │ │ ├── async.js
│ │ │ ├── async.min.js
│ │ │ └── async.mjs
│ │ ├── doDuring.js
│ │ ├── doUntil.js
│ │ ├── doWhilst.js
│ │ ├── during.js
│ │ ├── each.js
│ │ ├── eachLimit.js
│ │ ├── eachOf.js
│ │ ├── eachOfLimit.js
│ │ ├── eachOfSeries.js
│ │ ├── eachSeries.js
│ │ ├── ensureAsync.js
│ │ ├── every.js
│ │ ├── everyLimit.js
│ │ ├── everySeries.js
│ │ ├── filter.js
│ │ ├── filterLimit.js
│ │ ├── filterSeries.js
│ │ ├── find.js
│ │ ├── findLimit.js
│ │ ├── findSeries.js
│ │ ├── flatMap.js
│ │ ├── flatMapLimit.js
│ │ ├── flatMapSeries.js
│ │ ├── foldl.js
│ │ ├── foldr.js
│ │ ├── forEach.js
│ │ ├── forEachLimit.js
│ │ ├── forEachOf.js
│ │ ├── forEachOfLimit.js
│ │ ├── forEachOfSeries.js
│ │ ├── forEachSeries.js
│ │ ├── forever.js
│ │ ├── groupBy.js
│ │ ├── groupByLimit.js
│ │ ├── groupBySeries.js
│ │ ├── index.js
│ │ ├── inject.js
│ │ ├── internal
│ │ │ ├── DoublyLinkedList.js
│ │ │ ├── Heap.js
│ │ │ ├── applyEach.js
│ │ │ ├── asyncEachOfLimit.js
│ │ │ ├── awaitify.js
│ │ │ ├── breakLoop.js
│ │ │ ├── consoleFunc.js
│ │ │ ├── createTester.js
│ │ │ ├── eachOfLimit.js
│ │ │ ├── filter.js
│ │ │ ├── getIterator.js
│ │ │ ├── initialParams.js
│ │ │ ├── isArrayLike.js
│ │ │ ├── iterator.js
│ │ │ ├── map.js
│ │ │ ├── once.js
│ │ │ ├── onlyOnce.js
│ │ │ ├── parallel.js
│ │ │ ├── promiseCallback.js
│ │ │ ├── queue.js
│ │ │ ├── range.js
│ │ │ ├── reject.js
│ │ │ ├── setImmediate.js
│ │ │ ├── withoutIndex.js
│ │ │ └── wrapAsync.js
│ │ ├── log.js
│ │ ├── map.js
│ │ ├── mapLimit.js
│ │ ├── mapSeries.js
│ │ ├── mapValues.js
│ │ ├── mapValuesLimit.js
│ │ ├── mapValuesSeries.js
│ │ ├── memoize.js
│ │ ├── nextTick.js
│ │ ├── package.json
│ │ ├── parallel.js
│ │ ├── parallelLimit.js
│ │ ├── priorityQueue.js
│ │ ├── queue.js
│ │ ├── race.js
│ │ ├── reduce.js
│ │ ├── reduceRight.js
│ │ ├── reflect.js
│ │ ├── reflectAll.js
│ │ ├── reject.js
│ │ ├── rejectLimit.js
│ │ ├── rejectSeries.js
│ │ ├── retry.js
│ │ ├── retryable.js
│ │ ├── select.js
│ │ ├── selectLimit.js
│ │ ├── selectSeries.js
│ │ ├── seq.js
│ │ ├── series.js
│ │ ├── setImmediate.js
│ │ ├── some.js
│ │ ├── someLimit.js
│ │ ├── someSeries.js
│ │ ├── sortBy.js
│ │ ├── timeout.js
│ │ ├── times.js
│ │ ├── timesLimit.js
│ │ ├── timesSeries.js
│ │ ├── transform.js
│ │ ├── tryEach.js
│ │ ├── unmemoize.js
│ │ ├── until.js
│ │ ├── waterfall.js
│ │ ├── whilst.js
│ │ └── wrapSync.js
│ ├── balanced-match
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── 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
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── read.js
│ │ │ └── types
│ │ │ │ ├── json.js
│ │ │ │ ├── raw.js
│ │ │ │ ├── text.js
│ │ │ │ └── urlencoded.js
│ │ └── package.json
│ ├── 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
│ ├── call-bind
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── callBound.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── callBound.js
│ │ │ └── index.js
│ ├── chalk
│ │ ├── index.d.ts
│ │ ├── license
│ │ ├── 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
│ ├── 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
│ ├── 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
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── depd
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── browser
│ │ │ │ └── index.js
│ │ └── package.json
│ ├── destroy
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── ee-first
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── ejs
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── cli.js
│ │ ├── ejs.js
│ │ ├── ejs.min.js
│ │ ├── jakefile.js
│ │ ├── lib
│ │ │ ├── ejs.js
│ │ │ └── utils.js
│ │ ├── package.json
│ │ └── usage.txt
│ ├── encodeurl
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ │ ├── node_modules
│ │ │ ├── body-parser
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── SECURITY.md
│ │ │ │ ├── index.js
│ │ │ │ ├── lib
│ │ │ │ │ ├── read.js
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── json.js
│ │ │ │ │ │ ├── raw.js
│ │ │ │ │ │ ├── text.js
│ │ │ │ │ │ └── urlencoded.js
│ │ │ │ └── package.json
│ │ │ └── raw-body
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── SECURITY.md
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── filelist
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── jakefile.js
│ │ ├── node_modules
│ │ │ ├── brace-expansion
│ │ │ │ ├── .github
│ │ │ │ │ └── FUNDING.yml
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ │ └── minimatch
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── lib
│ │ │ │ └── path.js
│ │ │ │ ├── minimatch.js
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── fill-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── finalhandler
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.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
│ ├── function-bind
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .jscs.json
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── implementation.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── .eslintrc
│ │ │ └── index.js
│ ├── get-intrinsic
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── GetIntrinsic.js
│ ├── glob-parent
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── has-flag
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── has-symbols
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── shams.js
│ │ └── test
│ │ │ ├── index.js
│ │ │ ├── shams
│ │ │ ├── core-js.js
│ │ │ └── get-own-property-symbols.js
│ │ │ └── tests.js
│ ├── has
│ │ ├── LICENSE-MIT
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src
│ │ │ └── index.js
│ │ └── test
│ │ │ └── index.js
│ ├── 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
│ ├── inherits
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inherits.js
│ │ ├── inherits_browser.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-extglob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-glob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-number
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── jake
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── bin
│ │ │ ├── bash_completion.sh
│ │ │ └── cli.js
│ │ ├── jakefile.js
│ │ ├── lib
│ │ │ ├── api.js
│ │ │ ├── jake.js
│ │ │ ├── loader.js
│ │ │ ├── namespace.js
│ │ │ ├── package_task.js
│ │ │ ├── parseargs.js
│ │ │ ├── program.js
│ │ │ ├── publish_task.js
│ │ │ ├── rule.js
│ │ │ ├── task
│ │ │ │ ├── directory_task.js
│ │ │ │ ├── file_task.js
│ │ │ │ ├── index.js
│ │ │ │ └── task.js
│ │ │ ├── test_task.js
│ │ │ └── utils
│ │ │ │ ├── file.js
│ │ │ │ ├── index.js
│ │ │ │ └── logger.js
│ │ ├── package.json
│ │ ├── test
│ │ │ ├── integration
│ │ │ │ ├── concurrent.js
│ │ │ │ ├── file.js
│ │ │ │ ├── file_task.js
│ │ │ │ ├── helpers.js
│ │ │ │ ├── jakefile.js
│ │ │ │ ├── jakelib
│ │ │ │ │ ├── concurrent.jake.js
│ │ │ │ │ ├── publish.jake.js
│ │ │ │ │ ├── required_module.jake.js
│ │ │ │ │ └── rule.jake.js
│ │ │ │ ├── publish_task.js
│ │ │ │ ├── rule.js
│ │ │ │ ├── selfdep.js
│ │ │ │ └── task_base.js
│ │ │ └── unit
│ │ │ │ ├── jakefile.js
│ │ │ │ ├── namespace.js
│ │ │ │ └── parseargs.js
│ │ └── usage.txt
│ ├── 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
│ ├── minimatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── minimatch.js
│ │ └── package.json
│ ├── 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
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ ├── nodemon.js
│ │ │ └── windows-kill.exe
│ │ ├── 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
│ │ │ │ ├── node.js
│ │ │ │ ├── package.json
│ │ │ │ └── src
│ │ │ │ │ ├── browser.js
│ │ │ │ │ ├── common.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── node.js
│ │ │ ├── has-flag
│ │ │ │ ├── index.js
│ │ │ │ ├── license
│ │ │ │ ├── package.json
│ │ │ │ └── readme.md
│ │ │ ├── ms
│ │ │ │ ├── index.js
│ │ │ │ ├── license.md
│ │ │ │ ├── package.json
│ │ │ │ └── readme.md
│ │ │ └── supports-color
│ │ │ │ ├── browser.js
│ │ │ │ ├── index.js
│ │ │ │ ├── license
│ │ │ │ ├── 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
│ ├── object-inspect
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── example
│ │ │ ├── all.js
│ │ │ ├── circular.js
│ │ │ ├── fn.js
│ │ │ └── inspect.js
│ │ ├── index.js
│ │ ├── package-support.json
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ ├── test-core-js.js
│ │ ├── test
│ │ │ ├── bigint.js
│ │ │ ├── browser
│ │ │ │ └── dom.js
│ │ │ ├── circular.js
│ │ │ ├── deep.js
│ │ │ ├── element.js
│ │ │ ├── err.js
│ │ │ ├── fakes.js
│ │ │ ├── fn.js
│ │ │ ├── has.js
│ │ │ ├── holes.js
│ │ │ ├── indent-option.js
│ │ │ ├── inspect.js
│ │ │ ├── lowbyte.js
│ │ │ ├── number.js
│ │ │ ├── quoteStyle.js
│ │ │ ├── toStringTag.js
│ │ │ ├── undef.js
│ │ │ └── values.js
│ │ └── util.inspect.js
│ ├── on-finished
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── 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
│ ├── qs
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── dist
│ │ │ └── qs.js
│ │ ├── lib
│ │ │ ├── formats.js
│ │ │ ├── index.js
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ ├── range-parser
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── raw-body
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── readdirp
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── semver
│ │ ├── package.json
│ │ ├── range.bnf
│ │ └── semver.js
│ ├── send
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.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
│ ├── side-channel
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── index.js
│ ├── simple-update-notifier
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build
│ │ │ ├── index.d.ts
│ │ │ └── index.js
│ │ ├── node_modules
│ │ │ ├── .bin
│ │ │ │ ├── semver
│ │ │ │ ├── semver.cmd
│ │ │ │ └── semver.ps1
│ │ │ └── semver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── bin
│ │ │ │ └── semver.js
│ │ │ │ ├── classes
│ │ │ │ ├── comparator.js
│ │ │ │ ├── index.js
│ │ │ │ ├── range.js
│ │ │ │ └── semver.js
│ │ │ │ ├── functions
│ │ │ │ ├── clean.js
│ │ │ │ ├── cmp.js
│ │ │ │ ├── coerce.js
│ │ │ │ ├── compare-build.js
│ │ │ │ ├── compare-loose.js
│ │ │ │ ├── compare.js
│ │ │ │ ├── diff.js
│ │ │ │ ├── eq.js
│ │ │ │ ├── gt.js
│ │ │ │ ├── gte.js
│ │ │ │ ├── inc.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── lte.js
│ │ │ │ ├── major.js
│ │ │ │ ├── minor.js
│ │ │ │ ├── neq.js
│ │ │ │ ├── parse.js
│ │ │ │ ├── patch.js
│ │ │ │ ├── prerelease.js
│ │ │ │ ├── rcompare.js
│ │ │ │ ├── rsort.js
│ │ │ │ ├── satisfies.js
│ │ │ │ ├── sort.js
│ │ │ │ └── valid.js
│ │ │ │ ├── index.js
│ │ │ │ ├── internal
│ │ │ │ ├── constants.js
│ │ │ │ ├── debug.js
│ │ │ │ ├── identifiers.js
│ │ │ │ └── re.js
│ │ │ │ ├── package.json
│ │ │ │ ├── range.bnf
│ │ │ │ └── ranges
│ │ │ │ ├── gtr.js
│ │ │ │ ├── intersects.js
│ │ │ │ ├── ltr.js
│ │ │ │ ├── max-satisfying.js
│ │ │ │ ├── min-satisfying.js
│ │ │ │ ├── min-version.js
│ │ │ │ ├── outside.js
│ │ │ │ ├── to-comparators.js
│ │ │ │ └── valid.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── borderedText.ts
│ │ │ ├── cache.spec.ts
│ │ │ ├── cache.ts
│ │ │ ├── getDistVersion.spec.ts
│ │ │ ├── getDistVersion.ts
│ │ │ ├── hasNewVersion.spec.ts
│ │ │ ├── hasNewVersion.ts
│ │ │ ├── index.spec.ts
│ │ │ ├── index.ts
│ │ │ ├── isNpmOrYarn.ts
│ │ │ └── types.ts
│ ├── statuses
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── codes.json
│ │ ├── index.js
│ │ └── package.json
│ ├── supports-color
│ │ ├── browser.js
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── to-regex-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── toidentifier
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── touch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── nodetouch.js
│ │ ├── index.js
│ │ └── package.json
│ ├── type-is
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── undefsafe
│ │ ├── .github
│ │ │ └── workflows
│ │ │ │ └── release.yml
│ │ ├── .jscsrc
│ │ ├── .jshintrc
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example.js
│ │ ├── lib
│ │ │ └── undefsafe.js
│ │ └── package.json
│ ├── unpipe
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── utils-merge
│ │ ├── .npmignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ └── vary
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
├── package-lock.json
├── package.json
├── pictures
│ ├── Capture.PNG
│ ├── Capture0.PNG
│ ├── Capture1.PNG
│ ├── Capture2.PNG
│ ├── Capture3.PNG
│ ├── Capture4.PNG
│ ├── Capture5.PNG
│ ├── Capture6.PNG
│ ├── Capture7-2.PNG
│ ├── Capture7.PNG
│ ├── Capture8.PNG
│ └── Capture9.PNG
└── views
│ ├── conditional.ejs
│ ├── footer.ejs
│ ├── foreach.ejs
│ ├── header.ejs
│ ├── index.ejs
│ ├── main.ejs
│ └── response.ejs
├── Lesson22
├── app.js
├── lesson
│ └── lesson.js
├── node_modules
│ ├── .bin
│ │ ├── mime
│ │ ├── mime.cmd
│ │ ├── mime.ps1
│ │ ├── nodemon
│ │ ├── nodemon.cmd
│ │ ├── nodemon.ps1
│ │ ├── nodetouch
│ │ ├── nodetouch.cmd
│ │ ├── nodetouch.ps1
│ │ ├── nopt
│ │ ├── nopt.cmd
│ │ ├── nopt.ps1
│ │ ├── semver
│ │ ├── semver.cmd
│ │ └── semver.ps1
│ ├── .package-lock.json
│ ├── abbrev
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── abbrev.js
│ │ └── package.json
│ ├── accepts
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── anymatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── array-flatten
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── array-flatten.js
│ │ └── package.json
│ ├── balanced-match
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── 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
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── read.js
│ │ │ └── types
│ │ │ │ ├── json.js
│ │ │ │ ├── raw.js
│ │ │ │ ├── text.js
│ │ │ │ └── urlencoded.js
│ │ └── package.json
│ ├── 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
│ ├── call-bind
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── callBound.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── callBound.js
│ │ │ └── index.js
│ ├── chokidar
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── constants.js
│ │ │ ├── fsevents-handler.js
│ │ │ └── nodefs-handler.js
│ │ ├── package.json
│ │ └── types
│ │ │ └── index.d.ts
│ ├── concat-map
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.markdown
│ │ ├── example
│ │ │ └── map.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── map.js
│ ├── 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
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── denque
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── depd
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── browser
│ │ │ │ └── index.js
│ │ └── package.json
│ ├── destroy
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── ee-first
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── encodeurl
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ │ ├── node_modules
│ │ │ ├── body-parser
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── SECURITY.md
│ │ │ │ ├── index.js
│ │ │ │ ├── lib
│ │ │ │ │ ├── read.js
│ │ │ │ │ └── types
│ │ │ │ │ │ ├── json.js
│ │ │ │ │ │ ├── raw.js
│ │ │ │ │ │ ├── text.js
│ │ │ │ │ │ └── urlencoded.js
│ │ │ │ └── package.json
│ │ │ └── raw-body
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── SECURITY.md
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── fill-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── finalhandler
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.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
│ ├── function-bind
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .jscs.json
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── implementation.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── .eslintrc
│ │ │ └── index.js
│ ├── generate-function
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test.js
│ ├── get-intrinsic
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── GetIntrinsic.js
│ ├── glob-parent
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── has-flag
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── has-symbols
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── shams.js
│ │ └── test
│ │ │ ├── index.js
│ │ │ ├── shams
│ │ │ ├── core-js.js
│ │ │ └── get-own-property-symbols.js
│ │ │ └── tests.js
│ ├── has
│ │ ├── LICENSE-MIT
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src
│ │ │ └── index.js
│ │ └── test
│ │ │ └── index.js
│ ├── 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
│ ├── inherits
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inherits.js
│ │ ├── inherits_browser.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-extglob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-glob
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-number
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── is-property
│ │ ├── .npmignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── is-property.js
│ │ └── package.json
│ ├── long
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── package.json
│ │ └── umd
│ │ │ ├── index.d.ts
│ │ │ ├── index.js
│ │ │ └── package.json
│ ├── lru-cache
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── dist
│ │ │ ├── cjs
│ │ │ │ ├── index-cjs.d.ts
│ │ │ │ ├── index-cjs.d.ts.map
│ │ │ │ ├── index-cjs.js
│ │ │ │ ├── index-cjs.js.map
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.d.ts.map
│ │ │ │ ├── index.js
│ │ │ │ ├── index.js.map
│ │ │ │ ├── index.min.js
│ │ │ │ ├── index.min.js.map
│ │ │ │ └── package.json
│ │ │ └── mjs
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.d.ts.map
│ │ │ │ ├── index.js
│ │ │ │ ├── index.js.map
│ │ │ │ ├── index.min.js
│ │ │ │ ├── index.min.js.map
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── 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
│ ├── minimatch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── minimatch.js
│ │ └── package.json
│ ├── ms
│ │ ├── index.js
│ │ ├── license.md
│ │ ├── package.json
│ │ └── readme.md
│ ├── mysql2
│ │ ├── License
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── auth_41.js
│ │ │ ├── auth_plugins
│ │ │ │ ├── caching_sha2_password.js
│ │ │ │ ├── caching_sha2_password.md
│ │ │ │ ├── index.js
│ │ │ │ ├── mysql_clear_password.js
│ │ │ │ ├── mysql_native_password.js
│ │ │ │ └── sha256_password.js
│ │ │ ├── commands
│ │ │ │ ├── auth_switch.js
│ │ │ │ ├── binlog_dump.js
│ │ │ │ ├── change_user.js
│ │ │ │ ├── client_handshake.js
│ │ │ │ ├── close_statement.js
│ │ │ │ ├── command.js
│ │ │ │ ├── execute.js
│ │ │ │ ├── index.js
│ │ │ │ ├── ping.js
│ │ │ │ ├── prepare.js
│ │ │ │ ├── query.js
│ │ │ │ ├── quit.js
│ │ │ │ ├── register_slave.js
│ │ │ │ └── server_handshake.js
│ │ │ ├── compressed_protocol.js
│ │ │ ├── connection.js
│ │ │ ├── connection_config.js
│ │ │ ├── constants
│ │ │ │ ├── charset_encodings.js
│ │ │ │ ├── charsets.js
│ │ │ │ ├── client.js
│ │ │ │ ├── commands.js
│ │ │ │ ├── cursor.js
│ │ │ │ ├── encoding_charset.js
│ │ │ │ ├── errors.js
│ │ │ │ ├── field_flags.js
│ │ │ │ ├── server_status.js
│ │ │ │ ├── session_track.js
│ │ │ │ ├── ssl_profiles.js
│ │ │ │ └── types.js
│ │ │ ├── helpers.js
│ │ │ ├── packet_parser.js
│ │ │ ├── packets
│ │ │ │ ├── auth_next_factor.js
│ │ │ │ ├── auth_switch_request.js
│ │ │ │ ├── auth_switch_request_more_data.js
│ │ │ │ ├── auth_switch_response.js
│ │ │ │ ├── binary_row.js
│ │ │ │ ├── binlog_dump.js
│ │ │ │ ├── binlog_query_statusvars.js
│ │ │ │ ├── change_user.js
│ │ │ │ ├── close_statement.js
│ │ │ │ ├── column_definition.js
│ │ │ │ ├── execute.js
│ │ │ │ ├── handshake.js
│ │ │ │ ├── handshake_response.js
│ │ │ │ ├── index.js
│ │ │ │ ├── packet.js
│ │ │ │ ├── prepare_statement.js
│ │ │ │ ├── prepared_statement_header.js
│ │ │ │ ├── query.js
│ │ │ │ ├── register_slave.js
│ │ │ │ ├── resultset_header.js
│ │ │ │ ├── ssl_request.js
│ │ │ │ └── text_row.js
│ │ │ ├── parsers
│ │ │ │ ├── binary_parser.js
│ │ │ │ ├── parser_cache.js
│ │ │ │ ├── string.js
│ │ │ │ └── text_parser.js
│ │ │ ├── pool.js
│ │ │ ├── pool_cluster.js
│ │ │ ├── pool_config.js
│ │ │ ├── pool_connection.js
│ │ │ ├── results_stream.js
│ │ │ └── server.js
│ │ ├── node_modules
│ │ │ └── iconv-lite
│ │ │ │ ├── .github
│ │ │ │ └── dependabot.yml
│ │ │ │ ├── .idea
│ │ │ │ ├── codeStyles
│ │ │ │ │ ├── Project.xml
│ │ │ │ │ └── codeStyleConfig.xml
│ │ │ │ ├── iconv-lite.iml
│ │ │ │ ├── inspectionProfiles
│ │ │ │ │ └── Project_Default.xml
│ │ │ │ ├── modules.xml
│ │ │ │ └── vcs.xml
│ │ │ │ ├── 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
│ │ │ │ ├── utf32.js
│ │ │ │ └── utf7.js
│ │ │ │ ├── lib
│ │ │ │ ├── bom-handling.js
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ └── streams.js
│ │ │ │ └── package.json
│ │ ├── package.json
│ │ ├── promise.d.ts
│ │ ├── promise.js
│ │ └── typings
│ │ │ └── mysql
│ │ │ ├── LICENSE.txt
│ │ │ ├── index.d.ts
│ │ │ ├── info.txt
│ │ │ └── lib
│ │ │ ├── Connection.d.ts
│ │ │ ├── Pool.d.ts
│ │ │ ├── PoolCluster.d.ts
│ │ │ ├── PoolConnection.d.ts
│ │ │ ├── Server.d.ts
│ │ │ └── protocol
│ │ │ ├── packets
│ │ │ ├── Field.d.ts
│ │ │ ├── FieldPacket.d.ts
│ │ │ ├── OkPacket.d.ts
│ │ │ ├── ResultSetHeader.d.ts
│ │ │ ├── RowDataPacket.d.ts
│ │ │ ├── index.d.ts
│ │ │ └── params
│ │ │ │ ├── ErrorPacketParams.d.ts
│ │ │ │ └── OkPacketParams.d.ts
│ │ │ └── sequences
│ │ │ ├── Prepare.d.ts
│ │ │ ├── Query.d.ts
│ │ │ └── Sequence.d.ts
│ ├── named-placeholders
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── node_modules
│ │ │ └── lru-cache
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── index.d.ts
│ │ │ │ ├── index.js
│ │ │ │ ├── index.mjs
│ │ │ │ └── package.json
│ │ └── package.json
│ ├── negotiator
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── charset.js
│ │ │ ├── encoding.js
│ │ │ ├── language.js
│ │ │ └── mediaType.js
│ │ └── package.json
│ ├── nodemon
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ ├── nodemon.js
│ │ │ └── windows-kill.exe
│ │ ├── 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
│ │ │ │ ├── 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
│ ├── object-inspect
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── example
│ │ │ ├── all.js
│ │ │ ├── circular.js
│ │ │ ├── fn.js
│ │ │ └── inspect.js
│ │ ├── index.js
│ │ ├── package-support.json
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ ├── test-core-js.js
│ │ ├── test
│ │ │ ├── bigint.js
│ │ │ ├── browser
│ │ │ │ └── dom.js
│ │ │ ├── circular.js
│ │ │ ├── deep.js
│ │ │ ├── element.js
│ │ │ ├── err.js
│ │ │ ├── fakes.js
│ │ │ ├── fn.js
│ │ │ ├── has.js
│ │ │ ├── holes.js
│ │ │ ├── indent-option.js
│ │ │ ├── inspect.js
│ │ │ ├── lowbyte.js
│ │ │ ├── number.js
│ │ │ ├── quoteStyle.js
│ │ │ ├── toStringTag.js
│ │ │ ├── undef.js
│ │ │ └── values.js
│ │ └── util.inspect.js
│ ├── on-finished
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── 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
│ ├── qs
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── dist
│ │ │ └── qs.js
│ │ ├── lib
│ │ │ ├── formats.js
│ │ │ ├── index.js
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ ├── range-parser
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── raw-body
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── readdirp
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── semver
│ │ ├── package.json
│ │ ├── range.bnf
│ │ └── semver.js
│ ├── send
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ ├── node_modules
│ │ │ └── ms
│ │ │ │ ├── index.js
│ │ │ │ ├── license.md
│ │ │ │ ├── package.json
│ │ │ │ └── readme.md
│ │ └── package.json
│ ├── seq-queue
│ │ ├── .jshintrc
│ │ ├── .npmignore
│ │ ├── AUTHORS
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── .npmignore
│ │ │ └── seq-queue.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── seq-queue-test.js
│ ├── 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
│ ├── side-channel
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── index.js
│ ├── simple-update-notifier
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── build
│ │ │ ├── index.d.ts
│ │ │ └── index.js
│ │ ├── node_modules
│ │ │ ├── .bin
│ │ │ │ ├── semver
│ │ │ │ ├── semver.cmd
│ │ │ │ └── semver.ps1
│ │ │ └── semver
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── LICENSE
│ │ │ │ ├── README.md
│ │ │ │ ├── bin
│ │ │ │ └── semver.js
│ │ │ │ ├── classes
│ │ │ │ ├── comparator.js
│ │ │ │ ├── index.js
│ │ │ │ ├── range.js
│ │ │ │ └── semver.js
│ │ │ │ ├── functions
│ │ │ │ ├── clean.js
│ │ │ │ ├── cmp.js
│ │ │ │ ├── coerce.js
│ │ │ │ ├── compare-build.js
│ │ │ │ ├── compare-loose.js
│ │ │ │ ├── compare.js
│ │ │ │ ├── diff.js
│ │ │ │ ├── eq.js
│ │ │ │ ├── gt.js
│ │ │ │ ├── gte.js
│ │ │ │ ├── inc.js
│ │ │ │ ├── lt.js
│ │ │ │ ├── lte.js
│ │ │ │ ├── major.js
│ │ │ │ ├── minor.js
│ │ │ │ ├── neq.js
│ │ │ │ ├── parse.js
│ │ │ │ ├── patch.js
│ │ │ │ ├── prerelease.js
│ │ │ │ ├── rcompare.js
│ │ │ │ ├── rsort.js
│ │ │ │ ├── satisfies.js
│ │ │ │ ├── sort.js
│ │ │ │ └── valid.js
│ │ │ │ ├── index.js
│ │ │ │ ├── internal
│ │ │ │ ├── constants.js
│ │ │ │ ├── debug.js
│ │ │ │ ├── identifiers.js
│ │ │ │ └── re.js
│ │ │ │ ├── package.json
│ │ │ │ ├── range.bnf
│ │ │ │ └── ranges
│ │ │ │ ├── gtr.js
│ │ │ │ ├── intersects.js
│ │ │ │ ├── ltr.js
│ │ │ │ ├── max-satisfying.js
│ │ │ │ ├── min-satisfying.js
│ │ │ │ ├── min-version.js
│ │ │ │ ├── outside.js
│ │ │ │ ├── to-comparators.js
│ │ │ │ └── valid.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── borderedText.ts
│ │ │ ├── cache.spec.ts
│ │ │ ├── cache.ts
│ │ │ ├── getDistVersion.spec.ts
│ │ │ ├── getDistVersion.ts
│ │ │ ├── hasNewVersion.spec.ts
│ │ │ ├── hasNewVersion.ts
│ │ │ ├── index.spec.ts
│ │ │ ├── index.ts
│ │ │ ├── isNpmOrYarn.ts
│ │ │ └── types.ts
│ ├── sqlstring
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── SqlString.js
│ │ └── package.json
│ ├── statuses
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── codes.json
│ │ ├── index.js
│ │ └── package.json
│ ├── supports-color
│ │ ├── browser.js
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── to-regex-range
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── toidentifier
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── touch
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ │ └── nodetouch.js
│ │ ├── index.js
│ │ └── package.json
│ ├── type-is
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── undefsafe
│ │ ├── .github
│ │ │ └── workflows
│ │ │ │ └── release.yml
│ │ ├── .jscsrc
│ │ ├── .jshintrc
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── example.js
│ │ ├── lib
│ │ │ └── undefsafe.js
│ │ └── package.json
│ ├── unpipe
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── utils-merge
│ │ ├── .npmignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ └── vary
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
└── web-app
│ ├── index.html
│ └── update.png
├── Lesson4
├── Capture.PNG
├── Capture0.PNG
├── Capture2.PNG
├── Capture3.PNG
├── Capture4.PNG
├── Capture5.PNG
├── app.js
└── statuscodes.js
├── Lesson5-6
├── Capture.PNG
├── Capture3.PNG
├── app.js
├── my-app
│ ├── .gitignore
│ ├── README.md
│ ├── package-lock.json
│ ├── package.json
│ ├── public
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── manifest.json
│ │ └── robots.txt
│ └── src
│ │ ├── App.css
│ │ ├── App.js
│ │ ├── App.test.js
│ │ ├── index.css
│ │ ├── index.js
│ │ ├── logo.svg
│ │ ├── reportWebVitals.js
│ │ └── setupTests.js
├── node_modules
│ ├── .bin
│ │ ├── mime
│ │ ├── mime.cmd
│ │ └── mime.ps1
│ ├── .package-lock.json
│ ├── accepts
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── array-flatten
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── array-flatten.js
│ │ └── package.json
│ ├── body-parser
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── read.js
│ │ │ └── types
│ │ │ │ ├── json.js
│ │ │ │ ├── raw.js
│ │ │ │ ├── text.js
│ │ │ │ └── urlencoded.js
│ │ └── package.json
│ ├── bytes
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ └── package.json
│ ├── call-bind
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── callBound.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── callBound.js
│ │ │ └── index.js
│ ├── 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
│ │ ├── SECURITY.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── depd
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ └── browser
│ │ │ │ └── index.js
│ │ └── package.json
│ ├── destroy
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── ee-first
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── encodeurl
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── finalhandler
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.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
│ ├── function-bind
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .jscs.json
│ │ ├── .npmignore
│ │ ├── .travis.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── implementation.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── .eslintrc
│ │ │ └── index.js
│ ├── get-intrinsic
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── GetIntrinsic.js
│ ├── has-symbols
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── shams.js
│ │ └── test
│ │ │ ├── index.js
│ │ │ ├── shams
│ │ │ ├── core-js.js
│ │ │ └── get-own-property-symbols.js
│ │ │ └── tests.js
│ ├── has
│ │ ├── LICENSE-MIT
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src
│ │ │ └── index.js
│ │ └── test
│ │ │ └── index.js
│ ├── 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
│ ├── inherits
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── inherits.js
│ │ ├── inherits_browser.js
│ │ └── package.json
│ ├── ipaddr.js
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── ipaddr.min.js
│ │ ├── lib
│ │ │ ├── ipaddr.js
│ │ │ └── ipaddr.js.d.ts
│ │ └── package.json
│ ├── 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
│ ├── 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
│ ├── object-inspect
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── example
│ │ │ ├── all.js
│ │ │ ├── circular.js
│ │ │ ├── fn.js
│ │ │ └── inspect.js
│ │ ├── index.js
│ │ ├── package-support.json
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ ├── test-core-js.js
│ │ ├── test
│ │ │ ├── bigint.js
│ │ │ ├── browser
│ │ │ │ └── dom.js
│ │ │ ├── circular.js
│ │ │ ├── deep.js
│ │ │ ├── element.js
│ │ │ ├── err.js
│ │ │ ├── fakes.js
│ │ │ ├── fn.js
│ │ │ ├── has.js
│ │ │ ├── holes.js
│ │ │ ├── indent-option.js
│ │ │ ├── inspect.js
│ │ │ ├── lowbyte.js
│ │ │ ├── number.js
│ │ │ ├── quoteStyle.js
│ │ │ ├── toStringTag.js
│ │ │ ├── undef.js
│ │ │ └── values.js
│ │ └── util.inspect.js
│ ├── on-finished
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── parseurl
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── path-to-regexp
│ │ ├── History.md
│ │ ├── LICENSE
│ │ ├── Readme.md
│ │ ├── index.js
│ │ └── package.json
│ ├── proxy-addr
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── qs
│ │ ├── .editorconfig
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── dist
│ │ │ └── qs.js
│ │ ├── lib
│ │ │ ├── formats.js
│ │ │ ├── index.js
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ │ ├── package.json
│ │ └── test
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ ├── range-parser
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── raw-body
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.md
│ │ ├── index.d.ts
│ │ ├── index.js
│ │ └── package.json
│ ├── 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
│ ├── send
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── SECURITY.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
│ ├── side-channel
│ │ ├── .eslintignore
│ │ ├── .eslintrc
│ │ ├── .github
│ │ │ └── FUNDING.yml
│ │ ├── .nycrc
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── test
│ │ │ └── index.js
│ ├── statuses
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── codes.json
│ │ ├── index.js
│ │ └── package.json
│ ├── toidentifier
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── type-is
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── unpipe
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ ├── utils-merge
│ │ ├── .npmignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
│ └── vary
│ │ ├── HISTORY.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── index.js
│ │ └── package.json
├── npm vs npx and how to create an react app (Time 0_04_25;21).png
├── package-lock.json
└── package.json
├── Lesson7-8
├── app.js
├── files
│ └── text1.txt
└── text1.txt
├── Lesson9
├── app.js
├── dynamic vs static web pages.png
└── index.html
├── README.md
├── lesson2
└── app.js
└── lesson3
├── app.js
└── app2.js
/Lesson1/node js.odp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson1/node js.odp
--------------------------------------------------------------------------------
/Lesson10/view/404.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Coder Shiyar
8 |
9 |
10 | error 404
11 |
12 |
--------------------------------------------------------------------------------
/Lesson10/view/contact.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Coder Shiyar
8 |
9 |
10 | contact page
11 |
12 |
--------------------------------------------------------------------------------
/Lesson10/view/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Coder Shiyar
8 |
9 |
10 | home page
11 |
12 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/.bin/mime:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../mime/cli.js" "$@"
10 | else
11 | exec node "$basedir/../mime/cli.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/.bin/mime.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\mime\cli.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/call-bind/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/call-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "id-length": 0,
9 | "new-cap": [2, {
10 | "capIsNewExceptions": [
11 | "GetIntrinsic",
12 | ],
13 | }],
14 | "no-magic-numbers": 0,
15 | "operator-linebreak": [2, "before"],
16 | },
17 | }
18 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/call-bind/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/call-bind/README.md:
--------------------------------------------------------------------------------
1 | # call-bind
2 | Robustly `.call.bind()` a function.
3 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/cookie-signature/.npmignore:
--------------------------------------------------------------------------------
1 | support
2 | test
3 | examples
4 | *.sock
5 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/debug/.coveralls.yml:
--------------------------------------------------------------------------------
1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve
2 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/function-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "indent": [2, 4],
9 | "max-nested-callbacks": [2, 3],
10 | "max-params": [2, 3],
11 | "max-statements": [2, 20],
12 | "no-new-func": [1],
13 | "strict": [0]
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/function-bind/.npmignore:
--------------------------------------------------------------------------------
1 | # gitignore
2 | .DS_Store
3 | .monitor
4 | .*.swp
5 | .nodemonignore
6 | releases
7 | *.log
8 | *.err
9 | fleet.json
10 | public/browserify
11 | bin/*.json
12 | .bin
13 | build
14 | compile
15 | .lock-wscript
16 | coverage
17 | node_modules
18 |
19 | # Only apps should have lockfiles
20 | npm-shrinkwrap.json
21 | package-lock.json
22 | yarn.lock
23 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/function-bind/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var implementation = require('./implementation');
4 |
5 | module.exports = Function.prototype.bind || implementation;
6 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/function-bind/test/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "rules": {
3 | "array-bracket-newline": 0,
4 | "array-element-newline": 0,
5 | "max-statements-per-line": [2, { "max": 2 }],
6 | "no-invalid-this": 0,
7 | "no-magic-numbers": 0,
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/get-intrinsic/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/has-symbols/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-statements-per-line": [2, { "max": 2 }],
8 | "no-magic-numbers": 0,
9 | "multiline-comment-style": 0,
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/has-symbols/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/has/README.md:
--------------------------------------------------------------------------------
1 | # has
2 |
3 | > Object.prototype.hasOwnProperty.call shortcut
4 |
5 | ## Installation
6 |
7 | ```sh
8 | npm install --save has
9 | ```
10 |
11 | ## Usage
12 |
13 | ```js
14 | var has = require('has');
15 |
16 | has({}, 'hasOwnProperty'); // false
17 | has(Object.prototype, 'hasOwnProperty'); // true
18 | ```
19 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/has/src/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var bind = require('function-bind');
4 |
5 | module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
6 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/has/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var test = require('tape');
4 | var has = require('../');
5 |
6 | test('has', function (t) {
7 | t.equal(has({}, 'hasOwnProperty'), false, 'object literal does not have own property "hasOwnProperty"');
8 | t.equal(has(Object.prototype, 'hasOwnProperty'), true, 'Object.prototype has own property "hasOwnProperty"');
9 | t.end();
10 | });
11 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | /* istanbul ignore next */
4 | if (typeof util.inherits !== 'function') throw '';
5 | module.exports = util.inherits;
6 | } catch (e) {
7 | /* istanbul ignore next */
8 | module.exports = require('./inherits_browser.js');
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/mime-db/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * mime-db
3 | * Copyright(c) 2014 Jonathan Ong
4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson
5 | * MIT Licensed
6 | */
7 |
8 | /**
9 | * Module exports.
10 | */
11 |
12 | module.exports = require('./db.json')
13 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/mime/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson11-17/node_modules/mime/.npmignore
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "instrumentation": false,
5 | "sourceMap": false,
6 | "reporter": ["text-summary", "text", "html", "json"],
7 | "exclude": [
8 | "coverage",
9 | "example",
10 | "test",
11 | "test-core-js.js"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/example/circular.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = { a: 1, b: [3, 4] };
5 | obj.c = obj;
6 | console.log(inspect(obj));
7 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/example/fn.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = [1, 2, function f(n) { return n + 5; }, 4];
5 | console.log(inspect(obj));
6 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/example/inspect.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* eslint-env browser */
4 | var inspect = require('../');
5 |
6 | var d = document.createElement('div');
7 | d.setAttribute('id', 'beep');
8 | d.innerHTML = 'woooiiiii';
9 |
10 | console.log(inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }]));
11 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/test/holes.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var xs = ['a', 'b'];
5 | xs[5] = 'f';
6 | xs[7] = 'j';
7 | xs[8] = 'k';
8 |
9 | test('holes', function (t) {
10 | t.plan(1);
11 | t.equal(
12 | inspect(xs),
13 | "[ 'a', 'b', , , , 'f', , 'j', 'k' ]"
14 | );
15 | });
16 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/test/lowbyte.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { x: 'a\r\nb', y: '\x05! \x1f \x12' };
5 |
6 | test('interpolate low bytes', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | "{ x: 'a\\r\\nb', y: '\\x05! \\x1F \\x12' }"
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/test/undef.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { a: 1, b: [3, 4, undefined, null], c: undefined, d: null };
5 |
6 | test('undef and null', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | '{ a: 1, b: [ 3, 4, undefined, null ], c: undefined, d: null }'
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/object-inspect/util.inspect.js:
--------------------------------------------------------------------------------
1 | module.exports = require('util').inspect;
2 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/qs/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "dist"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/setprototypeof/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function setPrototypeOf(o: any, proto: object | null): any;
2 | export = setPrototypeOf;
3 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/side-channel/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/side-channel/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-lines-per-function": 0,
8 | "max-params": 0,
9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }],
10 | },
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/side-channel/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/side-channel/README.md:
--------------------------------------------------------------------------------
1 | # side-channel
2 | Store information about any JS value in a side channel. Uses WeakMap if available.
3 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/toidentifier/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.1 / 2021-11-14
2 | ==================
3 |
4 | * pref: enable strict mode
5 |
6 | 1.0.0 / 2018-07-09
7 | ==================
8 |
9 | * Initial release
10 |
--------------------------------------------------------------------------------
/Lesson11-17/node_modules/unpipe/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.0 / 2015-06-14
2 | ==================
3 |
4 | * Initial release
5 |
--------------------------------------------------------------------------------
/Lesson11-17/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 |
--------------------------------------------------------------------------------
/Lesson11-17/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "app",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "app.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "body-parser": "^1.20.1",
13 | "express": "^4.18.2"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Lesson11-17/public/contact.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Document
8 |
9 |
10 | contact page
11 |
12 |
--------------------------------------------------------------------------------
/Lesson11-17/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Document
8 |
9 |
10 | مرحبا من تطبيقي"
11 |
12 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/.bin/nodemon:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nodemon/bin/nodemon.js" "$@"
10 | else
11 | exec node "$basedir/../nodemon/bin/nodemon.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/.bin/nodetouch:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../touch/bin/nodetouch.js" "$@"
10 | else
11 | exec node "$basedir/../touch/bin/nodetouch.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/.bin/nopt:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nopt/bin/nopt.js" "$@"
10 | else
11 | exec node "$basedir/../nopt/bin/nopt.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/.bin/nopt.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\nopt\bin\nopt.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../semver/bin/semver" "$@"
10 | else
11 | exec node "$basedir/../semver/bin/semver" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/.bin/semver.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver" %*
18 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/balanced-match/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | tidelift: "npm/balanced-match"
2 | patreon: juliangruber
3 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/binary-extensions/binary-extensions.json.d.ts:
--------------------------------------------------------------------------------
1 | declare const binaryExtensionsJson: readonly string[];
2 |
3 | export = binaryExtensionsJson;
4 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/binary-extensions/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./binary-extensions.json');
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/concat-map/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.4
4 | - 0.6
5 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/core-util-is/README.md:
--------------------------------------------------------------------------------
1 | # core-util-is
2 |
3 | The `util.is*` functions introduced in Node v0.12.
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | /* istanbul ignore next */
4 | if (typeof util.inherits !== 'function') throw '';
5 | module.exports = util.inherits;
6 | } catch (e) {
7 | /* istanbul ignore next */
8 | module.exports = require('./inherits_browser.js');
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/isarray/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/isarray/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.8"
4 | - "0.10"
5 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/isarray/Makefile:
--------------------------------------------------------------------------------
1 |
2 | test:
3 | @node_modules/.bin/tape test.js
4 |
5 | .PHONY: test
6 |
7 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/isarray/index.js:
--------------------------------------------------------------------------------
1 | var toString = {}.toString;
2 |
3 | module.exports = Array.isArray || function (arr) {
4 | return toString.call(arr) == '[object Array]';
5 | };
6 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/mysql/lib/protocol/PacketHeader.js:
--------------------------------------------------------------------------------
1 | module.exports = PacketHeader;
2 | function PacketHeader(length, number) {
3 | this.length = length;
4 | this.number = number;
5 | }
6 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/mysql/lib/protocol/ResultSet.js:
--------------------------------------------------------------------------------
1 | module.exports = ResultSet;
2 | function ResultSet(resultSetHeaderPacket) {
3 | this.resultSetHeaderPacket = resultSetHeaderPacket;
4 | this.fieldPackets = [];
5 | this.eofPackets = [];
6 | this.rows = [];
7 | }
8 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/mysql/lib/protocol/SqlString.js:
--------------------------------------------------------------------------------
1 | module.exports = require('sqlstring');
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/mysql/lib/protocol/packets/ComPingPacket.js:
--------------------------------------------------------------------------------
1 | module.exports = ComPingPacket;
2 | function ComPingPacket() {
3 | this.command = 0x0e;
4 | }
5 |
6 | ComPingPacket.prototype.write = function(writer) {
7 | writer.writeUnsignedNumber(1, this.command);
8 | };
9 |
10 | ComPingPacket.prototype.parse = function(parser) {
11 | this.command = parser.parseUnsignedNumber(1);
12 | };
13 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/mysql/lib/protocol/packets/ComQuitPacket.js:
--------------------------------------------------------------------------------
1 | module.exports = ComQuitPacket;
2 | function ComQuitPacket() {
3 | this.command = 0x01;
4 | }
5 |
6 | ComQuitPacket.prototype.parse = function parse(parser) {
7 | this.command = parser.parseUnsignedNumber(1);
8 | };
9 |
10 | ComQuitPacket.prototype.write = function write(writer) {
11 | writer.writeUnsignedNumber(1, this.command);
12 | };
13 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/mysql/lib/protocol/packets/EmptyPacket.js:
--------------------------------------------------------------------------------
1 | module.exports = EmptyPacket;
2 | function EmptyPacket() {
3 | }
4 |
5 | EmptyPacket.prototype.parse = function parse() {
6 | };
7 |
8 | EmptyPacket.prototype.write = function write() {
9 | };
10 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/mysql/lib/protocol/sequences/index.js:
--------------------------------------------------------------------------------
1 | exports.ChangeUser = require('./ChangeUser');
2 | exports.Handshake = require('./Handshake');
3 | exports.Ping = require('./Ping');
4 | exports.Query = require('./Query');
5 | exports.Quit = require('./Quit');
6 | exports.Sequence = require('./Sequence');
7 | exports.Statistics = require('./Statistics');
8 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/nodemon/bin/windows-kill.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson19/node_modules/nodemon/bin/windows-kill.exe
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/nodemon/doc/cli/usage.txt:
--------------------------------------------------------------------------------
1 | Usage: nodemon [nodemon options] [script.js] [args]
2 |
3 | See "nodemon --help" for more.
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/nodemon/lib/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./nodemon');
--------------------------------------------------------------------------------
/Lesson19/node_modules/nodemon/lib/monitor/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | run: require('./run'),
3 | watch: require('./watch').watch,
4 | };
5 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/nopt/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson19/node_modules/nopt/.npmignore
--------------------------------------------------------------------------------
/Lesson19/node_modules/picomatch/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = require('./lib/picomatch');
4 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/duplex-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/_stream_duplex.js');
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/duplex.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').Duplex
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/lib/internal/streams/stream-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('events').EventEmitter;
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/lib/internal/streams/stream.js:
--------------------------------------------------------------------------------
1 | module.exports = require('stream');
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/passthrough.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').PassThrough
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/transform.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').Transform
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/writable-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/_stream_writable.js');
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/readable-stream/writable.js:
--------------------------------------------------------------------------------
1 | var Stream = require("stream")
2 | var Writable = require("./lib/_stream_writable.js")
3 |
4 | if (process.env.READABLE_STREAM === 'disable') {
5 | module.exports = Stream && Stream.Writable || Writable
6 | } else {
7 | module.exports = Writable
8 | }
9 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/classes/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | SemVer: require('./semver.js'),
3 | Range: require('./range.js'),
4 | Comparator: require('./comparator.js')
5 | }
6 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/clean.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const clean = (version, options) => {
3 | const s = parse(version.trim().replace(/^[=v]+/, ''), options)
4 | return s ? s.version : null
5 | }
6 | module.exports = clean
7 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/compare-build.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compareBuild = (a, b, loose) => {
3 | const versionA = new SemVer(a, loose)
4 | const versionB = new SemVer(b, loose)
5 | return versionA.compare(versionB) || versionA.compareBuild(versionB)
6 | }
7 | module.exports = compareBuild
8 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/compare-loose.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const compareLoose = (a, b) => compare(a, b, true)
3 | module.exports = compareLoose
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/compare.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compare = (a, b, loose) =>
3 | new SemVer(a, loose).compare(new SemVer(b, loose))
4 |
5 | module.exports = compare
6 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/eq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const eq = (a, b, loose) => compare(a, b, loose) === 0
3 | module.exports = eq
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/gt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gt = (a, b, loose) => compare(a, b, loose) > 0
3 | module.exports = gt
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/gte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gte = (a, b, loose) => compare(a, b, loose) >= 0
3 | module.exports = gte
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/lt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lt = (a, b, loose) => compare(a, b, loose) < 0
3 | module.exports = lt
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/lte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lte = (a, b, loose) => compare(a, b, loose) <= 0
3 | module.exports = lte
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/major.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const major = (a, loose) => new SemVer(a, loose).major
3 | module.exports = major
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/minor.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const minor = (a, loose) => new SemVer(a, loose).minor
3 | module.exports = minor
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/neq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const neq = (a, b, loose) => compare(a, b, loose) !== 0
3 | module.exports = neq
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/patch.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const patch = (a, loose) => new SemVer(a, loose).patch
3 | module.exports = patch
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/prerelease.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const prerelease = (version, options) => {
3 | const parsed = parse(version, options)
4 | return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
5 | }
6 | module.exports = prerelease
7 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/rcompare.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const rcompare = (a, b, loose) => compare(b, a, loose)
3 | module.exports = rcompare
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/rsort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
3 | module.exports = rsort
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/satisfies.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const satisfies = (version, range, options) => {
3 | try {
4 | range = new Range(range, options)
5 | } catch (er) {
6 | return false
7 | }
8 | return range.test(version)
9 | }
10 | module.exports = satisfies
11 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/sort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
3 | module.exports = sort
4 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/functions/valid.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const valid = (version, options) => {
3 | const v = parse(version, options)
4 | return v ? v.version : null
5 | }
6 | module.exports = valid
7 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/internal/debug.js:
--------------------------------------------------------------------------------
1 | const debug = (
2 | typeof process === 'object' &&
3 | process.env &&
4 | process.env.NODE_DEBUG &&
5 | /\bsemver\b/i.test(process.env.NODE_DEBUG)
6 | ) ? (...args) => console.error('SEMVER', ...args)
7 | : () => {}
8 |
9 | module.exports = debug
10 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/ranges/gtr.js:
--------------------------------------------------------------------------------
1 | // Determine if version is greater than all the versions possible in the range.
2 | const outside = require('./outside')
3 | const gtr = (version, range, options) => outside(version, range, '>', options)
4 | module.exports = gtr
5 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/ranges/intersects.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const intersects = (r1, r2, options) => {
3 | r1 = new Range(r1, options)
4 | r2 = new Range(r2, options)
5 | return r1.intersects(r2)
6 | }
7 | module.exports = intersects
8 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/ranges/ltr.js:
--------------------------------------------------------------------------------
1 | const outside = require('./outside')
2 | // Determine if version is less than all the versions possible in the range
3 | const ltr = (version, range, options) => outside(version, range, '<', options)
4 | module.exports = ltr
5 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/node_modules/semver/ranges/to-comparators.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 |
3 | // Mostly just for testing and legacy API reasons
4 | const toComparators = (range, options) =>
5 | new Range(range, options).set
6 | .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))
7 |
8 | module.exports = toComparators
9 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/simple-update-notifier/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface IUpdate {
2 | pkg: { name: string; version: string };
3 | updateCheckInterval?: number;
4 | shouldNotifyInNpmScript?: boolean;
5 | distTag?: string;
6 | alwaysRun?: boolean;
7 | debug?: boolean;
8 | }
9 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/sqlstring/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/SqlString');
2 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/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 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/util-deprecate/History.md:
--------------------------------------------------------------------------------
1 |
2 | 1.0.2 / 2015-10-07
3 | ==================
4 |
5 | * use try/catch when checking `localStorage` (#3, @kumavis)
6 |
7 | 1.0.1 / 2014-11-25
8 | ==================
9 |
10 | * browser: use `console.warn()` for deprecation calls
11 | * browser: more jsdocs
12 |
13 | 1.0.0 / 2014-04-30
14 | ==================
15 |
16 | * initial commit
17 |
--------------------------------------------------------------------------------
/Lesson19/node_modules/util-deprecate/node.js:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | * For Node.js, simply re-export the core `util.deprecate` function.
4 | */
5 |
6 | module.exports = require('util').deprecate;
7 |
--------------------------------------------------------------------------------
/Lesson19/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "3",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "app.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "mysql": "^2.18.1",
13 | "nodemon": "^2.0.22"
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/.bin/nodemon:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nodemon/bin/nodemon.js" "$@"
10 | else
11 | exec node "$basedir/../nodemon/bin/nodemon.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/.bin/nodetouch:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../touch/bin/nodetouch.js" "$@"
10 | else
11 | exec node "$basedir/../touch/bin/nodetouch.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/.bin/nopt:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nopt/bin/nopt.js" "$@"
10 | else
11 | exec node "$basedir/../nopt/bin/nopt.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/.bin/nopt.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\nopt\bin\nopt.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../semver/bin/semver" "$@"
10 | else
11 | exec node "$basedir/../semver/bin/semver" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/.bin/semver.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver" %*
18 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/balanced-match/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | tidelift: "npm/balanced-match"
2 | patreon: juliangruber
3 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/binary-extensions/binary-extensions.json.d.ts:
--------------------------------------------------------------------------------
1 | declare const binaryExtensionsJson: readonly string[];
2 |
3 | export = binaryExtensionsJson;
4 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/binary-extensions/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./binary-extensions.json');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/concat-map/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.4
4 | - 0.6
5 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/core-util-is/README.md:
--------------------------------------------------------------------------------
1 | # core-util-is
2 |
3 | The `util.is*` functions introduced in Node v0.12.
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/generate-function/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.10"
4 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/iconv-lite/.idea/codeStyles/codeStyleConfig.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/iconv-lite/.idea/inspectionProfiles/Project_Default.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/iconv-lite/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/iconv-lite/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | /* istanbul ignore next */
4 | if (typeof util.inherits !== 'function') throw '';
5 | module.exports = util.inherits;
6 | } catch (e) {
7 | /* istanbul ignore next */
8 | module.exports = require('./inherits_browser.js');
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/is-property/.npmignore:
--------------------------------------------------------------------------------
1 | lib-cov
2 | *.seed
3 | *.log
4 | *.csv
5 | *.dat
6 | *.out
7 | *.pid
8 | *.gz
9 |
10 | pids
11 | logs
12 | results
13 |
14 | npm-debug.log
15 | node_modules/*
16 | *.DS_Store
17 | test/*
--------------------------------------------------------------------------------
/Lesson20/node_modules/isarray/.npmignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/isarray/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.8"
4 | - "0.10"
5 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/isarray/Makefile:
--------------------------------------------------------------------------------
1 |
2 | test:
3 | @node_modules/.bin/tape test.js
4 |
5 | .PHONY: test
6 |
7 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/isarray/index.js:
--------------------------------------------------------------------------------
1 | var toString = {}.toString;
2 |
3 | module.exports = Array.isArray || function (arr) {
4 | return toString.call(arr) == '[object Array]';
5 | };
6 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/long/umd/index.d.ts:
--------------------------------------------------------------------------------
1 | import Long from "../index.js";
2 | export = Long;
3 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/long/umd/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "commonjs"
3 | }
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/lru-cache/dist/cjs/index-cjs.d.ts:
--------------------------------------------------------------------------------
1 | import LRUCache from './index.js';
2 | declare const _default: typeof LRUCache & {
3 | default: typeof LRUCache;
4 | LRUCache: typeof LRUCache;
5 | };
6 | export = _default;
7 | //# sourceMappingURL=index-cjs.d.ts.map
--------------------------------------------------------------------------------
/Lesson20/node_modules/lru-cache/dist/cjs/index-cjs.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index-cjs.d.ts","sourceRoot":"","sources":["../../src/index-cjs.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAA;;;;;AAEjC,kBAAiE"}
--------------------------------------------------------------------------------
/Lesson20/node_modules/lru-cache/dist/cjs/index-cjs.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index-cjs.js","sourceRoot":"","sources":["../../src/index-cjs.ts"],"names":[],"mappings":";;;;AAAA,0DAAiC;AAEjC,iBAAS,MAAM,CAAC,MAAM,CAAC,kBAAQ,EAAE,EAAE,OAAO,EAAE,kBAAQ,EAAE,QAAQ,EAAR,kBAAQ,EAAE,CAAC,CAAA","sourcesContent":["import LRUCache from './index.js'\n\nexport = Object.assign(LRUCache, { default: LRUCache, LRUCache })\n"]}
--------------------------------------------------------------------------------
/Lesson20/node_modules/lru-cache/dist/cjs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "commonjs"
3 | }
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/lru-cache/dist/mjs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "module"
3 | }
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql/lib/protocol/PacketHeader.js:
--------------------------------------------------------------------------------
1 | module.exports = PacketHeader;
2 | function PacketHeader(length, number) {
3 | this.length = length;
4 | this.number = number;
5 | }
6 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql/lib/protocol/ResultSet.js:
--------------------------------------------------------------------------------
1 | module.exports = ResultSet;
2 | function ResultSet(resultSetHeaderPacket) {
3 | this.resultSetHeaderPacket = resultSetHeaderPacket;
4 | this.fieldPackets = [];
5 | this.eofPackets = [];
6 | this.rows = [];
7 | }
8 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql/lib/protocol/SqlString.js:
--------------------------------------------------------------------------------
1 | module.exports = require('sqlstring');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql/lib/protocol/packets/ComPingPacket.js:
--------------------------------------------------------------------------------
1 | module.exports = ComPingPacket;
2 | function ComPingPacket() {
3 | this.command = 0x0e;
4 | }
5 |
6 | ComPingPacket.prototype.write = function(writer) {
7 | writer.writeUnsignedNumber(1, this.command);
8 | };
9 |
10 | ComPingPacket.prototype.parse = function(parser) {
11 | this.command = parser.parseUnsignedNumber(1);
12 | };
13 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql/lib/protocol/packets/ComQuitPacket.js:
--------------------------------------------------------------------------------
1 | module.exports = ComQuitPacket;
2 | function ComQuitPacket() {
3 | this.command = 0x01;
4 | }
5 |
6 | ComQuitPacket.prototype.parse = function parse(parser) {
7 | this.command = parser.parseUnsignedNumber(1);
8 | };
9 |
10 | ComQuitPacket.prototype.write = function write(writer) {
11 | writer.writeUnsignedNumber(1, this.command);
12 | };
13 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql/lib/protocol/packets/EmptyPacket.js:
--------------------------------------------------------------------------------
1 | module.exports = EmptyPacket;
2 | function EmptyPacket() {
3 | }
4 |
5 | EmptyPacket.prototype.parse = function parse() {
6 | };
7 |
8 | EmptyPacket.prototype.write = function write() {
9 | };
10 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql/lib/protocol/sequences/index.js:
--------------------------------------------------------------------------------
1 | exports.ChangeUser = require('./ChangeUser');
2 | exports.Handshake = require('./Handshake');
3 | exports.Ping = require('./Ping');
4 | exports.Query = require('./Query');
5 | exports.Quit = require('./Quit');
6 | exports.Sequence = require('./Sequence');
7 | exports.Statistics = require('./Statistics');
8 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/lib/auth_plugins/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | caching_sha2_password: require('./caching_sha2_password'),
5 | mysql_clear_password: require('./mysql_clear_password'),
6 | mysql_native_password: require('./mysql_native_password'),
7 | sha256_password: require('./sha256_password'),
8 | };
9 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/lib/constants/cursor.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | NO_CURSOR: 0,
5 | READ_ONLY: 1,
6 | FOR_UPDATE: 2,
7 | SCROLLABLE: 3
8 | };
9 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/lib/constants/session_track.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | exports.SYSTEM_VARIABLES = 0;
4 | exports.SCHEMA = 1;
5 | exports.STATE_CHANGE = 2;
6 | exports.STATE_GTIDS = 3;
7 | exports.TRANSACTION_CHARACTERISTICS = 4;
8 | exports.TRANSACTION_STATE = 5;
9 |
10 | exports.FIRST_KEY = exports.SYSTEM_VARIABLES;
11 | exports.LAST_KEY = exports.TRANSACTION_STATE;
12 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/node_modules/sqlstring/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/SqlString');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/info.txt:
--------------------------------------------------------------------------------
1 | temporary workaround, see https://github.com/sidorares/node-mysql2/issues/1210
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/lib/PoolConnection.d.ts:
--------------------------------------------------------------------------------
1 |
2 | import Connection = require('./Connection');
3 |
4 | declare class PoolConnection extends Connection {
5 | connection: Connection;
6 | release(): void;
7 | }
8 |
9 | export = PoolConnection;
10 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/lib/Server.d.ts:
--------------------------------------------------------------------------------
1 | import { EventEmitter } from 'events';
2 | import Connection = require('./Connection');
3 |
4 | declare namespace Server {}
5 |
6 | declare class Server extends EventEmitter {
7 | connections: Array;
8 |
9 | listen(port: number): Server
10 | close(callback: (error: Error, count: number) => any): void
11 | }
12 |
13 | export = Server;
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/lib/protocol/packets/Field.d.ts:
--------------------------------------------------------------------------------
1 |
2 | declare interface Field {
3 | constructor: {
4 | name: 'Field'
5 | };
6 | db: string;
7 | table: string;
8 | name: string;
9 | type: string;
10 | length: number;
11 | string: Function;
12 | buffer: Function;
13 | geometry: Function;
14 | }
15 |
16 | export = Field;
17 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/lib/protocol/packets/RowDataPacket.d.ts:
--------------------------------------------------------------------------------
1 |
2 | declare interface RowDataPacket {
3 | constructor: {
4 | name: 'RowDataPacket'
5 | };
6 | [column: string]: any;
7 | [column: number]: any;
8 | }
9 |
10 | export = RowDataPacket;
11 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/lib/protocol/packets/params/ErrorPacketParams.d.ts:
--------------------------------------------------------------------------------
1 | declare interface ErrorPacketParams {
2 | message?: string;
3 | code?: number | string;
4 | }
5 |
6 | export = ErrorPacketParams;
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/lib/protocol/packets/params/OkPacketParams.d.ts:
--------------------------------------------------------------------------------
1 | declare interface OkPacketParams {
2 | affectedRows?: number;
3 | insertId?: number;
4 | serverStatus?: number;
5 | warningCount?: number;
6 | message?: string;
7 | }
8 |
9 | export = OkPacketParams;
--------------------------------------------------------------------------------
/Lesson20/node_modules/mysql2/typings/mysql/lib/protocol/sequences/Sequence.d.ts:
--------------------------------------------------------------------------------
1 |
2 | import {EventEmitter} from 'events';
3 |
4 | declare class Sequence extends EventEmitter { }
5 | export = Sequence;
6 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/nodemon/bin/windows-kill.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson20/node_modules/nodemon/bin/windows-kill.exe
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/nodemon/doc/cli/usage.txt:
--------------------------------------------------------------------------------
1 | Usage: nodemon [nodemon options] [script.js] [args]
2 |
3 | See "nodemon --help" for more.
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/nodemon/lib/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./nodemon');
--------------------------------------------------------------------------------
/Lesson20/node_modules/nodemon/lib/monitor/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | run: require('./run'),
3 | watch: require('./watch').watch,
4 | };
5 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/nopt/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson20/node_modules/nopt/.npmignore
--------------------------------------------------------------------------------
/Lesson20/node_modules/picomatch/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = require('./lib/picomatch');
4 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/duplex-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/_stream_duplex.js');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/duplex.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').Duplex
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/lib/internal/streams/stream-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('events').EventEmitter;
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/lib/internal/streams/stream.js:
--------------------------------------------------------------------------------
1 | module.exports = require('stream');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/passthrough.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').PassThrough
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/transform.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./readable').Transform
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/writable-browser.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/_stream_writable.js');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/readable-stream/writable.js:
--------------------------------------------------------------------------------
1 | var Stream = require("stream")
2 | var Writable = require("./lib/_stream_writable.js")
3 |
4 | if (process.env.READABLE_STREAM === 'disable') {
5 | module.exports = Stream && Stream.Writable || Writable
6 | } else {
7 | module.exports = Writable
8 | }
9 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/seq-queue/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "predef": [
3 | "describe",
4 | "it",
5 | "before",
6 | "after",
7 | "window",
8 | "__resources__"
9 | ],
10 | "es5": true,
11 | "node": true,
12 | "eqeqeq": true,
13 | "undef": true,
14 | "curly": true,
15 | "bitwise": true,
16 | "immed": false,
17 | "newcap": true,
18 | "nonew": true
19 | }
20 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/seq-queue/.npmignore:
--------------------------------------------------------------------------------
1 | .project
2 | node_modules/
3 | lib/doc/
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/seq-queue/AUTHORS:
--------------------------------------------------------------------------------
1 | * Yongchang Zhou
--------------------------------------------------------------------------------
/Lesson20/node_modules/seq-queue/Makefile:
--------------------------------------------------------------------------------
1 | TESTS = test/*.js
2 | REPORTER = spec
3 | TIMEOUT = 5000
4 |
5 | test:
6 | @./node_modules/.bin/mocha \
7 | --reporter $(REPORTER) --timeout $(TIMEOUT) $(TESTS)
8 |
9 | .PHONY: test
--------------------------------------------------------------------------------
/Lesson20/node_modules/seq-queue/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/seq-queue');
--------------------------------------------------------------------------------
/Lesson20/node_modules/seq-queue/lib/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson20/node_modules/seq-queue/lib/.npmignore
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/classes/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | SemVer: require('./semver.js'),
3 | Range: require('./range.js'),
4 | Comparator: require('./comparator.js')
5 | }
6 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/clean.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const clean = (version, options) => {
3 | const s = parse(version.trim().replace(/^[=v]+/, ''), options)
4 | return s ? s.version : null
5 | }
6 | module.exports = clean
7 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/compare-build.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compareBuild = (a, b, loose) => {
3 | const versionA = new SemVer(a, loose)
4 | const versionB = new SemVer(b, loose)
5 | return versionA.compare(versionB) || versionA.compareBuild(versionB)
6 | }
7 | module.exports = compareBuild
8 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/compare-loose.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const compareLoose = (a, b) => compare(a, b, true)
3 | module.exports = compareLoose
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/compare.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compare = (a, b, loose) =>
3 | new SemVer(a, loose).compare(new SemVer(b, loose))
4 |
5 | module.exports = compare
6 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/eq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const eq = (a, b, loose) => compare(a, b, loose) === 0
3 | module.exports = eq
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/gt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gt = (a, b, loose) => compare(a, b, loose) > 0
3 | module.exports = gt
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/gte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gte = (a, b, loose) => compare(a, b, loose) >= 0
3 | module.exports = gte
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/lt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lt = (a, b, loose) => compare(a, b, loose) < 0
3 | module.exports = lt
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/lte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lte = (a, b, loose) => compare(a, b, loose) <= 0
3 | module.exports = lte
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/major.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const major = (a, loose) => new SemVer(a, loose).major
3 | module.exports = major
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/minor.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const minor = (a, loose) => new SemVer(a, loose).minor
3 | module.exports = minor
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/neq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const neq = (a, b, loose) => compare(a, b, loose) !== 0
3 | module.exports = neq
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/patch.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const patch = (a, loose) => new SemVer(a, loose).patch
3 | module.exports = patch
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/prerelease.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const prerelease = (version, options) => {
3 | const parsed = parse(version, options)
4 | return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
5 | }
6 | module.exports = prerelease
7 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/rcompare.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const rcompare = (a, b, loose) => compare(b, a, loose)
3 | module.exports = rcompare
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/rsort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
3 | module.exports = rsort
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/satisfies.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const satisfies = (version, range, options) => {
3 | try {
4 | range = new Range(range, options)
5 | } catch (er) {
6 | return false
7 | }
8 | return range.test(version)
9 | }
10 | module.exports = satisfies
11 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/sort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
3 | module.exports = sort
4 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/functions/valid.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const valid = (version, options) => {
3 | const v = parse(version, options)
4 | return v ? v.version : null
5 | }
6 | module.exports = valid
7 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/internal/debug.js:
--------------------------------------------------------------------------------
1 | const debug = (
2 | typeof process === 'object' &&
3 | process.env &&
4 | process.env.NODE_DEBUG &&
5 | /\bsemver\b/i.test(process.env.NODE_DEBUG)
6 | ) ? (...args) => console.error('SEMVER', ...args)
7 | : () => {}
8 |
9 | module.exports = debug
10 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/ranges/gtr.js:
--------------------------------------------------------------------------------
1 | // Determine if version is greater than all the versions possible in the range.
2 | const outside = require('./outside')
3 | const gtr = (version, range, options) => outside(version, range, '>', options)
4 | module.exports = gtr
5 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/ranges/intersects.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const intersects = (r1, r2, options) => {
3 | r1 = new Range(r1, options)
4 | r2 = new Range(r2, options)
5 | return r1.intersects(r2)
6 | }
7 | module.exports = intersects
8 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/ranges/ltr.js:
--------------------------------------------------------------------------------
1 | const outside = require('./outside')
2 | // Determine if version is less than all the versions possible in the range
3 | const ltr = (version, range, options) => outside(version, range, '<', options)
4 | module.exports = ltr
5 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/node_modules/semver/ranges/to-comparators.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 |
3 | // Mostly just for testing and legacy API reasons
4 | const toComparators = (range, options) =>
5 | new Range(range, options).set
6 | .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))
7 |
8 | module.exports = toComparators
9 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/simple-update-notifier/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface IUpdate {
2 | pkg: { name: string; version: string };
3 | updateCheckInterval?: number;
4 | shouldNotifyInNpmScript?: boolean;
5 | distTag?: string;
6 | alwaysRun?: boolean;
7 | debug?: boolean;
8 | }
9 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/sqlstring/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/SqlString');
2 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/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 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/util-deprecate/History.md:
--------------------------------------------------------------------------------
1 |
2 | 1.0.2 / 2015-10-07
3 | ==================
4 |
5 | * use try/catch when checking `localStorage` (#3, @kumavis)
6 |
7 | 1.0.1 / 2014-11-25
8 | ==================
9 |
10 | * browser: use `console.warn()` for deprecation calls
11 | * browser: more jsdocs
12 |
13 | 1.0.0 / 2014-04-30
14 | ==================
15 |
16 | * initial commit
17 |
--------------------------------------------------------------------------------
/Lesson20/node_modules/util-deprecate/node.js:
--------------------------------------------------------------------------------
1 |
2 | /**
3 | * For Node.js, simply re-export the core `util.deprecate` function.
4 | */
5 |
6 | module.exports = require('util').deprecate;
7 |
--------------------------------------------------------------------------------
/Lesson20/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "3",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "app.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "mysql": "^2.18.1",
13 | "mysql2": "^3.2.1",
14 | "nodemon": "^2.0.22"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/ejs:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../ejs/bin/cli.js" "$@"
10 | else
11 | exec node "$basedir/../ejs/bin/cli.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/ejs.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\ejs\bin\cli.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/jake:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../jake/bin/cli.js" "$@"
10 | else
11 | exec node "$basedir/../jake/bin/cli.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/jake.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\jake\bin\cli.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/mime:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../mime/cli.js" "$@"
10 | else
11 | exec node "$basedir/../mime/cli.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/mime.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\mime\cli.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/nodemon:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nodemon/bin/nodemon.js" "$@"
10 | else
11 | exec node "$basedir/../nodemon/bin/nodemon.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/nodetouch:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../touch/bin/nodetouch.js" "$@"
10 | else
11 | exec node "$basedir/../touch/bin/nodetouch.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/nopt:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nopt/bin/nopt.js" "$@"
10 | else
11 | exec node "$basedir/../nopt/bin/nopt.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/nopt.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\nopt\bin\nopt.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../semver/bin/semver" "$@"
10 | else
11 | exec node "$basedir/../semver/bin/semver" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/.bin/semver.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver" %*
18 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/async/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "async",
3 | "main": "dist/async.js",
4 | "ignore": [
5 | "bower_components",
6 | "lib",
7 | "test",
8 | "node_modules",
9 | "perf",
10 | "support",
11 | "**/.*",
12 | "*.config.js",
13 | "*.json",
14 | "index.js",
15 | "Makefile"
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/async/internal/breakLoop.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | Object.defineProperty(exports, "__esModule", {
4 | value: true
5 | });
6 | // A temporary value used to identify if the loop should be broken.
7 | // See #1064, #1293
8 | const breakLoop = {};
9 | exports.default = breakLoop;
10 | module.exports = exports["default"];
--------------------------------------------------------------------------------
/Lesson21/node_modules/async/internal/getIterator.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | Object.defineProperty(exports, "__esModule", {
4 | value: true
5 | });
6 |
7 | exports.default = function (coll) {
8 | return coll[Symbol.iterator] && coll[Symbol.iterator]();
9 | };
10 |
11 | module.exports = exports["default"];
--------------------------------------------------------------------------------
/Lesson21/node_modules/async/internal/initialParams.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | Object.defineProperty(exports, "__esModule", {
4 | value: true
5 | });
6 |
7 | exports.default = function (fn) {
8 | return function (...args /*, callback*/) {
9 | var callback = args.pop();
10 | return fn.call(this, args, callback);
11 | };
12 | };
13 |
14 | module.exports = exports["default"];
--------------------------------------------------------------------------------
/Lesson21/node_modules/async/internal/isArrayLike.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | Object.defineProperty(exports, "__esModule", {
4 | value: true
5 | });
6 | exports.default = isArrayLike;
7 | function isArrayLike(value) {
8 | return value && typeof value.length === 'number' && value.length >= 0 && value.length % 1 === 0;
9 | }
10 | module.exports = exports['default'];
--------------------------------------------------------------------------------
/Lesson21/node_modules/async/internal/range.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | Object.defineProperty(exports, "__esModule", {
4 | value: true
5 | });
6 | exports.default = range;
7 | function range(size) {
8 | var result = Array(size);
9 | while (size--) {
10 | result[size] = size;
11 | }
12 | return result;
13 | }
14 | module.exports = exports["default"];
--------------------------------------------------------------------------------
/Lesson21/node_modules/async/internal/withoutIndex.js:
--------------------------------------------------------------------------------
1 | "use strict";
2 |
3 | Object.defineProperty(exports, "__esModule", {
4 | value: true
5 | });
6 | exports.default = _withoutIndex;
7 | function _withoutIndex(iteratee) {
8 | return (value, index, callback) => iteratee(value, callback);
9 | }
10 | module.exports = exports["default"];
--------------------------------------------------------------------------------
/Lesson21/node_modules/balanced-match/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | tidelift: "npm/balanced-match"
2 | patreon: juliangruber
3 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/binary-extensions/binary-extensions.json.d.ts:
--------------------------------------------------------------------------------
1 | declare const binaryExtensionsJson: readonly string[];
2 |
3 | export = binaryExtensionsJson;
4 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/binary-extensions/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./binary-extensions.json');
2 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/call-bind/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/call-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "id-length": 0,
9 | "new-cap": [2, {
10 | "capIsNewExceptions": [
11 | "GetIntrinsic",
12 | ],
13 | }],
14 | "no-magic-numbers": 0,
15 | "operator-linebreak": [2, "before"],
16 | },
17 | }
18 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/call-bind/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/call-bind/README.md:
--------------------------------------------------------------------------------
1 | # call-bind
2 | Robustly `.call.bind()` a function.
3 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/concat-map/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.4
4 | - 0.6
5 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/cookie-signature/.npmignore:
--------------------------------------------------------------------------------
1 | support
2 | test
3 | examples
4 | *.sock
5 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/debug/.coveralls.yml:
--------------------------------------------------------------------------------
1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve
2 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/filelist/jakefile.js:
--------------------------------------------------------------------------------
1 | testTask('FileList', function () {
2 | this.testFiles.include('test/*.js');
3 | });
4 |
5 | publishTask('FileList', function () {
6 | this.packageFiles.include([
7 | 'jakefile.js',
8 | 'README.md',
9 | 'package.json',
10 | 'index.js',
11 | 'index.d.ts'
12 | ]);
13 | });
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/filelist/node_modules/brace-expansion/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | tidelift: "npm/brace-expansion"
2 | patreon: juliangruber
3 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/filelist/node_modules/minimatch/lib/path.js:
--------------------------------------------------------------------------------
1 | const isWindows = typeof process === 'object' &&
2 | process &&
3 | process.platform === 'win32'
4 | module.exports = isWindows ? { sep: '\\' } : { sep: '/' }
5 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/function-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "indent": [2, 4],
9 | "max-nested-callbacks": [2, 3],
10 | "max-params": [2, 3],
11 | "max-statements": [2, 20],
12 | "no-new-func": [1],
13 | "strict": [0]
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/function-bind/.npmignore:
--------------------------------------------------------------------------------
1 | # gitignore
2 | .DS_Store
3 | .monitor
4 | .*.swp
5 | .nodemonignore
6 | releases
7 | *.log
8 | *.err
9 | fleet.json
10 | public/browserify
11 | bin/*.json
12 | .bin
13 | build
14 | compile
15 | .lock-wscript
16 | coverage
17 | node_modules
18 |
19 | # Only apps should have lockfiles
20 | npm-shrinkwrap.json
21 | package-lock.json
22 | yarn.lock
23 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/function-bind/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var implementation = require('./implementation');
4 |
5 | module.exports = Function.prototype.bind || implementation;
6 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/function-bind/test/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "rules": {
3 | "array-bracket-newline": 0,
4 | "array-element-newline": 0,
5 | "max-statements-per-line": [2, { "max": 2 }],
6 | "no-invalid-this": 0,
7 | "no-magic-numbers": 0,
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/get-intrinsic/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/has-symbols/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-statements-per-line": [2, { "max": 2 }],
8 | "no-magic-numbers": 0,
9 | "multiline-comment-style": 0,
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/has-symbols/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/has/README.md:
--------------------------------------------------------------------------------
1 | # has
2 |
3 | > Object.prototype.hasOwnProperty.call shortcut
4 |
5 | ## Installation
6 |
7 | ```sh
8 | npm install --save has
9 | ```
10 |
11 | ## Usage
12 |
13 | ```js
14 | var has = require('has');
15 |
16 | has({}, 'hasOwnProperty'); // false
17 | has(Object.prototype, 'hasOwnProperty'); // true
18 | ```
19 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/has/src/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var bind = require('function-bind');
4 |
5 | module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
6 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/has/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var test = require('tape');
4 | var has = require('../');
5 |
6 | test('has', function (t) {
7 | t.equal(has({}, 'hasOwnProperty'), false, 'object literal does not have own property "hasOwnProperty"');
8 | t.equal(has(Object.prototype, 'hasOwnProperty'), true, 'Object.prototype has own property "hasOwnProperty"');
9 | t.end();
10 | });
11 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | /* istanbul ignore next */
4 | if (typeof util.inherits !== 'function') throw '';
5 | module.exports = util.inherits;
6 | } catch (e) {
7 | /* istanbul ignore next */
8 | module.exports = require('./inherits_browser.js');
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/jake/lib/task/index.js:
--------------------------------------------------------------------------------
1 |
2 | let Task = require('./task').Task;
3 | let FileTask = require('./file_task').FileTask;
4 | let DirectoryTask = require('./directory_task').DirectoryTask;
5 |
6 | exports.Task = Task;
7 | exports.FileTask = FileTask;
8 | exports.DirectoryTask = DirectoryTask;
9 |
10 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/jake/test/integration/jakelib/required_module.jake.js:
--------------------------------------------------------------------------------
1 | let { task, namespace } = require(`${process.env.PROJECT_DIR}/lib/jake`);
2 |
3 | namespace('usingRequire', function () {
4 | task('test', () => {
5 | console.log('howdy test');
6 | });
7 | });
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/mime-db/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * mime-db
3 | * Copyright(c) 2014 Jonathan Ong
4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson
5 | * MIT Licensed
6 | */
7 |
8 | /**
9 | * Module exports.
10 | */
11 |
12 | module.exports = require('./db.json')
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/mime/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/node_modules/mime/.npmignore
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/nodemon/bin/windows-kill.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/node_modules/nodemon/bin/windows-kill.exe
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/nodemon/doc/cli/usage.txt:
--------------------------------------------------------------------------------
1 | Usage: nodemon [nodemon options] [script.js] [args]
2 |
3 | See "nodemon --help" for more.
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/nodemon/lib/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./nodemon');
--------------------------------------------------------------------------------
/Lesson21/node_modules/nodemon/lib/monitor/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | run: require('./run'),
3 | watch: require('./watch').watch,
4 | };
5 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/nodemon/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/nodemon/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/nodemon/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/nopt/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/node_modules/nopt/.npmignore
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "instrumentation": false,
5 | "sourceMap": false,
6 | "reporter": ["text-summary", "text", "html", "json"],
7 | "exclude": [
8 | "coverage",
9 | "example",
10 | "test",
11 | "test-core-js.js"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/example/circular.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = { a: 1, b: [3, 4] };
5 | obj.c = obj;
6 | console.log(inspect(obj));
7 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/example/fn.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = [1, 2, function f(n) { return n + 5; }, 4];
5 | console.log(inspect(obj));
6 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/example/inspect.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* eslint-env browser */
4 | var inspect = require('../');
5 |
6 | var d = document.createElement('div');
7 | d.setAttribute('id', 'beep');
8 | d.innerHTML = 'woooiiiii';
9 |
10 | console.log(inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }]));
11 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/test/holes.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var xs = ['a', 'b'];
5 | xs[5] = 'f';
6 | xs[7] = 'j';
7 | xs[8] = 'k';
8 |
9 | test('holes', function (t) {
10 | t.plan(1);
11 | t.equal(
12 | inspect(xs),
13 | "[ 'a', 'b', , , , 'f', , 'j', 'k' ]"
14 | );
15 | });
16 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/test/lowbyte.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { x: 'a\r\nb', y: '\x05! \x1f \x12' };
5 |
6 | test('interpolate low bytes', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | "{ x: 'a\\r\\nb', y: '\\x05! \\x1F \\x12' }"
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/test/undef.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { a: 1, b: [3, 4, undefined, null], c: undefined, d: null };
5 |
6 | test('undef and null', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | '{ a: 1, b: [ 3, 4, undefined, null ], c: undefined, d: null }'
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/object-inspect/util.inspect.js:
--------------------------------------------------------------------------------
1 | module.exports = require('util').inspect;
2 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/picomatch/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = require('./lib/picomatch');
4 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/qs/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "dist"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/setprototypeof/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function setPrototypeOf(o: any, proto: object | null): any;
2 | export = setPrototypeOf;
3 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/side-channel/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/side-channel/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-lines-per-function": 0,
8 | "max-params": 0,
9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }],
10 | },
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/side-channel/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/side-channel/README.md:
--------------------------------------------------------------------------------
1 | # side-channel
2 | Store information about any JS value in a side channel. Uses WeakMap if available.
3 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/classes/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | SemVer: require('./semver.js'),
3 | Range: require('./range.js'),
4 | Comparator: require('./comparator.js')
5 | }
6 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/clean.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const clean = (version, options) => {
3 | const s = parse(version.trim().replace(/^[=v]+/, ''), options)
4 | return s ? s.version : null
5 | }
6 | module.exports = clean
7 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/compare-build.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compareBuild = (a, b, loose) => {
3 | const versionA = new SemVer(a, loose)
4 | const versionB = new SemVer(b, loose)
5 | return versionA.compare(versionB) || versionA.compareBuild(versionB)
6 | }
7 | module.exports = compareBuild
8 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/compare-loose.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const compareLoose = (a, b) => compare(a, b, true)
3 | module.exports = compareLoose
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/compare.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compare = (a, b, loose) =>
3 | new SemVer(a, loose).compare(new SemVer(b, loose))
4 |
5 | module.exports = compare
6 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/eq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const eq = (a, b, loose) => compare(a, b, loose) === 0
3 | module.exports = eq
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/gt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gt = (a, b, loose) => compare(a, b, loose) > 0
3 | module.exports = gt
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/gte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gte = (a, b, loose) => compare(a, b, loose) >= 0
3 | module.exports = gte
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/lt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lt = (a, b, loose) => compare(a, b, loose) < 0
3 | module.exports = lt
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/lte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lte = (a, b, loose) => compare(a, b, loose) <= 0
3 | module.exports = lte
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/major.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const major = (a, loose) => new SemVer(a, loose).major
3 | module.exports = major
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/minor.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const minor = (a, loose) => new SemVer(a, loose).minor
3 | module.exports = minor
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/neq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const neq = (a, b, loose) => compare(a, b, loose) !== 0
3 | module.exports = neq
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/patch.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const patch = (a, loose) => new SemVer(a, loose).patch
3 | module.exports = patch
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/prerelease.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const prerelease = (version, options) => {
3 | const parsed = parse(version, options)
4 | return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
5 | }
6 | module.exports = prerelease
7 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/rcompare.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const rcompare = (a, b, loose) => compare(b, a, loose)
3 | module.exports = rcompare
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/rsort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
3 | module.exports = rsort
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/satisfies.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const satisfies = (version, range, options) => {
3 | try {
4 | range = new Range(range, options)
5 | } catch (er) {
6 | return false
7 | }
8 | return range.test(version)
9 | }
10 | module.exports = satisfies
11 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/sort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
3 | module.exports = sort
4 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/functions/valid.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const valid = (version, options) => {
3 | const v = parse(version, options)
4 | return v ? v.version : null
5 | }
6 | module.exports = valid
7 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/internal/debug.js:
--------------------------------------------------------------------------------
1 | const debug = (
2 | typeof process === 'object' &&
3 | process.env &&
4 | process.env.NODE_DEBUG &&
5 | /\bsemver\b/i.test(process.env.NODE_DEBUG)
6 | ) ? (...args) => console.error('SEMVER', ...args)
7 | : () => {}
8 |
9 | module.exports = debug
10 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/ranges/gtr.js:
--------------------------------------------------------------------------------
1 | // Determine if version is greater than all the versions possible in the range.
2 | const outside = require('./outside')
3 | const gtr = (version, range, options) => outside(version, range, '>', options)
4 | module.exports = gtr
5 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/ranges/intersects.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const intersects = (r1, r2, options) => {
3 | r1 = new Range(r1, options)
4 | r2 = new Range(r2, options)
5 | return r1.intersects(r2)
6 | }
7 | module.exports = intersects
8 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/ranges/ltr.js:
--------------------------------------------------------------------------------
1 | const outside = require('./outside')
2 | // Determine if version is less than all the versions possible in the range
3 | const ltr = (version, range, options) => outside(version, range, '<', options)
4 | module.exports = ltr
5 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/node_modules/semver/ranges/to-comparators.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 |
3 | // Mostly just for testing and legacy API reasons
4 | const toComparators = (range, options) =>
5 | new Range(range, options).set
6 | .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))
7 |
8 | module.exports = toComparators
9 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/simple-update-notifier/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface IUpdate {
2 | pkg: { name: string; version: string };
3 | updateCheckInterval?: number;
4 | shouldNotifyInNpmScript?: boolean;
5 | distTag?: string;
6 | alwaysRun?: boolean;
7 | debug?: boolean;
8 | }
9 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/toidentifier/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.1 / 2021-11-14
2 | ==================
3 |
4 | * pref: enable strict mode
5 |
6 | 1.0.0 / 2018-07-09
7 | ==================
8 |
9 | * Initial release
10 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/node_modules/unpipe/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.0 / 2015-06-14
2 | ==================
3 |
4 | * Initial release
5 |
--------------------------------------------------------------------------------
/Lesson21/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 |
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture0.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture0.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture1.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture1.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture2.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture3.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture4.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture5.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture6.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture6.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture7-2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture7-2.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture7.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture7.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture8.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture8.PNG
--------------------------------------------------------------------------------
/Lesson21/pictures/Capture9.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson21/pictures/Capture9.PNG
--------------------------------------------------------------------------------
/Lesson21/views/footer.ejs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Lesson21/views/foreach.ejs:
--------------------------------------------------------------------------------
1 |
2 | <% items.forEach(item => { %>
3 | - <%= item %>
4 | <% }); %>
5 |
6 |
7 |
8 | <% for (let i = 0; i < items.length; i++) { %>
9 | - <%= items[i] %>
10 | <% } %>
11 |
--------------------------------------------------------------------------------
/Lesson21/views/header.ejs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Lesson21/views/index.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | <%= title %>
7 |
8 |
9 |
10 | <%- include('header') %>
11 | <%- include('main') %>
12 | <%- include('footer') %>
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Lesson21/views/main.ejs:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Lesson21/views/response.ejs:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | الرد
7 |
8 |
9 | <%= responseMessage %>
10 |
11 |
12 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/.bin/mime:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../mime/cli.js" "$@"
10 | else
11 | exec node "$basedir/../mime/cli.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/.bin/mime.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\mime\cli.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/.bin/nodemon:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nodemon/bin/nodemon.js" "$@"
10 | else
11 | exec node "$basedir/../nodemon/bin/nodemon.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/.bin/nodetouch:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../touch/bin/nodetouch.js" "$@"
10 | else
11 | exec node "$basedir/../touch/bin/nodetouch.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/.bin/nopt:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../nopt/bin/nopt.js" "$@"
10 | else
11 | exec node "$basedir/../nopt/bin/nopt.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/.bin/semver:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../semver/bin/semver" "$@"
10 | else
11 | exec node "$basedir/../semver/bin/semver" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/balanced-match/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | tidelift: "npm/balanced-match"
2 | patreon: juliangruber
3 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/binary-extensions/binary-extensions.json.d.ts:
--------------------------------------------------------------------------------
1 | declare const binaryExtensionsJson: readonly string[];
2 |
3 | export = binaryExtensionsJson;
4 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/binary-extensions/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./binary-extensions.json');
2 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/call-bind/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/call-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "id-length": 0,
9 | "new-cap": [2, {
10 | "capIsNewExceptions": [
11 | "GetIntrinsic",
12 | ],
13 | }],
14 | "no-magic-numbers": 0,
15 | "operator-linebreak": [2, "before"],
16 | },
17 | }
18 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/call-bind/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/call-bind/README.md:
--------------------------------------------------------------------------------
1 | # call-bind
2 | Robustly `.call.bind()` a function.
3 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/concat-map/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.4
4 | - 0.6
5 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/cookie-signature/.npmignore:
--------------------------------------------------------------------------------
1 | support
2 | test
3 | examples
4 | *.sock
5 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/debug/.coveralls.yml:
--------------------------------------------------------------------------------
1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve
2 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/function-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "indent": [2, 4],
9 | "max-nested-callbacks": [2, 3],
10 | "max-params": [2, 3],
11 | "max-statements": [2, 20],
12 | "no-new-func": [1],
13 | "strict": [0]
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/function-bind/.npmignore:
--------------------------------------------------------------------------------
1 | # gitignore
2 | .DS_Store
3 | .monitor
4 | .*.swp
5 | .nodemonignore
6 | releases
7 | *.log
8 | *.err
9 | fleet.json
10 | public/browserify
11 | bin/*.json
12 | .bin
13 | build
14 | compile
15 | .lock-wscript
16 | coverage
17 | node_modules
18 |
19 | # Only apps should have lockfiles
20 | npm-shrinkwrap.json
21 | package-lock.json
22 | yarn.lock
23 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/function-bind/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var implementation = require('./implementation');
4 |
5 | module.exports = Function.prototype.bind || implementation;
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/function-bind/test/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "rules": {
3 | "array-bracket-newline": 0,
4 | "array-element-newline": 0,
5 | "max-statements-per-line": [2, { "max": 2 }],
6 | "no-invalid-this": 0,
7 | "no-magic-numbers": 0,
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/generate-function/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - "0.10"
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/get-intrinsic/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/has-symbols/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-statements-per-line": [2, { "max": 2 }],
8 | "no-magic-numbers": 0,
9 | "multiline-comment-style": 0,
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/has-symbols/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/has/README.md:
--------------------------------------------------------------------------------
1 | # has
2 |
3 | > Object.prototype.hasOwnProperty.call shortcut
4 |
5 | ## Installation
6 |
7 | ```sh
8 | npm install --save has
9 | ```
10 |
11 | ## Usage
12 |
13 | ```js
14 | var has = require('has');
15 |
16 | has({}, 'hasOwnProperty'); // false
17 | has(Object.prototype, 'hasOwnProperty'); // true
18 | ```
19 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/has/src/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var bind = require('function-bind');
4 |
5 | module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/has/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var test = require('tape');
4 | var has = require('../');
5 |
6 | test('has', function (t) {
7 | t.equal(has({}, 'hasOwnProperty'), false, 'object literal does not have own property "hasOwnProperty"');
8 | t.equal(has(Object.prototype, 'hasOwnProperty'), true, 'Object.prototype has own property "hasOwnProperty"');
9 | t.end();
10 | });
11 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | /* istanbul ignore next */
4 | if (typeof util.inherits !== 'function') throw '';
5 | module.exports = util.inherits;
6 | } catch (e) {
7 | /* istanbul ignore next */
8 | module.exports = require('./inherits_browser.js');
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/is-property/.npmignore:
--------------------------------------------------------------------------------
1 | lib-cov
2 | *.seed
3 | *.log
4 | *.csv
5 | *.dat
6 | *.out
7 | *.pid
8 | *.gz
9 |
10 | pids
11 | logs
12 | results
13 |
14 | npm-debug.log
15 | node_modules/*
16 | *.DS_Store
17 | test/*
--------------------------------------------------------------------------------
/Lesson22/node_modules/long/umd/index.d.ts:
--------------------------------------------------------------------------------
1 | import Long from "../index.js";
2 | export = Long;
3 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/long/umd/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "commonjs"
3 | }
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/lru-cache/dist/cjs/index-cjs.d.ts:
--------------------------------------------------------------------------------
1 | import LRUCache from './index.js';
2 | declare const _default: typeof LRUCache & {
3 | default: typeof LRUCache;
4 | LRUCache: typeof LRUCache;
5 | };
6 | export = _default;
7 | //# sourceMappingURL=index-cjs.d.ts.map
--------------------------------------------------------------------------------
/Lesson22/node_modules/lru-cache/dist/cjs/index-cjs.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index-cjs.d.ts","sourceRoot":"","sources":["../../src/index-cjs.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,YAAY,CAAA;;;;;AAEjC,kBAAiE"}
--------------------------------------------------------------------------------
/Lesson22/node_modules/lru-cache/dist/cjs/index-cjs.js.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index-cjs.js","sourceRoot":"","sources":["../../src/index-cjs.ts"],"names":[],"mappings":";;;;AAAA,0DAAiC;AAEjC,iBAAS,MAAM,CAAC,MAAM,CAAC,kBAAQ,EAAE,EAAE,OAAO,EAAE,kBAAQ,EAAE,QAAQ,EAAR,kBAAQ,EAAE,CAAC,CAAA","sourcesContent":["import LRUCache from './index.js'\n\nexport = Object.assign(LRUCache, { default: LRUCache, LRUCache })\n"]}
--------------------------------------------------------------------------------
/Lesson22/node_modules/lru-cache/dist/cjs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "commonjs"
3 | }
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/lru-cache/dist/mjs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "module"
3 | }
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mime-db/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * mime-db
3 | * Copyright(c) 2014 Jonathan Ong
4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson
5 | * MIT Licensed
6 | */
7 |
8 | /**
9 | * Module exports.
10 | */
11 |
12 | module.exports = require('./db.json')
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mime/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson22/node_modules/mime/.npmignore
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/lib/auth_plugins/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | caching_sha2_password: require('./caching_sha2_password'),
5 | mysql_clear_password: require('./mysql_clear_password'),
6 | mysql_native_password: require('./mysql_native_password'),
7 | sha256_password: require('./sha256_password'),
8 | };
9 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/lib/constants/cursor.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = {
4 | NO_CURSOR: 0,
5 | READ_ONLY: 1,
6 | FOR_UPDATE: 2,
7 | SCROLLABLE: 3
8 | };
9 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/lib/constants/session_track.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | exports.SYSTEM_VARIABLES = 0;
4 | exports.SCHEMA = 1;
5 | exports.STATE_CHANGE = 2;
6 | exports.STATE_GTIDS = 3;
7 | exports.TRANSACTION_CHARACTERISTICS = 4;
8 | exports.TRANSACTION_STATE = 5;
9 |
10 | exports.FIRST_KEY = exports.SYSTEM_VARIABLES;
11 | exports.LAST_KEY = exports.TRANSACTION_STATE;
12 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/node_modules/iconv-lite/.idea/codeStyles/codeStyleConfig.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/node_modules/iconv-lite/.idea/inspectionProfiles/Project_Default.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/node_modules/iconv-lite/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/node_modules/iconv-lite/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/typings/mysql/info.txt:
--------------------------------------------------------------------------------
1 | temporary workaround, see https://github.com/sidorares/node-mysql2/issues/1210
2 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/typings/mysql/lib/PoolConnection.d.ts:
--------------------------------------------------------------------------------
1 |
2 | import Connection = require('./Connection');
3 |
4 | declare class PoolConnection extends Connection {
5 | connection: Connection;
6 | release(): void;
7 | }
8 |
9 | export = PoolConnection;
10 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/typings/mysql/lib/protocol/packets/Field.d.ts:
--------------------------------------------------------------------------------
1 |
2 | declare interface Field {
3 | constructor: {
4 | name: 'Field'
5 | };
6 | db: string;
7 | table: string;
8 | name: string;
9 | type: string;
10 | length: number;
11 | string: Function;
12 | buffer: Function;
13 | geometry: Function;
14 | }
15 |
16 | export = Field;
17 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/typings/mysql/lib/protocol/packets/RowDataPacket.d.ts:
--------------------------------------------------------------------------------
1 |
2 | declare interface RowDataPacket {
3 | constructor: {
4 | name: 'RowDataPacket'
5 | };
6 | [column: string]: any;
7 | [column: number]: any;
8 | }
9 |
10 | export = RowDataPacket;
11 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/typings/mysql/lib/protocol/packets/params/ErrorPacketParams.d.ts:
--------------------------------------------------------------------------------
1 | declare interface ErrorPacketParams {
2 | message?: string;
3 | code?: number | string;
4 | }
5 |
6 | export = ErrorPacketParams;
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/typings/mysql/lib/protocol/packets/params/OkPacketParams.d.ts:
--------------------------------------------------------------------------------
1 | declare interface OkPacketParams {
2 | affectedRows?: number;
3 | insertId?: number;
4 | serverStatus?: number;
5 | warningCount?: number;
6 | message?: string;
7 | }
8 |
9 | export = OkPacketParams;
--------------------------------------------------------------------------------
/Lesson22/node_modules/mysql2/typings/mysql/lib/protocol/sequences/Sequence.d.ts:
--------------------------------------------------------------------------------
1 |
2 | import {EventEmitter} from 'events';
3 |
4 | declare class Sequence extends EventEmitter { }
5 | export = Sequence;
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/nodemon/bin/windows-kill.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson22/node_modules/nodemon/bin/windows-kill.exe
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/nodemon/doc/cli/usage.txt:
--------------------------------------------------------------------------------
1 | Usage: nodemon [nodemon options] [script.js] [args]
2 |
3 | See "nodemon --help" for more.
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/nodemon/lib/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./nodemon');
--------------------------------------------------------------------------------
/Lesson22/node_modules/nodemon/lib/monitor/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | run: require('./run'),
3 | watch: require('./watch').watch,
4 | };
5 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/nodemon/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/nopt/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson22/node_modules/nopt/.npmignore
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "instrumentation": false,
5 | "sourceMap": false,
6 | "reporter": ["text-summary", "text", "html", "json"],
7 | "exclude": [
8 | "coverage",
9 | "example",
10 | "test",
11 | "test-core-js.js"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/example/circular.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = { a: 1, b: [3, 4] };
5 | obj.c = obj;
6 | console.log(inspect(obj));
7 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/example/fn.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = [1, 2, function f(n) { return n + 5; }, 4];
5 | console.log(inspect(obj));
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/example/inspect.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* eslint-env browser */
4 | var inspect = require('../');
5 |
6 | var d = document.createElement('div');
7 | d.setAttribute('id', 'beep');
8 | d.innerHTML = 'woooiiiii';
9 |
10 | console.log(inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }]));
11 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/test/holes.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var xs = ['a', 'b'];
5 | xs[5] = 'f';
6 | xs[7] = 'j';
7 | xs[8] = 'k';
8 |
9 | test('holes', function (t) {
10 | t.plan(1);
11 | t.equal(
12 | inspect(xs),
13 | "[ 'a', 'b', , , , 'f', , 'j', 'k' ]"
14 | );
15 | });
16 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/test/lowbyte.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { x: 'a\r\nb', y: '\x05! \x1f \x12' };
5 |
6 | test('interpolate low bytes', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | "{ x: 'a\\r\\nb', y: '\\x05! \\x1F \\x12' }"
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/test/undef.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { a: 1, b: [3, 4, undefined, null], c: undefined, d: null };
5 |
6 | test('undef and null', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | '{ a: 1, b: [ 3, 4, undefined, null ], c: undefined, d: null }'
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/object-inspect/util.inspect.js:
--------------------------------------------------------------------------------
1 | module.exports = require('util').inspect;
2 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/picomatch/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | module.exports = require('./lib/picomatch');
4 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/qs/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "dist"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/seq-queue/.jshintrc:
--------------------------------------------------------------------------------
1 | {
2 | "predef": [
3 | "describe",
4 | "it",
5 | "before",
6 | "after",
7 | "window",
8 | "__resources__"
9 | ],
10 | "es5": true,
11 | "node": true,
12 | "eqeqeq": true,
13 | "undef": true,
14 | "curly": true,
15 | "bitwise": true,
16 | "immed": false,
17 | "newcap": true,
18 | "nonew": true
19 | }
20 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/seq-queue/.npmignore:
--------------------------------------------------------------------------------
1 | .project
2 | node_modules/
3 | lib/doc/
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/seq-queue/AUTHORS:
--------------------------------------------------------------------------------
1 | * Yongchang Zhou
--------------------------------------------------------------------------------
/Lesson22/node_modules/seq-queue/Makefile:
--------------------------------------------------------------------------------
1 | TESTS = test/*.js
2 | REPORTER = spec
3 | TIMEOUT = 5000
4 |
5 | test:
6 | @./node_modules/.bin/mocha \
7 | --reporter $(REPORTER) --timeout $(TIMEOUT) $(TESTS)
8 |
9 | .PHONY: test
--------------------------------------------------------------------------------
/Lesson22/node_modules/seq-queue/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/seq-queue');
--------------------------------------------------------------------------------
/Lesson22/node_modules/seq-queue/lib/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson22/node_modules/seq-queue/lib/.npmignore
--------------------------------------------------------------------------------
/Lesson22/node_modules/setprototypeof/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function setPrototypeOf(o: any, proto: object | null): any;
2 | export = setPrototypeOf;
3 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/side-channel/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/side-channel/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-lines-per-function": 0,
8 | "max-params": 0,
9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }],
10 | },
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/side-channel/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/side-channel/README.md:
--------------------------------------------------------------------------------
1 | # side-channel
2 | Store information about any JS value in a side channel. Uses WeakMap if available.
3 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/classes/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | SemVer: require('./semver.js'),
3 | Range: require('./range.js'),
4 | Comparator: require('./comparator.js')
5 | }
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/clean.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const clean = (version, options) => {
3 | const s = parse(version.trim().replace(/^[=v]+/, ''), options)
4 | return s ? s.version : null
5 | }
6 | module.exports = clean
7 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/compare-build.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compareBuild = (a, b, loose) => {
3 | const versionA = new SemVer(a, loose)
4 | const versionB = new SemVer(b, loose)
5 | return versionA.compare(versionB) || versionA.compareBuild(versionB)
6 | }
7 | module.exports = compareBuild
8 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/compare-loose.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const compareLoose = (a, b) => compare(a, b, true)
3 | module.exports = compareLoose
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/compare.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const compare = (a, b, loose) =>
3 | new SemVer(a, loose).compare(new SemVer(b, loose))
4 |
5 | module.exports = compare
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/eq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const eq = (a, b, loose) => compare(a, b, loose) === 0
3 | module.exports = eq
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/gt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gt = (a, b, loose) => compare(a, b, loose) > 0
3 | module.exports = gt
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/gte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const gte = (a, b, loose) => compare(a, b, loose) >= 0
3 | module.exports = gte
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/lt.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lt = (a, b, loose) => compare(a, b, loose) < 0
3 | module.exports = lt
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/lte.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const lte = (a, b, loose) => compare(a, b, loose) <= 0
3 | module.exports = lte
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/major.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const major = (a, loose) => new SemVer(a, loose).major
3 | module.exports = major
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/minor.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const minor = (a, loose) => new SemVer(a, loose).minor
3 | module.exports = minor
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/neq.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const neq = (a, b, loose) => compare(a, b, loose) !== 0
3 | module.exports = neq
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/patch.js:
--------------------------------------------------------------------------------
1 | const SemVer = require('../classes/semver')
2 | const patch = (a, loose) => new SemVer(a, loose).patch
3 | module.exports = patch
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/prerelease.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const prerelease = (version, options) => {
3 | const parsed = parse(version, options)
4 | return (parsed && parsed.prerelease.length) ? parsed.prerelease : null
5 | }
6 | module.exports = prerelease
7 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/rcompare.js:
--------------------------------------------------------------------------------
1 | const compare = require('./compare')
2 | const rcompare = (a, b, loose) => compare(b, a, loose)
3 | module.exports = rcompare
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/rsort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))
3 | module.exports = rsort
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/satisfies.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const satisfies = (version, range, options) => {
3 | try {
4 | range = new Range(range, options)
5 | } catch (er) {
6 | return false
7 | }
8 | return range.test(version)
9 | }
10 | module.exports = satisfies
11 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/sort.js:
--------------------------------------------------------------------------------
1 | const compareBuild = require('./compare-build')
2 | const sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))
3 | module.exports = sort
4 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/functions/valid.js:
--------------------------------------------------------------------------------
1 | const parse = require('./parse')
2 | const valid = (version, options) => {
3 | const v = parse(version, options)
4 | return v ? v.version : null
5 | }
6 | module.exports = valid
7 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/internal/debug.js:
--------------------------------------------------------------------------------
1 | const debug = (
2 | typeof process === 'object' &&
3 | process.env &&
4 | process.env.NODE_DEBUG &&
5 | /\bsemver\b/i.test(process.env.NODE_DEBUG)
6 | ) ? (...args) => console.error('SEMVER', ...args)
7 | : () => {}
8 |
9 | module.exports = debug
10 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/ranges/gtr.js:
--------------------------------------------------------------------------------
1 | // Determine if version is greater than all the versions possible in the range.
2 | const outside = require('./outside')
3 | const gtr = (version, range, options) => outside(version, range, '>', options)
4 | module.exports = gtr
5 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/ranges/intersects.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 | const intersects = (r1, r2, options) => {
3 | r1 = new Range(r1, options)
4 | r2 = new Range(r2, options)
5 | return r1.intersects(r2)
6 | }
7 | module.exports = intersects
8 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/ranges/ltr.js:
--------------------------------------------------------------------------------
1 | const outside = require('./outside')
2 | // Determine if version is less than all the versions possible in the range
3 | const ltr = (version, range, options) => outside(version, range, '<', options)
4 | module.exports = ltr
5 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/node_modules/semver/ranges/to-comparators.js:
--------------------------------------------------------------------------------
1 | const Range = require('../classes/range')
2 |
3 | // Mostly just for testing and legacy API reasons
4 | const toComparators = (range, options) =>
5 | new Range(range, options).set
6 | .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))
7 |
8 | module.exports = toComparators
9 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/simple-update-notifier/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface IUpdate {
2 | pkg: { name: string; version: string };
3 | updateCheckInterval?: number;
4 | shouldNotifyInNpmScript?: boolean;
5 | distTag?: string;
6 | alwaysRun?: boolean;
7 | debug?: boolean;
8 | }
9 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/sqlstring/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib/SqlString');
2 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/supports-color/browser.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | module.exports = {
3 | stdout: false,
4 | stderr: false
5 | };
6 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/toidentifier/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.1 / 2021-11-14
2 | ==================
3 |
4 | * pref: enable strict mode
5 |
6 | 1.0.0 / 2018-07-09
7 | ==================
8 |
9 | * Initial release
10 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/node_modules/unpipe/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.0 / 2015-06-14
2 | ==================
3 |
4 | * Initial release
5 |
--------------------------------------------------------------------------------
/Lesson22/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 |
--------------------------------------------------------------------------------
/Lesson22/web-app/update.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson22/web-app/update.png
--------------------------------------------------------------------------------
/Lesson4/Capture.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson4/Capture.PNG
--------------------------------------------------------------------------------
/Lesson4/Capture0.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson4/Capture0.PNG
--------------------------------------------------------------------------------
/Lesson4/Capture2.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson4/Capture2.PNG
--------------------------------------------------------------------------------
/Lesson4/Capture3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson4/Capture3.PNG
--------------------------------------------------------------------------------
/Lesson4/Capture4.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson4/Capture4.PNG
--------------------------------------------------------------------------------
/Lesson4/Capture5.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson4/Capture5.PNG
--------------------------------------------------------------------------------
/Lesson5-6/Capture.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson5-6/Capture.PNG
--------------------------------------------------------------------------------
/Lesson5-6/Capture3.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson5-6/Capture3.PNG
--------------------------------------------------------------------------------
/Lesson5-6/my-app/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson5-6/my-app/public/favicon.ico
--------------------------------------------------------------------------------
/Lesson5-6/my-app/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson5-6/my-app/public/logo192.png
--------------------------------------------------------------------------------
/Lesson5-6/my-app/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson5-6/my-app/public/logo512.png
--------------------------------------------------------------------------------
/Lesson5-6/my-app/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/Lesson5-6/my-app/src/App.test.js:
--------------------------------------------------------------------------------
1 | import { render, screen } from '@testing-library/react';
2 | import App from './App';
3 |
4 | test('renders learn react link', () => {
5 | render();
6 | const linkElement = screen.getByText(/learn react/i);
7 | expect(linkElement).toBeInTheDocument();
8 | });
9 |
--------------------------------------------------------------------------------
/Lesson5-6/my-app/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';
6 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/.bin/mime:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3 |
4 | case `uname` in
5 | *CYGWIN*|*MINGW*|*MSYS*) basedir=`cygpath -w "$basedir"`;;
6 | esac
7 |
8 | if [ -x "$basedir/node" ]; then
9 | exec "$basedir/node" "$basedir/../mime/cli.js" "$@"
10 | else
11 | exec node "$basedir/../mime/cli.js" "$@"
12 | fi
13 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/.bin/mime.cmd:
--------------------------------------------------------------------------------
1 | @ECHO off
2 | GOTO start
3 | :find_dp0
4 | SET dp0=%~dp0
5 | EXIT /b
6 | :start
7 | SETLOCAL
8 | CALL :find_dp0
9 |
10 | IF EXIST "%dp0%\node.exe" (
11 | SET "_prog=%dp0%\node.exe"
12 | ) ELSE (
13 | SET "_prog=node"
14 | SET PATHEXT=%PATHEXT:;.JS;=;%
15 | )
16 |
17 | endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\mime\cli.js" %*
18 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/call-bind/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/call-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "id-length": 0,
9 | "new-cap": [2, {
10 | "capIsNewExceptions": [
11 | "GetIntrinsic",
12 | ],
13 | }],
14 | "no-magic-numbers": 0,
15 | "operator-linebreak": [2, "before"],
16 | },
17 | }
18 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/call-bind/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/call-bind/README.md:
--------------------------------------------------------------------------------
1 | # call-bind
2 | Robustly `.call.bind()` a function.
3 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/cookie-signature/.npmignore:
--------------------------------------------------------------------------------
1 | support
2 | test
3 | examples
4 | *.sock
5 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/debug/.coveralls.yml:
--------------------------------------------------------------------------------
1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve
2 |
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/debug/node.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./src/node');
2 |
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-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 |
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/function-bind/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "func-name-matching": 0,
8 | "indent": [2, 4],
9 | "max-nested-callbacks": [2, 3],
10 | "max-params": [2, 3],
11 | "max-statements": [2, 20],
12 | "no-new-func": [1],
13 | "strict": [0]
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/function-bind/.npmignore:
--------------------------------------------------------------------------------
1 | # gitignore
2 | .DS_Store
3 | .monitor
4 | .*.swp
5 | .nodemonignore
6 | releases
7 | *.log
8 | *.err
9 | fleet.json
10 | public/browserify
11 | bin/*.json
12 | .bin
13 | build
14 | compile
15 | .lock-wscript
16 | coverage
17 | node_modules
18 |
19 | # Only apps should have lockfiles
20 | npm-shrinkwrap.json
21 | package-lock.json
22 | yarn.lock
23 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/function-bind/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var implementation = require('./implementation');
4 |
5 | module.exports = Function.prototype.bind || implementation;
6 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/function-bind/test/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "rules": {
3 | "array-bracket-newline": 0,
4 | "array-element-newline": 0,
5 | "max-statements-per-line": [2, { "max": 2 }],
6 | "no-invalid-this": 0,
7 | "no-magic-numbers": 0,
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/get-intrinsic/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/has-symbols/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-statements-per-line": [2, { "max": 2 }],
8 | "no-magic-numbers": 0,
9 | "multiline-comment-style": 0,
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/has-symbols/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "exclude": [
6 | "coverage",
7 | "test"
8 | ]
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/has/README.md:
--------------------------------------------------------------------------------
1 | # has
2 |
3 | > Object.prototype.hasOwnProperty.call shortcut
4 |
5 | ## Installation
6 |
7 | ```sh
8 | npm install --save has
9 | ```
10 |
11 | ## Usage
12 |
13 | ```js
14 | var has = require('has');
15 |
16 | has({}, 'hasOwnProperty'); // false
17 | has(Object.prototype, 'hasOwnProperty'); // true
18 | ```
19 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/has/src/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var bind = require('function-bind');
4 |
5 | module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
6 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/has/test/index.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var test = require('tape');
4 | var has = require('../');
5 |
6 | test('has', function (t) {
7 | t.equal(has({}, 'hasOwnProperty'), false, 'object literal does not have own property "hasOwnProperty"');
8 | t.equal(has(Object.prototype, 'hasOwnProperty'), true, 'Object.prototype has own property "hasOwnProperty"');
9 | t.end();
10 | });
11 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/inherits/inherits.js:
--------------------------------------------------------------------------------
1 | try {
2 | var util = require('util');
3 | /* istanbul ignore next */
4 | if (typeof util.inherits !== 'function') throw '';
5 | module.exports = util.inherits;
6 | } catch (e) {
7 | /* istanbul ignore next */
8 | module.exports = require('./inherits_browser.js');
9 | }
10 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/mime-db/index.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * mime-db
3 | * Copyright(c) 2014 Jonathan Ong
4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson
5 | * MIT Licensed
6 | */
7 |
8 | /**
9 | * Module exports.
10 | */
11 |
12 | module.exports = require('./db.json')
13 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/mime/.npmignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson5-6/node_modules/mime/.npmignore
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "instrumentation": false,
5 | "sourceMap": false,
6 | "reporter": ["text-summary", "text", "html", "json"],
7 | "exclude": [
8 | "coverage",
9 | "example",
10 | "test",
11 | "test-core-js.js"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/example/circular.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = { a: 1, b: [3, 4] };
5 | obj.c = obj;
6 | console.log(inspect(obj));
7 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/example/fn.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inspect = require('../');
4 | var obj = [1, 2, function f(n) { return n + 5; }, 4];
5 | console.log(inspect(obj));
6 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/example/inspect.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | /* eslint-env browser */
4 | var inspect = require('../');
5 |
6 | var d = document.createElement('div');
7 | d.setAttribute('id', 'beep');
8 | d.innerHTML = 'woooiiiii';
9 |
10 | console.log(inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }]));
11 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/test/holes.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var xs = ['a', 'b'];
5 | xs[5] = 'f';
6 | xs[7] = 'j';
7 | xs[8] = 'k';
8 |
9 | test('holes', function (t) {
10 | t.plan(1);
11 | t.equal(
12 | inspect(xs),
13 | "[ 'a', 'b', , , , 'f', , 'j', 'k' ]"
14 | );
15 | });
16 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/test/lowbyte.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { x: 'a\r\nb', y: '\x05! \x1f \x12' };
5 |
6 | test('interpolate low bytes', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | "{ x: 'a\\r\\nb', y: '\\x05! \\x1F \\x12' }"
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/test/undef.js:
--------------------------------------------------------------------------------
1 | var test = require('tape');
2 | var inspect = require('../');
3 |
4 | var obj = { a: 1, b: [3, 4, undefined, null], c: undefined, d: null };
5 |
6 | test('undef and null', function (t) {
7 | t.plan(1);
8 | t.equal(
9 | inspect(obj),
10 | '{ a: 1, b: [ 3, 4, undefined, null ], c: undefined, d: null }'
11 | );
12 | });
13 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/object-inspect/util.inspect.js:
--------------------------------------------------------------------------------
1 | module.exports = require('util').inspect;
2 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/qs/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "dist"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/setprototypeof/index.d.ts:
--------------------------------------------------------------------------------
1 | declare function setPrototypeOf(o: any, proto: object | null): any;
2 | export = setPrototypeOf;
3 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/side-channel/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
2 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/side-channel/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 |
4 | "extends": "@ljharb",
5 |
6 | "rules": {
7 | "max-lines-per-function": 0,
8 | "max-params": 0,
9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }],
10 | },
11 | }
12 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/side-channel/.nycrc:
--------------------------------------------------------------------------------
1 | {
2 | "all": true,
3 | "check-coverage": false,
4 | "reporter": ["text-summary", "text", "html", "json"],
5 | "lines": 86,
6 | "statements": 85.93,
7 | "functions": 82.43,
8 | "branches": 76.06,
9 | "exclude": [
10 | "coverage",
11 | "test"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/side-channel/README.md:
--------------------------------------------------------------------------------
1 | # side-channel
2 | Store information about any JS value in a side channel. Uses WeakMap if available.
3 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/toidentifier/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.1 / 2021-11-14
2 | ==================
3 |
4 | * pref: enable strict mode
5 |
6 | 1.0.0 / 2018-07-09
7 | ==================
8 |
9 | * Initial release
10 |
--------------------------------------------------------------------------------
/Lesson5-6/node_modules/unpipe/HISTORY.md:
--------------------------------------------------------------------------------
1 | 1.0.0 / 2015-06-14
2 | ==================
3 |
4 | * Initial release
5 |
--------------------------------------------------------------------------------
/Lesson5-6/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 |
--------------------------------------------------------------------------------
/Lesson5-6/npm vs npx and how to create an react app (Time 0_04_25;21).png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson5-6/npm vs npx and how to create an react app (Time 0_04_25;21).png
--------------------------------------------------------------------------------
/Lesson5-6/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "appnodejs",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "app.js",
6 | "scripts": {
7 | "start" : "node app.js",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "author": "",
11 | "license": "ISC",
12 | "dependencies": {
13 |
14 | "express": "^4.18.2"
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Lesson7-8/files/text1.txt:
--------------------------------------------------------------------------------
1 | test content2
--------------------------------------------------------------------------------
/Lesson7-8/text1.txt:
--------------------------------------------------------------------------------
1 | test content2
--------------------------------------------------------------------------------
/Lesson9/dynamic vs static web pages.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codershiyar/nodejs/059d39d4c89e5f3e2a745ce67907cf83683d293c/Lesson9/dynamic vs static web pages.png
--------------------------------------------------------------------------------
/Lesson9/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Coder Shiyar
8 |
9 |
10 | html page
11 | تجربة نص
12 |
13 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # nodejs
2 | Learn nodejs in Arabic : this Repository contains the files of nodejs tutorial on Coder Shiyar YouTube channel
3 |
--------------------------------------------------------------------------------
/lesson2/app.js:
--------------------------------------------------------------------------------
1 | console.log("Hello World")
--------------------------------------------------------------------------------
/lesson3/app2.js:
--------------------------------------------------------------------------------
1 | // exports.AppName = "Coder Shiyar";
2 | let AppName = "Coder Shiyar";
3 | function PrintName(){
4 | console.log("Name: " + AppName)
5 | }
6 | module.exports = {AppName,PrintName}
--------------------------------------------------------------------------------