diff options
| author | ruki <waruqi@gmail.com> | 2018-11-08 00:43:05 +0800 |
|---|---|---|
| committer | ruki <waruqi@gmail.com> | 2018-11-07 22:18:30 +0800 |
| commit | 89e95b3f143682ed9a006991bacf45c9dcba4818 (patch) | |
| tree | 4f44cf41b828577d583890bdd5a1c31e8491a6ba /node_modules/@shellscape | |
| parent | aa7f0199255277949790b41c56e8ec97dd4f0da4 (diff) | |
| download | xmake-docs-vuepress.tar.gz xmake-docs-vuepress.zip | |
remove node_modulesvuepress
Diffstat (limited to 'node_modules/@shellscape')
| -rw-r--r-- | node_modules/@shellscape/koa-send/History.md | 127 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-send/Readme.md | 105 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-send/index.js | 175 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-send/legacy/index.js | 190 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-send/package.json | 55 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-static/History.md | 113 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-static/Readme.md | 86 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-static/index.js | 73 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-static/legacy/index.js | 92 | ||||
| -rw-r--r-- | node_modules/@shellscape/koa-static/package.json | 53 |
10 files changed, 0 insertions, 1069 deletions
diff --git a/node_modules/@shellscape/koa-send/History.md b/node_modules/@shellscape/koa-send/History.md deleted file mode 100644 index 52be81eb..00000000 --- a/node_modules/@shellscape/koa-send/History.md +++ /dev/null @@ -1,127 +0,0 @@ - -4.1.2 / 2017-12-14 -================== - - * Fix issue with dots in path when using extensions array (#92) - -4.1.1 / 2017-09-25 -================== - - * Fix brotli support, closes #83 - * Fix tests - -4.1.0 / 2017-04-26 -================== - - * Add support for Cache-Control: immutable with a new "immutable" option - * Added serving of brotli versions of files - -4.0.0 / 2017-04-09 -================== - - * throw error if file not exists, closes #43 - * remove co, use async function - * bump deps - -3.3.0 / 2017-01-10 -================== - - * add extensions option - * bump deps - -3.2.0 / 2016-03-23 -================== - - * add setHeaders option - -3.1.1 / 2016-03-04 -================== - - * bump deps - * simplify scripts - -3.1.0 / 2015-10-24 -================== - - * return a promise instead of a generator - * fix: split path by path.sep instead of slash - * fix: strip root correctly on windows - * tests: resolve paths for windows - -3.0.1 / 2015-10-23 -================== - - * fix stats info when path does not finish with slash and format is enabled, closes #34 - -3.0.0 / 2015-10-21 -================== - - * bump deps - * format option defaults to true - * fix: enable format only index exists - * simplify the declarations of `format`, `gzip` - -2.0.1 / 2015-10-14 -================== - - * fix judgement of trailing slash - -2.0.0 / 2015-10-14 -================== - - * serve directories without a trailing slash, closes #27 - * when .hidden option is set, also check hidden directories, closes #17 - * bump deps: mz@2, mocha@2, koa@1 - * use resolve-path, closes #9 - * gzip version of file should not be automatically sent - * fix test: gzip.json.gz is not valid json data - -1.3.1 / 2014-09-08 -================== - - * add .maxAge alias - -1.3.0 / 2014-09-07 -================== - - * add automatically check and serve `.gz` files - * remove `finished` dependency - * refactor with `mz` - -1.2.3 / 2014-02-11 -================== - - * fix malicious path in windows - * update finished - * make assert message better - -1.2.2 / 2014-01-07 -================== - - * fix: ignore directories instead of crashing koa - -1.2.1 / 2014-01-02 -================== - - * add `content-length` header - -1.2.0 / 2013-12-27 -================== - - * add `maxage` option - -1.1.2 / 2013-12-22 -================== - - * replace deprecated ctx.error() with ctx.throw() - -1.1.1 / 2013-12-20 -================== - - * use: on-socket-error - -1.1.0 / 2013-12-19 -================== - - * add: `send` now returns the file path if sent - * add: destroy streams on socket errors to prevent fd leaks diff --git a/node_modules/@shellscape/koa-send/Readme.md b/node_modules/@shellscape/koa-send/Readme.md deleted file mode 100644 index eb92ee84..00000000 --- a/node_modules/@shellscape/koa-send/Readme.md +++ /dev/null @@ -1,105 +0,0 @@ - -# koa-send - -[![NPM version][npm-image]][npm-url] -[![Build status][travis-image]][travis-url] -[![Test coverage][coveralls-image]][coveralls-url] -[![Dependency Status][david-image]][david-url] -[![License][license-image]][license-url] -[![Downloads][downloads-image]][downloads-url] - - Static file serving middleware. - -## Installation - -```js -$ npm install koa-send -``` - -## Options - - - `maxage` Browser cache max-age in milliseconds. (defaults to `0`) - - `immutable` Tell the browser the resource is immutable and can be cached indefinitely. (defaults to `false`) - - `hidden` Allow transfer of hidden files. (defaults to `false`) - - [`root`](#root-path) Root directory to restrict file access. - - `index` Name of the index file to serve automatically when visiting the root location. (defaults to none) - - `gzip` Try to serve the gzipped version of a file automatically when `gzip` is supported by a client and if the requested file with `.gz` extension exists. (defaults to `true`). - - `brotli` Try to serve the brotli version of a file automatically when `brotli` is supported by a client and if the requested file with `.br` extension exists. (defaults to `true`). - - `format` If not `false` (defaults to `true`), format the path to serve static file servers and not require a trailing slash for directories, so that you can do both `/directory` and `/directory/`. - - [`setHeaders`](#setheaders) Function to set custom headers on response. - - `extensions` Try to match extensions from passed array to search for file when no extension is sufficed in URL. First found is served. (defaults to `false`) - -### Root path - - Note that `root` is required, defaults to `''` and will be resolved, - removing the leading `/` to make the path relative and this - path must not contain "..", protecting developers from - concatenating user input. If you plan on serving files based on - user input supply a `root` directory from which to serve from. - - For example to serve files from `./public`: - -```js -app.use(async (ctx) => { - await send(ctx, ctx.path, { root: __dirname + '/public' }); -}) -``` - - To serve developer specified files: - -```js -app.use(async (ctx) => { - await send(ctx, 'path/to/my.js'); -}) -``` - -### setHeaders - -The function is called as `fn(res, path, stats)`, where the arguments are: -* `res`: the response object -* `path`: the resolved file path that is being sent -* `stats`: the stats object of the file that is being sent. - -You should only use the `setHeaders` option when you wish to edit the `Cache-Control` or `Last-Modified` headers, because doing it before is useless (it's overwritten by `send`), and doing it after is too late because the headers are already sent. - -If you want to edit any other header, simply set them before calling `send`. - -## Example - -```js -const send = require('koa-send'); -const Koa = require('koa'); -const app = new Koa(); - -// $ GET /package.json -// $ GET / - -app.use(async (ctx) => { - if ('/' == ctx.path) return ctx.body = 'Try GET /package.json'; - await send(ctx, ctx.path); -}) - -app.listen(3000); -console.log('listening on port 3000'); -``` - -## License - - MIT - -[npm-image]: https://img.shields.io/npm/v/koa-send.svg?style=flat-square -[npm-url]: https://npmjs.org/package/koa-send -[github-tag]: http://img.shields.io/github/tag/koajs/send.svg?style=flat-square -[github-url]: https://github.com/koajs/send/tags -[travis-image]: https://img.shields.io/travis/koajs/send.svg?style=flat-square -[travis-url]: https://travis-ci.org/koajs/send -[coveralls-image]: https://img.shields.io/coveralls/koajs/send.svg?style=flat-square -[coveralls-url]: https://coveralls.io/r/koajs/send?branch=master -[david-image]: http://img.shields.io/david/koajs/send.svg?style=flat-square -[david-url]: https://david-dm.org/koajs/send -[license-image]: http://img.shields.io/npm/l/koa-send.svg?style=flat-square -[license-url]: LICENSE -[downloads-image]: http://img.shields.io/npm/dm/koa-send.svg?style=flat-square -[downloads-url]: https://npmjs.org/package/koa-send -[gittip-image]: https://img.shields.io/gittip/jonathanong.svg?style=flat-square -[gittip-url]: https://www.gittip.com/jonathanong/ diff --git a/node_modules/@shellscape/koa-send/index.js b/node_modules/@shellscape/koa-send/index.js deleted file mode 100644 index 8d87a045..00000000 --- a/node_modules/@shellscape/koa-send/index.js +++ /dev/null @@ -1,175 +0,0 @@ -/** - * Module dependencies. - */ - -const debug = require('debug')('koa-send') -const resolvePath = require('resolve-path') -const createError = require('http-errors') -const assert = require('assert') -const fs = require('mz/fs') - -const { - normalize, - basename, - extname, - resolve, - parse, - sep -} = require('path') - -/** - * Expose `send()`. - */ - -module.exports = send - -/** - * Send file at `path` with the - * given `options` to the koa `ctx`. - * - * @param {Context} ctx - * @param {String} path - * @param {Object} [opts] - * @return {Function} - * @api public - */ - -async function send (ctx, path, opts = {}) { - assert(ctx, 'koa context required') - assert(path, 'pathname required') - - // options - debug('send "%s" %j', path, opts) - const root = opts.root ? normalize(resolve(opts.root)) : '' - const trailingSlash = path[path.length - 1] === '/' - path = path.substr(parse(path).root.length) - const index = opts.index - const maxage = opts.maxage || opts.maxAge || 0 - const immutable = opts.immutable || false - const hidden = opts.hidden || false - const format = opts.format !== false - const extensions = Array.isArray(opts.extensions) ? opts.extensions : false - const brotli = opts.brotli !== false - const gzip = opts.gzip !== false - const setHeaders = opts.setHeaders - - if (setHeaders && typeof setHeaders !== 'function') { - throw new TypeError('option setHeaders must be function') - } - - // normalize path - path = decode(path) - - if (path === -1) return ctx.throw(400, 'failed to decode') - - // index file support - if (index && trailingSlash) path += index - - path = resolvePath(root, path) - - // hidden file support, ignore - if (!hidden && isHidden(root, path)) return - - let encodingExt = '' - // serve brotli file when possible otherwise gzipped file when possible - if (ctx.acceptsEncodings('br', 'identity') === 'br' && brotli && (await fs.exists(path + '.br'))) { - path = path + '.br' - ctx.set('Content-Encoding', 'br') - ctx.res.removeHeader('Content-Length') - encodingExt = '.br' - } else if (ctx.acceptsEncodings('gzip', 'identity') === 'gzip' && gzip && (await fs.exists(path + '.gz'))) { - path = path + '.gz' - ctx.set('Content-Encoding', 'gzip') - ctx.res.removeHeader('Content-Length') - encodingExt = '.gz' - } - - if (extensions && !/\.[^/]*$/.exec(path)) { - const list = [].concat(extensions) - for (let i = 0; i < list.length; i++) { - let ext = list[i] - if (typeof ext !== 'string') { - throw new TypeError('option extensions must be array of strings or false') - } - if (!/^\./.exec(ext)) ext = '.' + ext - if (await fs.exists(path + ext)) { - path = path + ext - break - } - } - } - - // stat - let stats - try { - stats = await fs.stat(path) - - // Format the path to serve static file servers - // and not require a trailing slash for directories, - // so that you can do both `/directory` and `/directory/` - if (stats.isDirectory()) { - if (format && index) { - path += '/' + index - stats = await fs.stat(path) - } else { - return - } - } - } catch (err) { - const notfound = ['ENOENT', 'ENAMETOOLONG', 'ENOTDIR'] - if (notfound.includes(err.code)) { - throw createError(404, err) - } - err.status = 500 - throw err - } - - if (setHeaders) setHeaders(ctx.res, path, stats) - - // stream - ctx.set('Content-Length', stats.size) - if (!ctx.response.get('Last-Modified')) ctx.set('Last-Modified', stats.mtime.toUTCString()) - if (!ctx.response.get('Cache-Control')) { - const directives = ['max-age=' + (maxage / 1000 | 0)] - if (immutable) { - directives.push('immutable') - } - ctx.set('Cache-Control', directives.join(',')) - } - ctx.type = type(path, encodingExt) - ctx.body = fs.createReadStream(path) - - return path -} - -/** - * Check if it's hidden. - */ - -function isHidden (root, path) { - path = path.substr(root.length).split(sep) - for (let i = 0; i < path.length; i++) { - if (path[i][0] === '.') return true - } - return false -} - -/** - * File type. - */ - -function type (file, ext) { - return ext !== '' ? extname(basename(file, ext)) : extname(file) -} - -/** - * Decode `path`. - */ - -function decode (path) { - try { - return decodeURIComponent(path) - } catch (err) { - return -1 - } -} diff --git a/node_modules/@shellscape/koa-send/legacy/index.js b/node_modules/@shellscape/koa-send/legacy/index.js deleted file mode 100644 index 043c1dd6..00000000 --- a/node_modules/@shellscape/koa-send/legacy/index.js +++ /dev/null @@ -1,190 +0,0 @@ -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _next(value) { step("next", value); } function _throw(err) { step("throw", err); } _next(); }); }; } - -/** - * Module dependencies. - */ -const debug = require('debug')('koa-send'); - -const resolvePath = require('resolve-path'); - -const createError = require('http-errors'); - -const assert = require('assert'); - -const fs = require('mz/fs'); - -const { - normalize, - basename, - extname, - resolve, - parse, - sep -} = require('path'); -/** - * Expose `send()`. - */ - - -module.exports = send; -/** - * Send file at `path` with the - * given `options` to the koa `ctx`. - * - * @param {Context} ctx - * @param {String} path - * @param {Object} [opts] - * @return {Function} - * @api public - */ - -function send(_x, _x2) { - return _send.apply(this, arguments); -} -/** - * Check if it's hidden. - */ - - -function _send() { - _send = _asyncToGenerator(function* (ctx, path, opts = {}) { - assert(ctx, 'koa context required'); - assert(path, 'pathname required'); // options - - debug('send "%s" %j', path, opts); - const root = opts.root ? normalize(resolve(opts.root)) : ''; - const trailingSlash = path[path.length - 1] === '/'; - path = path.substr(parse(path).root.length); - const index = opts.index; - const maxage = opts.maxage || opts.maxAge || 0; - const immutable = opts.immutable || false; - const hidden = opts.hidden || false; - const format = opts.format !== false; - const extensions = Array.isArray(opts.extensions) ? opts.extensions : false; - const brotli = opts.brotli !== false; - const gzip = opts.gzip !== false; - const setHeaders = opts.setHeaders; - - if (setHeaders && typeof setHeaders !== 'function') { - throw new TypeError('option setHeaders must be function'); - } // normalize path - - - path = decode(path); - if (path === -1) return ctx.throw(400, 'failed to decode'); // index file support - - if (index && trailingSlash) path += index; - path = resolvePath(root, path); // hidden file support, ignore - - if (!hidden && isHidden(root, path)) return; - let encodingExt = ''; // serve brotli file when possible otherwise gzipped file when possible - - if (ctx.acceptsEncodings('br', 'identity') === 'br' && brotli && (yield fs.exists(path + '.br'))) { - path = path + '.br'; - ctx.set('Content-Encoding', 'br'); - ctx.res.removeHeader('Content-Length'); - encodingExt = '.br'; - } else if (ctx.acceptsEncodings('gzip', 'identity') === 'gzip' && gzip && (yield fs.exists(path + '.gz'))) { - path = path + '.gz'; - ctx.set('Content-Encoding', 'gzip'); - ctx.res.removeHeader('Content-Length'); - encodingExt = '.gz'; - } - - if (extensions && !/\.[^/]*$/.exec(path)) { - const list = [].concat(extensions); - - for (let i = 0; i < list.length; i++) { - let ext = list[i]; - - if (typeof ext !== 'string') { - throw new TypeError('option extensions must be array of strings or false'); - } - - if (!/^\./.exec(ext)) ext = '.' + ext; - - if (yield fs.exists(path + ext)) { - path = path + ext; - break; - } - } - } // stat - - - let stats; - - try { - stats = yield fs.stat(path); // Format the path to serve static file servers - // and not require a trailing slash for directories, - // so that you can do both `/directory` and `/directory/` - - if (stats.isDirectory()) { - if (format && index) { - path += '/' + index; - stats = yield fs.stat(path); - } else { - return; - } - } - } catch (err) { - const notfound = ['ENOENT', 'ENAMETOOLONG', 'ENOTDIR']; - - if (notfound.includes(err.code)) { - throw createError(404, err); - } - - err.status = 500; - throw err; - } - - if (setHeaders) setHeaders(ctx.res, path, stats); // stream - - ctx.set('Content-Length', stats.size); - if (!ctx.response.get('Last-Modified')) ctx.set('Last-Modified', stats.mtime.toUTCString()); - - if (!ctx.response.get('Cache-Control')) { - const directives = ['max-age=' + (maxage / 1000 | 0)]; - - if (immutable) { - directives.push('immutable'); - } - - ctx.set('Cache-Control', directives.join(',')); - } - - ctx.type = type(path, encodingExt); - ctx.body = fs.createReadStream(path); - return path; - }); - return _send.apply(this, arguments); -} - -function isHidden(root, path) { - path = path.substr(root.length).split(sep); - - for (let i = 0; i < path.length; i++) { - if (path[i][0] === '.') return true; - } - - return false; -} -/** - * File type. - */ - - -function type(file, ext) { - return ext !== '' ? extname(basename(file, ext)) : extname(file); -} -/** - * Decode `path`. - */ - - -function decode(path) { - try { - return decodeURIComponent(path); - } catch (err) { - return -1; - } -} diff --git a/node_modules/@shellscape/koa-send/package.json b/node_modules/@shellscape/koa-send/package.json deleted file mode 100644 index 825bb6ee..00000000 --- a/node_modules/@shellscape/koa-send/package.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "name": "@shellscape/koa-send", - "description": "Transfer static files", - "repository": "shellscape/koa-send", - "version": "4.1.3", - "keywords": [ - "koa", - "file", - "static", - "sendfile" - ], - "files": [ - "index.js", - "legacy/index.js" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/cli": "^7.0.0-beta.39", - "@babel/core": "^7.0.0-beta.39", - "@babel/polyfill": "^7.0.0-beta.39", - "@babel/preset-env": "^7.0.0-beta.39", - "@babel/register": "^7.0.0-beta.39", - "eslint": "^3.19.0", - "eslint-config-standard": "^10.2.1", - "eslint-plugin-import": "^2.2.0", - "eslint-plugin-node": "^4.2.2", - "eslint-plugin-promise": "^3.5.0", - "eslint-plugin-standard": "^3.0.1", - "iltorb": "^1.2.1", - "istanbul": "0", - "koa": "2", - "mocha": "3", - "should": "11", - "supertest": "3" - }, - "license": "MIT", - "dependencies": { - "debug": "^2.6.3", - "http-errors": "^1.6.1", - "mz": "^2.6.0", - "resolve-path": "^1.3.3" - }, - "scripts": { - "lint": "eslint --fix .", - "prepublishOnly": "babel index.js --out-file legacy/index.js", - "test": "npm run prepublishOnly && mocha --require should --reporter spec", - "test-cov": "istanbul cover ./node_modules/.bin/_mocha -- --require should", - "test-travis": "istanbul cover ./node_modules/.bin/_mocha --report lcovonly -- --require should" - }, - "engines": { - "node": ">= 6.11.0" - } -} diff --git a/node_modules/@shellscape/koa-static/History.md b/node_modules/@shellscape/koa-static/History.md deleted file mode 100644 index f5dbcab1..00000000 --- a/node_modules/@shellscape/koa-static/History.md +++ /dev/null @@ -1,113 +0,0 @@ - -4.0.2 / 2017-11-16 -================== - -* Fix: `serve` mutates `opts` argument so it cannot be reused (#117) - -4.0.1 / 2017-07-09 -================== - - * Fix: throw error if error status not 404 - * fix `index: false` bug if path is directory - -4.0.0 / 2017-07-03 -================== - - * upgrade to koa-send@4 - * use async function - -3.0.0 / 2016-03-24 -================== - - * support koa 2.x - * travis: test node@4+ - -2.0.0 / 2016-01-07 -================== - - * bump koa-send@~3.1.0 - -1.5.2 / 2015-11-03 -================== - - * Fix: default index could be disabled. Closes #41 - -1.5.1 / 2015-10-14 -================== - - * Fix v1.4.x → 1.5.0 broken. Closes #53 - -1.5.0 / 2015-10-14 -================== - - * update koa-send@2 - * update devDeps - -1.4.9 / 2015-02-03 -================== - - * only support GET and HEAD requests - -1.4.8 / 2014-12-17 -================== - - * support root = `.` - -1.4.7 / 2014-09-07 -================== - - * update koa-send - -1.4.5 / 2014-05-05 -================== - - * Fix response already handled logic - Koajs now defaults status == 404. See koajs/koa#269 - -1.4.4 / 2014-05-04 -================== - - * Add two missing semicolons. Closes #24 - * Use bash syntax highlighting for install command. Closes #23 - * named generator function to help debugging. Closes #20 - -1.4.3 / 2014-02-11 -================== - - * update koa-send - -1.4.2 / 2014-01-07 -================== - - * update koa-send - -1.4.1 / 2013-12-30 -================== - - * fix for koa 0.2.1. Closes #12 - -1.4.0 / 2013-12-20 -================== - - * add: defer option - semi-breaking change - -1.3.0 / 2013-12-11 -================== - - * refactor to use koa-send - * rename maxAge -> maxage - * fix: don't bother responding if response already "handled" - -1.2.0 / 2013-09-14 -================== - - * add Last-Modified. Closes #5 - -1.1.1 / 2013-09-13 -================== - - * fix upstream responses - -1.1.0 / 2013-09-13 -================== - - * rewrite without send diff --git a/node_modules/@shellscape/koa-static/Readme.md b/node_modules/@shellscape/koa-static/Readme.md deleted file mode 100644 index 16c32eaa..00000000 --- a/node_modules/@shellscape/koa-static/Readme.md +++ /dev/null @@ -1,86 +0,0 @@ -# koa-static - -[![NPM version][npm-image]][npm-url] -[![Build status][travis-image]][travis-url] -[![Test coverage][coveralls-image]][coveralls-url] -[![Dependency Status][david-image]][david-url] -[![License][license-image]][license-url] -[![Downloads][downloads-image]][downloads-url] - - Koa static file serving middleware, wrapper for [`koa-send`](https://github.com/koajs/send). - -## Installation - -```bash -$ npm install koa-static -``` - -## API - -```js -const Koa = require('koa'); -const app = new Koa(); -app.use(require('koa-static')(root, opts)); -``` - -* `root` root directory string. nothing above this root directory can be served -* `opts` options object. - -### Options - - - `maxage` Browser cache max-age in milliseconds. defaults to 0 - - `hidden` Allow transfer of hidden files. defaults to false - - `index` Default file name, defaults to 'index.html' - - `defer` If true, serves after `return next()`, allowing any downstream middleware to respond first. - - `gzip` Try to serve the gzipped version of a file automatically when gzip is supported by a client and if the requested file with .gz extension exists. defaults to true. - - `br` Try to serve the brotli version of a file automatically when brotli is supported by a client and if the requested file with .br extension exists (note, that brotli is only accepted over https). defaults to true. - - [setHeaders](https://github.com/koajs/send#setheaders) Function to set custom headers on response. - - `extensions` Try to match extensions from passed array to search for file when no extension is sufficed in URL. First found is served. (defaults to `false`) - -## Example - -```js -const serve = require('koa-static'); -const Koa = require('koa'); -const app = new Koa(); - -// $ GET /package.json -app.use(serve('.')); - -// $ GET /hello.txt -app.use(serve('test/fixtures')); - -// or use absolute paths -app.use(serve(__dirname + '/test/fixtures')); - -app.listen(3000); - -console.log('listening on port 3000'); -``` - -### See also - - - [koajs/conditional-get](https://github.com/koajs/conditional-get) Conditional GET support for koa - - [koajs/compress](https://github.com/koajs/compress) Compress middleware for koa - - [koajs/mount](https://github.com/koajs/mount) Mount `koa-static` to a specific path - -## License - - MIT - -[npm-image]: https://img.shields.io/npm/v/koa-static.svg?style=flat-square -[npm-url]: https://npmjs.org/package/koa-static -[github-tag]: http://img.shields.io/github/tag/koajs/static.svg?style=flat-square -[github-url]: https://github.com/koajs/static/tags -[travis-image]: https://img.shields.io/travis/koajs/static.svg?style=flat-square -[travis-url]: https://travis-ci.org/koajs/static -[coveralls-image]: https://img.shields.io/coveralls/koajs/static.svg?style=flat-square -[coveralls-url]: https://coveralls.io/r/koajs/static?branch=master -[david-image]: http://img.shields.io/david/koajs/static.svg?style=flat-square -[david-url]: https://david-dm.org/koajs/static -[license-image]: http://img.shields.io/npm/l/koa-static.svg?style=flat-square -[license-url]: LICENSE -[downloads-image]: http://img.shields.io/npm/dm/koa-static.svg?style=flat-square -[downloads-url]: https://npmjs.org/package/koa-static -[gittip-image]: https://img.shields.io/gittip/jonathanong.svg?style=flat-square -[gittip-url]: https://www.gittip.com/jonathanong/ diff --git a/node_modules/@shellscape/koa-static/index.js b/node_modules/@shellscape/koa-static/index.js deleted file mode 100644 index 02355ef0..00000000 --- a/node_modules/@shellscape/koa-static/index.js +++ /dev/null @@ -1,73 +0,0 @@ - -'use strict' - -/** - * Module dependencies. - */ - -const debug = require('debug')('koa-static') -const { resolve } = require('path') -const assert = require('assert') -const send = require('koa-send') - -/** - * Expose `serve()`. - */ - -module.exports = serve - -/** - * Serve static files from `root`. - * - * @param {String} root - * @param {Object} [opts] - * @return {Function} - * @api public - */ - -function serve (root, opts) { - opts = Object.assign({}, opts) - - assert(root, 'root directory is required to serve files') - - // options - debug('static "%s" %j', root, opts) - opts.root = resolve(root) - if (opts.index !== false) opts.index = opts.index || 'index.html' - - if (!opts.defer) { - return async function serve (ctx, next) { - let done = false - - if (ctx.method === 'HEAD' || ctx.method === 'GET') { - try { - done = await send(ctx, ctx.path, opts) - } catch (err) { - if (err.status !== 404) { - throw err - } - } - } - - if (!done) { - await next() - } - } - } - - return async function serve (ctx, next) { - await next() - - if (ctx.method !== 'HEAD' && ctx.method !== 'GET') return - // response is already handled - if (ctx.body != null || ctx.status !== 404) return // eslint-disable-line - - try { - await send(ctx, ctx.path, opts) - } catch (err) { - if (err.status !== 404) { - throw err - } - } - } -} diff --git a/node_modules/@shellscape/koa-static/legacy/index.js b/node_modules/@shellscape/koa-static/legacy/index.js deleted file mode 100644 index fe21365b..00000000 --- a/node_modules/@shellscape/koa-static/legacy/index.js +++ /dev/null @@ -1,92 +0,0 @@ -'use strict'; -/** - * Module dependencies. - */ - -function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _next(value) { step("next", value); } function _throw(err) { step("throw", err); } _next(); }); }; } - -const debug = require('debug')('koa-static'); - -const { - resolve -} = require('path'); - -const assert = require('assert'); - -const send = require("@shellscape/koa-send/legacy"); -/** - * Expose `serve()`. - */ - - -module.exports = serve; -/** - * Serve static files from `root`. - * - * @param {String} root - * @param {Object} [opts] - * @return {Function} - * @api public - */ - -function serve(root, opts) { - opts = Object.assign({}, opts); - assert(root, 'root directory is required to serve files'); // options - - debug('static "%s" %j', root, opts); - opts.root = resolve(root); - if (opts.index !== false) opts.index = opts.index || 'index.html'; - - if (!opts.defer) { - return ( - /*#__PURE__*/ - function () { - var _serve = _asyncToGenerator(function* (ctx, next) { - let done = false; - - if (ctx.method === 'HEAD' || ctx.method === 'GET') { - try { - done = yield send(ctx, ctx.path, opts); - } catch (err) { - if (err.status !== 404) { - throw err; - } - } - } - - if (!done) { - yield next(); - } - }); - - return function serve(_x, _x2) { - return _serve.apply(this, arguments); - }; - }() - ); - } - - return ( - /*#__PURE__*/ - function () { - var _serve2 = _asyncToGenerator(function* (ctx, next) { - yield next(); - if (ctx.method !== 'HEAD' && ctx.method !== 'GET') return; // response is already handled - - if (ctx.body != null || ctx.status !== 404) return; // eslint-disable-line - - try { - yield send(ctx, ctx.path, opts); - } catch (err) { - if (err.status !== 404) { - throw err; - } - } - }); - - return function serve(_x3, _x4) { - return _serve2.apply(this, arguments); - }; - }() - ); -} diff --git a/node_modules/@shellscape/koa-static/package.json b/node_modules/@shellscape/koa-static/package.json deleted file mode 100644 index 24a4d5b9..00000000 --- a/node_modules/@shellscape/koa-static/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@shellscape/koa-static", - "description": "Static file serving middleware for koa", - "repository": "shellscape/koa-static", - "version": "4.0.5", - "keywords": [ - "koa", - "middleware", - "file", - "static", - "sendfile" - ], - "files": [ - "index.js", - "legacy/index.js" - ], - "publishConfig": { - "access": "public" - }, - "devDependencies": { - "@babel/cli": "^7.0.0-beta.39", - "@babel/core": "^7.0.0-beta.39", - "@babel/polyfill": "^7.0.0-beta.39", - "@babel/preset-env": "^7.0.0-beta.39", - "@babel/register": "^7.0.0-beta.39", - "babel-plugin-module-resolver": "^3.0.0", - "eslint": "^4.1.1", - "eslint-config-standard": "^10.2.1", - "eslint-plugin-import": "^2.6.1", - "eslint-plugin-node": "^5.1.0", - "eslint-plugin-promise": "^3.5.0", - "eslint-plugin-standard": "^3.0.1", - "istanbul": "^0.4.5", - "koa": "^2.3.0", - "mocha": "^3.4.2", - "supertest": "^3.0.0" - }, - "license": "MIT", - "dependencies": { - "debug": "^2.6.8", - "@shellscape/koa-send": "^4.1.0" - }, - "scripts": { - "lint": "eslint --fix .", - "prepublishOnly": "babel index.js --out-file legacy/index.js", - "test": "npm run prepublishOnly && mocha --harmony --reporter spec", - "test-cov": "node --harmony ./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha", - "test-travis": "node --harmony ./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha --report lcovonly" - }, - "engines": { - "node": ">= 6" - } -} |
