├── .eslintignore ├── .npmignore ├── .gitignore ├── flow └── types.flow.js ├── .eslintrc.yml ├── src ├── blog │ ├── index.js │ ├── tag.js │ ├── collection.js │ ├── container.js │ ├── blog.js │ └── article.js ├── app │ ├── layouts │ │ └── default.vue │ ├── mixins │ │ ├── filters.js │ │ ├── blog.js │ │ ├── tag.js │ │ ├── collection.js │ │ ├── api.js │ │ └── article.js │ ├── components │ │ ├── Collection.vue │ │ ├── Tag.vue │ │ └── Article.vue │ ├── pages │ │ ├── Blog.vue │ │ ├── Collection.vue │ │ ├── Tag.vue │ │ └── Article.vue │ └── routes.js ├── helpers │ └── path.js ├── serve │ ├── index.js │ ├── helpers.js │ └── routes │ │ └── index.js ├── build │ ├── generate.js │ └── index.js └── index.js ├── .editorconfig ├── .babelrc ├── README.md ├── rollup.config.js ├── package.json └── shrinkwrap.yaml /.eslintignore: -------------------------------------------------------------------------------- 1 | dist/ -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /flow 3 | .* 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /dist 3 | 4 | *.log 5 | -------------------------------------------------------------------------------- /flow/types.flow.js: -------------------------------------------------------------------------------- 1 | export interface I { 2 | id: string 3 | } 4 | -------------------------------------------------------------------------------- /.eslintrc.yml: -------------------------------------------------------------------------------- 1 | root: true 2 | extends: 'vue-app' 3 | plugins: 4 | - json 5 | -------------------------------------------------------------------------------- /src/blog/index.js: -------------------------------------------------------------------------------- 1 | import Blog from './blog' 2 | 3 | export default new Blog() 4 | -------------------------------------------------------------------------------- /src/app/layouts/default.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 10 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_size = 2 6 | indent_style = space 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | "es2015-rollup", 4 | [ 5 | "env", 6 | { 7 | "targets": { 8 | "node": "7" 9 | }, 10 | "modules": false 11 | } 12 | ] 13 | ], 14 | "plugins": [ 15 | "transform-flow-strip-types", 16 | "transform-object-rest-spread" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Blog 2 | 3 | Create a blog with nuxt. 4 | 5 | ## Setup 6 | 7 | - Add `@nuxtjs/blog` dependency using yarn or npm to your project 8 | - Add `@nuxtjs/blog` module to `nuxt.config.js`: 9 | ``` js 10 | modules: [{ 11 | src: '@nuxtjs/blog', 12 | }] 13 | ``` 14 | 15 | ## Usage 16 | 17 | Put your markdown articles/posts in `blog` directory in project root. 18 | -------------------------------------------------------------------------------- /src/helpers/path.js: -------------------------------------------------------------------------------- 1 | import slug from 'slug' 2 | 3 | export function format(template, resource) { 4 | const keys = Object.keys(resource) 5 | 6 | keys.forEach(key => { 7 | if (['number', 'string'].includes(typeof (resource[key]))) { 8 | template = template.replace(new RegExp(`:${key}`, 'gi'), slug(`${resource[key]}`)) 9 | } 10 | }) 11 | 12 | return template.replace(/\/?:[^/]+/g, '') 13 | } 14 | -------------------------------------------------------------------------------- /src/app/mixins/filters.js: -------------------------------------------------------------------------------- 1 | export const formatDate = function (any) { 2 | const date = new Date(any) 3 | const months = [ 4 | 'January', 5 | 'February', 6 | 'March', 7 | 'April', 8 | 'May', 9 | 'June', 10 | 'July', 11 | 'August', 12 | 'September', 13 | 'October', 14 | 'November', 15 | 'December' 16 | ] 17 | 18 | return `${months[date.getMonth()]} ${date.getDate()}, ${date.getFullYear()}` 19 | } 20 | -------------------------------------------------------------------------------- /src/app/components/Collection.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 24 | -------------------------------------------------------------------------------- /src/app/mixins/blog.js: -------------------------------------------------------------------------------- 1 | import { api } from './api' 2 | 3 | export default { 4 | name: 'BlogIndex', 5 | 6 | async asyncData(context) { 7 | const { params, payload, app } = context 8 | 9 | if (typeof (payload) === 'object' && payload) { 10 | return { page: payload } 11 | } 12 | 13 | return { page: await api(process.env.__NUXT_BLOG__.templates.indexArticles, params, app) } 14 | }, 15 | 16 | computed: { 17 | articles() { 18 | return this.page || [] 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/app/mixins/tag.js: -------------------------------------------------------------------------------- 1 | import { api } from './api' 2 | 3 | export default { 4 | name: 'TagPage', 5 | 6 | async asyncData(context) { 7 | const { params, payload, app } = context 8 | 9 | if (typeof (payload) === 'object' && payload) { 10 | return { tag: payload } 11 | } 12 | 13 | return { tag: await api(process.env.__NUXT_BLOG__.templates.tag, params, app) } 14 | }, 15 | 16 | computed: { 17 | articles() { 18 | return this.tag ? this.tag.articles : [] 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/serve/index.js: -------------------------------------------------------------------------------- 1 | import { Router as createRouter } from 'express' 2 | import path from 'path' 3 | import registerRotues from './routes' 4 | 5 | export default function (context, options) { 6 | const router = createRouter() 7 | const generateDir = ( 8 | context.nuxt.options.generate && 9 | context.nuxt.options.generate.dir && 10 | path.resolve(options.rootDir, context.nuxt.options.generate.dir) 11 | ) || path.resolve(options.rootDir, 'dist') 12 | options.distDir = path.resolve(generateDir, '_nuxt') 13 | 14 | registerRotues(router, context, options) 15 | } 16 | -------------------------------------------------------------------------------- /src/app/mixins/collection.js: -------------------------------------------------------------------------------- 1 | import { formatDate } from './filters' 2 | import { api } from './api' 3 | 4 | export default { 5 | name: 'CollectionPage', 6 | 7 | async asyncData(context) { 8 | const { params, payload, app } = context 9 | 10 | if (typeof (payload) === 'object' && payload) { 11 | return { collection: payload } 12 | } 13 | 14 | return { collection: await api(process.env.__NUXT_BLOG__.templates.collection, params, app) } 15 | }, 16 | 17 | computed: { 18 | articles() { 19 | return this.collection ? this.collection.articles : [] 20 | } 21 | }, 22 | 23 | filters: { formatDate } 24 | } 25 | -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- 1 | import babel from 'rollup-plugin-babel' 2 | import resolve from 'rollup-plugin-node-resolve' 3 | import commonjs from 'rollup-plugin-commonjs' 4 | import json from 'rollup-plugin-json' 5 | 6 | export default { 7 | entry: './src/index.js', 8 | dest: 'dist/blog-module.js', 9 | format: 'cjs', 10 | plugins: [ 11 | json(), 12 | babel(), 13 | commonjs(), 14 | resolve() 15 | ], 16 | external: [ 17 | 'slug', 18 | 'path', 19 | 'pify', 20 | 'fs', 21 | 'front-matter', 22 | 'markdown-it', 23 | 'glob', 24 | 'prismjs', 25 | 'cheerio', 26 | 'webpack', 27 | 'express', 28 | 'babel-polyfill', 29 | 'chalk' 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /src/app/components/Tag.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 24 | 25 | 42 | -------------------------------------------------------------------------------- /src/app/pages/Blog.vue: -------------------------------------------------------------------------------- 1 | 17 | 18 | 27 | -------------------------------------------------------------------------------- /src/blog/tag.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | import slug from 'slug' 3 | import Container from './container' 4 | import Article from './article' 5 | 6 | export default class Tag { 7 | id: string 8 | name: string 9 | /** @private */ 10 | _articles: Container 11 | 12 | constructor(name: string) { 13 | this.id = slug(name, { lower: true }) 14 | this.name = name 15 | Object.defineProperties(this, { 16 | _articles: { value: new Container() } 17 | }) 18 | } 19 | 20 | addArticle(article: Article) { 21 | this._articles.addItem(article) 22 | } 23 | 24 | get articles(): Article[] { 25 | return this._articles.items 26 | } 27 | 28 | toPlainObject(): Object { 29 | return { id: this.id, name: this.name, articles: this.articles.map(article => article.preview) } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/blog/collection.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | import slug from 'slug' 3 | import Container from './container' 4 | import Article from './article' 5 | 6 | export default class Collection { 7 | id: string 8 | name: string 9 | /** @private */ 10 | _articles: Container 11 | 12 | constructor(name: string) { 13 | this.id = slug(name, { lower: true }) 14 | this.name = name 15 | Object.defineProperties(this, { 16 | _articles: { value: new Container() } 17 | }) 18 | } 19 | 20 | addArticle(article: Article) { 21 | this._articles.addItem(article) 22 | } 23 | 24 | get articles(): Article[] { 25 | return this._articles.items 26 | } 27 | 28 | toPlainObject(): Object { 29 | return { id: this.id, name: this.name, articles: this.articles.map(article => article.preview) } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/blog/container.js: -------------------------------------------------------------------------------- 1 | // @flow 2 | export default class Container { 3 | constructor(sort = (a: T, b: T) => a.id < b.id) { 4 | Object.defineProperties(this, { 5 | _sort: { value: sort }, 6 | _items: { value: {} }, 7 | _dirty: { value: false, writable: true }, 8 | _sorted: { value: [], writable: true } 9 | }) 10 | } 11 | 12 | get items(): T[] { 13 | if (this._dirty === true) { 14 | this._sorted = Object.values(this._items).sort(this._sort) 15 | } 16 | 17 | return this._sorted 18 | } 19 | 20 | get length(): number { 21 | return Object.keys(this._items).length 22 | } 23 | 24 | addItem(item: T) { 25 | this._items[item.id] = item 26 | this._dirty = true 27 | } 28 | 29 | getItem(id: string) { 30 | return this._items[id] 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /src/app/components/Article.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 41 | 42 | 51 | -------------------------------------------------------------------------------- /src/app/routes.js: -------------------------------------------------------------------------------- 1 | import path from 'path' 2 | 3 | const resolve = filename => path.resolve(__dirname, '../src/app', filename) 4 | 5 | export const routes = [ 6 | { 7 | name: '@nuxtjs/blog:index', 8 | path: '/blog', 9 | component: resolve('./pages/Blog.vue') 10 | }, 11 | { 12 | name: '@nuxtjs/blog:page', 13 | path: '/blog/pages/:page', 14 | component: resolve('./pages/Blog.vue') 15 | }, 16 | { 17 | name: '@nuxtjs/blog:tag', 18 | path: '/blog/tags/:id/:page?', 19 | component: resolve('./pages/Tag.vue') 20 | }, 21 | { 22 | name: '@nuxtjs/blog:collection', 23 | path: '/blog/collections/:id/:page?', 24 | component: resolve('./pages/Collection.vue') 25 | }, 26 | { 27 | name: '@nuxtjs/blog:article', 28 | path: '/blog/:collection?/:id', 29 | component: resolve('./pages/Article.vue') 30 | } 31 | ] 32 | 33 | export default function (options, router, r) { 34 | options.routes.forEach(route => { 35 | const index = routes.findIndex(r => r.name === route.name) 36 | 37 | if (index > -1) Object.assign(routes[index], route) 38 | }) 39 | 40 | router.push(...routes.map(route => ({ ...route, component: r(route.component) }))) 41 | } 42 | -------------------------------------------------------------------------------- /src/app/mixins/api.js: -------------------------------------------------------------------------------- 1 | const base = process.env.__NUXT_BLOG__.base.replace(/\/$/, '') 2 | const prefix = process.env.__NUXT_BLOG__.api.prefix 3 | 4 | export function format(template, resource) { 5 | const keys = Object.keys(resource) 6 | 7 | keys.forEach(key => { 8 | if (['number', 'string'].includes(typeof (resource[key]))) { 9 | template = template.replace(new RegExp(`:${key}`, 'gi'), `${resource[key]}`) 10 | } 11 | }) 12 | 13 | return template.replace(/\/?:[^/]+/g, '').replace(/\/+/g, '/').replace(/\/$/, '') 14 | } 15 | 16 | async function get (url, app) { 17 | if (!app || !('$axios' in app)) { 18 | console.log('Use @nuxtjs/axios or axios plugin.\n' + 19 | 'this.$axios is requried to fetch from blog API.\n' + 20 | 'Falling back to fetch API. https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API') 21 | 22 | return (await fetch(url)).json() 23 | } 24 | 25 | return (await app.$axios.get(url)).data 26 | } 27 | 28 | export const api = async (url, params, app) => { 29 | if (process.env.__NUXT_BLOG__.static) { 30 | let publicPath = process.env.__NUXT_BLOG__.publicPath 31 | return await get(`${base}${format(`/${publicPath}/${prefix}/${url}`, params)}.json`, app) 32 | } 33 | 34 | return await get(`${base}${format(`/${prefix}/${url}`, params)}`, app) 35 | } 36 | -------------------------------------------------------------------------------- /src/app/pages/Collection.vue: -------------------------------------------------------------------------------- 1 | 26 | 27 | 36 | 37 | 38 | 50 | -------------------------------------------------------------------------------- /src/app/pages/Tag.vue: -------------------------------------------------------------------------------- 1 | 26 | 27 | 36 | 37 | 38 | 55 | -------------------------------------------------------------------------------- /src/build/generate.js: -------------------------------------------------------------------------------- 1 | import { routes } from '../app/routes' 2 | import { format } from '../helpers/path' 3 | import blog from '../blog' 4 | 5 | function toPlainObject(any) { 6 | if (Array.isArray(any)) { 7 | return any.map(item => JSON.parse(JSON.stringify(item))) 8 | } 9 | 10 | return JSON.parse(JSON.stringify(any)) 11 | } 12 | 13 | export default async function () { 14 | await blog.create() 15 | const paths = [] 16 | routes.forEach(route => { 17 | switch (route.name) { 18 | case '@nuxtjs/blog:index': 19 | paths.push({ 20 | route: route.path, 21 | payload: toPlainObject(blog.articles.map(article => article.preview)) 22 | }) 23 | break 24 | case '@nuxtjs/blog:article': 25 | paths.push(...blog.articles.map(article => ({ 26 | route: format(route.path, article), 27 | payload: toPlainObject(article) 28 | }))) 29 | break 30 | case '@nuxtjs/blog:tag': 31 | paths.push(...blog.tags.map(tag => ({ 32 | route: format(route.path, tag), 33 | payload: toPlainObject(tag.toPlainObject()) 34 | }))) 35 | break 36 | case '@nuxtjs/blog:collection': 37 | paths.push(...blog.collections.map(collection => ({ 38 | route: format(route.path, collection), 39 | payload: toPlainObject(collection.toPlainObject()) 40 | }))) 41 | break 42 | default: 43 | // -- Ignore! 44 | } 45 | }) 46 | 47 | return paths 48 | } 49 | -------------------------------------------------------------------------------- /src/serve/helpers.js: -------------------------------------------------------------------------------- 1 | import fs from 'fs' 2 | import chalk from 'chalk' 3 | 4 | export const send404 = res => { 5 | res.statusCode = 404 6 | res.statusMessage = 'Not Found' 7 | res.end() 8 | } 9 | 10 | export const sendJson = (content, res) => { 11 | if (!content) { 12 | console.log(` ${chalk.blue('blog:api')} ${chalk.red('Not found')}`) 13 | 14 | return send404(res) 15 | } 16 | 17 | content = JSON.stringify(content, null, 2) 18 | console.log(` ${chalk.blue('blog:api')} ${chalk.green('application/json')}`) 19 | console.log(` ${chalk.blue('blog:api')} ${JSON.stringify(content).substr(0, 40)}...}`) 20 | res.setHeader('Content-Type', 'application/json') 21 | res.end(content, 'utf-8') 22 | } 23 | 24 | export const sendFile = (filename, res) => { 25 | console.log(` Resolved file: ${filename}`) 26 | fs.exists(filename, exists => { 27 | if (exists) { 28 | console.log(` Found required file. Attempting response.`) 29 | fs.readFile(filename, { encoding: 'utf-8' }, (error, content) => { 30 | if (error) { 31 | console.log(` Failed to send response.`, error) 32 | res.statusCode = 500 33 | res.statusMessage = 'Internal Server Error' 34 | res.end(error.stack || String(error)) 35 | } 36 | 37 | res.setHeader('Content-Type', 'application/json') 38 | res.end(content, 'utf-8') 39 | console.log(` Response sent successfully.`) 40 | }) 41 | } else { 42 | return send404(res) 43 | } 44 | }) 45 | } 46 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@nuxtjs/blog", 3 | "version": "0.0.1-6", 4 | "description": "Build a nuxt blog", 5 | "main": "./dist/blog-module.js", 6 | "module": "./src/index.js", 7 | "jsnext:main": "./src/index.js", 8 | "repository": "https://github.com/nuxt-community/blog-module", 9 | "author": "Rahul Kadyan ", 10 | "license": "MIT", 11 | "scripts": { 12 | "lint": "eslint --ext .vue,.js,.json .", 13 | "lint:fix": "eslint --fix --ext .vue,.js,.json .", 14 | "precommit": "yarn run lint", 15 | "build": "rollup -c", 16 | "prepublishOnly": "npm run build", 17 | "postpublish": "git push && git push --tags" 18 | }, 19 | "dependencies": { 20 | "babel-polyfill": "^6.23.0", 21 | "babel-plugin-transform-object-rest-spread": "^6.23.0", 22 | "chalk": "2.0.1", 23 | "cheerio": "^1.0.0-rc.1", 24 | "express": "^4.15.3", 25 | "flat": "^2.0.1", 26 | "front-matter": "^2.1.2", 27 | "glob": "latest", 28 | "markdown-it": "8.3.1", 29 | "markdown-it-decorate": "1.2.2", 30 | "markdown-it-emoji": "1.4.0", 31 | "merge-options": "^1.0.0", 32 | "node-sass": "^4.5.3", 33 | "pify": "^3.0.0", 34 | "prismjs": "^1.6.0", 35 | "sass-loader": "^6.0.6", 36 | "slug": "^0.9.1", 37 | "vue-disqus": "^2.0.3", 38 | "webpack": "^3.0.0" 39 | }, 40 | "devDependencies": { 41 | "babel-plugin-transform-flow-strip-types": "^6.22.0", 42 | "babel-preset-env": "^1.5.2", 43 | "babel-preset-es2015-rollup": "^3.0.0", 44 | "babel-preset-vue-app": "^1.2.0", 45 | "eslint": "4.1.1", 46 | "eslint-config-vue-app": "^1.3.3", 47 | "eslint-plugin-json": "^1.2.0", 48 | "rollup": "0.43.0", 49 | "rollup-plugin-babel": "^2.7.1", 50 | "rollup-plugin-commonjs": "^8.0.2", 51 | "rollup-plugin-json": "^2.3.0", 52 | "rollup-plugin-node-resolve": "^3.0.0" 53 | }, 54 | "peerDependencies": { 55 | "@nuxtjs/axios": "*" 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /src/build/index.js: -------------------------------------------------------------------------------- 1 | import { DefinePlugin } from 'webpack' 2 | import flat from 'flat' 3 | import blog from '../blog' 4 | import generate from './generate' 5 | 6 | export function makeResource(object) { 7 | const content = JSON.stringify(object, null, process.env.NODE_ENV === 'production' ? 0 : 2) 8 | 9 | return { source: () => content, size: () => content.length } 10 | } 11 | 12 | export function defineOptions(options, context) { 13 | const flattened = flat(Object.assign({}, options)) 14 | const define = {} 15 | Object.keys(flattened).forEach(key => { 16 | define[`process.env.__NUXT_BLOG__.${key}`] = JSON.stringify(flattened[key]) 17 | }) 18 | context.options.build.plugins.push(new DefinePlugin(define)) 19 | } 20 | 21 | export function compileBlog(options, context) { 22 | context.options.build.plugins.push({ 23 | apply(compiler) { 24 | compiler.plugin('emit', (compilation, cb) => { 25 | blog.generate(options).then(files => { 26 | Object.keys(files).forEach(filename => { 27 | compilation.assets[filename] = makeResource(files[filename]) 28 | }) 29 | cb() 30 | }).catch(exception => { 31 | console.log(' |> Compilation failed.', exception) 32 | }) 33 | }) 34 | } 35 | }) 36 | } 37 | 38 | function override(options, cb) { 39 | if (options.generate === undefined) options.generate = {} 40 | if (Array.isArray(options.generate.routes)) { 41 | const routes = options.generate.routes 42 | options.generate.routes = async () => routes.concat(await cb()) 43 | } else if (typeof (options.generate.routes) === 'function') { 44 | const original = options.generate.routes 45 | options.generate.routes = async (...any) => [].concat(await original(...any), await cb()) 46 | } else { 47 | options.generate.routes = cb 48 | } 49 | } 50 | 51 | export default function (context, options) { 52 | compileBlog(options, context) 53 | defineOptions(options, context) 54 | override(context.options, () => generate(options, context)) 55 | } 56 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import 'babel-polyfill' 2 | 3 | import path from 'path' 4 | import merge from 'merge-options' 5 | import blog from './blog' 6 | import registerRoutes, { routes } from './app/routes' 7 | import serve from './serve' 8 | import build from './build' 9 | import meta from '../package.json' 10 | 11 | export default function NuxtModule(options) { 12 | const defaults = { 13 | base: 'http://localhost:3000', 14 | publicPath: '/_nuxt/', 15 | comments: false, 16 | static: true, 17 | dir: 'blog', 18 | api: { 19 | prefix: 'api/blog' 20 | }, 21 | templates: { 22 | article: '/posts/:id', 23 | tag: '/tags/:id', 24 | collection: '/collections/:id', 25 | indexArticles: '/', 26 | indexTags: '/tags', 27 | indexCollections: '/collections' 28 | }, 29 | routes, 30 | disqus: { 31 | url: options.base || 'http://localhost:3000', 32 | shortname: undefined, 33 | api_key: undefined, // eslint-disable-line camelcase 34 | sso_config: undefined // eslint-disable-line camelcase 35 | }, 36 | twitter: null, 37 | og: null, 38 | fb: null, 39 | markdown: { 40 | plugins: [ 41 | require('markdown-it-decorate'), 42 | require('markdown-it-emoji') 43 | ] 44 | } 45 | } 46 | const nuxtOptions = this.nuxt.options 47 | 48 | options = merge(defaults, options, { 49 | publicPath: (nuxtOptions.build || {}).publicPath || defaults.publicPath, 50 | static: nuxtOptions.dev ? defaults.static : (options.static === true), 51 | base: nuxtOptions.dev ? options.devBase || defaults.base : options.base || '' 52 | }) 53 | options.rootDir = nuxtOptions.rootDir 54 | options.path = path.resolve(nuxtOptions.rootDir, options.dir) 55 | 56 | blog.context = this 57 | blog.addSource(`${options.path}/**/*.md`) 58 | 59 | // Register blog routes. 60 | this.extendRoutes((...any) => registerRoutes(options, ...any)) 61 | // Register api server. 62 | serve(this, options) 63 | // Register build process. 64 | build(this, options) 65 | // Register layout. 66 | // this. 67 | } 68 | 69 | NuxtModule.meta = meta 70 | -------------------------------------------------------------------------------- /src/serve/routes/index.js: -------------------------------------------------------------------------------- 1 | import chalk from 'chalk' 2 | import path from 'path' 3 | import blog from '../../blog' 4 | import { sendFile, sendJson } from '../helpers' 5 | 6 | import { format } from '../../helpers/path' 7 | 8 | export default function (router, context, options) { 9 | function request(url) { 10 | console.log(` ${chalk.blue('blog:api')} ${chalk.green('GET')} /${options.api.prefix}${url}`) 11 | 12 | return url 13 | } 14 | 15 | function resolve(filename) { 16 | return path.resolve(options.distDir, `${options.api.prefix}/${filename}`.replace(/\/+/, '/').replace(/\/+$/, '') + '.json') 17 | } 18 | 19 | const templates = options.templates 20 | const dev = () => { 21 | if (context.nuxt.options.dev) { 22 | console.log(` ${chalk.blue('blog:api')} ... running in dev mode`) 23 | return true 24 | } 25 | } 26 | router.get(templates.indexArticles, (req, res) => { 27 | const url = request(format(templates.indexArticles, req.params)) 28 | 29 | if (dev()) { 30 | blog.create(options, true).then(() => sendJson(blog.articles.map(article => article.preview), res)) 31 | return 32 | } 33 | 34 | sendFile(resolve(url), res) 35 | }) 36 | router.get(templates.indexTags, (req, res) => { 37 | const url = request(format(templates.indexTags, req.params)) 38 | 39 | if (dev()) { 40 | blog.create(options, true).then(() => sendJson(blog.tags, res)) 41 | return 42 | } 43 | 44 | sendFile(resolve(url), res) 45 | }) 46 | router.get(templates.tag, (req, res) => { 47 | const url = request(format(templates.tag, req.params)) 48 | if (dev()) { 49 | blog.create(options, true).then(() => sendJson(blog.findTag(req.params).toPlainObject(), res)) 50 | return 51 | } 52 | sendFile(resolve(url), res) 53 | }) 54 | router.get(templates.indexCollections, (req, res) => { 55 | const url = request(format(templates.indexCollections, req.params)) 56 | 57 | if (dev()) { 58 | blog.create(options, true).then(() => sendJson(blog.collections, res)) 59 | return 60 | } 61 | 62 | sendFile(resolve(url), res) 63 | }) 64 | router.get(templates.collection, (req, res) => { 65 | const url = request(format(templates.collection, req.params)) 66 | if (dev()) { 67 | blog.create(options, true).then(() => sendJson(blog.findCollection(req.params).toPlainObject(), res)) 68 | return 69 | } 70 | sendFile(resolve(url), res) 71 | }) 72 | router.get(templates.article, (req, res) => { 73 | const url = request(format(templates.article, req.params)) 74 | 75 | if (dev()) { 76 | blog.create(options, true).then(() => sendJson(blog.addPaginationLinks(blog.findArticle(req.params)), res)) 77 | return 78 | } 79 | 80 | sendFile(resolve(url), res) 81 | }) 82 | 83 | console.log(` ${chalk.blue('blog:api')} Listening on /${options.api.prefix}`) 84 | context.addServerMiddleware({ 85 | path: `/${options.api.prefix}`, 86 | handler: router 87 | }) 88 | } 89 | -------------------------------------------------------------------------------- /src/app/mixins/article.js: -------------------------------------------------------------------------------- 1 | import { formatDate } from './filters' 2 | import { api } from './api' 3 | 4 | export default { 5 | name: 'Article', 6 | 7 | async asyncData(context) { 8 | const { params, payload, app } = context 9 | 10 | if (typeof (payload) === 'object' && payload) { 11 | return { article: payload } 12 | } 13 | 14 | return { article: await api(process.env.__NUXT_BLOG__.templates.article, params, app) } 15 | }, 16 | 17 | head() { 18 | if (!this.article) { 19 | return { title: '404. Not Found' } 20 | } 21 | 22 | const meta = [ 23 | { hid: 'description', name: 'description', content: this.article.description }, 24 | { hid: 'keywords', name: 'keywords', content: this.article.keywords.join(', ') } 25 | ] 26 | const link = [] 27 | 28 | if (this.article.highlightedLanguages.length) { 29 | link.push({ 30 | rel: 'stylesheet', 31 | href: `//unpkg.com/prismjs/themes/prism${this.article.attributes.highlight ? 32 | '-' + this.article.attributes.highlight : ''}.css` 33 | }) 34 | } 35 | 36 | const twitter = Object.assign({ 37 | card: 'summary', 38 | title: this.article.title, 39 | description: this.article.description, 40 | image: this.article.photo, 41 | url: this.$route.path 42 | }, this.article.attributes.twitter || {}, process.env.__NUXT_BLOG__.twitter || {}) 43 | const twitterMeta = Object.keys(twitter).map(key => { 44 | if (key === 'image') { 45 | return { name: `twitter:${key}`, content: twitter[key] } 46 | } 47 | 48 | return { hid: `twitter:${key}`, name: `twitter:${key}`, content: twitter[key] } 49 | }) 50 | 51 | const og = Object.assign({ 52 | type: 'article', 53 | title: this.article.title, 54 | description: this.article.description, 55 | image: this.article.photo, 56 | url: this.$route.path 57 | }, this.article.attributes.og || {}, process.env.__NUXT_BLOG__.og || {}) 58 | const ogMeta = Object.keys(og).map(key => ({ 59 | hid: `og:${key}`, 60 | name: `og:${key}`, 61 | content: og[key] 62 | })) 63 | 64 | const fb = Object.assign(this.article.attributes.fb || {}, process.env.__NUXT_BLOG__.fb || {}) 65 | const fbMeta = Object.keys(fb).map(key => ({ 66 | hid: `fb:${key}`, 67 | name: `fb:${key}`, 68 | content: fb[key] 69 | })) 70 | 71 | return { 72 | title: this.article.attributes.title, 73 | meta: [].concat(meta, twitterMeta, ogMeta, fbMeta), 74 | link 75 | } 76 | }, 77 | 78 | filters: { formatDate }, 79 | 80 | computed: { 81 | disqus() { 82 | /* eslint-disable camelcase */ 83 | const disqus = { 84 | url: process.env.__NUXT_BLOG__.disqus.url, 85 | shortname: process.env.__NUXT_BLOG__.disqus.shortname, 86 | api_key: process.env.__NUXT_BLOG__.disqus.api_key, 87 | sso_config: JSON.parse(process.env.__NUXT_BLOG__.disqus.sso_config || '{}') 88 | } 89 | const article = this.article 90 | 91 | return Object.assign({}, disqus, { 92 | identifier: article.id, 93 | title: article.title, 94 | url: `${(disqus.url || '').replace(/\/$/, '')}${this.$route.path}` 95 | }) 96 | /* eslint-enable camelcase */ 97 | }, 98 | comments() { 99 | return ('comments' in this.article.attributes) ? 100 | this.article.attributes.comments : 101 | process.env.__NUXT_BLOG__.comments 102 | } 103 | } 104 | } 105 | -------------------------------------------------------------------------------- /src/blog/blog.js: -------------------------------------------------------------------------------- 1 | import slug from 'slug' 2 | import pify from 'pify' 3 | import glob from 'glob' 4 | import Collection from './collection' 5 | import Container from './container' 6 | import Tag from './tag' 7 | import Article from './article' 8 | import { format } from '../helpers/path' 9 | 10 | function compare(a, b) { 11 | return Object.keys(a).every(key => a[key] === b[key]) 12 | } 13 | 14 | function find(items, query) { 15 | return items.find(item => compare(query, item)) 16 | } 17 | 18 | export default class Blog { 19 | _articles: Container
20 | _tags: Container 21 | _collections: Container 22 | 23 | constructor() { 24 | this.patterns = [] 25 | this._articles = new Container() 26 | this._tags = new Container() 27 | this._dirty = true 28 | this._collections = new Container() 29 | } 30 | 31 | set context(context) { 32 | this._context = context 33 | } 34 | 35 | set options(options: Object) { 36 | this._options = options 37 | } 38 | 39 | get articles(): Article[] { 40 | return this._articles.items 41 | } 42 | 43 | get tags(): Tag[] { 44 | return this._tags.items 45 | } 46 | 47 | get collections(): Collection[] { 48 | return this._collections.items 49 | } 50 | 51 | addSource(pattern: string) { 52 | this.patterns.push(pattern) 53 | this._dirty = true 54 | } 55 | 56 | async create(options, force = false) { 57 | if (this._dirty || force) { 58 | this._options = options 59 | await Promise.all( 60 | this.patterns.map(async pattern => { 61 | const files = await pify(glob)(pattern) 62 | 63 | await Promise.all(files.map(async filename => this._addArticle(filename))) 64 | }) 65 | ) 66 | } 67 | this._dirty = false 68 | } 69 | 70 | async generate(options) { 71 | const templates = options.templates 72 | await this.create(options) 73 | const output = {} 74 | 75 | function resolve(filename) { 76 | return `${options.api.prefix}/${filename}`.replace(/\/+/g, '/').replace(/\/+$/, '') + '.json' 77 | } 78 | 79 | this.articles.forEach((article: Article) => { 80 | output[format(resolve(templates.article), article)] = this.addPaginationLinks(article) 81 | }) 82 | this.tags.forEach((tag: Tag) => { 83 | output[format(resolve(templates.tag), tag)] = tag.toPlainObject() 84 | }) 85 | this.collections.forEach((collection: Collection) => { 86 | output[format(resolve(templates.collection), collection)] = collection.toPlainObject() 87 | }) 88 | 89 | output[resolve(templates.indexArticles)] = this.articles.map(article => article.preview) 90 | output[resolve(templates.indexTags)] = this.tags 91 | output[resolve(templates.indexCollections)] = this.collections 92 | 93 | return output 94 | } 95 | 96 | addPaginationLinks(article: Article) { 97 | const json = JSON.parse(JSON.stringify(article)) 98 | const next = this.getNextArticle(article) 99 | const prev = this.getPrevArticle(article) 100 | 101 | if (next) { 102 | json.next = next.preview 103 | } 104 | 105 | if (prev) { 106 | json.prev = prev.preview 107 | } 108 | 109 | return json 110 | } 111 | 112 | async _addArticle(filename: string) { 113 | const article = await Article.create(filename, this._options, this) 114 | 115 | this._articles.addItem(article) 116 | article.tags.forEach(tag => tag.addArticle(article)) 117 | article.collection && article.collection.addArticle(article) 118 | 119 | return article 120 | } 121 | 122 | getArticle(id: string): Article { 123 | return this._articles.getItem(id) 124 | } 125 | 126 | getNextArticle(id: string | Article): Article | null { 127 | const article = typeof (id) === 'string' ? this.getArticle(id) : id 128 | const index = this.articles.findIndex(other => article.id === other.id) 129 | 130 | return index > 0 ? this.articles[index - 1] : null 131 | } 132 | 133 | getPrevArticle(id: string | Article): Article | null { 134 | const article = typeof (id) === 'string' ? this.getArticle(id) : id 135 | const index = this.articles.findIndex(other => article.id === other.id) 136 | 137 | return index + 1 < this.articles.length ? this.articles[index + 1] : null 138 | } 139 | 140 | getCollection(name: string): Collection { 141 | const id = slug(name, { lower: true }) 142 | let collection = this._collections.getItem(id) 143 | 144 | if (!collection) { 145 | collection = new Collection(name) 146 | this._collections.addItem(collection) 147 | } 148 | 149 | return collection 150 | } 151 | 152 | getTag(name: string): Tag { 153 | const id = slug(name, { lower: true }) 154 | let tag = this._tags.getItem(id) 155 | 156 | if (!tag) { 157 | tag = new Tag(name) 158 | this._tags.addItem(tag) 159 | } 160 | 161 | return tag 162 | } 163 | 164 | findArticle(params) { 165 | return find(this.articles, params) 166 | } 167 | 168 | findTag(params) { 169 | return find(this.tags, params) 170 | } 171 | 172 | findCollection(params) { 173 | return find(this.collections, params) 174 | } 175 | } 176 | -------------------------------------------------------------------------------- /src/app/pages/Article.vue: -------------------------------------------------------------------------------- 1 | 68 | 69 | 80 | 81 | 205 | -------------------------------------------------------------------------------- /src/blog/article.js: -------------------------------------------------------------------------------- 1 | import fs from 'fs' 2 | import fm from 'front-matter' 3 | import pify from 'pify' 4 | import Markdown from 'markdown-it' 5 | import Prism from 'prismjs' 6 | import path from 'path' 7 | import slug from 'slug' 8 | import cheer from 'cheerio' 9 | import Blog from './blog' 10 | import Tag from './tag' 11 | import Collection from './collection' 12 | 13 | const ucword = any => any.replace(/[-_]+/g, ' ').replace(/(?:^|\s)([a-z])/g, m => m.toUpperCase()) 14 | 15 | export default class Article { 16 | id: string 17 | title: string 18 | description: string 19 | photo: string 20 | keywords: string[] 21 | year: number 22 | month: number 23 | day: number 24 | slug: number 25 | published_at: Date // eslint-disable-line camelcase 26 | updated_at: Date // eslint-disable-line camelcase 27 | source: string 28 | rendered: string 29 | attributes: Object 30 | highlightedLanguages: string 31 | /** @private */ 32 | filename: string 33 | _tags: Tag[] 34 | _collection: Collection | null 35 | 36 | /** @namespace blog.__markdown */ 37 | 38 | constructor(filename: string) { 39 | Object.defineProperties(this, { 40 | filename: { value: filename }, 41 | _tags: { value: [], writable: true }, 42 | _collection: { value: null, writable: true } 43 | }) 44 | this.id = slug(path.basename(filename.replace(/\.md$/, '')), { lower: true }) 45 | this.slug = this.id.replace(/^[\d]{4}-[\d]{2}-[\d]{2}-/, '') 46 | this.highlightedLanguages = [] 47 | } 48 | 49 | static async create(filename, options, blog) { 50 | const article = new Article(filename) 51 | 52 | await article.create(options, blog) 53 | 54 | return article 55 | } 56 | 57 | /** 58 | * Create article from markdown. 59 | * @param options 60 | * @param blog 61 | * @returns {Promise.
} 62 | */ 63 | async create(options: Object, blog: Blog) { 64 | const marked = this._createMarkdownRenderer(options, blog) 65 | 66 | this.source = await pify(fs.readFile)(this.filename, { encoding: 'utf-8' }) 67 | 68 | const { attributes, body } = fm(this.source) 69 | 70 | this.rendered = marked.render(body) 71 | this.attributes = this._prepareAttributes(attributes, options) 72 | 73 | if (this.attributes.collection) { 74 | this._collection = blog.getCollection(this.attributes.collection) 75 | this.attributes.collection = this._collection 76 | } else if (path.dirname(this.filename) !== options.path) { 77 | this._collection = blog.getCollection(ucword(path.basename(path.dirname(this.filename)))) 78 | this.attributes.collection = this._collection 79 | } 80 | this._tags = this.attributes.tags.map(tag => blog.getTag(tag)) 81 | this.attributes.tags = this._tags 82 | 83 | this.title = attributes.title 84 | this.description = attributes.description || '' 85 | this.photo = attributes.photo 86 | this.keywords = this.attributes.tags.map(tag => tag.name) 87 | /* eslint-disable camelcase */ 88 | this.published_at = this.attributes.date 89 | this.updated_at = this.attributes.updated_at 90 | this.year = this.published_at.getFullYear() 91 | this.month = this.published_at.getUTCMonth() + 1 92 | this.day = this.published_at.getDate() + 1 93 | /* eslint-enable camelcase */ 94 | 95 | return this 96 | } 97 | 98 | /** 99 | * Tags/Categories, the article belongs to 100 | * @returns {Tag[]} 101 | */ 102 | get tags(): Tag[] { 103 | return this._tags 104 | } 105 | 106 | /** 107 | * Collection/Series, the article is part of. 108 | * @returns {Collection|null} 109 | */ 110 | get collection(): Collection | null { 111 | return this._collection 112 | } 113 | 114 | /** 115 | * Minimal article info. 116 | * @returns {{id: string, title: string, description: string, photo: string, published_at: Date}} 117 | */ 118 | get preview() { 119 | return { 120 | id: this.id, 121 | slug: this.slug, 122 | collection: this.collection && this.collection.id, 123 | title: this.title, 124 | description: this.description, 125 | photo: this.photo, 126 | published_at: this.published_at // eslint-disable-line camelcase 127 | } 128 | } 129 | 130 | /** 131 | * Create instance of MarkdownIt. 132 | * @param options 133 | * @param blog 134 | * @returns {MarkdownIt} 135 | * @private 136 | */ 137 | _createMarkdownRenderer(options: Object, blog: Blog) { 138 | const plugins = options.markdown.plugins || [] 139 | 140 | const marked = new Markdown({ 141 | html: true, 142 | linkify: true, 143 | breaks: true, 144 | ...options.markdown, 145 | highlight: (code, lang) => { 146 | if (!this.highlightedLanguages.includes(lang)) { 147 | this.highlightedLanguages.push(lang) 148 | } 149 | 150 | if ('highlight' in options) { 151 | return options.highlight(code, lang) 152 | } 153 | 154 | return Prism.highlight(code, Prism.languages[lang] || Prism.languages.markup) 155 | } 156 | }) 157 | 158 | Array.isArray(plugins) && plugins.forEach( 159 | plugin => marked.use(plugin) 160 | ) 161 | 162 | return marked 163 | } 164 | 165 | /** 166 | * Fix missing article attributes. 167 | * @param attributes 168 | * @returns {Object} 169 | * @private 170 | */ 171 | _prepareAttributes(attributes) { 172 | const s = cheer.load(this.rendered) 173 | const stats = fs.statSync(this.filename) 174 | const text = query => { 175 | const matches = s(query) 176 | 177 | if (matches.length) return matches.first().text() 178 | } 179 | 180 | if (!('title' in attributes) || !attributes.title) { 181 | attributes.title = text('h1') || text('h2') || text('h3') 182 | } 183 | 184 | if (!('date' in attributes)) { 185 | attributes.date = new Date(stats.ctime) 186 | } 187 | 188 | attributes.date = new Date(attributes.date) 189 | 190 | if (!('updated_at' in attributes)) { 191 | attributes.updated_at = new Date(stats.mtime) // eslint-disable-line camelcase 192 | } 193 | 194 | attributes.updated_at = new Date(attributes.updated_at) 195 | 196 | attributes.updated_at = new Date(attributes.updated_at) // eslint-disable-line camelcase 197 | 198 | if (!('description' in attributes) || !attributes.description) { 199 | attributes.description = text('p') 200 | } 201 | 202 | if (!('tags' in attributes)) { 203 | attributes.tags = [] 204 | } else if (!Array.isArray(attributes.tags)) { 205 | attributes.tags = [attributes.tags] 206 | } 207 | 208 | if (!('photo' in attributes)) { 209 | attributes.photo = s('img.cover').attr('src') || s('img').attr('src') 210 | } 211 | 212 | return attributes 213 | } 214 | } 215 | -------------------------------------------------------------------------------- /shrinkwrap.yaml: -------------------------------------------------------------------------------- 1 | dependencies: 2 | babel-plugin-transform-object-rest-spread: 6.23.0 3 | babel-polyfill: 6.23.0 4 | babel-preset-env: 1.6.0 5 | chalk: 2.0.1 6 | cheerio: 1.0.0-rc.2 7 | express: 4.15.3 8 | flat: 2.0.1 9 | front-matter: 2.1.2 10 | glob: 7.1.2 11 | markdown-it: 8.3.1 12 | markdown-it-decorate: 1.2.2 13 | markdown-it-emoji: 1.4.0 14 | merge-options: 1.0.0 15 | node-sass: 4.5.3 16 | pify: 3.0.0 17 | prismjs: 1.6.0 18 | sass-loader: 6.0.6 19 | slug: 0.9.1 20 | vue-disqus: 2.0.3 21 | webpack: 3.4.1 22 | devDependencies: 23 | babel-plugin-transform-flow-strip-types: 6.22.0 24 | babel-preset-es2015-rollup: 3.0.0 25 | babel-preset-vue-app: 1.2.0 26 | eslint: 4.1.1 27 | eslint-config-vue-app: 1.3.3 28 | eslint-plugin-json: 1.2.0 29 | rollup: 0.43.0 30 | rollup-plugin-babel: 2.7.1 31 | rollup-plugin-commonjs: 8.0.2 32 | rollup-plugin-json: 2.3.0 33 | rollup-plugin-node-resolve: 3.0.0 34 | packages: 35 | /@types/node/6.0.85: 36 | resolution: 37 | integrity: sha512-6qLZpfQFO/g5Ns2e7RsW6brk0Q6Xzwiw7kVVU/XiQNOiJXSojhX76GP457PBYIsNMH2WfcGgcnZB4awFDHrwpA== 38 | /abbrev/1.1.0: 39 | resolution: 40 | integrity: sha1-0FVMIlZjbi9W58LlrRg/hZQo2B8= 41 | /accepts/1.3.3: 42 | dependencies: 43 | mime-types: 2.1.16 44 | negotiator: 0.6.1 45 | resolution: 46 | integrity: sha1-w8p0NJOGSMPg2cHjKN1otiLChMo= 47 | /acorn-dynamic-import/2.0.2: 48 | dependencies: 49 | acorn: 4.0.13 50 | resolution: 51 | integrity: sha1-x1K9IQvvZ5UBtsbLf8hPj0cVjMQ= 52 | /acorn-jsx/3.0.1: 53 | dependencies: 54 | acorn: 3.3.0 55 | dev: true 56 | resolution: 57 | integrity: sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s= 58 | /acorn/3.3.0: 59 | dev: true 60 | resolution: 61 | integrity: sha1-ReN/s56No/JbruP/U2niu18iAXo= 62 | /acorn/4.0.13: 63 | resolution: 64 | integrity: sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c= 65 | /acorn/5.1.1: 66 | resolution: 67 | integrity: sha512-vOk6uEMctu0vQrvuSqFdJyqj1Q0S5VTDL79qtjo+DhRr+1mmaD+tluFSCZqhvi/JUhXSzoZN2BhtstaPEeE8cw== 68 | /ajv-keywords/1.5.1/ajv@4.11.8: 69 | dependencies: 70 | ajv: 4.11.8 71 | dev: true 72 | id: registry.npmjs.org/ajv-keywords/1.5.1 73 | resolution: 74 | integrity: sha1-MU3QpLM2j609/NxU7eYXG4htrzw= 75 | /ajv-keywords/2.1.0/ajv@5.2.2: 76 | dependencies: 77 | ajv: 5.2.2 78 | id: registry.npmjs.org/ajv-keywords/2.1.0 79 | resolution: 80 | integrity: sha1-opbhf3v658HOT34N5T0pyzIWLfA= 81 | /ajv/4.11.8: 82 | dependencies: 83 | co: 4.6.0 84 | json-stable-stringify: 1.0.1 85 | resolution: 86 | integrity: sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY= 87 | /ajv/5.2.2: 88 | dependencies: 89 | co: 4.6.0 90 | fast-deep-equal: 1.0.0 91 | json-schema-traverse: 0.3.1 92 | json-stable-stringify: 1.0.1 93 | resolution: 94 | integrity: sha1-R8aNaehvXZUxA7AHSpQw3GPaXjk= 95 | /align-text/0.1.4: 96 | dependencies: 97 | kind-of: 3.2.2 98 | longest: 1.0.1 99 | repeat-string: 1.6.1 100 | resolution: 101 | integrity: sha1-DNkKVhCT810KmSVsIrcGlDP60Rc= 102 | /amdefine/1.0.1: 103 | resolution: 104 | integrity: sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= 105 | /ansi-escapes/2.0.0: 106 | dev: true 107 | resolution: 108 | integrity: sha1-W65SvkJIeN2Xg+iRDj/Cki6DyBs= 109 | /ansi-regex/2.1.1: 110 | resolution: 111 | integrity: sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 112 | /ansi-regex/3.0.0: 113 | resolution: 114 | integrity: sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 115 | /ansi-styles/2.2.1: 116 | resolution: 117 | integrity: sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= 118 | /ansi-styles/3.2.0: 119 | dependencies: 120 | color-convert: 1.9.0 121 | resolution: 122 | integrity: sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug== 123 | /anymatch/1.3.2: 124 | dependencies: 125 | micromatch: 2.3.11 126 | normalize-path: 2.1.1 127 | resolution: 128 | integrity: sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA== 129 | /aproba/1.1.2: 130 | resolution: 131 | integrity: sha512-ZpYajIfO0j2cOFTO955KUMIKNmj6zhX8kVztMAxFsDaMwz+9Z9SV0uou2pC9HJqcfpffOsjnbrDMvkNy+9RXPw== 132 | /are-we-there-yet/1.1.4: 133 | dependencies: 134 | delegates: 1.0.0 135 | readable-stream: 2.3.3 136 | resolution: 137 | integrity: sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0= 138 | /argparse/1.0.9: 139 | dependencies: 140 | sprintf-js: 1.0.3 141 | resolution: 142 | integrity: sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY= 143 | /arr-diff/2.0.0: 144 | dependencies: 145 | arr-flatten: 1.1.0 146 | resolution: 147 | integrity: sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8= 148 | /arr-flatten/1.1.0: 149 | resolution: 150 | integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== 151 | /array-find-index/1.0.2: 152 | resolution: 153 | integrity: sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= 154 | /array-flatten/1.1.1: 155 | resolution: 156 | integrity: sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= 157 | /array-union/1.0.2: 158 | dependencies: 159 | array-uniq: 1.0.3 160 | dev: true 161 | resolution: 162 | integrity: sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= 163 | /array-uniq/1.0.3: 164 | dev: true 165 | resolution: 166 | integrity: sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= 167 | /array-unique/0.2.1: 168 | resolution: 169 | integrity: sha1-odl8yvy8JiXMcPrc6zalDFiwGlM= 170 | /arrify/1.0.1: 171 | dev: true 172 | resolution: 173 | integrity: sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= 174 | /asn1.js/4.9.1: 175 | dependencies: 176 | bn.js: 4.11.7 177 | inherits: 2.0.3 178 | minimalistic-assert: 1.0.0 179 | resolution: 180 | integrity: sha1-SLokC0WpKA6UdImQull9IWYX/UA= 181 | /asn1/0.2.3: 182 | resolution: 183 | integrity: sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y= 184 | /assert-plus/0.2.0: 185 | resolution: 186 | integrity: sha1-104bh+ev/A24qttwIfP+SBAasjQ= 187 | /assert-plus/1.0.0: 188 | resolution: 189 | integrity: sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= 190 | /assert/1.4.1: 191 | dependencies: 192 | util: 0.10.3 193 | resolution: 194 | integrity: sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE= 195 | /async-each/1.0.1: 196 | resolution: 197 | integrity: sha1-GdOGodntxufByF04iu28xW0zYC0= 198 | /async-foreach/0.1.3: 199 | resolution: 200 | integrity: sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= 201 | /async/2.5.0: 202 | dependencies: 203 | lodash: 4.17.4 204 | resolution: 205 | integrity: sha512-e+lJAJeNWuPCNyxZKOBdaJGyLGHugXVQtrAwtuAe2vhxTYxFTKE73p8JuTmdH0qdQZtDvI4dhJwjZc5zsfIsYw== 206 | /asynckit/0.4.0: 207 | resolution: 208 | integrity: sha1-x57Zf380y48robyXkLzDZkdLS3k= 209 | /aws-sign2/0.6.0: 210 | resolution: 211 | integrity: sha1-FDQt0428yU0OW4fXY81jYSwOeU8= 212 | /aws4/1.6.0: 213 | resolution: 214 | integrity: sha1-g+9cqGCysy5KDe7e6MdxudtXRx4= 215 | /babel-code-frame/6.22.0: 216 | dependencies: 217 | chalk: 1.1.3 218 | esutils: 2.0.2 219 | js-tokens: 3.0.2 220 | resolution: 221 | integrity: sha1-AnYgvuVnqIwyVhV05/0IAdMxGOQ= 222 | /babel-core/6.25.0: 223 | dependencies: 224 | babel-code-frame: 6.22.0 225 | babel-generator: 6.25.0 226 | babel-helpers: 6.24.1 227 | babel-messages: 6.23.0 228 | babel-register: 6.24.1 229 | babel-runtime: 6.25.0 230 | babel-template: 6.25.0 231 | babel-traverse: 6.25.0 232 | babel-types: 6.25.0 233 | babylon: 6.17.4 234 | convert-source-map: 1.5.0 235 | debug: 2.6.8 236 | json5: 0.5.1 237 | lodash: 4.17.4 238 | minimatch: 3.0.4 239 | path-is-absolute: 1.0.1 240 | private: 0.1.7 241 | slash: 1.0.0 242 | source-map: 0.5.6 243 | dev: true 244 | resolution: 245 | integrity: sha1-fdQrBGPHQunVKW3rPsZ6kyLa1yk= 246 | /babel-eslint/7.2.3: 247 | dependencies: 248 | babel-code-frame: 6.22.0 249 | babel-traverse: 6.25.0 250 | babel-types: 6.25.0 251 | babylon: 6.17.4 252 | dev: true 253 | resolution: 254 | integrity: sha1-sv4tgBJkcPXBlELcdXJTqJdxCCc= 255 | /babel-generator/6.25.0: 256 | dependencies: 257 | babel-messages: 6.23.0 258 | babel-runtime: 6.25.0 259 | babel-types: 6.25.0 260 | detect-indent: 4.0.0 261 | jsesc: 1.3.0 262 | lodash: 4.17.4 263 | source-map: 0.5.6 264 | trim-right: 1.0.1 265 | dev: true 266 | resolution: 267 | integrity: sha1-M6GvcNXyiQrrRlpKd5PB32qeqfw= 268 | /babel-helper-builder-binary-assignment-operator-visitor/6.24.1: 269 | dependencies: 270 | babel-helper-explode-assignable-expression: 6.24.1 271 | babel-runtime: 6.25.0 272 | babel-types: 6.25.0 273 | resolution: 274 | integrity: sha1-zORReto1b0IgvK6KAsKzRvmlZmQ= 275 | /babel-helper-call-delegate/6.24.1: 276 | dependencies: 277 | babel-helper-hoist-variables: 6.24.1 278 | babel-runtime: 6.25.0 279 | babel-traverse: 6.25.0 280 | babel-types: 6.25.0 281 | resolution: 282 | integrity: sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340= 283 | /babel-helper-define-map/6.24.1: 284 | dependencies: 285 | babel-helper-function-name: 6.24.1 286 | babel-runtime: 6.25.0 287 | babel-types: 6.25.0 288 | lodash: 4.17.4 289 | resolution: 290 | integrity: sha1-epdH8ljYlH0y1RX2qhx70CIEoIA= 291 | /babel-helper-explode-assignable-expression/6.24.1: 292 | dependencies: 293 | babel-runtime: 6.25.0 294 | babel-traverse: 6.25.0 295 | babel-types: 6.25.0 296 | resolution: 297 | integrity: sha1-8luCz33BBDPFX3BZLVdGQArCLKo= 298 | /babel-helper-function-name/6.24.1: 299 | dependencies: 300 | babel-helper-get-function-arity: 6.24.1 301 | babel-runtime: 6.25.0 302 | babel-template: 6.25.0 303 | babel-traverse: 6.25.0 304 | babel-types: 6.25.0 305 | resolution: 306 | integrity: sha1-00dbjAPtmCQqJbSDUasYOZ01gKk= 307 | /babel-helper-get-function-arity/6.24.1: 308 | dependencies: 309 | babel-runtime: 6.25.0 310 | babel-types: 6.25.0 311 | resolution: 312 | integrity: sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0= 313 | /babel-helper-hoist-variables/6.24.1: 314 | dependencies: 315 | babel-runtime: 6.25.0 316 | babel-types: 6.25.0 317 | resolution: 318 | integrity: sha1-HssnaJydJVE+rbyZFKc/VAi+enY= 319 | /babel-helper-optimise-call-expression/6.24.1: 320 | dependencies: 321 | babel-runtime: 6.25.0 322 | babel-types: 6.25.0 323 | resolution: 324 | integrity: sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc= 325 | /babel-helper-regex/6.24.1: 326 | dependencies: 327 | babel-runtime: 6.25.0 328 | babel-types: 6.25.0 329 | lodash: 4.17.4 330 | resolution: 331 | integrity: sha1-024i+rEAjXnYhkjjIRaGgShFbOg= 332 | /babel-helper-remap-async-to-generator/6.24.1: 333 | dependencies: 334 | babel-helper-function-name: 6.24.1 335 | babel-runtime: 6.25.0 336 | babel-template: 6.25.0 337 | babel-traverse: 6.25.0 338 | babel-types: 6.25.0 339 | resolution: 340 | integrity: sha1-XsWBgnrXI/7N04HxySg5BnbkVRs= 341 | /babel-helper-replace-supers/6.24.1: 342 | dependencies: 343 | babel-helper-optimise-call-expression: 6.24.1 344 | babel-messages: 6.23.0 345 | babel-runtime: 6.25.0 346 | babel-template: 6.25.0 347 | babel-traverse: 6.25.0 348 | babel-types: 6.25.0 349 | resolution: 350 | integrity: sha1-v22/5Dk40XNpohPKiov3S2qQqxo= 351 | /babel-helper-vue-jsx-merge-props/2.0.2: 352 | dev: true 353 | resolution: 354 | integrity: sha1-rOscNzWIJ54nVeoc/TXCI5T9M/g= 355 | /babel-helpers/6.24.1: 356 | dependencies: 357 | babel-runtime: 6.25.0 358 | babel-template: 6.25.0 359 | dev: true 360 | resolution: 361 | integrity: sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI= 362 | /babel-messages/6.23.0: 363 | dependencies: 364 | babel-runtime: 6.25.0 365 | resolution: 366 | integrity: sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= 367 | /babel-plugin-check-es2015-constants/6.22.0: 368 | dependencies: 369 | babel-runtime: 6.25.0 370 | resolution: 371 | integrity: sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o= 372 | /babel-plugin-external-helpers/6.22.0: 373 | dependencies: 374 | babel-runtime: 6.25.0 375 | dev: true 376 | resolution: 377 | integrity: sha1-IoX0iwK9Xe3oUXXK+MYuhq3M76E= 378 | /babel-plugin-syntax-async-functions/6.13.0: 379 | resolution: 380 | integrity: sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU= 381 | /babel-plugin-syntax-dynamic-import/6.18.0: 382 | dev: true 383 | resolution: 384 | integrity: sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo= 385 | /babel-plugin-syntax-exponentiation-operator/6.13.0: 386 | resolution: 387 | integrity: sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4= 388 | /babel-plugin-syntax-flow/6.18.0: 389 | dev: true 390 | resolution: 391 | integrity: sha1-TDqyCiryaqIM0lmVw5jE63AxDI0= 392 | /babel-plugin-syntax-jsx/6.18.0: 393 | dev: true 394 | resolution: 395 | integrity: sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= 396 | /babel-plugin-syntax-object-rest-spread/6.13.0: 397 | resolution: 398 | integrity: sha1-/WU28rzhODb/o6VFjEkDpZe7O/U= 399 | /babel-plugin-syntax-trailing-function-commas/6.22.0: 400 | resolution: 401 | integrity: sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM= 402 | /babel-plugin-transform-async-to-generator/6.24.1: 403 | dependencies: 404 | babel-helper-remap-async-to-generator: 6.24.1 405 | babel-plugin-syntax-async-functions: 6.13.0 406 | babel-runtime: 6.25.0 407 | resolution: 408 | integrity: sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E= 409 | /babel-plugin-transform-es2015-arrow-functions/6.22.0: 410 | dependencies: 411 | babel-runtime: 6.25.0 412 | resolution: 413 | integrity: sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE= 414 | /babel-plugin-transform-es2015-block-scoped-functions/6.22.0: 415 | dependencies: 416 | babel-runtime: 6.25.0 417 | resolution: 418 | integrity: sha1-u8UbSflk1wy42OC5ToICRs46YUE= 419 | /babel-plugin-transform-es2015-block-scoping/6.24.1: 420 | dependencies: 421 | babel-runtime: 6.25.0 422 | babel-template: 6.25.0 423 | babel-traverse: 6.25.0 424 | babel-types: 6.25.0 425 | lodash: 4.17.4 426 | resolution: 427 | integrity: sha1-dsKV3DpHQbFmWt/TFnIV3P8ypXY= 428 | /babel-plugin-transform-es2015-classes/6.24.1: 429 | dependencies: 430 | babel-helper-define-map: 6.24.1 431 | babel-helper-function-name: 6.24.1 432 | babel-helper-optimise-call-expression: 6.24.1 433 | babel-helper-replace-supers: 6.24.1 434 | babel-messages: 6.23.0 435 | babel-runtime: 6.25.0 436 | babel-template: 6.25.0 437 | babel-traverse: 6.25.0 438 | babel-types: 6.25.0 439 | resolution: 440 | integrity: sha1-WkxYpQyclGHlZLSyo7+ryXolhNs= 441 | /babel-plugin-transform-es2015-computed-properties/6.24.1: 442 | dependencies: 443 | babel-runtime: 6.25.0 444 | babel-template: 6.25.0 445 | resolution: 446 | integrity: sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM= 447 | /babel-plugin-transform-es2015-destructuring/6.23.0: 448 | dependencies: 449 | babel-runtime: 6.25.0 450 | resolution: 451 | integrity: sha1-mXux8auWf2gtKwh2/jWNYOdlxW0= 452 | /babel-plugin-transform-es2015-duplicate-keys/6.24.1: 453 | dependencies: 454 | babel-runtime: 6.25.0 455 | babel-types: 6.25.0 456 | resolution: 457 | integrity: sha1-c+s9MQypaePvnskcU3QabxV2Qj4= 458 | /babel-plugin-transform-es2015-for-of/6.23.0: 459 | dependencies: 460 | babel-runtime: 6.25.0 461 | resolution: 462 | integrity: sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE= 463 | /babel-plugin-transform-es2015-function-name/6.24.1: 464 | dependencies: 465 | babel-helper-function-name: 6.24.1 466 | babel-runtime: 6.25.0 467 | babel-types: 6.25.0 468 | resolution: 469 | integrity: sha1-g0yJhTvDaxrw86TF26qU/Y6sqos= 470 | /babel-plugin-transform-es2015-literals/6.22.0: 471 | dependencies: 472 | babel-runtime: 6.25.0 473 | resolution: 474 | integrity: sha1-T1SgLWzWbPkVKAAZox0xklN3yi4= 475 | /babel-plugin-transform-es2015-modules-amd/6.24.1: 476 | dependencies: 477 | babel-plugin-transform-es2015-modules-commonjs: 6.24.1 478 | babel-runtime: 6.25.0 479 | babel-template: 6.25.0 480 | resolution: 481 | integrity: sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ= 482 | /babel-plugin-transform-es2015-modules-commonjs/6.24.1: 483 | dependencies: 484 | babel-plugin-transform-strict-mode: 6.24.1 485 | babel-runtime: 6.25.0 486 | babel-template: 6.25.0 487 | babel-types: 6.25.0 488 | resolution: 489 | integrity: sha1-0+MQtA72ZKNmIiAAl8bUQCmPK/4= 490 | /babel-plugin-transform-es2015-modules-systemjs/6.24.1: 491 | dependencies: 492 | babel-helper-hoist-variables: 6.24.1 493 | babel-runtime: 6.25.0 494 | babel-template: 6.25.0 495 | resolution: 496 | integrity: sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM= 497 | /babel-plugin-transform-es2015-modules-umd/6.24.1: 498 | dependencies: 499 | babel-plugin-transform-es2015-modules-amd: 6.24.1 500 | babel-runtime: 6.25.0 501 | babel-template: 6.25.0 502 | resolution: 503 | integrity: sha1-rJl+YoXNGO1hdq22B9YCNErThGg= 504 | /babel-plugin-transform-es2015-object-super/6.24.1: 505 | dependencies: 506 | babel-helper-replace-supers: 6.24.1 507 | babel-runtime: 6.25.0 508 | resolution: 509 | integrity: sha1-JM72muIcuDp/hgPa0CH1cusnj40= 510 | /babel-plugin-transform-es2015-parameters/6.24.1: 511 | dependencies: 512 | babel-helper-call-delegate: 6.24.1 513 | babel-helper-get-function-arity: 6.24.1 514 | babel-runtime: 6.25.0 515 | babel-template: 6.25.0 516 | babel-traverse: 6.25.0 517 | babel-types: 6.25.0 518 | resolution: 519 | integrity: sha1-V6w1GrScrxSpfNE7CfZv3wpiXys= 520 | /babel-plugin-transform-es2015-shorthand-properties/6.24.1: 521 | dependencies: 522 | babel-runtime: 6.25.0 523 | babel-types: 6.25.0 524 | resolution: 525 | integrity: sha1-JPh11nIch2YbvZmkYi5R8U3jiqA= 526 | /babel-plugin-transform-es2015-spread/6.22.0: 527 | dependencies: 528 | babel-runtime: 6.25.0 529 | resolution: 530 | integrity: sha1-1taKmfia7cRTbIGlQujdnxdG+NE= 531 | /babel-plugin-transform-es2015-sticky-regex/6.24.1: 532 | dependencies: 533 | babel-helper-regex: 6.24.1 534 | babel-runtime: 6.25.0 535 | babel-types: 6.25.0 536 | resolution: 537 | integrity: sha1-AMHNsaynERLN8M9hJsLta0V8zbw= 538 | /babel-plugin-transform-es2015-template-literals/6.22.0: 539 | dependencies: 540 | babel-runtime: 6.25.0 541 | resolution: 542 | integrity: sha1-qEs0UPfp+PH2g51taH2oS7EjbY0= 543 | /babel-plugin-transform-es2015-typeof-symbol/6.23.0: 544 | dependencies: 545 | babel-runtime: 6.25.0 546 | resolution: 547 | integrity: sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I= 548 | /babel-plugin-transform-es2015-unicode-regex/6.24.1: 549 | dependencies: 550 | babel-helper-regex: 6.24.1 551 | babel-runtime: 6.25.0 552 | regexpu-core: 2.0.0 553 | resolution: 554 | integrity: sha1-04sS9C6nMj9yk4fxinxa4frrNek= 555 | /babel-plugin-transform-exponentiation-operator/6.24.1: 556 | dependencies: 557 | babel-helper-builder-binary-assignment-operator-visitor: 6.24.1 558 | babel-plugin-syntax-exponentiation-operator: 6.13.0 559 | babel-runtime: 6.25.0 560 | resolution: 561 | integrity: sha1-KrDJx/MJj6SJB3cruBP+QejeOg4= 562 | /babel-plugin-transform-flow-strip-types/6.22.0: 563 | dependencies: 564 | babel-plugin-syntax-flow: 6.18.0 565 | babel-runtime: 6.25.0 566 | dev: true 567 | resolution: 568 | integrity: sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988= 569 | /babel-plugin-transform-object-rest-spread/6.23.0: 570 | dependencies: 571 | babel-plugin-syntax-object-rest-spread: 6.13.0 572 | babel-runtime: 6.25.0 573 | resolution: 574 | integrity: sha1-h11ryb52HFiirj/u5dxIldjH+SE= 575 | /babel-plugin-transform-regenerator/6.24.1: 576 | dependencies: 577 | regenerator-transform: 0.9.11 578 | resolution: 579 | integrity: sha1-uNowWtQ8PJm0hI5P5AN7dw0jxBg= 580 | /babel-plugin-transform-runtime/6.23.0: 581 | dependencies: 582 | babel-runtime: 6.25.0 583 | dev: true 584 | resolution: 585 | integrity: sha1-iEkNRGUC6puOfvsP4J7E2ZR5se4= 586 | /babel-plugin-transform-strict-mode/6.24.1: 587 | dependencies: 588 | babel-runtime: 6.25.0 589 | babel-types: 6.25.0 590 | resolution: 591 | integrity: sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= 592 | /babel-plugin-transform-vue-jsx/3.5.0/babel-helper-vue-jsx-merge-props@2.0.2+babel-plugin-syntax-jsx@6.18.0: 593 | dependencies: 594 | babel-helper-vue-jsx-merge-props: 2.0.2 595 | babel-plugin-syntax-jsx: 6.18.0 596 | esutils: 2.0.2 597 | dev: true 598 | id: registry.npmjs.org/babel-plugin-transform-vue-jsx/3.5.0 599 | resolution: 600 | integrity: sha512-5vCg8K7aiiLwrFJ45ZF/b4cIiFpGAoYL5uNZpbgiZFptBc5LkueBCQXTVexrd1IFlpTV7XndqFjtWjcJ54JGUQ== 601 | /babel-polyfill/6.23.0: 602 | dependencies: 603 | babel-runtime: 6.25.0 604 | core-js: 2.4.1 605 | regenerator-runtime: 0.10.5 606 | resolution: 607 | integrity: sha1-g2TKYt+Or7gwSZ9pkXdGbDsDSZ0= 608 | /babel-preset-env/1.6.0: 609 | dependencies: 610 | babel-plugin-check-es2015-constants: 6.22.0 611 | babel-plugin-syntax-trailing-function-commas: 6.22.0 612 | babel-plugin-transform-async-to-generator: 6.24.1 613 | babel-plugin-transform-es2015-arrow-functions: 6.22.0 614 | babel-plugin-transform-es2015-block-scoped-functions: 6.22.0 615 | babel-plugin-transform-es2015-block-scoping: 6.24.1 616 | babel-plugin-transform-es2015-classes: 6.24.1 617 | babel-plugin-transform-es2015-computed-properties: 6.24.1 618 | babel-plugin-transform-es2015-destructuring: 6.23.0 619 | babel-plugin-transform-es2015-duplicate-keys: 6.24.1 620 | babel-plugin-transform-es2015-for-of: 6.23.0 621 | babel-plugin-transform-es2015-function-name: 6.24.1 622 | babel-plugin-transform-es2015-literals: 6.22.0 623 | babel-plugin-transform-es2015-modules-amd: 6.24.1 624 | babel-plugin-transform-es2015-modules-commonjs: 6.24.1 625 | babel-plugin-transform-es2015-modules-systemjs: 6.24.1 626 | babel-plugin-transform-es2015-modules-umd: 6.24.1 627 | babel-plugin-transform-es2015-object-super: 6.24.1 628 | babel-plugin-transform-es2015-parameters: 6.24.1 629 | babel-plugin-transform-es2015-shorthand-properties: 6.24.1 630 | babel-plugin-transform-es2015-spread: 6.22.0 631 | babel-plugin-transform-es2015-sticky-regex: 6.24.1 632 | babel-plugin-transform-es2015-template-literals: 6.22.0 633 | babel-plugin-transform-es2015-typeof-symbol: 6.23.0 634 | babel-plugin-transform-es2015-unicode-regex: 6.24.1 635 | babel-plugin-transform-exponentiation-operator: 6.24.1 636 | babel-plugin-transform-regenerator: 6.24.1 637 | browserslist: 2.2.2 638 | invariant: 2.2.2 639 | semver: 5.4.1 640 | resolution: 641 | integrity: sha512-OVgtQRuOZKckrILgMA5rvctvFZPv72Gua9Rt006AiPoB0DJKGN07UmaQA+qRrYgK71MVct8fFhT0EyNWYorVew== 642 | /babel-preset-es2015-rollup/3.0.0: 643 | dependencies: 644 | babel-plugin-external-helpers: 6.22.0 645 | babel-preset-es2015: 6.24.1 646 | require-relative: 0.8.7 647 | dev: true 648 | resolution: 649 | integrity: sha1-hUtj7N4u6YysQOiC9nv88YWx8ko= 650 | /babel-preset-es2015/6.24.1: 651 | dependencies: 652 | babel-plugin-check-es2015-constants: 6.22.0 653 | babel-plugin-transform-es2015-arrow-functions: 6.22.0 654 | babel-plugin-transform-es2015-block-scoped-functions: 6.22.0 655 | babel-plugin-transform-es2015-block-scoping: 6.24.1 656 | babel-plugin-transform-es2015-classes: 6.24.1 657 | babel-plugin-transform-es2015-computed-properties: 6.24.1 658 | babel-plugin-transform-es2015-destructuring: 6.23.0 659 | babel-plugin-transform-es2015-duplicate-keys: 6.24.1 660 | babel-plugin-transform-es2015-for-of: 6.23.0 661 | babel-plugin-transform-es2015-function-name: 6.24.1 662 | babel-plugin-transform-es2015-literals: 6.22.0 663 | babel-plugin-transform-es2015-modules-amd: 6.24.1 664 | babel-plugin-transform-es2015-modules-commonjs: 6.24.1 665 | babel-plugin-transform-es2015-modules-systemjs: 6.24.1 666 | babel-plugin-transform-es2015-modules-umd: 6.24.1 667 | babel-plugin-transform-es2015-object-super: 6.24.1 668 | babel-plugin-transform-es2015-parameters: 6.24.1 669 | babel-plugin-transform-es2015-shorthand-properties: 6.24.1 670 | babel-plugin-transform-es2015-spread: 6.22.0 671 | babel-plugin-transform-es2015-sticky-regex: 6.24.1 672 | babel-plugin-transform-es2015-template-literals: 6.22.0 673 | babel-plugin-transform-es2015-typeof-symbol: 6.23.0 674 | babel-plugin-transform-es2015-unicode-regex: 6.24.1 675 | babel-plugin-transform-regenerator: 6.24.1 676 | dev: true 677 | resolution: 678 | integrity: sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk= 679 | /babel-preset-vue-app/1.2.0: 680 | dependencies: 681 | babel-plugin-syntax-dynamic-import: 6.18.0 682 | babel-plugin-transform-object-rest-spread: 6.23.0 683 | babel-plugin-transform-runtime: 6.23.0 684 | babel-preset-env: 1.6.0 685 | babel-preset-vue: 0.1.0 686 | babel-runtime: 6.25.0 687 | dev: true 688 | resolution: 689 | integrity: sha1-Xd+3kgAgEjokgrEsaza9754/sK0= 690 | /babel-preset-vue/0.1.0: 691 | dependencies: 692 | babel-helper-vue-jsx-merge-props: 2.0.2 693 | babel-plugin-syntax-jsx: 6.18.0 694 | babel-plugin-transform-vue-jsx: /babel-plugin-transform-vue-jsx/3.5.0/babel-helper-vue-jsx-merge-props@2.0.2+babel-plugin-syntax-jsx@6.18.0 695 | dev: true 696 | resolution: 697 | integrity: sha1-rbhM6rOHO9cmBv3T9wR2QPAyMB8= 698 | /babel-register/6.24.1: 699 | dependencies: 700 | babel-core: 6.25.0 701 | babel-runtime: 6.25.0 702 | core-js: 2.4.1 703 | home-or-tmp: 2.0.0 704 | lodash: 4.17.4 705 | mkdirp: 0.5.1 706 | source-map-support: 0.4.15 707 | dev: true 708 | resolution: 709 | integrity: sha1-fhDhOi9xBlvfrVoXh7pFvKbe118= 710 | /babel-runtime/6.25.0: 711 | dependencies: 712 | core-js: 2.4.1 713 | regenerator-runtime: 0.10.5 714 | resolution: 715 | integrity: sha1-M7mOql1IK7AajRqmtDetKwGuxBw= 716 | /babel-template/6.25.0: 717 | dependencies: 718 | babel-runtime: 6.25.0 719 | babel-traverse: 6.25.0 720 | babel-types: 6.25.0 721 | babylon: 6.17.4 722 | lodash: 4.17.4 723 | resolution: 724 | integrity: sha1-ZlJBFmt8KqTGGdceGSlpVSsQwHE= 725 | /babel-traverse/6.25.0: 726 | dependencies: 727 | babel-code-frame: 6.22.0 728 | babel-messages: 6.23.0 729 | babel-runtime: 6.25.0 730 | babel-types: 6.25.0 731 | babylon: 6.17.4 732 | debug: 2.6.8 733 | globals: 9.18.0 734 | invariant: 2.2.2 735 | lodash: 4.17.4 736 | resolution: 737 | integrity: sha1-IldJfi/NGbie3BPEyROB+VEklvE= 738 | /babel-types/6.25.0: 739 | dependencies: 740 | babel-runtime: 6.25.0 741 | esutils: 2.0.2 742 | lodash: 4.17.4 743 | to-fast-properties: 1.0.3 744 | resolution: 745 | integrity: sha1-cK+ySNVmDl0Y+BHZHIMDtUE0oY4= 746 | /babylon/6.17.4: 747 | resolution: 748 | integrity: sha512-kChlV+0SXkjE0vUn9OZ7pBMWRFd8uq3mZe8x1K6jhuNcAFAtEnjchFAqB+dYEXKyd+JpT6eppRR78QAr5gTsUw== 749 | /bail/1.0.2: 750 | dev: true 751 | resolution: 752 | integrity: sha1-99bBcxYwqfnw1NNe0fli4gdKF2Q= 753 | /balanced-match/1.0.0: 754 | resolution: 755 | integrity: sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 756 | /base64-js/1.2.1: 757 | resolution: 758 | integrity: sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw== 759 | /bcrypt-pbkdf/1.0.1: 760 | dependencies: 761 | tweetnacl: 0.14.5 762 | optional: true 763 | resolution: 764 | integrity: sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40= 765 | /big.js/3.1.3: 766 | resolution: 767 | integrity: sha1-TK2iGTZS6zyp7I5VyQFWacmAaXg= 768 | /binary-extensions/1.9.0: 769 | resolution: 770 | integrity: sha1-ZlBsFs5vTWkopbPNajPKQelB43s= 771 | /block-stream/0.0.9: 772 | dependencies: 773 | inherits: 2.0.3 774 | resolution: 775 | integrity: sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= 776 | /bn.js/4.11.7: 777 | resolution: 778 | integrity: sha512-LxFiV5mefv0ley0SzqkOPR1bC4EbpPx8LkOz5vMe/Yi15t5hzwgO/G+tc7wOtL4PZTYjwHu8JnEiSLumuSjSfA== 779 | /boolbase/1.0.0: 780 | resolution: 781 | integrity: sha1-aN/1++YMUes3cl6p4+0xDcwed24= 782 | /boom/2.10.1: 783 | dependencies: 784 | hoek: 2.16.3 785 | resolution: 786 | integrity: sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= 787 | /brace-expansion/1.1.8: 788 | dependencies: 789 | balanced-match: 1.0.0 790 | concat-map: 0.0.1 791 | resolution: 792 | integrity: sha1-wHshHHyVLsH479Uad+8NHTmQopI= 793 | /braces/1.8.5: 794 | dependencies: 795 | expand-range: 1.8.2 796 | preserve: 0.2.0 797 | repeat-element: 1.1.2 798 | resolution: 799 | integrity: sha1-uneWLhLf+WnWt2cR6RS3N4V79qc= 800 | /brorand/1.1.0: 801 | resolution: 802 | integrity: sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= 803 | /browser-resolve/1.11.2: 804 | dependencies: 805 | resolve: 1.1.7 806 | dev: true 807 | resolution: 808 | integrity: sha1-j/CbCixCFxihBRwmCzLkj0QpOM4= 809 | /browserify-aes/1.0.6: 810 | dependencies: 811 | buffer-xor: 1.0.3 812 | cipher-base: 1.0.4 813 | create-hash: 1.1.3 814 | evp_bytestokey: 1.0.0 815 | inherits: 2.0.3 816 | resolution: 817 | integrity: sha1-Xncl297x/Vkw1OurSFZ85FHEigo= 818 | /browserify-cipher/1.0.0: 819 | dependencies: 820 | browserify-aes: 1.0.6 821 | browserify-des: 1.0.0 822 | evp_bytestokey: 1.0.0 823 | resolution: 824 | integrity: sha1-mYgkSHS/XtTijalWZtzWasj8Njo= 825 | /browserify-des/1.0.0: 826 | dependencies: 827 | cipher-base: 1.0.4 828 | des.js: 1.0.0 829 | inherits: 2.0.3 830 | resolution: 831 | integrity: sha1-2qJ3cXRwki7S/hhZQRihdUOXId0= 832 | /browserify-rsa/4.0.1: 833 | dependencies: 834 | bn.js: 4.11.7 835 | randombytes: 2.0.5 836 | resolution: 837 | integrity: sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= 838 | /browserify-sign/4.0.4: 839 | dependencies: 840 | bn.js: 4.11.7 841 | browserify-rsa: 4.0.1 842 | create-hash: 1.1.3 843 | create-hmac: 1.1.6 844 | elliptic: 6.4.0 845 | inherits: 2.0.3 846 | parse-asn1: 5.1.0 847 | resolution: 848 | integrity: sha1-qk62jl17ZYuqa/alfmMMvXqT0pg= 849 | /browserify-zlib/0.1.4: 850 | dependencies: 851 | pako: 0.2.9 852 | resolution: 853 | integrity: sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0= 854 | /browserslist/2.2.2: 855 | dependencies: 856 | caniuse-lite: 1.0.30000708 857 | electron-to-chromium: 1.3.16 858 | resolution: 859 | integrity: sha512-MejxGMNIeIqzgaMKVYfFTWHinrwZOnWMXteN9VlHinTd13/0aDmXY9uyRqNsCTnVxqRmrjQFcXI7cy0q9K1IYg== 860 | /buffer-xor/1.0.3: 861 | resolution: 862 | integrity: sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= 863 | /buffer/4.9.1: 864 | dependencies: 865 | base64-js: 1.2.1 866 | ieee754: 1.1.8 867 | isarray: 1.0.0 868 | resolution: 869 | integrity: sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg= 870 | /builtin-modules/1.1.1: 871 | resolution: 872 | integrity: sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= 873 | /builtin-status-codes/3.0.0: 874 | resolution: 875 | integrity: sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= 876 | /caller-path/0.1.0: 877 | dependencies: 878 | callsites: 0.2.0 879 | dev: true 880 | resolution: 881 | integrity: sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8= 882 | /callsites/0.2.0: 883 | dev: true 884 | resolution: 885 | integrity: sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo= 886 | /camelcase-keys/2.1.0: 887 | dependencies: 888 | camelcase: 2.1.1 889 | map-obj: 1.0.1 890 | resolution: 891 | integrity: sha1-MIvur/3ygRkFHvodkyITyRuPkuc= 892 | /camelcase/1.2.1: 893 | resolution: 894 | integrity: sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk= 895 | /camelcase/2.1.1: 896 | resolution: 897 | integrity: sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= 898 | /camelcase/3.0.0: 899 | resolution: 900 | integrity: sha1-MvxLn82vhF/N9+c7uXysImHwqwo= 901 | /camelcase/4.1.0: 902 | resolution: 903 | integrity: sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= 904 | /caniuse-lite/1.0.30000708: 905 | resolution: 906 | integrity: sha1-cdvziMV/N5sbtmyJqJDtwEwlCbY= 907 | /caseless/0.12.0: 908 | resolution: 909 | integrity: sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= 910 | /center-align/0.1.3: 911 | dependencies: 912 | align-text: 0.1.4 913 | lazy-cache: 1.0.4 914 | resolution: 915 | integrity: sha1-qg0yYptu6XIgBBHL1EYckHvCt60= 916 | /chalk/1.1.3: 917 | dependencies: 918 | ansi-styles: 2.2.1 919 | escape-string-regexp: 1.0.5 920 | has-ansi: 2.0.0 921 | strip-ansi: 3.0.1 922 | supports-color: 2.0.0 923 | resolution: 924 | integrity: sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= 925 | /chalk/2.0.1: 926 | dependencies: 927 | ansi-styles: 3.2.0 928 | escape-string-regexp: 1.0.5 929 | supports-color: 4.2.1 930 | resolution: 931 | integrity: sha512-Mp+FXEI+FrwY/XYV45b2YD3E8i3HwnEAoFcM0qlZzq/RZ9RwWitt2Y/c7cqRAz70U7hfekqx6qNYthuKFO6K0g== 932 | /character-entities-legacy/1.1.1: 933 | dev: true 934 | resolution: 935 | integrity: sha1-9Ad53xoQGHK7UQo9KV4fzPFHIC8= 936 | /character-entities/1.2.1: 937 | dev: true 938 | resolution: 939 | integrity: sha1-92hxvl72bdt/j440eOzDdMJ9bco= 940 | /character-reference-invalid/1.1.1: 941 | dev: true 942 | resolution: 943 | integrity: sha1-lCg191Dk7GGjCOYMLvjMEBEgLvw= 944 | /cheerio/1.0.0-rc.2: 945 | dependencies: 946 | css-select: 1.2.0 947 | dom-serializer: 0.1.0 948 | entities: 1.1.1 949 | htmlparser2: 3.9.2 950 | lodash: 4.17.4 951 | parse5: 3.0.2 952 | resolution: 953 | integrity: sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs= 954 | /chokidar/1.7.0: 955 | dependencies: 956 | anymatch: 1.3.2 957 | async-each: 1.0.1 958 | glob-parent: 2.0.0 959 | inherits: 2.0.3 960 | is-binary-path: 1.0.1 961 | is-glob: 2.0.1 962 | path-is-absolute: 1.0.1 963 | readdirp: 2.1.0 964 | optionalDependencies: 965 | fsevents: 1.1.2 966 | resolution: 967 | integrity: sha1-eY5ol3gVHIB2tLNg5e3SjNortGg= 968 | /cipher-base/1.0.4: 969 | dependencies: 970 | inherits: 2.0.3 971 | safe-buffer: 5.1.1 972 | resolution: 973 | integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== 974 | /circular-json/0.3.3: 975 | dev: true 976 | resolution: 977 | integrity: sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A== 978 | /cli-cursor/2.1.0: 979 | dependencies: 980 | restore-cursor: 2.0.0 981 | dev: true 982 | resolution: 983 | integrity: sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= 984 | /cli-width/2.1.0: 985 | dev: true 986 | resolution: 987 | integrity: sha1-sjTKIJsp72b8UY2bmNWEewDt8Ao= 988 | /cli/1.0.1: 989 | dependencies: 990 | exit: 0.1.2 991 | glob: 7.1.2 992 | dev: true 993 | resolution: 994 | integrity: sha1-IoF1NPJL+klQw01TLUjsvGIbjBQ= 995 | /clipboard/1.7.1: 996 | dependencies: 997 | good-listener: 1.2.2 998 | select: 1.1.2 999 | tiny-emitter: 2.0.1 1000 | optional: true 1001 | resolution: 1002 | integrity: sha1-Ng1taUbpmnof7zleQrqStem1oWs= 1003 | /cliui/2.1.0: 1004 | dependencies: 1005 | center-align: 0.1.3 1006 | right-align: 0.1.3 1007 | wordwrap: 0.0.2 1008 | resolution: 1009 | integrity: sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE= 1010 | /cliui/3.2.0: 1011 | dependencies: 1012 | string-width: 1.0.2 1013 | strip-ansi: 3.0.1 1014 | wrap-ansi: 2.1.0 1015 | resolution: 1016 | integrity: sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= 1017 | /clone-deep/0.3.0: 1018 | dependencies: 1019 | for-own: 1.0.0 1020 | is-plain-object: 2.0.4 1021 | kind-of: 3.2.2 1022 | shallow-clone: 0.1.2 1023 | resolution: 1024 | integrity: sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg= 1025 | /co/4.6.0: 1026 | resolution: 1027 | integrity: sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= 1028 | /code-point-at/1.1.0: 1029 | resolution: 1030 | integrity: sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= 1031 | /collapse-white-space/1.0.3: 1032 | dev: true 1033 | resolution: 1034 | integrity: sha1-S5BvZw5aljqHt2sOFolkM0G2Ajw= 1035 | /color-convert/1.9.0: 1036 | dependencies: 1037 | color-name: 1.1.3 1038 | resolution: 1039 | integrity: sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o= 1040 | /color-name/1.1.3: 1041 | resolution: 1042 | integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 1043 | /combined-stream/1.0.5: 1044 | dependencies: 1045 | delayed-stream: 1.0.0 1046 | resolution: 1047 | integrity: sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk= 1048 | /concat-map/0.0.1: 1049 | resolution: 1050 | integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 1051 | /concat-stream/1.6.0: 1052 | dependencies: 1053 | inherits: 2.0.3 1054 | readable-stream: 2.3.3 1055 | typedarray: 0.0.6 1056 | dev: true 1057 | resolution: 1058 | integrity: sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc= 1059 | /console-browserify/1.1.0: 1060 | dependencies: 1061 | date-now: 0.1.4 1062 | resolution: 1063 | integrity: sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA= 1064 | /console-control-strings/1.1.0: 1065 | resolution: 1066 | integrity: sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= 1067 | /constants-browserify/1.0.0: 1068 | resolution: 1069 | integrity: sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= 1070 | /content-disposition/0.5.2: 1071 | resolution: 1072 | integrity: sha1-DPaLud318r55YcOoUXjLhdunjLQ= 1073 | /content-type/1.0.2: 1074 | resolution: 1075 | integrity: sha1-t9ETrueo3Se9IRM8TcJSnfFyHu0= 1076 | /convert-source-map/1.5.0: 1077 | dev: true 1078 | resolution: 1079 | integrity: sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU= 1080 | /cookie-signature/1.0.6: 1081 | resolution: 1082 | integrity: sha1-4wOogrNCzD7oylE6eZmXNNqzriw= 1083 | /cookie/0.3.1: 1084 | resolution: 1085 | integrity: sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= 1086 | /core-js/2.4.1: 1087 | resolution: 1088 | integrity: sha1-TekR5mew6ukSTjQlS1OupvxhjT4= 1089 | /core-util-is/1.0.2: 1090 | resolution: 1091 | integrity: sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 1092 | /create-ecdh/4.0.0: 1093 | dependencies: 1094 | bn.js: 4.11.7 1095 | elliptic: 6.4.0 1096 | resolution: 1097 | integrity: sha1-iIxyNZbN92EvZJgjPuvXo1MBc30= 1098 | /create-hash/1.1.3: 1099 | dependencies: 1100 | cipher-base: 1.0.4 1101 | inherits: 2.0.3 1102 | ripemd160: 2.0.1 1103 | sha.js: 2.4.8 1104 | resolution: 1105 | integrity: sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0= 1106 | /create-hmac/1.1.6: 1107 | dependencies: 1108 | cipher-base: 1.0.4 1109 | create-hash: 1.1.3 1110 | inherits: 2.0.3 1111 | ripemd160: 2.0.1 1112 | safe-buffer: 5.1.1 1113 | sha.js: 2.4.8 1114 | resolution: 1115 | integrity: sha1-rLniIaThe9sHbpBlfEK5PjcmzwY= 1116 | /cross-spawn/3.0.1: 1117 | dependencies: 1118 | lru-cache: 4.1.1 1119 | which: 1.2.14 1120 | resolution: 1121 | integrity: sha1-ElYDfsufDF9549bvE14wdwGEuYI= 1122 | /cross-spawn/5.1.0: 1123 | dependencies: 1124 | lru-cache: 4.1.1 1125 | shebang-command: 1.2.0 1126 | which: 1.2.14 1127 | resolution: 1128 | integrity: sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= 1129 | /cryptiles/2.0.5: 1130 | dependencies: 1131 | boom: 2.10.1 1132 | resolution: 1133 | integrity: sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= 1134 | /crypto-browserify/3.11.1: 1135 | dependencies: 1136 | browserify-cipher: 1.0.0 1137 | browserify-sign: 4.0.4 1138 | create-ecdh: 4.0.0 1139 | create-hash: 1.1.3 1140 | create-hmac: 1.1.6 1141 | diffie-hellman: 5.0.2 1142 | inherits: 2.0.3 1143 | pbkdf2: 3.0.12 1144 | public-encrypt: 4.0.0 1145 | randombytes: 2.0.5 1146 | resolution: 1147 | integrity: sha512-Na7ZlwCOqoaW5RwUK1WpXws2kv8mNhWdTlzob0UXulk6G9BDbyiJaGTYBIX61Ozn9l1EPPJpICZb4DaOpT9NlQ== 1148 | /css-select/1.2.0: 1149 | dependencies: 1150 | boolbase: 1.0.0 1151 | css-what: 2.1.0 1152 | domutils: 1.5.1 1153 | nth-check: 1.0.1 1154 | resolution: 1155 | integrity: sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= 1156 | /css-what/2.1.0: 1157 | resolution: 1158 | integrity: sha1-lGfQMsOM+u+58teVASUwYvh/ob0= 1159 | /currently-unhandled/0.4.1: 1160 | dependencies: 1161 | array-find-index: 1.0.2 1162 | resolution: 1163 | integrity: sha1-mI3zP+qxke95mmE2nddsF635V+o= 1164 | /d/1.0.0: 1165 | dependencies: 1166 | es5-ext: 0.10.24 1167 | resolution: 1168 | integrity: sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8= 1169 | /dashdash/1.14.1: 1170 | dependencies: 1171 | assert-plus: 1.0.0 1172 | resolution: 1173 | integrity: sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= 1174 | /date-now/0.1.4: 1175 | resolution: 1176 | integrity: sha1-6vQ5/U1ISK105cx9vvIAZyueNFs= 1177 | /debug/2.6.7: 1178 | dependencies: 1179 | ms: 2.0.0 1180 | resolution: 1181 | integrity: sha1-krrR9tBbu2u6Isyoi80OyJTChh4= 1182 | /debug/2.6.8: 1183 | dependencies: 1184 | ms: 2.0.0 1185 | resolution: 1186 | integrity: sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw= 1187 | /decamelize/1.2.0: 1188 | resolution: 1189 | integrity: sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 1190 | /deep-is/0.1.3: 1191 | dev: true 1192 | resolution: 1193 | integrity: sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= 1194 | /del/2.2.2: 1195 | dependencies: 1196 | globby: 5.0.0 1197 | is-path-cwd: 1.0.0 1198 | is-path-in-cwd: 1.0.0 1199 | object-assign: 4.1.1 1200 | pify: 2.3.0 1201 | pinkie-promise: 2.0.1 1202 | rimraf: 2.6.1 1203 | dev: true 1204 | resolution: 1205 | integrity: sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag= 1206 | /delayed-stream/1.0.0: 1207 | resolution: 1208 | integrity: sha1-3zrhmayt+31ECqrgsp4icrJOxhk= 1209 | /delegate/3.1.3: 1210 | optional: true 1211 | resolution: 1212 | integrity: sha1-moJRp3fXAl+qVXN7w7BxdCEnqf0= 1213 | /delegates/1.0.0: 1214 | resolution: 1215 | integrity: sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= 1216 | /depd/1.1.0: 1217 | resolution: 1218 | integrity: sha1-4b2Cxqq2ztlluXuIsX7T5SjKGMM= 1219 | /depd/1.1.1: 1220 | resolution: 1221 | integrity: sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k= 1222 | /des.js/1.0.0: 1223 | dependencies: 1224 | inherits: 2.0.3 1225 | minimalistic-assert: 1.0.0 1226 | resolution: 1227 | integrity: sha1-wHTS4qpqipoH29YfmhXCzYPsjsw= 1228 | /destroy/1.0.4: 1229 | resolution: 1230 | integrity: sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= 1231 | /detect-indent/4.0.0: 1232 | dependencies: 1233 | repeating: 2.0.1 1234 | dev: true 1235 | resolution: 1236 | integrity: sha1-920GQ1LN9Docts5hnE7jqUdd4gg= 1237 | /diffie-hellman/5.0.2: 1238 | dependencies: 1239 | bn.js: 4.11.7 1240 | miller-rabin: 4.0.0 1241 | randombytes: 2.0.5 1242 | resolution: 1243 | integrity: sha1-tYNXOScM/ias9jIJn97SoH8gnl4= 1244 | /doctrine/2.0.0: 1245 | dependencies: 1246 | esutils: 2.0.2 1247 | isarray: 1.0.0 1248 | dev: true 1249 | resolution: 1250 | integrity: sha1-xz2NKQnSIpHhoAejlYBNqLZl/mM= 1251 | /dom-serializer/0.1.0: 1252 | dependencies: 1253 | domelementtype: 1.1.3 1254 | entities: 1.1.1 1255 | resolution: 1256 | integrity: sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= 1257 | /domain-browser/1.1.7: 1258 | resolution: 1259 | integrity: sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw= 1260 | /domelementtype/1.1.3: 1261 | resolution: 1262 | integrity: sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= 1263 | /domelementtype/1.3.0: 1264 | resolution: 1265 | integrity: sha1-sXrtguirWeUt2cGbF1bg/BhyBMI= 1266 | /domhandler/2.3.0: 1267 | dependencies: 1268 | domelementtype: 1.3.0 1269 | dev: true 1270 | resolution: 1271 | integrity: sha1-LeWaCCLVAn+r/28DLCsloqir5zg= 1272 | /domhandler/2.4.1: 1273 | dependencies: 1274 | domelementtype: 1.3.0 1275 | resolution: 1276 | integrity: sha1-iS5HAAqZvlW783dP/qBWHYh5wlk= 1277 | /domutils/1.5.1: 1278 | dependencies: 1279 | dom-serializer: 0.1.0 1280 | domelementtype: 1.3.0 1281 | resolution: 1282 | integrity: sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= 1283 | /domutils/1.6.2: 1284 | dependencies: 1285 | dom-serializer: 0.1.0 1286 | domelementtype: 1.3.0 1287 | resolution: 1288 | integrity: sha1-GVjMC0yUJuntNn+xyOhUiRsPo/8= 1289 | /ecc-jsbn/0.1.1: 1290 | dependencies: 1291 | jsbn: 0.1.1 1292 | optional: true 1293 | resolution: 1294 | integrity: sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU= 1295 | /ee-first/1.1.1: 1296 | resolution: 1297 | integrity: sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= 1298 | /electron-to-chromium/1.3.16: 1299 | resolution: 1300 | integrity: sha1-0OAmc1dUdwkBrjAaIWZMukXZL30= 1301 | /elliptic/6.4.0: 1302 | dependencies: 1303 | bn.js: 4.11.7 1304 | brorand: 1.1.0 1305 | hash.js: 1.1.3 1306 | hmac-drbg: 1.0.1 1307 | inherits: 2.0.3 1308 | minimalistic-assert: 1.0.0 1309 | minimalistic-crypto-utils: 1.0.1 1310 | resolution: 1311 | integrity: sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8= 1312 | /emojis-list/2.1.0: 1313 | resolution: 1314 | integrity: sha1-TapNnbAPmBmIDHn6RXrlsJof04k= 1315 | /encodeurl/1.0.1: 1316 | resolution: 1317 | integrity: sha1-eePVhlU0aQn+bw9Fpd5oEDspTSA= 1318 | /enhanced-resolve/3.4.1: 1319 | dependencies: 1320 | graceful-fs: 4.1.11 1321 | memory-fs: 0.4.1 1322 | object-assign: 4.1.1 1323 | tapable: 0.2.7 1324 | resolution: 1325 | integrity: sha1-BCHjOf1xQZs9oT0Smzl5BAIwR24= 1326 | /entities/1.0.0: 1327 | dev: true 1328 | resolution: 1329 | integrity: sha1-sph6o4ITR/zeZCsk/fyeT7cSvyY= 1330 | /entities/1.1.1: 1331 | resolution: 1332 | integrity: sha1-blwtClYhtdra7O+AuQ7ftc13cvA= 1333 | /errno/0.1.4: 1334 | dependencies: 1335 | prr: 0.0.0 1336 | resolution: 1337 | integrity: sha1-uJbiOp5ei6M4cfyZar02NfyaHH0= 1338 | /error-ex/1.3.1: 1339 | dependencies: 1340 | is-arrayish: 0.2.1 1341 | resolution: 1342 | integrity: sha1-+FWobOYa3E6GIcPNoh56dhLDqNw= 1343 | /es5-ext/0.10.24: 1344 | dependencies: 1345 | es6-iterator: 2.0.1 1346 | es6-symbol: 3.1.1 1347 | resolution: 1348 | integrity: sha1-pVh3yZJLwMjZvTwsvhdJWsFwmxQ= 1349 | /es6-iterator/2.0.1: 1350 | dependencies: 1351 | d: 1.0.0 1352 | es5-ext: 0.10.24 1353 | es6-symbol: 3.1.1 1354 | resolution: 1355 | integrity: sha1-jjGcnwRTv1ddN0lAplWSDlnKVRI= 1356 | /es6-map/0.1.5: 1357 | dependencies: 1358 | d: 1.0.0 1359 | es5-ext: 0.10.24 1360 | es6-iterator: 2.0.1 1361 | es6-set: 0.1.5 1362 | es6-symbol: 3.1.1 1363 | event-emitter: 0.3.5 1364 | resolution: 1365 | integrity: sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA= 1366 | /es6-set/0.1.5: 1367 | dependencies: 1368 | d: 1.0.0 1369 | es5-ext: 0.10.24 1370 | es6-iterator: 2.0.1 1371 | es6-symbol: 3.1.1 1372 | event-emitter: 0.3.5 1373 | resolution: 1374 | integrity: sha1-0rPsXU2ADO2BjbU40ol02wpzzLE= 1375 | /es6-symbol/3.1.1: 1376 | dependencies: 1377 | d: 1.0.0 1378 | es5-ext: 0.10.24 1379 | resolution: 1380 | integrity: sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc= 1381 | /es6-weak-map/2.0.2: 1382 | dependencies: 1383 | d: 1.0.0 1384 | es5-ext: 0.10.24 1385 | es6-iterator: 2.0.1 1386 | es6-symbol: 3.1.1 1387 | resolution: 1388 | integrity: sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8= 1389 | /escape-html/1.0.3: 1390 | resolution: 1391 | integrity: sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= 1392 | /escape-string-regexp/1.0.5: 1393 | resolution: 1394 | integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 1395 | /escope/3.6.0: 1396 | dependencies: 1397 | es6-map: 0.1.5 1398 | es6-weak-map: 2.0.2 1399 | esrecurse: 4.2.0 1400 | estraverse: 4.2.0 1401 | resolution: 1402 | integrity: sha1-4Bl16BJ4GhY6ba392AOY3GTIicM= 1403 | /eslint-config-prettier/1.7.0: 1404 | dependencies: 1405 | get-stdin: 5.0.1 1406 | dev: true 1407 | resolution: 1408 | integrity: sha1-zaPOIt8ehS2qk3Dx80Rui4oCzkQ= 1409 | /eslint-config-rem/3.2.0: 1410 | dependencies: 1411 | eslint-config-prettier: 1.7.0 1412 | eslint-plugin-markdown: 1.0.0-beta.6 1413 | eslint-plugin-prettier: /eslint-plugin-prettier/2.1.2/prettier@1.5.3 1414 | prettier: 1.5.3 1415 | dev: true 1416 | resolution: 1417 | integrity: sha512-x/b+qwciTkPzdTPSiRawpQahyT2WVtfNlDbH6hLqJYVzfvsFkWteMUgn0yAd/Txk0neSctHF/Lv0Xl7xYWnfOw== 1418 | /eslint-config-vue-app/1.3.3: 1419 | dependencies: 1420 | babel-eslint: 7.2.3 1421 | eslint-config-rem: 3.2.0 1422 | eslint-config-xo: 0.18.2 1423 | eslint-plugin-vue: 2.1.0 1424 | dev: true 1425 | resolution: 1426 | integrity: sha1-G4D6rRiEvjeG8owizeq/6aIaxj0= 1427 | /eslint-config-xo/0.18.2: 1428 | dev: true 1429 | resolution: 1430 | integrity: sha1-ChVxIIdWGZKec1/9axhcQeihh68= 1431 | /eslint-plugin-html/3.1.1: 1432 | dependencies: 1433 | htmlparser2: 3.9.2 1434 | dev: true 1435 | resolution: 1436 | integrity: sha1-1sA3luiaxrc12m/vnKkWK0I9ruM= 1437 | /eslint-plugin-json/1.2.0: 1438 | dependencies: 1439 | jshint: 2.9.5 1440 | dev: true 1441 | resolution: 1442 | integrity: sha1-m6c7sL6Z1QCT6In1uWhGPSow764= 1443 | /eslint-plugin-markdown/1.0.0-beta.6: 1444 | dependencies: 1445 | object-assign: 4.1.1 1446 | remark-parse: 3.0.1 1447 | unified: 6.1.5 1448 | dev: true 1449 | resolution: 1450 | integrity: sha1-2eYmZu6k52OH6F9QLfZoq9+9Q5U= 1451 | /eslint-plugin-prettier/2.1.2/prettier@1.5.3: 1452 | dependencies: 1453 | fast-diff: 1.1.1 1454 | jest-docblock: 20.0.3 1455 | prettier: 1.5.3 1456 | dev: true 1457 | id: registry.npmjs.org/eslint-plugin-prettier/2.1.2 1458 | resolution: 1459 | integrity: sha1-S5D07n+Sv74ukmAX4cpA62KJZeo= 1460 | /eslint-plugin-react/7.1.0: 1461 | dependencies: 1462 | doctrine: 2.0.0 1463 | has: 1.0.1 1464 | jsx-ast-utils: 1.4.1 1465 | dev: true 1466 | resolution: 1467 | integrity: sha1-J3cKzzn1/UnNCvQIPOWBBOs5DUw= 1468 | /eslint-plugin-vue/2.1.0: 1469 | dependencies: 1470 | eslint-plugin-html: 3.1.1 1471 | eslint-plugin-react: 7.1.0 1472 | dev: true 1473 | resolution: 1474 | integrity: sha1-UO0LfpojidkOaJdDo8wmtQJEG2k= 1475 | /eslint-scope/3.7.1: 1476 | dependencies: 1477 | esrecurse: 4.2.0 1478 | estraverse: 4.2.0 1479 | dev: true 1480 | resolution: 1481 | integrity: sha1-PWPD7f2gLgbgGkUq2IyqzHzctug= 1482 | /eslint/4.1.1: 1483 | dependencies: 1484 | babel-code-frame: 6.22.0 1485 | chalk: 1.1.3 1486 | concat-stream: 1.6.0 1487 | debug: 2.6.8 1488 | doctrine: 2.0.0 1489 | eslint-scope: 3.7.1 1490 | espree: 3.4.3 1491 | esquery: 1.0.0 1492 | estraverse: 4.2.0 1493 | esutils: 2.0.2 1494 | file-entry-cache: 2.0.0 1495 | glob: 7.1.2 1496 | globals: 9.18.0 1497 | ignore: 3.3.3 1498 | imurmurhash: 0.1.4 1499 | inquirer: 3.2.1 1500 | is-my-json-valid: 2.16.0 1501 | is-resolvable: 1.0.0 1502 | js-yaml: 3.9.1 1503 | json-stable-stringify: 1.0.1 1504 | levn: 0.3.0 1505 | lodash: 4.17.4 1506 | minimatch: 3.0.4 1507 | mkdirp: 0.5.1 1508 | natural-compare: 1.4.0 1509 | optionator: 0.8.2 1510 | path-is-inside: 1.0.2 1511 | pluralize: 4.0.0 1512 | progress: 2.0.0 1513 | require-uncached: 1.0.3 1514 | strip-json-comments: 2.0.1 1515 | table: 4.0.1 1516 | text-table: 0.2.0 1517 | dev: true 1518 | resolution: 1519 | integrity: sha1-+svfz+Pg+s06i4DcmMTmwTrlgt8= 1520 | /espree/3.4.3: 1521 | dependencies: 1522 | acorn: 5.1.1 1523 | acorn-jsx: 3.0.1 1524 | dev: true 1525 | resolution: 1526 | integrity: sha1-KRC1zNSc6JPC//+qtP2LOjG4I3Q= 1527 | /esprima/4.0.0: 1528 | resolution: 1529 | integrity: sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw== 1530 | /esquery/1.0.0: 1531 | dependencies: 1532 | estraverse: 4.2.0 1533 | dev: true 1534 | resolution: 1535 | integrity: sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo= 1536 | /esrecurse/4.2.0: 1537 | dependencies: 1538 | estraverse: 4.2.0 1539 | object-assign: 4.1.1 1540 | resolution: 1541 | integrity: sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM= 1542 | /estraverse/4.2.0: 1543 | resolution: 1544 | integrity: sha1-De4/7TH81GlhjOc0IJn8GvoL2xM= 1545 | /estree-walker/0.2.1: 1546 | dev: true 1547 | resolution: 1548 | integrity: sha1-va/oCVOD2EFNXcLs9MkXO225QS4= 1549 | /estree-walker/0.3.1: 1550 | dev: true 1551 | resolution: 1552 | integrity: sha1-5rGlHPcpJSTnI3wxLl/mZgwc4ao= 1553 | /esutils/2.0.2: 1554 | resolution: 1555 | integrity: sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= 1556 | /etag/1.8.0: 1557 | resolution: 1558 | integrity: sha1-b2Ma7zNtbEY2K1F2QETOIWvjwFE= 1559 | /event-emitter/0.3.5: 1560 | dependencies: 1561 | d: 1.0.0 1562 | es5-ext: 0.10.24 1563 | resolution: 1564 | integrity: sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= 1565 | /events/1.1.1: 1566 | resolution: 1567 | integrity: sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ= 1568 | /evp_bytestokey/1.0.0: 1569 | dependencies: 1570 | create-hash: 1.1.3 1571 | resolution: 1572 | integrity: sha1-SXtmrZ/vZc18CKYYCCS6FHa2blM= 1573 | /execa/0.7.0: 1574 | dependencies: 1575 | cross-spawn: 5.1.0 1576 | get-stream: 3.0.0 1577 | is-stream: 1.1.0 1578 | npm-run-path: 2.0.2 1579 | p-finally: 1.0.0 1580 | signal-exit: 3.0.2 1581 | strip-eof: 1.0.0 1582 | resolution: 1583 | integrity: sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= 1584 | /exit/0.1.2: 1585 | dev: true 1586 | resolution: 1587 | integrity: sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= 1588 | /expand-brackets/0.1.5: 1589 | dependencies: 1590 | is-posix-bracket: 0.1.1 1591 | resolution: 1592 | integrity: sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s= 1593 | /expand-range/1.8.2: 1594 | dependencies: 1595 | fill-range: 2.2.3 1596 | resolution: 1597 | integrity: sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc= 1598 | /express/4.15.3: 1599 | dependencies: 1600 | accepts: 1.3.3 1601 | array-flatten: 1.1.1 1602 | content-disposition: 0.5.2 1603 | content-type: 1.0.2 1604 | cookie: 0.3.1 1605 | cookie-signature: 1.0.6 1606 | debug: 2.6.7 1607 | depd: 1.1.1 1608 | encodeurl: 1.0.1 1609 | escape-html: 1.0.3 1610 | etag: 1.8.0 1611 | finalhandler: 1.0.3 1612 | fresh: 0.5.0 1613 | merge-descriptors: 1.0.1 1614 | methods: 1.1.2 1615 | on-finished: 2.3.0 1616 | parseurl: 1.3.1 1617 | path-to-regexp: 0.1.7 1618 | proxy-addr: 1.1.5 1619 | qs: 6.4.0 1620 | range-parser: 1.2.0 1621 | send: 0.15.3 1622 | serve-static: 1.12.3 1623 | setprototypeof: 1.0.3 1624 | statuses: 1.3.1 1625 | type-is: 1.6.15 1626 | utils-merge: 1.0.0 1627 | vary: 1.1.1 1628 | resolution: 1629 | integrity: sha1-urZdDwOqgMNYQIly/HAPkWlEtmI= 1630 | /extend/3.0.1: 1631 | resolution: 1632 | integrity: sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ= 1633 | /external-editor/2.0.4: 1634 | dependencies: 1635 | iconv-lite: 0.4.18 1636 | jschardet: 1.5.0 1637 | tmp: 0.0.31 1638 | dev: true 1639 | resolution: 1640 | integrity: sha1-HtkZnanL/i7y96MbL96LDRI2iXI= 1641 | /extglob/0.3.2: 1642 | dependencies: 1643 | is-extglob: 1.0.0 1644 | resolution: 1645 | integrity: sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE= 1646 | /extsprintf/1.0.2: 1647 | resolution: 1648 | integrity: sha1-4QgOBljjALBilJkMxw4VAiNf1VA= 1649 | /fast-deep-equal/1.0.0: 1650 | resolution: 1651 | integrity: sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8= 1652 | /fast-diff/1.1.1: 1653 | dev: true 1654 | resolution: 1655 | integrity: sha1-CuoOTmBbaiGJ8Ok21Lf7rxt8/Zs= 1656 | /fast-levenshtein/2.0.6: 1657 | dev: true 1658 | resolution: 1659 | integrity: sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= 1660 | /figures/2.0.0: 1661 | dependencies: 1662 | escape-string-regexp: 1.0.5 1663 | dev: true 1664 | resolution: 1665 | integrity: sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= 1666 | /file-entry-cache/2.0.0: 1667 | dependencies: 1668 | flat-cache: 1.2.2 1669 | object-assign: 4.1.1 1670 | dev: true 1671 | resolution: 1672 | integrity: sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E= 1673 | /filename-regex/2.0.1: 1674 | resolution: 1675 | integrity: sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY= 1676 | /fill-range/2.2.3: 1677 | dependencies: 1678 | is-number: 2.1.0 1679 | isobject: 2.1.0 1680 | randomatic: 1.1.7 1681 | repeat-element: 1.1.2 1682 | repeat-string: 1.6.1 1683 | resolution: 1684 | integrity: sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM= 1685 | /finalhandler/1.0.3: 1686 | dependencies: 1687 | debug: 2.6.7 1688 | encodeurl: 1.0.1 1689 | escape-html: 1.0.3 1690 | on-finished: 2.3.0 1691 | parseurl: 1.3.1 1692 | statuses: 1.3.1 1693 | unpipe: 1.0.0 1694 | resolution: 1695 | integrity: sha1-70fneVDpmXgOhgIqVg4yF+DQzIk= 1696 | /find-up/1.1.2: 1697 | dependencies: 1698 | path-exists: 2.1.0 1699 | pinkie-promise: 2.0.1 1700 | resolution: 1701 | integrity: sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= 1702 | /find-up/2.1.0: 1703 | dependencies: 1704 | locate-path: 2.0.0 1705 | resolution: 1706 | integrity: sha1-RdG35QbHF93UgndaK3eSCjwMV6c= 1707 | /flat-cache/1.2.2: 1708 | dependencies: 1709 | circular-json: 0.3.3 1710 | del: 2.2.2 1711 | graceful-fs: 4.1.11 1712 | write: 0.2.1 1713 | dev: true 1714 | resolution: 1715 | integrity: sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y= 1716 | /flat/2.0.1: 1717 | dependencies: 1718 | is-buffer: 1.1.5 1719 | resolution: 1720 | integrity: sha1-cOKRiKdL4MPIlAnu0fqVd5B64y8= 1721 | /for-in/0.1.8: 1722 | resolution: 1723 | integrity: sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= 1724 | /for-in/1.0.2: 1725 | resolution: 1726 | integrity: sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= 1727 | /for-own/0.1.5: 1728 | dependencies: 1729 | for-in: 1.0.2 1730 | resolution: 1731 | integrity: sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4= 1732 | /for-own/1.0.0: 1733 | dependencies: 1734 | for-in: 1.0.2 1735 | resolution: 1736 | integrity: sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= 1737 | /forever-agent/0.6.1: 1738 | resolution: 1739 | integrity: sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= 1740 | /form-data/2.1.4: 1741 | dependencies: 1742 | asynckit: 0.4.0 1743 | combined-stream: 1.0.5 1744 | mime-types: 2.1.16 1745 | resolution: 1746 | integrity: sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= 1747 | /forwarded/0.1.0: 1748 | resolution: 1749 | integrity: sha1-Ge+YdMSuHCl7zweP3mOgm2aoQ2M= 1750 | /fresh/0.5.0: 1751 | resolution: 1752 | integrity: sha1-9HTKXmqSRtb9jglTz6m5yAWvp44= 1753 | /front-matter/2.1.2: 1754 | dependencies: 1755 | js-yaml: 3.9.1 1756 | resolution: 1757 | integrity: sha1-91mDufL0E75ljJPf172M5AePXNs= 1758 | /fs.realpath/1.0.0: 1759 | resolution: 1760 | integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 1761 | /fsevents/1.1.2: 1762 | dependencies: 1763 | nan: 2.6.2 1764 | optional: true 1765 | resolution: 1766 | integrity: sha512-Sn44E5wQW4bTHXvQmvSHwqbuiXtduD6Rrjm2ZtUEGbyrig+nUH3t/QD4M4/ZXViY556TBpRgZkHLDx3JxPwxiw== 1767 | /fstream/1.0.11: 1768 | dependencies: 1769 | graceful-fs: 4.1.11 1770 | inherits: 2.0.3 1771 | mkdirp: 0.5.1 1772 | rimraf: 2.6.1 1773 | resolution: 1774 | integrity: sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE= 1775 | /function-bind/1.1.0: 1776 | dev: true 1777 | resolution: 1778 | integrity: sha1-FhdnFMgBeY5Ojyz391KUZ7tKV3E= 1779 | /gauge/2.7.4: 1780 | dependencies: 1781 | aproba: 1.1.2 1782 | console-control-strings: 1.1.0 1783 | has-unicode: 2.0.1 1784 | object-assign: 4.1.1 1785 | signal-exit: 3.0.2 1786 | string-width: 1.0.2 1787 | strip-ansi: 3.0.1 1788 | wide-align: 1.1.2 1789 | resolution: 1790 | integrity: sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= 1791 | /gaze/1.1.2: 1792 | dependencies: 1793 | globule: 1.2.0 1794 | resolution: 1795 | integrity: sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU= 1796 | /generate-function/2.0.0: 1797 | dev: true 1798 | resolution: 1799 | integrity: sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ= 1800 | /generate-object-property/1.2.0: 1801 | dependencies: 1802 | is-property: 1.0.2 1803 | dev: true 1804 | resolution: 1805 | integrity: sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA= 1806 | /get-caller-file/1.0.2: 1807 | resolution: 1808 | integrity: sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U= 1809 | /get-stdin/4.0.1: 1810 | resolution: 1811 | integrity: sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= 1812 | /get-stdin/5.0.1: 1813 | dev: true 1814 | resolution: 1815 | integrity: sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g= 1816 | /get-stream/3.0.0: 1817 | resolution: 1818 | integrity: sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= 1819 | /getpass/0.1.7: 1820 | dependencies: 1821 | assert-plus: 1.0.0 1822 | resolution: 1823 | integrity: sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= 1824 | /glob-base/0.3.0: 1825 | dependencies: 1826 | glob-parent: 2.0.0 1827 | is-glob: 2.0.1 1828 | resolution: 1829 | integrity: sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q= 1830 | /glob-parent/2.0.0: 1831 | dependencies: 1832 | is-glob: 2.0.1 1833 | resolution: 1834 | integrity: sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg= 1835 | /glob/7.1.2: 1836 | dependencies: 1837 | fs.realpath: 1.0.0 1838 | inflight: 1.0.6 1839 | inherits: 2.0.3 1840 | minimatch: 3.0.4 1841 | once: 1.4.0 1842 | path-is-absolute: 1.0.1 1843 | resolution: 1844 | integrity: sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ== 1845 | /globals/9.18.0: 1846 | resolution: 1847 | integrity: sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== 1848 | /globby/5.0.0: 1849 | dependencies: 1850 | array-union: 1.0.2 1851 | arrify: 1.0.1 1852 | glob: 7.1.2 1853 | object-assign: 4.1.1 1854 | pify: 2.3.0 1855 | pinkie-promise: 2.0.1 1856 | dev: true 1857 | resolution: 1858 | integrity: sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0= 1859 | /globule/1.2.0: 1860 | dependencies: 1861 | glob: 7.1.2 1862 | lodash: 4.17.4 1863 | minimatch: 3.0.4 1864 | resolution: 1865 | integrity: sha1-HcScaCLdnoovoAuiopUAboZkvQk= 1866 | /good-listener/1.2.2: 1867 | dependencies: 1868 | delegate: 3.1.3 1869 | optional: true 1870 | resolution: 1871 | integrity: sha1-1TswzfkxPf+33JoNR3CWqm0UXFA= 1872 | /graceful-fs/4.1.11: 1873 | resolution: 1874 | integrity: sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg= 1875 | /har-schema/1.0.5: 1876 | resolution: 1877 | integrity: sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= 1878 | /har-validator/4.2.1: 1879 | dependencies: 1880 | ajv: 4.11.8 1881 | har-schema: 1.0.5 1882 | resolution: 1883 | integrity: sha1-M0gdDxu/9gDdID11gSpqX7oALio= 1884 | /has-ansi/2.0.0: 1885 | dependencies: 1886 | ansi-regex: 2.1.1 1887 | resolution: 1888 | integrity: sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= 1889 | /has-flag/2.0.0: 1890 | resolution: 1891 | integrity: sha1-6CB68cx7MNRGzHC3NLXovhj4jVE= 1892 | /has-unicode/2.0.1: 1893 | resolution: 1894 | integrity: sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= 1895 | /has/1.0.1: 1896 | dependencies: 1897 | function-bind: 1.1.0 1898 | dev: true 1899 | resolution: 1900 | integrity: sha1-hGFzP1OLCDfJNh45qauelwTcLyg= 1901 | /hash-base/2.0.2: 1902 | dependencies: 1903 | inherits: 2.0.3 1904 | resolution: 1905 | integrity: sha1-ZuodhW206KVHDK32/OI65SRO8uE= 1906 | /hash.js/1.1.3: 1907 | dependencies: 1908 | inherits: 2.0.3 1909 | minimalistic-assert: 1.0.0 1910 | resolution: 1911 | integrity: sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA== 1912 | /hawk/3.1.3: 1913 | dependencies: 1914 | boom: 2.10.1 1915 | cryptiles: 2.0.5 1916 | hoek: 2.16.3 1917 | sntp: 1.0.9 1918 | resolution: 1919 | integrity: sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= 1920 | /hmac-drbg/1.0.1: 1921 | dependencies: 1922 | hash.js: 1.1.3 1923 | minimalistic-assert: 1.0.0 1924 | minimalistic-crypto-utils: 1.0.1 1925 | resolution: 1926 | integrity: sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= 1927 | /hoek/2.16.3: 1928 | resolution: 1929 | integrity: sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= 1930 | /home-or-tmp/2.0.0: 1931 | dependencies: 1932 | os-homedir: 1.0.2 1933 | os-tmpdir: 1.0.2 1934 | dev: true 1935 | resolution: 1936 | integrity: sha1-42w/LSyufXRqhX440Y1fMqeILbg= 1937 | /hosted-git-info/2.5.0: 1938 | resolution: 1939 | integrity: sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg== 1940 | /htmlparser2/3.8.3: 1941 | dependencies: 1942 | domelementtype: 1.3.0 1943 | domhandler: 2.3.0 1944 | domutils: 1.5.1 1945 | entities: 1.0.0 1946 | readable-stream: 1.1.14 1947 | dev: true 1948 | resolution: 1949 | integrity: sha1-mWwosZFRaovoZQGn15dX5ccMEGg= 1950 | /htmlparser2/3.9.2: 1951 | dependencies: 1952 | domelementtype: 1.3.0 1953 | domhandler: 2.4.1 1954 | domutils: 1.6.2 1955 | entities: 1.1.1 1956 | inherits: 2.0.3 1957 | readable-stream: 2.3.3 1958 | resolution: 1959 | integrity: sha1-G9+HrMoPP55T+k/M6w9LTLsAszg= 1960 | /http-errors/1.6.1: 1961 | dependencies: 1962 | depd: 1.1.0 1963 | inherits: 2.0.3 1964 | setprototypeof: 1.0.3 1965 | statuses: 1.3.1 1966 | resolution: 1967 | integrity: sha1-X4uO2YrKVFZWv1cplzh/kEpyIlc= 1968 | /http-signature/1.1.1: 1969 | dependencies: 1970 | assert-plus: 0.2.0 1971 | jsprim: 1.4.0 1972 | sshpk: 1.13.1 1973 | resolution: 1974 | integrity: sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= 1975 | /https-browserify/0.0.1: 1976 | resolution: 1977 | integrity: sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI= 1978 | /iconv-lite/0.4.18: 1979 | dev: true 1980 | resolution: 1981 | integrity: sha512-sr1ZQph3UwHTR0XftSbK85OvBbxe/abLGzEnPENCQwmHf7sck8Oyu4ob3LgBxWWxRoM+QszeUyl7jbqapu2TqA== 1982 | /ieee754/1.1.8: 1983 | resolution: 1984 | integrity: sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q= 1985 | /ignore/3.3.3: 1986 | dev: true 1987 | resolution: 1988 | integrity: sha1-QyNS5XrM2HqzEQ6C0/6g5HgSFW0= 1989 | /imurmurhash/0.1.4: 1990 | dev: true 1991 | resolution: 1992 | integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o= 1993 | /in-publish/2.0.0: 1994 | resolution: 1995 | integrity: sha1-4g/146KvwmkDILbcVSaCqcf631E= 1996 | /indent-string/2.1.0: 1997 | dependencies: 1998 | repeating: 2.0.1 1999 | resolution: 2000 | integrity: sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= 2001 | /indexof/0.0.1: 2002 | resolution: 2003 | integrity: sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= 2004 | /inflight/1.0.6: 2005 | dependencies: 2006 | once: 1.4.0 2007 | wrappy: 1.0.2 2008 | resolution: 2009 | integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 2010 | /inherits/2.0.1: 2011 | resolution: 2012 | integrity: sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= 2013 | /inherits/2.0.3: 2014 | resolution: 2015 | integrity: sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= 2016 | /inquirer/3.2.1: 2017 | dependencies: 2018 | ansi-escapes: 2.0.0 2019 | chalk: 2.0.1 2020 | cli-cursor: 2.1.0 2021 | cli-width: 2.1.0 2022 | external-editor: 2.0.4 2023 | figures: 2.0.0 2024 | lodash: 4.17.4 2025 | mute-stream: 0.0.7 2026 | run-async: 2.3.0 2027 | rx-lite: 4.0.8 2028 | rx-lite-aggregates: 4.0.8 2029 | string-width: 2.1.1 2030 | strip-ansi: 4.0.0 2031 | through: 2.3.8 2032 | dev: true 2033 | resolution: 2034 | integrity: sha512-QgW3eiPN8gpj/K5vVpHADJJgrrF0ho/dZGylikGX7iqAdRgC9FVKYKWFLx6hZDBFcOLEoSqINYrVPeFAeG/PdA== 2035 | /interpret/1.0.3: 2036 | resolution: 2037 | integrity: sha1-y8NcYu7uc/Gat7EKgBURQBr8D5A= 2038 | /invariant/2.2.2: 2039 | dependencies: 2040 | loose-envify: 1.3.1 2041 | resolution: 2042 | integrity: sha1-nh9WrArNtr8wMwbzOL47IErmA2A= 2043 | /invert-kv/1.0.0: 2044 | resolution: 2045 | integrity: sha1-EEqOSqym09jNFXqO+L+rLXo//bY= 2046 | /ipaddr.js/1.4.0: 2047 | resolution: 2048 | integrity: sha1-KWrKh4qCGBbluF0KKFqZvP9FgvA= 2049 | /is-alphabetical/1.0.1: 2050 | dev: true 2051 | resolution: 2052 | integrity: sha1-x3B5zJHU76x3W+EDS/LSQ/lebwg= 2053 | /is-alphanumerical/1.0.1: 2054 | dependencies: 2055 | is-alphabetical: 1.0.1 2056 | is-decimal: 1.0.1 2057 | dev: true 2058 | resolution: 2059 | integrity: sha1-37SqTRCF4zvbYcLe6cgOnGwZ9Ts= 2060 | /is-arrayish/0.2.1: 2061 | resolution: 2062 | integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 2063 | /is-binary-path/1.0.1: 2064 | dependencies: 2065 | binary-extensions: 1.9.0 2066 | resolution: 2067 | integrity: sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= 2068 | /is-buffer/1.1.5: 2069 | resolution: 2070 | integrity: sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw= 2071 | /is-builtin-module/1.0.0: 2072 | dependencies: 2073 | builtin-modules: 1.1.1 2074 | resolution: 2075 | integrity: sha1-VAVy0096wxGfj3bDDLwbHgN6/74= 2076 | /is-decimal/1.0.1: 2077 | dev: true 2078 | resolution: 2079 | integrity: sha1-9ftqlJlq2ejjdh+/vQkfH8qMToI= 2080 | /is-dotfile/1.0.3: 2081 | resolution: 2082 | integrity: sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE= 2083 | /is-equal-shallow/0.1.3: 2084 | dependencies: 2085 | is-primitive: 2.0.0 2086 | resolution: 2087 | integrity: sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ= 2088 | /is-extendable/0.1.1: 2089 | resolution: 2090 | integrity: sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= 2091 | /is-extglob/1.0.0: 2092 | resolution: 2093 | integrity: sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA= 2094 | /is-finite/1.0.2: 2095 | dependencies: 2096 | number-is-nan: 1.0.1 2097 | resolution: 2098 | integrity: sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko= 2099 | /is-fullwidth-code-point/1.0.0: 2100 | dependencies: 2101 | number-is-nan: 1.0.1 2102 | resolution: 2103 | integrity: sha1-754xOG8DGn8NZDr4L95QxFfvAMs= 2104 | /is-fullwidth-code-point/2.0.0: 2105 | resolution: 2106 | integrity: sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 2107 | /is-glob/2.0.1: 2108 | dependencies: 2109 | is-extglob: 1.0.0 2110 | resolution: 2111 | integrity: sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM= 2112 | /is-hexadecimal/1.0.1: 2113 | dev: true 2114 | resolution: 2115 | integrity: sha1-bghLvJIGH7sJcexYts5tQE4k2mk= 2116 | /is-module/1.0.0: 2117 | dev: true 2118 | resolution: 2119 | integrity: sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= 2120 | /is-my-json-valid/2.16.0: 2121 | dependencies: 2122 | generate-function: 2.0.0 2123 | generate-object-property: 1.2.0 2124 | jsonpointer: 4.0.1 2125 | xtend: 4.0.1 2126 | dev: true 2127 | resolution: 2128 | integrity: sha1-8Hndm/2uZe4gOKrorLyGqxCeNpM= 2129 | /is-number/2.1.0: 2130 | dependencies: 2131 | kind-of: 3.2.2 2132 | resolution: 2133 | integrity: sha1-Afy7s5NGOlSPL0ZszhbezknbkI8= 2134 | /is-number/3.0.0: 2135 | dependencies: 2136 | kind-of: 3.2.2 2137 | resolution: 2138 | integrity: sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= 2139 | /is-path-cwd/1.0.0: 2140 | dev: true 2141 | resolution: 2142 | integrity: sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0= 2143 | /is-path-in-cwd/1.0.0: 2144 | dependencies: 2145 | is-path-inside: 1.0.0 2146 | dev: true 2147 | resolution: 2148 | integrity: sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw= 2149 | /is-path-inside/1.0.0: 2150 | dependencies: 2151 | path-is-inside: 1.0.2 2152 | dev: true 2153 | resolution: 2154 | integrity: sha1-/AbloWg/vaE95mev9xe7wQpI838= 2155 | /is-plain-obj/1.1.0: 2156 | resolution: 2157 | integrity: sha1-caUMhCnfync8kqOQpKA7OfzVHT4= 2158 | /is-plain-object/2.0.4: 2159 | dependencies: 2160 | isobject: 3.0.1 2161 | resolution: 2162 | integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== 2163 | /is-posix-bracket/0.1.1: 2164 | resolution: 2165 | integrity: sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q= 2166 | /is-primitive/2.0.0: 2167 | resolution: 2168 | integrity: sha1-IHurkWOEmcB7Kt8kCkGochADRXU= 2169 | /is-promise/2.1.0: 2170 | dev: true 2171 | resolution: 2172 | integrity: sha1-eaKp7OfwlugPNtKy87wWwf9L8/o= 2173 | /is-property/1.0.2: 2174 | dev: true 2175 | resolution: 2176 | integrity: sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ= 2177 | /is-resolvable/1.0.0: 2178 | dependencies: 2179 | tryit: 1.0.3 2180 | dev: true 2181 | resolution: 2182 | integrity: sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI= 2183 | /is-stream/1.1.0: 2184 | resolution: 2185 | integrity: sha1-EtSj3U5o4Lec6428hBc66A2RykQ= 2186 | /is-typedarray/1.0.0: 2187 | resolution: 2188 | integrity: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= 2189 | /is-utf8/0.2.1: 2190 | resolution: 2191 | integrity: sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= 2192 | /is-whitespace-character/1.0.1: 2193 | dev: true 2194 | resolution: 2195 | integrity: sha1-muAXbzKCtlRXoZks2whPil+DPjs= 2196 | /is-word-character/1.0.1: 2197 | dev: true 2198 | resolution: 2199 | integrity: sha1-WgP6HqkazopusMfNdw64bWXIvvs= 2200 | /isarray/0.0.1: 2201 | dev: true 2202 | resolution: 2203 | integrity: sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= 2204 | /isarray/1.0.0: 2205 | resolution: 2206 | integrity: sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 2207 | /isexe/2.0.0: 2208 | resolution: 2209 | integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 2210 | /isobject/2.1.0: 2211 | dependencies: 2212 | isarray: 1.0.0 2213 | resolution: 2214 | integrity: sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= 2215 | /isobject/3.0.1: 2216 | resolution: 2217 | integrity: sha1-TkMekrEalzFjaqH5yNHMvP2reN8= 2218 | /isstream/0.1.2: 2219 | resolution: 2220 | integrity: sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= 2221 | /jest-docblock/20.0.3: 2222 | dev: true 2223 | resolution: 2224 | integrity: sha1-F76phDQswz2DxQ++FUXqDvqkRxI= 2225 | /js-base64/2.1.9: 2226 | resolution: 2227 | integrity: sha1-8OgK4DmkvWVLXygfyT8EqRSn/M4= 2228 | /js-tokens/3.0.2: 2229 | resolution: 2230 | integrity: sha1-mGbfOVECEw449/mWvOtlRDIJwls= 2231 | /js-yaml/3.9.1: 2232 | dependencies: 2233 | argparse: 1.0.9 2234 | esprima: 4.0.0 2235 | resolution: 2236 | integrity: sha512-CbcG379L1e+mWBnLvHWWeLs8GyV/EMw862uLI3c+GxVyDHWZcjZinwuBd3iW2pgxgIlksW/1vNJa4to+RvDOww== 2237 | /jsbn/0.1.1: 2238 | optional: true 2239 | resolution: 2240 | integrity: sha1-peZUwuWi3rXyAdls77yoDA7y9RM= 2241 | /jschardet/1.5.0: 2242 | dev: true 2243 | resolution: 2244 | integrity: sha512-+Q8JsoEQbrdE+a/gg1F9XO92gcKXgpE5UACqr0sIubjDmBEkd+OOWPGzQeMrWSLxd73r4dHxBeRW7edHu5LmJQ== 2245 | /jsesc/0.5.0: 2246 | resolution: 2247 | integrity: sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= 2248 | /jsesc/1.3.0: 2249 | dev: true 2250 | resolution: 2251 | integrity: sha1-RsP+yMGJKxKwgz25vHYiF226s0s= 2252 | /jshint/2.9.5: 2253 | dependencies: 2254 | cli: 1.0.1 2255 | console-browserify: 1.1.0 2256 | exit: 0.1.2 2257 | htmlparser2: 3.8.3 2258 | lodash: 3.7.0 2259 | minimatch: 3.0.4 2260 | shelljs: 0.3.0 2261 | strip-json-comments: 1.0.4 2262 | dev: true 2263 | resolution: 2264 | integrity: sha1-HnJSkVzmgbQIJ+4UJIxG006apiw= 2265 | /json-loader/0.5.7: 2266 | resolution: 2267 | integrity: sha512-QLPs8Dj7lnf3e3QYS1zkCo+4ZwqOiF9d/nZnYozTISxXWCfNs9yuky5rJw4/W34s7POaNlbZmQGaB5NiXCbP4w== 2268 | /json-schema-traverse/0.3.1: 2269 | resolution: 2270 | integrity: sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A= 2271 | /json-schema/0.2.3: 2272 | resolution: 2273 | integrity: sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= 2274 | /json-stable-stringify/1.0.1: 2275 | dependencies: 2276 | jsonify: 0.0.0 2277 | resolution: 2278 | integrity: sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= 2279 | /json-stringify-safe/5.0.1: 2280 | resolution: 2281 | integrity: sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= 2282 | /json5/0.5.1: 2283 | resolution: 2284 | integrity: sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= 2285 | /jsonify/0.0.0: 2286 | resolution: 2287 | integrity: sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= 2288 | /jsonpointer/4.0.1: 2289 | dev: true 2290 | resolution: 2291 | integrity: sha1-T9kss04OnbPInIYi7PUfm5eMbLk= 2292 | /jsprim/1.4.0: 2293 | dependencies: 2294 | assert-plus: 1.0.0 2295 | extsprintf: 1.0.2 2296 | json-schema: 0.2.3 2297 | verror: 1.3.6 2298 | resolution: 2299 | integrity: sha1-o7h+QCmNjDgFUtjMdiigu5WiKRg= 2300 | /jsx-ast-utils/1.4.1: 2301 | dev: true 2302 | resolution: 2303 | integrity: sha1-OGchPo3Xm/Ho8jAMDPwe+xgsDfE= 2304 | /kind-of/2.0.1: 2305 | dependencies: 2306 | is-buffer: 1.1.5 2307 | resolution: 2308 | integrity: sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU= 2309 | /kind-of/3.2.2: 2310 | dependencies: 2311 | is-buffer: 1.1.5 2312 | resolution: 2313 | integrity: sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= 2314 | /kind-of/4.0.0: 2315 | dependencies: 2316 | is-buffer: 1.1.5 2317 | resolution: 2318 | integrity: sha1-IIE989cSkosgc3hpGkUGb65y3Vc= 2319 | /lazy-cache/0.2.7: 2320 | resolution: 2321 | integrity: sha1-f+3fLctu23fRHvHRF6tf/fCrG2U= 2322 | /lazy-cache/1.0.4: 2323 | resolution: 2324 | integrity: sha1-odePw6UEdMuAhF07O24dpJpEbo4= 2325 | /lcid/1.0.0: 2326 | dependencies: 2327 | invert-kv: 1.0.0 2328 | resolution: 2329 | integrity: sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= 2330 | /levn/0.3.0: 2331 | dependencies: 2332 | prelude-ls: 1.1.2 2333 | type-check: 0.3.2 2334 | dev: true 2335 | resolution: 2336 | integrity: sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= 2337 | /linkify-it/2.0.3: 2338 | dependencies: 2339 | uc.micro: 1.0.3 2340 | resolution: 2341 | integrity: sha1-2UpGSPmxwXnWT6lykSaL22zpQ08= 2342 | /load-json-file/1.1.0: 2343 | dependencies: 2344 | graceful-fs: 4.1.11 2345 | parse-json: 2.2.0 2346 | pify: 2.3.0 2347 | pinkie-promise: 2.0.1 2348 | strip-bom: 2.0.0 2349 | resolution: 2350 | integrity: sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= 2351 | /load-json-file/2.0.0: 2352 | dependencies: 2353 | graceful-fs: 4.1.11 2354 | parse-json: 2.2.0 2355 | pify: 2.3.0 2356 | strip-bom: 3.0.0 2357 | resolution: 2358 | integrity: sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= 2359 | /loader-runner/2.3.0: 2360 | resolution: 2361 | integrity: sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI= 2362 | /loader-utils/1.1.0: 2363 | dependencies: 2364 | big.js: 3.1.3 2365 | emojis-list: 2.1.0 2366 | json5: 0.5.1 2367 | resolution: 2368 | integrity: sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0= 2369 | /locate-path/2.0.0: 2370 | dependencies: 2371 | p-locate: 2.0.0 2372 | path-exists: 3.0.0 2373 | resolution: 2374 | integrity: sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= 2375 | /lodash.assign/4.2.0: 2376 | resolution: 2377 | integrity: sha1-DZnzzNem0mHRm9rrkkUAXShYCOc= 2378 | /lodash.clonedeep/4.5.0: 2379 | resolution: 2380 | integrity: sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= 2381 | /lodash.mergewith/4.6.0: 2382 | resolution: 2383 | integrity: sha1-FQzwoWeR9ZA7iJHqsVRgknS96lU= 2384 | /lodash.tail/4.1.1: 2385 | resolution: 2386 | integrity: sha1-0jM6NtnncXyK0vfKyv7HwytERmQ= 2387 | /lodash/3.7.0: 2388 | dev: true 2389 | resolution: 2390 | integrity: sha1-Nni9irmVBXwHreg27S7wh9qBHUU= 2391 | /lodash/4.17.4: 2392 | resolution: 2393 | integrity: sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= 2394 | /longest/1.0.1: 2395 | resolution: 2396 | integrity: sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc= 2397 | /loose-envify/1.3.1: 2398 | dependencies: 2399 | js-tokens: 3.0.2 2400 | resolution: 2401 | integrity: sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg= 2402 | /loud-rejection/1.6.0: 2403 | dependencies: 2404 | currently-unhandled: 0.4.1 2405 | signal-exit: 3.0.2 2406 | resolution: 2407 | integrity: sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= 2408 | /lru-cache/4.1.1: 2409 | dependencies: 2410 | pseudomap: 1.0.2 2411 | yallist: 2.1.2 2412 | resolution: 2413 | integrity: sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew== 2414 | /magic-string/0.19.1: 2415 | dependencies: 2416 | vlq: 0.2.2 2417 | dev: true 2418 | resolution: 2419 | integrity: sha1-FNdoATyvLsj96hakmvgvw3fnUgE= 2420 | /map-obj/1.0.1: 2421 | resolution: 2422 | integrity: sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= 2423 | /markdown-escapes/1.0.1: 2424 | dev: true 2425 | resolution: 2426 | integrity: sha1-GZTfLTr0gR3lmmcUk0wrIpJzRRg= 2427 | /markdown-it-decorate/1.2.2: 2428 | resolution: 2429 | integrity: sha1-8eEdEdg3rniQYZj4osl08OZGrLc= 2430 | /markdown-it-emoji/1.4.0: 2431 | resolution: 2432 | integrity: sha1-m+4OmpkKljupbfaYDE/dsF37Tcw= 2433 | /markdown-it/8.3.1: 2434 | dependencies: 2435 | argparse: 1.0.9 2436 | entities: 1.1.1 2437 | linkify-it: 2.0.3 2438 | mdurl: 1.0.1 2439 | uc.micro: 1.0.3 2440 | resolution: 2441 | integrity: sha1-L0tiKUjM3Bk9ZvPKLUMSWsSscyM= 2442 | /mdurl/1.0.1: 2443 | resolution: 2444 | integrity: sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4= 2445 | /media-typer/0.3.0: 2446 | resolution: 2447 | integrity: sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= 2448 | /mem/1.1.0: 2449 | dependencies: 2450 | mimic-fn: 1.1.0 2451 | resolution: 2452 | integrity: sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y= 2453 | /memory-fs/0.4.1: 2454 | dependencies: 2455 | errno: 0.1.4 2456 | readable-stream: 2.3.3 2457 | resolution: 2458 | integrity: sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= 2459 | /meow/3.7.0: 2460 | dependencies: 2461 | camelcase-keys: 2.1.0 2462 | decamelize: 1.2.0 2463 | loud-rejection: 1.6.0 2464 | map-obj: 1.0.1 2465 | minimist: 1.2.0 2466 | normalize-package-data: 2.4.0 2467 | object-assign: 4.1.1 2468 | read-pkg-up: 1.0.1 2469 | redent: 1.0.0 2470 | trim-newlines: 1.0.0 2471 | resolution: 2472 | integrity: sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= 2473 | /merge-descriptors/1.0.1: 2474 | resolution: 2475 | integrity: sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= 2476 | /merge-options/1.0.0: 2477 | dependencies: 2478 | is-plain-obj: 1.1.0 2479 | resolution: 2480 | integrity: sha1-W08zmpVxkrW5iZSjrFyV0splG5Q= 2481 | /methods/1.1.2: 2482 | resolution: 2483 | integrity: sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= 2484 | /micromatch/2.3.11: 2485 | dependencies: 2486 | arr-diff: 2.0.0 2487 | array-unique: 0.2.1 2488 | braces: 1.8.5 2489 | expand-brackets: 0.1.5 2490 | extglob: 0.3.2 2491 | filename-regex: 2.0.1 2492 | is-extglob: 1.0.0 2493 | is-glob: 2.0.1 2494 | kind-of: 3.2.2 2495 | normalize-path: 2.1.1 2496 | object.omit: 2.0.1 2497 | parse-glob: 3.0.4 2498 | regex-cache: 0.4.3 2499 | resolution: 2500 | integrity: sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU= 2501 | /miller-rabin/4.0.0: 2502 | dependencies: 2503 | bn.js: 4.11.7 2504 | brorand: 1.1.0 2505 | resolution: 2506 | integrity: sha1-SmL7HUKTPAVYOYL0xxb2+55sbT0= 2507 | /mime-db/1.29.0: 2508 | resolution: 2509 | integrity: sha1-SNJtI1WJZRcErFkWygYAGRQmaHg= 2510 | /mime-types/2.1.16: 2511 | dependencies: 2512 | mime-db: 1.29.0 2513 | resolution: 2514 | integrity: sha1-K4WKUuXs1RbbiXrCvodIeDBpjiM= 2515 | /mime/1.3.4: 2516 | resolution: 2517 | integrity: sha1-EV+eO2s9rylZmDyzjxSaLUDrXVM= 2518 | /mimic-fn/1.1.0: 2519 | resolution: 2520 | integrity: sha1-5md4PZLonb00KBi1IwudYqZyrRg= 2521 | /minimalistic-assert/1.0.0: 2522 | resolution: 2523 | integrity: sha1-cCvi3aazf0g2vLP121ZkG2Sh09M= 2524 | /minimalistic-crypto-utils/1.0.1: 2525 | resolution: 2526 | integrity: sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= 2527 | /minimatch/3.0.4: 2528 | dependencies: 2529 | brace-expansion: 1.1.8 2530 | resolution: 2531 | integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 2532 | /minimist/0.0.8: 2533 | resolution: 2534 | integrity: sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= 2535 | /minimist/1.2.0: 2536 | resolution: 2537 | integrity: sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 2538 | /mixin-object/2.0.1: 2539 | dependencies: 2540 | for-in: 0.1.8 2541 | is-extendable: 0.1.1 2542 | resolution: 2543 | integrity: sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= 2544 | /mkdirp/0.5.1: 2545 | dependencies: 2546 | minimist: 0.0.8 2547 | resolution: 2548 | integrity: sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= 2549 | /ms/2.0.0: 2550 | resolution: 2551 | integrity: sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 2552 | /mute-stream/0.0.7: 2553 | dev: true 2554 | resolution: 2555 | integrity: sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= 2556 | /nan/2.6.2: 2557 | resolution: 2558 | integrity: sha1-5P805slf37WuzAjeZZb0NgWn20U= 2559 | /natural-compare/1.4.0: 2560 | dev: true 2561 | resolution: 2562 | integrity: sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= 2563 | /negotiator/0.6.1: 2564 | resolution: 2565 | integrity: sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk= 2566 | /node-gyp/3.6.2: 2567 | dependencies: 2568 | fstream: 1.0.11 2569 | glob: 7.1.2 2570 | graceful-fs: 4.1.11 2571 | minimatch: 3.0.4 2572 | mkdirp: 0.5.1 2573 | nopt: 3.0.6 2574 | npmlog: 4.1.2 2575 | osenv: 0.1.4 2576 | request: 2.81.0 2577 | rimraf: 2.6.1 2578 | semver: 5.3.0 2579 | tar: 2.2.1 2580 | which: 1.2.14 2581 | resolution: 2582 | integrity: sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA= 2583 | /node-libs-browser/2.0.0: 2584 | dependencies: 2585 | assert: 1.4.1 2586 | browserify-zlib: 0.1.4 2587 | buffer: 4.9.1 2588 | console-browserify: 1.1.0 2589 | constants-browserify: 1.0.0 2590 | crypto-browserify: 3.11.1 2591 | domain-browser: 1.1.7 2592 | events: 1.1.1 2593 | https-browserify: 0.0.1 2594 | os-browserify: 0.2.1 2595 | path-browserify: 0.0.0 2596 | process: 0.11.10 2597 | punycode: 1.4.1 2598 | querystring-es3: 0.2.1 2599 | readable-stream: 2.3.3 2600 | stream-browserify: 2.0.1 2601 | stream-http: 2.7.2 2602 | string_decoder: 0.10.31 2603 | timers-browserify: 2.0.2 2604 | tty-browserify: 0.0.0 2605 | url: 0.11.0 2606 | util: 0.10.3 2607 | vm-browserify: 0.0.4 2608 | resolution: 2609 | integrity: sha1-o6WeyXAkmFtG6Vg3lkb5bEthZkY= 2610 | /node-sass/4.5.3: 2611 | dependencies: 2612 | async-foreach: 0.1.3 2613 | chalk: 1.1.3 2614 | cross-spawn: 3.0.1 2615 | gaze: 1.1.2 2616 | get-stdin: 4.0.1 2617 | glob: 7.1.2 2618 | in-publish: 2.0.0 2619 | lodash.assign: 4.2.0 2620 | lodash.clonedeep: 4.5.0 2621 | lodash.mergewith: 4.6.0 2622 | meow: 3.7.0 2623 | mkdirp: 0.5.1 2624 | nan: 2.6.2 2625 | node-gyp: 3.6.2 2626 | npmlog: 4.1.2 2627 | request: 2.81.0 2628 | sass-graph: 2.2.4 2629 | stdout-stream: 1.4.0 2630 | resolution: 2631 | integrity: sha1-0JydEXlkEjnRuX/8YjH9zsU+FWg= 2632 | /nopt/3.0.6: 2633 | dependencies: 2634 | abbrev: 1.1.0 2635 | resolution: 2636 | integrity: sha1-xkZdvwirzU2zWTF/eaxopkayj/k= 2637 | /normalize-package-data/2.4.0: 2638 | dependencies: 2639 | hosted-git-info: 2.5.0 2640 | is-builtin-module: 1.0.0 2641 | semver: 5.4.1 2642 | validate-npm-package-license: 3.0.1 2643 | resolution: 2644 | integrity: sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw== 2645 | /normalize-path/2.1.1: 2646 | dependencies: 2647 | remove-trailing-separator: 1.0.2 2648 | resolution: 2649 | integrity: sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= 2650 | /npm-run-path/2.0.2: 2651 | dependencies: 2652 | path-key: 2.0.1 2653 | resolution: 2654 | integrity: sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= 2655 | /npmlog/4.1.2: 2656 | dependencies: 2657 | are-we-there-yet: 1.1.4 2658 | console-control-strings: 1.1.0 2659 | gauge: 2.7.4 2660 | set-blocking: 2.0.0 2661 | resolution: 2662 | integrity: sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== 2663 | /nth-check/1.0.1: 2664 | dependencies: 2665 | boolbase: 1.0.0 2666 | resolution: 2667 | integrity: sha1-mSms32KPwsQQmN6rgqxYDPFJquQ= 2668 | /number-is-nan/1.0.1: 2669 | resolution: 2670 | integrity: sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 2671 | /oauth-sign/0.8.2: 2672 | resolution: 2673 | integrity: sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= 2674 | /object-assign/4.1.1: 2675 | resolution: 2676 | integrity: sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 2677 | /object.omit/2.0.1: 2678 | dependencies: 2679 | for-own: 0.1.5 2680 | is-extendable: 0.1.1 2681 | resolution: 2682 | integrity: sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo= 2683 | /on-finished/2.3.0: 2684 | dependencies: 2685 | ee-first: 1.1.1 2686 | resolution: 2687 | integrity: sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= 2688 | /once/1.4.0: 2689 | dependencies: 2690 | wrappy: 1.0.2 2691 | resolution: 2692 | integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 2693 | /onetime/2.0.1: 2694 | dependencies: 2695 | mimic-fn: 1.1.0 2696 | dev: true 2697 | resolution: 2698 | integrity: sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= 2699 | /optionator/0.8.2: 2700 | dependencies: 2701 | deep-is: 0.1.3 2702 | fast-levenshtein: 2.0.6 2703 | levn: 0.3.0 2704 | prelude-ls: 1.1.2 2705 | type-check: 0.3.2 2706 | wordwrap: 1.0.0 2707 | dev: true 2708 | resolution: 2709 | integrity: sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q= 2710 | /os-browserify/0.2.1: 2711 | resolution: 2712 | integrity: sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8= 2713 | /os-homedir/1.0.2: 2714 | resolution: 2715 | integrity: sha1-/7xJiDNuDoM94MFox+8VISGqf7M= 2716 | /os-locale/1.4.0: 2717 | dependencies: 2718 | lcid: 1.0.0 2719 | resolution: 2720 | integrity: sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= 2721 | /os-locale/2.1.0: 2722 | dependencies: 2723 | execa: 0.7.0 2724 | lcid: 1.0.0 2725 | mem: 1.1.0 2726 | resolution: 2727 | integrity: sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA== 2728 | /os-tmpdir/1.0.2: 2729 | resolution: 2730 | integrity: sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 2731 | /osenv/0.1.4: 2732 | dependencies: 2733 | os-homedir: 1.0.2 2734 | os-tmpdir: 1.0.2 2735 | resolution: 2736 | integrity: sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ= 2737 | /p-finally/1.0.0: 2738 | resolution: 2739 | integrity: sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= 2740 | /p-limit/1.1.0: 2741 | resolution: 2742 | integrity: sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw= 2743 | /p-locate/2.0.0: 2744 | dependencies: 2745 | p-limit: 1.1.0 2746 | resolution: 2747 | integrity: sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= 2748 | /pako/0.2.9: 2749 | resolution: 2750 | integrity: sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU= 2751 | /parse-asn1/5.1.0: 2752 | dependencies: 2753 | asn1.js: 4.9.1 2754 | browserify-aes: 1.0.6 2755 | create-hash: 1.1.3 2756 | evp_bytestokey: 1.0.0 2757 | pbkdf2: 3.0.12 2758 | resolution: 2759 | integrity: sha1-N8T5t+06tlx0gXtfJICTf7+XxxI= 2760 | /parse-entities/1.1.1: 2761 | dependencies: 2762 | character-entities: 1.2.1 2763 | character-entities-legacy: 1.1.1 2764 | character-reference-invalid: 1.1.1 2765 | is-alphanumerical: 1.0.1 2766 | is-decimal: 1.0.1 2767 | is-hexadecimal: 1.0.1 2768 | dev: true 2769 | resolution: 2770 | integrity: sha1-gRLYhHExnyerrk1klksSL+ThuJA= 2771 | /parse-glob/3.0.4: 2772 | dependencies: 2773 | glob-base: 0.3.0 2774 | is-dotfile: 1.0.3 2775 | is-extglob: 1.0.0 2776 | is-glob: 2.0.1 2777 | resolution: 2778 | integrity: sha1-ssN2z7EfNVE7rdFz7wu246OIORw= 2779 | /parse-json/2.2.0: 2780 | dependencies: 2781 | error-ex: 1.3.1 2782 | resolution: 2783 | integrity: sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= 2784 | /parse5/3.0.2: 2785 | dependencies: 2786 | '@types/node': 6.0.85 2787 | resolution: 2788 | integrity: sha1-Be/1fw70V3+xRKefi5qWemzERRA= 2789 | /parseurl/1.3.1: 2790 | resolution: 2791 | integrity: sha1-yKuMkiO6NIiKpkopeyiFO+wY2lY= 2792 | /path-browserify/0.0.0: 2793 | resolution: 2794 | integrity: sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo= 2795 | /path-exists/2.1.0: 2796 | dependencies: 2797 | pinkie-promise: 2.0.1 2798 | resolution: 2799 | integrity: sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= 2800 | /path-exists/3.0.0: 2801 | resolution: 2802 | integrity: sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 2803 | /path-is-absolute/1.0.1: 2804 | resolution: 2805 | integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 2806 | /path-is-inside/1.0.2: 2807 | dev: true 2808 | resolution: 2809 | integrity: sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= 2810 | /path-key/2.0.1: 2811 | resolution: 2812 | integrity: sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 2813 | /path-parse/1.0.5: 2814 | dev: true 2815 | resolution: 2816 | integrity: sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME= 2817 | /path-to-regexp/0.1.7: 2818 | resolution: 2819 | integrity: sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= 2820 | /path-type/1.1.0: 2821 | dependencies: 2822 | graceful-fs: 4.1.11 2823 | pify: 2.3.0 2824 | pinkie-promise: 2.0.1 2825 | resolution: 2826 | integrity: sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= 2827 | /path-type/2.0.0: 2828 | dependencies: 2829 | pify: 2.3.0 2830 | resolution: 2831 | integrity: sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= 2832 | /pbkdf2/3.0.12: 2833 | dependencies: 2834 | create-hash: 1.1.3 2835 | create-hmac: 1.1.6 2836 | ripemd160: 2.0.1 2837 | safe-buffer: 5.1.1 2838 | sha.js: 2.4.8 2839 | resolution: 2840 | integrity: sha1-vjZ4XFBn6kjYBv+SMojF91C2uKI= 2841 | /performance-now/0.2.0: 2842 | resolution: 2843 | integrity: sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= 2844 | /pify/2.3.0: 2845 | resolution: 2846 | integrity: sha1-7RQaasBDqEnqWISY59yosVMw6Qw= 2847 | /pify/3.0.0: 2848 | resolution: 2849 | integrity: sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= 2850 | /pinkie-promise/2.0.1: 2851 | dependencies: 2852 | pinkie: 2.0.4 2853 | resolution: 2854 | integrity: sha1-ITXW36ejWMBprJsXh3YogihFD/o= 2855 | /pinkie/2.0.4: 2856 | resolution: 2857 | integrity: sha1-clVrgM+g1IqXToDnckjoDtT3+HA= 2858 | /pluralize/4.0.0: 2859 | dev: true 2860 | resolution: 2861 | integrity: sha1-WbcIwcAZCi9pLxx2GMRGsFL9F2I= 2862 | /prelude-ls/1.1.2: 2863 | dev: true 2864 | resolution: 2865 | integrity: sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= 2866 | /preserve/0.2.0: 2867 | resolution: 2868 | integrity: sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks= 2869 | /prettier/1.5.3: 2870 | dev: true 2871 | resolution: 2872 | integrity: sha1-WdrcaDNF7GuI+IuU7Urn4do5S/4= 2873 | /prismjs/1.6.0: 2874 | optionalDependencies: 2875 | clipboard: 1.7.1 2876 | resolution: 2877 | integrity: sha1-EY2V+3pm26InLjQ7NF9SNmWds2U= 2878 | /private/0.1.7: 2879 | resolution: 2880 | integrity: sha1-aM5eih7woju1cMwoU3tTMqumPvE= 2881 | /process-nextick-args/1.0.7: 2882 | resolution: 2883 | integrity: sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= 2884 | /process/0.11.10: 2885 | resolution: 2886 | integrity: sha1-czIwDoQBYb2j5podHZGn1LwW8YI= 2887 | /progress/2.0.0: 2888 | dev: true 2889 | resolution: 2890 | integrity: sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8= 2891 | /proxy-addr/1.1.5: 2892 | dependencies: 2893 | forwarded: 0.1.0 2894 | ipaddr.js: 1.4.0 2895 | resolution: 2896 | integrity: sha1-ccDuOxAt4/IC87ZPYI0XP8uhqRg= 2897 | /prr/0.0.0: 2898 | resolution: 2899 | integrity: sha1-GoS4WQgyVQFBGFPQCB7j+obikmo= 2900 | /pseudomap/1.0.2: 2901 | resolution: 2902 | integrity: sha1-8FKijacOYYkX7wqKw0wa5aaChrM= 2903 | /public-encrypt/4.0.0: 2904 | dependencies: 2905 | bn.js: 4.11.7 2906 | browserify-rsa: 4.0.1 2907 | create-hash: 1.1.3 2908 | parse-asn1: 5.1.0 2909 | randombytes: 2.0.5 2910 | resolution: 2911 | integrity: sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY= 2912 | /punycode/1.3.2: 2913 | resolution: 2914 | integrity: sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= 2915 | /punycode/1.4.1: 2916 | resolution: 2917 | integrity: sha1-wNWmOycYgArY4esPpSachN1BhF4= 2918 | /qs/6.4.0: 2919 | resolution: 2920 | integrity: sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= 2921 | /querystring-es3/0.2.1: 2922 | resolution: 2923 | integrity: sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= 2924 | /querystring/0.2.0: 2925 | resolution: 2926 | integrity: sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= 2927 | /randomatic/1.1.7: 2928 | dependencies: 2929 | is-number: 3.0.0 2930 | kind-of: 4.0.0 2931 | resolution: 2932 | integrity: sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how== 2933 | /randombytes/2.0.5: 2934 | dependencies: 2935 | safe-buffer: 5.1.1 2936 | resolution: 2937 | integrity: sha512-8T7Zn1AhMsQ/HI1SjcCfT/t4ii3eAqco3yOcSzS4mozsOz69lHLsoMXmF9nZgnFanYscnSlUSgs8uZyKzpE6kg== 2938 | /range-parser/1.2.0: 2939 | resolution: 2940 | integrity: sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4= 2941 | /read-pkg-up/1.0.1: 2942 | dependencies: 2943 | find-up: 1.1.2 2944 | read-pkg: 1.1.0 2945 | resolution: 2946 | integrity: sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= 2947 | /read-pkg-up/2.0.0: 2948 | dependencies: 2949 | find-up: 2.1.0 2950 | read-pkg: 2.0.0 2951 | resolution: 2952 | integrity: sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= 2953 | /read-pkg/1.1.0: 2954 | dependencies: 2955 | load-json-file: 1.1.0 2956 | normalize-package-data: 2.4.0 2957 | path-type: 1.1.0 2958 | resolution: 2959 | integrity: sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= 2960 | /read-pkg/2.0.0: 2961 | dependencies: 2962 | load-json-file: 2.0.0 2963 | normalize-package-data: 2.4.0 2964 | path-type: 2.0.0 2965 | resolution: 2966 | integrity: sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= 2967 | /readable-stream/1.1.14: 2968 | dependencies: 2969 | core-util-is: 1.0.2 2970 | inherits: 2.0.3 2971 | isarray: 0.0.1 2972 | string_decoder: 0.10.31 2973 | dev: true 2974 | resolution: 2975 | integrity: sha1-fPTFTvZI44EwhMY23SB54WbAgdk= 2976 | /readable-stream/2.3.3: 2977 | dependencies: 2978 | core-util-is: 1.0.2 2979 | inherits: 2.0.3 2980 | isarray: 1.0.0 2981 | process-nextick-args: 1.0.7 2982 | safe-buffer: 5.1.1 2983 | string_decoder: 1.0.3 2984 | util-deprecate: 1.0.2 2985 | resolution: 2986 | integrity: sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ== 2987 | /readdirp/2.1.0: 2988 | dependencies: 2989 | graceful-fs: 4.1.11 2990 | minimatch: 3.0.4 2991 | readable-stream: 2.3.3 2992 | set-immediate-shim: 1.0.1 2993 | resolution: 2994 | integrity: sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg= 2995 | /redent/1.0.0: 2996 | dependencies: 2997 | indent-string: 2.1.0 2998 | strip-indent: 1.0.1 2999 | resolution: 3000 | integrity: sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= 3001 | /regenerate/1.3.2: 3002 | resolution: 3003 | integrity: sha1-0ZQcZ7rUN+G+dkM63Vs4X5WxkmA= 3004 | /regenerator-runtime/0.10.5: 3005 | resolution: 3006 | integrity: sha1-M2w+/BIgrc7dosn6tntaeVWjNlg= 3007 | /regenerator-transform/0.9.11: 3008 | dependencies: 3009 | babel-runtime: 6.25.0 3010 | babel-types: 6.25.0 3011 | private: 0.1.7 3012 | resolution: 3013 | integrity: sha1-On0GdSDLe3F2dp61/4aGkb7+EoM= 3014 | /regex-cache/0.4.3: 3015 | dependencies: 3016 | is-equal-shallow: 0.1.3 3017 | is-primitive: 2.0.0 3018 | resolution: 3019 | integrity: sha1-mxpsNdTQ3871cRrmUejp09cRQUU= 3020 | /regexpu-core/2.0.0: 3021 | dependencies: 3022 | regenerate: 1.3.2 3023 | regjsgen: 0.2.0 3024 | regjsparser: 0.1.5 3025 | resolution: 3026 | integrity: sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA= 3027 | /regjsgen/0.2.0: 3028 | resolution: 3029 | integrity: sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc= 3030 | /regjsparser/0.1.5: 3031 | dependencies: 3032 | jsesc: 0.5.0 3033 | resolution: 3034 | integrity: sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw= 3035 | /remark-parse/3.0.1: 3036 | dependencies: 3037 | collapse-white-space: 1.0.3 3038 | has: 1.0.1 3039 | is-alphabetical: 1.0.1 3040 | is-decimal: 1.0.1 3041 | is-whitespace-character: 1.0.1 3042 | is-word-character: 1.0.1 3043 | markdown-escapes: 1.0.1 3044 | parse-entities: 1.1.1 3045 | repeat-string: 1.6.1 3046 | state-toggle: 1.0.0 3047 | trim: 0.0.1 3048 | trim-trailing-lines: 1.1.0 3049 | unherit: 1.1.0 3050 | unist-util-remove-position: 1.1.1 3051 | vfile-location: 2.0.2 3052 | xtend: 4.0.1 3053 | dev: true 3054 | resolution: 3055 | integrity: sha1-G5+EGkTY9PvyJGhQJlRZpOs1TIA= 3056 | /remove-trailing-separator/1.0.2: 3057 | resolution: 3058 | integrity: sha1-abBi2XhyetFNxrVrpKt3L9jXBRE= 3059 | /repeat-element/1.1.2: 3060 | resolution: 3061 | integrity: sha1-7wiaF40Ug7quTZPrmLT55OEdmQo= 3062 | /repeat-string/1.6.1: 3063 | resolution: 3064 | integrity: sha1-jcrkcOHIirwtYA//Sndihtp15jc= 3065 | /repeating/2.0.1: 3066 | dependencies: 3067 | is-finite: 1.0.2 3068 | resolution: 3069 | integrity: sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= 3070 | /replace-ext/1.0.0: 3071 | dev: true 3072 | resolution: 3073 | integrity: sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= 3074 | /request/2.81.0: 3075 | dependencies: 3076 | aws-sign2: 0.6.0 3077 | aws4: 1.6.0 3078 | caseless: 0.12.0 3079 | combined-stream: 1.0.5 3080 | extend: 3.0.1 3081 | forever-agent: 0.6.1 3082 | form-data: 2.1.4 3083 | har-validator: 4.2.1 3084 | hawk: 3.1.3 3085 | http-signature: 1.1.1 3086 | is-typedarray: 1.0.0 3087 | isstream: 0.1.2 3088 | json-stringify-safe: 5.0.1 3089 | mime-types: 2.1.16 3090 | oauth-sign: 0.8.2 3091 | performance-now: 0.2.0 3092 | qs: 6.4.0 3093 | safe-buffer: 5.1.1 3094 | stringstream: 0.0.5 3095 | tough-cookie: 2.3.2 3096 | tunnel-agent: 0.6.0 3097 | uuid: 3.1.0 3098 | resolution: 3099 | integrity: sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA= 3100 | /require-directory/2.1.1: 3101 | resolution: 3102 | integrity: sha1-jGStX9MNqxyXbiNE/+f3kqam30I= 3103 | /require-main-filename/1.0.1: 3104 | resolution: 3105 | integrity: sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= 3106 | /require-relative/0.8.7: 3107 | dev: true 3108 | resolution: 3109 | integrity: sha1-eZlTn8ngR6N5KPoZb44VY9q9Nt4= 3110 | /require-uncached/1.0.3: 3111 | dependencies: 3112 | caller-path: 0.1.0 3113 | resolve-from: 1.0.1 3114 | dev: true 3115 | resolution: 3116 | integrity: sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM= 3117 | /resolve-from/1.0.1: 3118 | dev: true 3119 | resolution: 3120 | integrity: sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY= 3121 | /resolve/1.1.7: 3122 | dev: true 3123 | resolution: 3124 | integrity: sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= 3125 | /resolve/1.4.0: 3126 | dependencies: 3127 | path-parse: 1.0.5 3128 | dev: true 3129 | resolution: 3130 | integrity: sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q== 3131 | /restore-cursor/2.0.0: 3132 | dependencies: 3133 | onetime: 2.0.1 3134 | signal-exit: 3.0.2 3135 | dev: true 3136 | resolution: 3137 | integrity: sha1-n37ih/gv0ybU/RYpI9YhKe7g368= 3138 | /right-align/0.1.3: 3139 | dependencies: 3140 | align-text: 0.1.4 3141 | resolution: 3142 | integrity: sha1-YTObci/mo1FWiSENJOFMlhSGE+8= 3143 | /rimraf/2.6.1: 3144 | dependencies: 3145 | glob: 7.1.2 3146 | resolution: 3147 | integrity: sha1-wjOOxkPfeht/5cVPqG9XQopV8z0= 3148 | /ripemd160/2.0.1: 3149 | dependencies: 3150 | hash-base: 2.0.2 3151 | inherits: 2.0.3 3152 | resolution: 3153 | integrity: sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc= 3154 | /rollup-plugin-babel/2.7.1: 3155 | dependencies: 3156 | babel-core: 6.25.0 3157 | babel-plugin-transform-es2015-classes: 6.24.1 3158 | object-assign: 4.1.1 3159 | rollup-pluginutils: 1.5.2 3160 | dev: true 3161 | resolution: 3162 | integrity: sha1-FlKBl7D5OKFTb0RoPHqT1XMYL1c= 3163 | /rollup-plugin-commonjs/8.0.2: 3164 | dependencies: 3165 | acorn: 4.0.13 3166 | estree-walker: 0.3.1 3167 | magic-string: 0.19.1 3168 | resolve: 1.4.0 3169 | rollup-pluginutils: 2.0.1 3170 | dev: true 3171 | resolution: 3172 | integrity: sha1-mLFYm/4ypsD2d5C2DAtJmXKv7Yk= 3173 | /rollup-plugin-json/2.3.0: 3174 | dependencies: 3175 | rollup-pluginutils: 2.0.1 3176 | dev: true 3177 | resolution: 3178 | integrity: sha512-W45nZH7lmXgkSR/DkeyF4ks0YWFrMysdjUT049gTuAg+lwUEDBKI2+PztqW8UDSMlXCAeEONsLzpDDyBy9m+9A== 3179 | /rollup-plugin-node-resolve/3.0.0: 3180 | dependencies: 3181 | browser-resolve: 1.11.2 3182 | builtin-modules: 1.1.1 3183 | is-module: 1.0.0 3184 | resolve: 1.4.0 3185 | dev: true 3186 | resolution: 3187 | integrity: sha1-i4l8TDAw1QASd7BRSyXSygloPuA= 3188 | /rollup-pluginutils/1.5.2: 3189 | dependencies: 3190 | estree-walker: 0.2.1 3191 | minimatch: 3.0.4 3192 | dev: true 3193 | resolution: 3194 | integrity: sha1-HhVud4+UtyVb+hs9AXi+j1xVJAg= 3195 | /rollup-pluginutils/2.0.1: 3196 | dependencies: 3197 | estree-walker: 0.3.1 3198 | micromatch: 2.3.11 3199 | dev: true 3200 | resolution: 3201 | integrity: sha1-fslbNXP2VDpGpkYb2afFRFJdD8A= 3202 | /rollup/0.43.0: 3203 | dependencies: 3204 | source-map-support: 0.4.15 3205 | dev: true 3206 | resolution: 3207 | integrity: sha512-XqpEPAMHCJ4VcT95ApyGQC7MncjGcG6UtcU5geONqPfN2uAROGmJDE3cOi325S19rhklbM+BXIHNX35l+1zmAg== 3208 | /run-async/2.3.0: 3209 | dependencies: 3210 | is-promise: 2.1.0 3211 | dev: true 3212 | resolution: 3213 | integrity: sha1-A3GrSuC91yDUFm19/aZP96RFpsA= 3214 | /rx-lite-aggregates/4.0.8: 3215 | dependencies: 3216 | rx-lite: 4.0.8 3217 | dev: true 3218 | resolution: 3219 | integrity: sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74= 3220 | /rx-lite/4.0.8: 3221 | dev: true 3222 | resolution: 3223 | integrity: sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ= 3224 | /safe-buffer/5.1.1: 3225 | resolution: 3226 | integrity: sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg== 3227 | /sass-graph/2.2.4: 3228 | dependencies: 3229 | glob: 7.1.2 3230 | lodash: 4.17.4 3231 | scss-tokenizer: 0.2.3 3232 | yargs: 7.1.0 3233 | resolution: 3234 | integrity: sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k= 3235 | /sass-loader/6.0.6: 3236 | dependencies: 3237 | async: 2.5.0 3238 | clone-deep: 0.3.0 3239 | loader-utils: 1.1.0 3240 | lodash.tail: 4.1.1 3241 | pify: 3.0.0 3242 | resolution: 3243 | integrity: sha512-c3/Zc+iW+qqDip6kXPYLEgsAu2lf4xz0EZDplB7EmSUMda12U1sGJPetH55B/j9eu0bTtKzKlNPWWyYC7wFNyQ== 3244 | /scss-tokenizer/0.2.3: 3245 | dependencies: 3246 | js-base64: 2.1.9 3247 | source-map: 0.4.4 3248 | resolution: 3249 | integrity: sha1-jrBtualyMzOCTT9VMGQRSYR85dE= 3250 | /select/1.1.2: 3251 | optional: true 3252 | resolution: 3253 | integrity: sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= 3254 | /semver/5.3.0: 3255 | resolution: 3256 | integrity: sha1-myzl094C0XxgEq0yaqa00M9U+U8= 3257 | /semver/5.4.1: 3258 | resolution: 3259 | integrity: sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg== 3260 | /send/0.15.3: 3261 | dependencies: 3262 | debug: 2.6.7 3263 | depd: 1.1.1 3264 | destroy: 1.0.4 3265 | encodeurl: 1.0.1 3266 | escape-html: 1.0.3 3267 | etag: 1.8.0 3268 | fresh: 0.5.0 3269 | http-errors: 1.6.1 3270 | mime: 1.3.4 3271 | ms: 2.0.0 3272 | on-finished: 2.3.0 3273 | range-parser: 1.2.0 3274 | statuses: 1.3.1 3275 | resolution: 3276 | integrity: sha1-UBP5+ZAj31DRvZiSwZ4979HVMwk= 3277 | /serve-static/1.12.3: 3278 | dependencies: 3279 | encodeurl: 1.0.1 3280 | escape-html: 1.0.3 3281 | parseurl: 1.3.1 3282 | send: 0.15.3 3283 | resolution: 3284 | integrity: sha1-n0uhni8wMMVH+K+ZEHg47DjVseI= 3285 | /set-blocking/2.0.0: 3286 | resolution: 3287 | integrity: sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 3288 | /set-immediate-shim/1.0.1: 3289 | resolution: 3290 | integrity: sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E= 3291 | /setimmediate/1.0.5: 3292 | resolution: 3293 | integrity: sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= 3294 | /setprototypeof/1.0.3: 3295 | resolution: 3296 | integrity: sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ= 3297 | /sha.js/2.4.8: 3298 | dependencies: 3299 | inherits: 2.0.3 3300 | resolution: 3301 | integrity: sha1-NwaMLEdra69ALRSknGf1l5IfY08= 3302 | /shallow-clone/0.1.2: 3303 | dependencies: 3304 | is-extendable: 0.1.1 3305 | kind-of: 2.0.1 3306 | lazy-cache: 0.2.7 3307 | mixin-object: 2.0.1 3308 | resolution: 3309 | integrity: sha1-WQnodLp3EG1zrEFM/sH/yofZcGA= 3310 | /shebang-command/1.2.0: 3311 | dependencies: 3312 | shebang-regex: 1.0.0 3313 | resolution: 3314 | integrity: sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= 3315 | /shebang-regex/1.0.0: 3316 | resolution: 3317 | integrity: sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= 3318 | /shelljs/0.3.0: 3319 | dev: true 3320 | resolution: 3321 | integrity: sha1-NZbmMHp4FUT1kfN9phg2DzHbV7E= 3322 | /signal-exit/3.0.2: 3323 | resolution: 3324 | integrity: sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= 3325 | /slash/1.0.0: 3326 | dev: true 3327 | resolution: 3328 | integrity: sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= 3329 | /slice-ansi/0.0.4: 3330 | dev: true 3331 | resolution: 3332 | integrity: sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU= 3333 | /slug/0.9.1: 3334 | dependencies: 3335 | unicode: 9.0.1 3336 | resolution: 3337 | integrity: sha1-rwj2CKfBFRa2F3iqgA3OhMUYz9o= 3338 | /sntp/1.0.9: 3339 | dependencies: 3340 | hoek: 2.16.3 3341 | resolution: 3342 | integrity: sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= 3343 | /source-list-map/2.0.0: 3344 | resolution: 3345 | integrity: sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A== 3346 | /source-map-support/0.4.15: 3347 | dependencies: 3348 | source-map: 0.5.6 3349 | dev: true 3350 | resolution: 3351 | integrity: sha1-AyAt9lwG0r2MfsI2KhkwVv7407E= 3352 | /source-map/0.4.4: 3353 | dependencies: 3354 | amdefine: 1.0.1 3355 | resolution: 3356 | integrity: sha1-66T12pwNyZneaAMti092FzZSA2s= 3357 | /source-map/0.5.6: 3358 | resolution: 3359 | integrity: sha1-dc449SvwczxafwwRjYEzSiu19BI= 3360 | /spdx-correct/1.0.2: 3361 | dependencies: 3362 | spdx-license-ids: 1.2.2 3363 | resolution: 3364 | integrity: sha1-SzBz2TP/UfORLwOsVRlJikFQ20A= 3365 | /spdx-expression-parse/1.0.4: 3366 | resolution: 3367 | integrity: sha1-m98vIOH0DtRH++JzJmGR/O1RYmw= 3368 | /spdx-license-ids/1.2.2: 3369 | resolution: 3370 | integrity: sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc= 3371 | /sprintf-js/1.0.3: 3372 | resolution: 3373 | integrity: sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 3374 | /sshpk/1.13.1: 3375 | dependencies: 3376 | asn1: 0.2.3 3377 | assert-plus: 1.0.0 3378 | dashdash: 1.14.1 3379 | getpass: 0.1.7 3380 | optionalDependencies: 3381 | bcrypt-pbkdf: 1.0.1 3382 | ecc-jsbn: 0.1.1 3383 | jsbn: 0.1.1 3384 | tweetnacl: 0.14.5 3385 | resolution: 3386 | integrity: sha1-US322mKHFEMW3EwY/hzx2UBzm+M= 3387 | /state-toggle/1.0.0: 3388 | dev: true 3389 | resolution: 3390 | integrity: sha1-0g+aYWu08MO5i5GSLSW2QKorxCU= 3391 | /statuses/1.3.1: 3392 | resolution: 3393 | integrity: sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4= 3394 | /stdout-stream/1.4.0: 3395 | dependencies: 3396 | readable-stream: 2.3.3 3397 | resolution: 3398 | integrity: sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s= 3399 | /stream-browserify/2.0.1: 3400 | dependencies: 3401 | inherits: 2.0.3 3402 | readable-stream: 2.3.3 3403 | resolution: 3404 | integrity: sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds= 3405 | /stream-http/2.7.2: 3406 | dependencies: 3407 | builtin-status-codes: 3.0.0 3408 | inherits: 2.0.3 3409 | readable-stream: 2.3.3 3410 | to-arraybuffer: 1.0.1 3411 | xtend: 4.0.1 3412 | resolution: 3413 | integrity: sha512-c0yTD2rbQzXtSsFSVhtpvY/vS6u066PcXOX9kBB3mSO76RiUQzL340uJkGBWnlBg4/HZzqiUXtaVA7wcRcJgEw== 3414 | /string-width/1.0.2: 3415 | dependencies: 3416 | code-point-at: 1.1.0 3417 | is-fullwidth-code-point: 1.0.0 3418 | strip-ansi: 3.0.1 3419 | resolution: 3420 | integrity: sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= 3421 | /string-width/2.1.1: 3422 | dependencies: 3423 | is-fullwidth-code-point: 2.0.0 3424 | strip-ansi: 4.0.0 3425 | resolution: 3426 | integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 3427 | /string_decoder/0.10.31: 3428 | resolution: 3429 | integrity: sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= 3430 | /string_decoder/1.0.3: 3431 | dependencies: 3432 | safe-buffer: 5.1.1 3433 | resolution: 3434 | integrity: sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ== 3435 | /stringstream/0.0.5: 3436 | resolution: 3437 | integrity: sha1-TkhM1N5aC7vuGORjB3EKioFiGHg= 3438 | /strip-ansi/3.0.1: 3439 | dependencies: 3440 | ansi-regex: 2.1.1 3441 | resolution: 3442 | integrity: sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 3443 | /strip-ansi/4.0.0: 3444 | dependencies: 3445 | ansi-regex: 3.0.0 3446 | resolution: 3447 | integrity: sha1-qEeQIusaw2iocTibY1JixQXuNo8= 3448 | /strip-bom/2.0.0: 3449 | dependencies: 3450 | is-utf8: 0.2.1 3451 | resolution: 3452 | integrity: sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= 3453 | /strip-bom/3.0.0: 3454 | resolution: 3455 | integrity: sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= 3456 | /strip-eof/1.0.0: 3457 | resolution: 3458 | integrity: sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= 3459 | /strip-indent/1.0.1: 3460 | dependencies: 3461 | get-stdin: 4.0.1 3462 | resolution: 3463 | integrity: sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= 3464 | /strip-json-comments/1.0.4: 3465 | dev: true 3466 | resolution: 3467 | integrity: sha1-HhX7ysl9Pumb8tc7TGVrCCu6+5E= 3468 | /strip-json-comments/2.0.1: 3469 | dev: true 3470 | resolution: 3471 | integrity: sha1-PFMZQukIwml8DsNEhYwobHygpgo= 3472 | /supports-color/2.0.0: 3473 | resolution: 3474 | integrity: sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= 3475 | /supports-color/4.2.1: 3476 | dependencies: 3477 | has-flag: 2.0.0 3478 | resolution: 3479 | integrity: sha512-qxzYsob3yv6U+xMzPrv170y8AwGP7i74g+pbixCfD6rgso8BscLT2qXIuz6TpOaiJZ3mFgT5O9lyT9nMU4LfaA== 3480 | /table/4.0.1: 3481 | dependencies: 3482 | ajv: 4.11.8 3483 | ajv-keywords: /ajv-keywords/1.5.1/ajv@4.11.8 3484 | chalk: 1.1.3 3485 | lodash: 4.17.4 3486 | slice-ansi: 0.0.4 3487 | string-width: 2.1.1 3488 | dev: true 3489 | resolution: 3490 | integrity: sha1-qBFsEz+sLGH0pCCrbN9cTWHw5DU= 3491 | /tapable/0.2.7: 3492 | resolution: 3493 | integrity: sha1-5GwNqsuyuKmLmwzqD0BSEFgX7Vw= 3494 | /tar/2.2.1: 3495 | dependencies: 3496 | block-stream: 0.0.9 3497 | fstream: 1.0.11 3498 | inherits: 2.0.3 3499 | resolution: 3500 | integrity: sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE= 3501 | /text-table/0.2.0: 3502 | dev: true 3503 | resolution: 3504 | integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= 3505 | /through/2.3.8: 3506 | dev: true 3507 | resolution: 3508 | integrity: sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= 3509 | /timers-browserify/2.0.2: 3510 | dependencies: 3511 | setimmediate: 1.0.5 3512 | resolution: 3513 | integrity: sha1-q0iDz1l9zVCvIRNJoA+8pWrIa4Y= 3514 | /tiny-emitter/2.0.1: 3515 | optional: true 3516 | resolution: 3517 | integrity: sha1-5lkZ2R5Ijip49+voJ6VsaxiNUa8= 3518 | /tmp/0.0.31: 3519 | dependencies: 3520 | os-tmpdir: 1.0.2 3521 | dev: true 3522 | resolution: 3523 | integrity: sha1-jzirlDjhcxXl29izZX6L+yd65Kc= 3524 | /to-arraybuffer/1.0.1: 3525 | resolution: 3526 | integrity: sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= 3527 | /to-fast-properties/1.0.3: 3528 | resolution: 3529 | integrity: sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= 3530 | /tough-cookie/2.3.2: 3531 | dependencies: 3532 | punycode: 1.4.1 3533 | resolution: 3534 | integrity: sha1-8IH3bkyFcg5sN6X6ztc3FQ2EByo= 3535 | /trim-newlines/1.0.0: 3536 | resolution: 3537 | integrity: sha1-WIeWa7WCpFA6QetST301ARgVphM= 3538 | /trim-right/1.0.1: 3539 | dev: true 3540 | resolution: 3541 | integrity: sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= 3542 | /trim-trailing-lines/1.1.0: 3543 | dev: true 3544 | resolution: 3545 | integrity: sha1-eu+7eAjfnWafbaLkOMrIxGradoQ= 3546 | /trim/0.0.1: 3547 | dev: true 3548 | resolution: 3549 | integrity: sha1-WFhUf2spB1fulczMZm+1AITEYN0= 3550 | /trough/1.0.1: 3551 | dev: true 3552 | resolution: 3553 | integrity: sha1-qf2LA5Swro//guBjOgo2zK1bX4Y= 3554 | /tryit/1.0.3: 3555 | dev: true 3556 | resolution: 3557 | integrity: sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics= 3558 | /tty-browserify/0.0.0: 3559 | resolution: 3560 | integrity: sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= 3561 | /tunnel-agent/0.6.0: 3562 | dependencies: 3563 | safe-buffer: 5.1.1 3564 | resolution: 3565 | integrity: sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= 3566 | /tweetnacl/0.14.5: 3567 | optional: true 3568 | resolution: 3569 | integrity: sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= 3570 | /type-check/0.3.2: 3571 | dependencies: 3572 | prelude-ls: 1.1.2 3573 | dev: true 3574 | resolution: 3575 | integrity: sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= 3576 | /type-is/1.6.15: 3577 | dependencies: 3578 | media-typer: 0.3.0 3579 | mime-types: 2.1.16 3580 | resolution: 3581 | integrity: sha1-yrEPtJCeRByChC6v4a1kbIGARBA= 3582 | /typedarray/0.0.6: 3583 | dev: true 3584 | resolution: 3585 | integrity: sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= 3586 | /uc.micro/1.0.3: 3587 | resolution: 3588 | integrity: sha1-ftUNXg+an7ClczeSWfKndFjVAZI= 3589 | /uglify-js/2.8.29: 3590 | dependencies: 3591 | source-map: 0.5.6 3592 | yargs: 3.10.0 3593 | optionalDependencies: 3594 | uglify-to-browserify: 1.0.2 3595 | resolution: 3596 | integrity: sha1-KcVzMUgFe7Th913zW3qcty5qWd0= 3597 | /uglify-to-browserify/1.0.2: 3598 | optional: true 3599 | resolution: 3600 | integrity: sha1-bgkk1r2mta/jSeOabWMoUKD4grc= 3601 | /uglifyjs-webpack-plugin/0.4.6: 3602 | dependencies: 3603 | source-map: 0.5.6 3604 | uglify-js: 2.8.29 3605 | webpack-sources: 1.0.1 3606 | resolution: 3607 | integrity: sha1-uVH0q7a9YX5m9j64kUmOORdj4wk= 3608 | /unherit/1.1.0: 3609 | dependencies: 3610 | inherits: 2.0.3 3611 | xtend: 4.0.1 3612 | dev: true 3613 | resolution: 3614 | integrity: sha1-a5qu379z3xdWrZ4xbdmBiFhAzX0= 3615 | /unicode/9.0.1: 3616 | resolution: 3617 | integrity: sha1-EEcGJyxkZMV0gBvhsIb3JFzyUVg= 3618 | /unified/6.1.5: 3619 | dependencies: 3620 | bail: 1.0.2 3621 | extend: 3.0.1 3622 | is-plain-obj: 1.1.0 3623 | trough: 1.0.1 3624 | vfile: 2.2.0 3625 | x-is-function: 1.0.4 3626 | x-is-string: 0.1.0 3627 | dev: true 3628 | resolution: 3629 | integrity: sha1-cWk3hyYhpjE15iztLzrGoGPG+4c= 3630 | /unist-util-remove-position/1.1.1: 3631 | dependencies: 3632 | unist-util-visit: 1.1.3 3633 | dev: true 3634 | resolution: 3635 | integrity: sha1-WoXBVV/BugwQG4ZwfRXlD6TIcbs= 3636 | /unist-util-stringify-position/1.1.1: 3637 | dev: true 3638 | resolution: 3639 | integrity: sha1-PMvcU2ee7W7PN3fdf14yKcG2qjw= 3640 | /unist-util-visit/1.1.3: 3641 | dev: true 3642 | resolution: 3643 | integrity: sha1-7CaOcxudJ3p5pbWqBkOZDkBdYAs= 3644 | /unpipe/1.0.0: 3645 | resolution: 3646 | integrity: sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= 3647 | /url/0.11.0: 3648 | dependencies: 3649 | punycode: 1.3.2 3650 | querystring: 0.2.0 3651 | resolution: 3652 | integrity: sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= 3653 | /util-deprecate/1.0.2: 3654 | resolution: 3655 | integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 3656 | /util/0.10.3: 3657 | dependencies: 3658 | inherits: 2.0.1 3659 | resolution: 3660 | integrity: sha1-evsa/lCAUkZInj23/g7TeTNqwPk= 3661 | /utils-merge/1.0.0: 3662 | resolution: 3663 | integrity: sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg= 3664 | /uuid/3.1.0: 3665 | resolution: 3666 | integrity: sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g== 3667 | /validate-npm-package-license/3.0.1: 3668 | dependencies: 3669 | spdx-correct: 1.0.2 3670 | spdx-expression-parse: 1.0.4 3671 | resolution: 3672 | integrity: sha1-KAS6vnEq0zeUWaz74kdGqywwP7w= 3673 | /vary/1.1.1: 3674 | resolution: 3675 | integrity: sha1-Z1Neu2lMHVIldFeYRmUyP1h+jTc= 3676 | /verror/1.3.6: 3677 | dependencies: 3678 | extsprintf: 1.0.2 3679 | resolution: 3680 | integrity: sha1-z/XfEpRtKX0rqu+qJoniW+AcAFw= 3681 | /vfile-location/2.0.2: 3682 | dev: true 3683 | resolution: 3684 | integrity: sha1-02dcWch3SY5JK0dW/2Xkrxp1IlU= 3685 | /vfile/2.2.0: 3686 | dependencies: 3687 | is-buffer: 1.1.5 3688 | replace-ext: 1.0.0 3689 | unist-util-stringify-position: 1.1.1 3690 | dev: true 3691 | resolution: 3692 | integrity: sha1-zkek+zNZIrIz5TXbD32BIdj87U4= 3693 | /vlq/0.2.2: 3694 | dev: true 3695 | resolution: 3696 | integrity: sha1-4xbVJXtAuGu0PLjV/qXX9U1rDKE= 3697 | /vm-browserify/0.0.4: 3698 | dependencies: 3699 | indexof: 0.0.1 3700 | resolution: 3701 | integrity: sha1-XX6kW7755Kb/ZflUOOCofDV9WnM= 3702 | /vue-disqus/2.0.3: 3703 | resolution: 3704 | integrity: sha1-M9pZ/azI/mhwV1Ye813lVTafLxw= 3705 | /watchpack/1.4.0: 3706 | dependencies: 3707 | async: 2.5.0 3708 | chokidar: 1.7.0 3709 | graceful-fs: 4.1.11 3710 | resolution: 3711 | integrity: sha1-ShRyvLuVK9Cpu0A2gB+VTfs5+qw= 3712 | /webpack-sources/1.0.1: 3713 | dependencies: 3714 | source-list-map: 2.0.0 3715 | source-map: 0.5.6 3716 | resolution: 3717 | integrity: sha512-05tMxipUCwHqYaVS8xc7sYPTly8PzXayRCB4dTxLhWTqlKUiwH6ezmEe0OSreL1c30LAuA3Zqmc+uEBUGFJDjw== 3718 | /webpack/3.4.1: 3719 | dependencies: 3720 | acorn: 5.1.1 3721 | acorn-dynamic-import: 2.0.2 3722 | ajv: 5.2.2 3723 | ajv-keywords: /ajv-keywords/2.1.0/ajv@5.2.2 3724 | async: 2.5.0 3725 | enhanced-resolve: 3.4.1 3726 | escope: 3.6.0 3727 | interpret: 1.0.3 3728 | json-loader: 0.5.7 3729 | json5: 0.5.1 3730 | loader-runner: 2.3.0 3731 | loader-utils: 1.1.0 3732 | memory-fs: 0.4.1 3733 | mkdirp: 0.5.1 3734 | node-libs-browser: 2.0.0 3735 | source-map: 0.5.6 3736 | supports-color: 4.2.1 3737 | tapable: 0.2.7 3738 | uglifyjs-webpack-plugin: 0.4.6 3739 | watchpack: 1.4.0 3740 | webpack-sources: 1.0.1 3741 | yargs: 8.0.2 3742 | resolution: 3743 | integrity: sha1-TD9PP7MYFVpNsMtqNv8FxWl0GPQ= 3744 | /which-module/1.0.0: 3745 | resolution: 3746 | integrity: sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8= 3747 | /which-module/2.0.0: 3748 | resolution: 3749 | integrity: sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= 3750 | /which/1.2.14: 3751 | dependencies: 3752 | isexe: 2.0.0 3753 | resolution: 3754 | integrity: sha1-mofEN48D6CfOyvGs31bHNsAcFOU= 3755 | /wide-align/1.1.2: 3756 | dependencies: 3757 | string-width: 1.0.2 3758 | resolution: 3759 | integrity: sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w== 3760 | /window-size/0.1.0: 3761 | resolution: 3762 | integrity: sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0= 3763 | /wordwrap/0.0.2: 3764 | resolution: 3765 | integrity: sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8= 3766 | /wordwrap/1.0.0: 3767 | dev: true 3768 | resolution: 3769 | integrity: sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= 3770 | /wrap-ansi/2.1.0: 3771 | dependencies: 3772 | string-width: 1.0.2 3773 | strip-ansi: 3.0.1 3774 | resolution: 3775 | integrity: sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= 3776 | /wrappy/1.0.2: 3777 | resolution: 3778 | integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 3779 | /write/0.2.1: 3780 | dependencies: 3781 | mkdirp: 0.5.1 3782 | dev: true 3783 | resolution: 3784 | integrity: sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c= 3785 | /x-is-function/1.0.4: 3786 | dev: true 3787 | resolution: 3788 | integrity: sha1-XSlNw9Joy90GJYDgxd93o5HR+h4= 3789 | /x-is-string/0.1.0: 3790 | dev: true 3791 | resolution: 3792 | integrity: sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI= 3793 | /xtend/4.0.1: 3794 | resolution: 3795 | integrity: sha1-pcbVMr5lbiPbgg77lDofBJmNY68= 3796 | /y18n/3.2.1: 3797 | resolution: 3798 | integrity: sha1-bRX7qITAhnnA136I53WegR4H+kE= 3799 | /yallist/2.1.2: 3800 | resolution: 3801 | integrity: sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= 3802 | /yargs-parser/5.0.0: 3803 | dependencies: 3804 | camelcase: 3.0.0 3805 | resolution: 3806 | integrity: sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo= 3807 | /yargs-parser/7.0.0: 3808 | dependencies: 3809 | camelcase: 4.1.0 3810 | resolution: 3811 | integrity: sha1-jQrELxbqVd69MyyvTEA4s+P139k= 3812 | /yargs/3.10.0: 3813 | dependencies: 3814 | camelcase: 1.2.1 3815 | cliui: 2.1.0 3816 | decamelize: 1.2.0 3817 | window-size: 0.1.0 3818 | resolution: 3819 | integrity: sha1-9+572FfdfB0tOMDnTvvWgdFDH9E= 3820 | /yargs/7.1.0: 3821 | dependencies: 3822 | camelcase: 3.0.0 3823 | cliui: 3.2.0 3824 | decamelize: 1.2.0 3825 | get-caller-file: 1.0.2 3826 | os-locale: 1.4.0 3827 | read-pkg-up: 1.0.1 3828 | require-directory: 2.1.1 3829 | require-main-filename: 1.0.1 3830 | set-blocking: 2.0.0 3831 | string-width: 1.0.2 3832 | which-module: 1.0.0 3833 | y18n: 3.2.1 3834 | yargs-parser: 5.0.0 3835 | resolution: 3836 | integrity: sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg= 3837 | /yargs/8.0.2: 3838 | dependencies: 3839 | camelcase: 4.1.0 3840 | cliui: 3.2.0 3841 | decamelize: 1.2.0 3842 | get-caller-file: 1.0.2 3843 | os-locale: 2.1.0 3844 | read-pkg-up: 2.0.0 3845 | require-directory: 2.1.1 3846 | require-main-filename: 1.0.1 3847 | set-blocking: 2.0.0 3848 | string-width: 2.1.1 3849 | which-module: 2.0.0 3850 | y18n: 3.2.1 3851 | yargs-parser: 7.0.0 3852 | resolution: 3853 | integrity: sha1-YpmpBVsc78lp/355wdkY3Osiw2A= 3854 | registry: 'https://registry.npmjs.org/' 3855 | shrinkwrapVersion: 3 3856 | specifiers: 3857 | babel-plugin-transform-flow-strip-types: ^6.22.0 3858 | babel-plugin-transform-object-rest-spread: ^6.23.0 3859 | babel-polyfill: ^6.23.0 3860 | babel-preset-env: ^1.5.2 3861 | babel-preset-es2015-rollup: ^3.0.0 3862 | babel-preset-vue-app: ^1.2.0 3863 | chalk: 2.0.1 3864 | cheerio: ^1.0.0-rc.1 3865 | eslint: 4.1.1 3866 | eslint-config-vue-app: ^1.3.3 3867 | eslint-plugin-json: ^1.2.0 3868 | express: ^4.15.3 3869 | flat: ^2.0.1 3870 | front-matter: ^2.1.2 3871 | glob: latest 3872 | markdown-it: 8.3.1 3873 | markdown-it-decorate: 1.2.2 3874 | markdown-it-emoji: 1.4.0 3875 | merge-options: ^1.0.0 3876 | node-sass: ^4.5.3 3877 | pify: ^3.0.0 3878 | prismjs: ^1.6.0 3879 | rollup: 0.43.0 3880 | rollup-plugin-babel: ^2.7.1 3881 | rollup-plugin-commonjs: ^8.0.2 3882 | rollup-plugin-json: ^2.3.0 3883 | rollup-plugin-node-resolve: ^3.0.0 3884 | sass-loader: ^6.0.6 3885 | slug: ^0.9.1 3886 | vue-disqus: ^2.0.3 3887 | webpack: ^3.0.0 3888 | --------------------------------------------------------------------------------