diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..72e49ed --- /dev/null +++ b/.babelrc @@ -0,0 +1,11 @@ +{ + "presets": [ + [ + "@babel/env", + { + "modules": false + } + ], + "@babel/react" + ] +} diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..eec95f0 --- /dev/null +++ b/.eslintrc @@ -0,0 +1,15 @@ +{ + "parser": "babel-eslint", + "extends": ["standard", "standard-react"], + "env": { + "es6": true + }, + "plugins": ["react"], + "parserOptions": { + "sourceType": "module" + }, + "rules": { + "space-before-function-paren": 0, + "react/jsx-boolean-value": 0 + } +} diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index fbb977f..0000000 --- a/.eslintrc.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - extends: 'react-tools', -} diff --git a/dist/index.js b/dist/index.js new file mode 100644 index 0000000..eb658b3 --- /dev/null +++ b/dist/index.js @@ -0,0 +1,2 @@ +"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var PropTypes=_interopDefault(require("prop-types")),React=require("react"),React__default=_interopDefault(React);function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperty(e,r,o){return r in e?Object.defineProperty(e,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[r]=o,e}function _objectSpread(r){for(var e=1;e=c.length?e:Object.entries(n(e,c[p])).map(function(e,r){var o=_slicedToArray(e,2),t=o[0],n=o[1];n=i(n,c,p+1);var u,a,s=(u=n,a={},l.forEach(function(r){var e=u.map(function(e){return e.values[r.id]}),o=d[r.aggregate]||aggregations[r.aggregate]||r.aggregate;if("function"==typeof o)a[r.id]=o(e,u);else{if(o)throw new Error('Invalid aggregate "'.concat(o,'" passed to column with ID: "').concat(r.id,'"'));a[r.id]=e[0]}}),a);return{groupByID:c[p],groupByVal:t,values:s,subRows:n,depth:p,index:r}})}(o,p)},[o,p,l,u])})};defaultState.sortBy=[],addActions({sortByChange:"__sortByChange__"});var propTypes$6={columns:PropTypes.arrayOf(PropTypes.shape({sortByFn:PropTypes.func,efaultSortDesc:PropTypes.bool})),sortByFn:PropTypes.func,manualSorting:PropTypes.bool,disableSorting:PropTypes.bool,defaultSortDesc:PropTypes.bool,disableMultiSort:PropTypes.bool},useSortBy=function(e){PropTypes.checkPropTypes(propTypes$6,e,"property","useSortBy");var r=e.debug,o=e.rows,p=e.columns,t=e.orderByFn,u=void 0===t?defaultOrderByFn:t,n=e.sortByFn,a=void 0===n?defaultSortByFn:n,s=e.manualSorting,i=e.disableSorting,l=e.defaultSortDesc,c=e.hooks,d=_slicedToArray(e.state,2),f=d[0].sortBy,y=d[1];p.forEach(function(e){var r=e.accessor,o=e.canSortBy;e.canSortBy=!!r&&getFirstDefined(o,!0!==i&&void 0,!0)});c.columns.push(function(e){return e.forEach(function(o){o.canSortBy&&(o.toggleSortBy=function(e,r){return s=o.id,i=e,c=r,y(function(e){var r,o=e.sortBy,t=getFirstDefined(p.find(function(e){return e.id===s}).defaultSortDesc,l),n=o.find(function(e){return e.id===s}),u=null!=i,a=[];return"replace"==(r=c?n?u?"set":"toggle":"add":o.length<=1&&n?n.desc?"remove":"toggle":"replace")?a=[{id:s,desc:u?i:t}]:"add"===r?a=[].concat(_toConsumableArray(o),[{id:s,desc:u?i:t}]):"set"===r?a=o.map(function(e){return e.id===s?_objectSpread({},e,{desc:i}):e}):"toggle"===r?a=o.map(function(e){return e.id===s?_objectSpread({},e,{desc:!n.desc}):e}):"remove"===r&&(a=[]),_objectSpread({},e,{sortBy:a})},actions.sortByChange);var s,i,c})}),e}),c.getSortByToggleProps=[];var g=function(e,t){return e.forEach(function(r){var o=r.canSortBy;r.getSortByToggleProps=function(e){return mergeProps({onClick:o?function(e){e.persist(),r.toggleSortBy(void 0,!t.disableMultiSort&&e.shiftKey)}:void 0,style:{cursor:o?"pointer":void 0},title:"Toggle SortBy"},applyPropHooks(t.hooks.getSortByToggleProps,r,t),e)}}),e};return c.columns.push(g),c.headers.push(g),p.forEach(function(e){var r=e.id;e.sorted=f.find(function(e){return e.id===r}),e.sortedIndex=f.findIndex(function(e){return e.id===r}),e.sortedDesc=e.sorted?e.sorted.desc:void 0}),_objectSpread({},e,{rows:React.useMemo(function(){if(s||!f.length)return o;r&&console.info("getSortedRows");var n={};p.filter(function(e){return e.sortMethod}).forEach(function(e){n[e.id]=e.sortMethod});return function r(e){var o=u(e,f.map(function(o){var t=n[o.id];return function(e,r){return(t||a)(e.values[o.id],r.values[o.id],o.desc)}}),f.map(function(e){return!e.desc}));return o.forEach(function(e){e.subRows&&(e.subRows=r(e.subRows))}),o}(o)},[o,p,f,s])})};defaultState.pageSize=10,defaultState.pageIndex=0,addActions({pageChange:"__pageChange__"});var propTypes$7={manualPagination:PropTypes.bool},usePagination=function(e){PropTypes.checkPropTypes(propTypes$7,e,"property","usePagination");var t=e.rows,n=e.manualPagination,u=e.debug,r=_slicedToArray(e.state,2),o=r[0],a=o.pageSize,s=o.pageIndex,i=o.pageCount,c=o.filters,p=o.groupBy,l=o.sortBy,d=r[1];React.useLayoutEffect(function(){d(function(e){return _objectSpread({},e,{pageIndex:0})},actions.pageChange)},[c,p,l]);var f=React.useMemo(function(){if(n)return{pages:[t],pageCount:i};u&&console.info("getPages");for(var e=t.length?[]:[[]],r=0;r cursor[pathPart], obj)\n } catch (e) {\n // continue regardless of error\n }\n return typeof val !== 'undefined' ? val : def\n}\n\nexport function defaultOrderByFn(arr, funcs, dirs) {\n return [...arr].sort((rowA, rowB) => {\n for (let i = 0; i < funcs.length; i += 1) {\n const sortFn = funcs[i]\n const desc = dirs[i] === false || dirs[i] === 'desc'\n const sortInt = sortFn(rowA, rowB)\n if (sortInt !== 0) {\n return desc ? -sortInt : sortInt\n }\n }\n return dirs[0] ? rowA.index - rowB.index : rowB.index - rowA.index\n })\n}\n\nexport function defaultSortByFn(a, b, desc) {\n // force null and undefined to the bottom\n a = a === null || a === undefined ? '' : a\n b = b === null || b === undefined ? '' : b\n // force any string values to lowercase\n a = typeof a === 'string' ? a.toLowerCase() : a\n b = typeof b === 'string' ? b.toLowerCase() : b\n // Return either 1 or -1 to indicate a sort priority\n if (a > b) {\n return 1\n }\n if (a < b) {\n return -1\n }\n // returning 0, undefined or any falsey value will defer to the next\n // sorting mechanism or eventually the columns index via the orderByFn\n return 0\n}\n\nexport function getFirstDefined(...args) {\n for (let i = 0; i < args.length; i += 1) {\n if (typeof args[i] !== 'undefined') {\n return args[i]\n }\n }\n}\n\nexport function defaultGroupByFn(rows, grouper) {\n return rows.reduce((prev, row, i) => {\n const resKey =\n typeof grouper === 'function'\n ? grouper(row.values, i)\n : row.values[grouper]\n prev[resKey] = Array.isArray(prev[resKey]) ? prev[resKey] : []\n prev[resKey].push(row)\n return prev\n }, {})\n}\n\nexport function defaultFilterFn(row, id, value, column) {\n return row.values[id] !== undefined\n ? String(row.values[id])\n .toLowerCase()\n .includes(String(value).toLowerCase())\n : true\n}\n\nexport function setBy(obj = {}, path, value) {\n const recurse = (obj, depth = 0) => {\n const key = path[depth]\n const target = typeof obj[key] !== 'object' ? {} : obj[key]\n const subValue =\n depth === path.length - 1 ? value : recurse(target, depth + 1)\n return {\n ...obj,\n [key]: subValue\n }\n }\n\n return recurse(obj)\n}\n\nexport function getElementDimensions(element) {\n const rect = element.getBoundingClientRect()\n const style = window.getComputedStyle(element)\n const margins = {\n left: parseInt(style.marginLeft),\n right: parseInt(style.marginRight)\n }\n const padding = {\n left: parseInt(style.paddingLeft),\n right: parseInt(style.paddingRight)\n }\n return {\n left: Math.ceil(rect.left),\n width: Math.ceil(rect.width),\n outerWidth: Math.ceil(\n rect.width + margins.left + margins.right + padding.left + padding.right\n ),\n marginLeft: margins.left,\n marginRight: margins.right,\n paddingLeft: padding.left,\n paddingRight: padding.right,\n scrollWidth: element.scrollWidth\n }\n}\n\nexport function flexRender(Comp, props) {\n if (typeof Comp === 'function') {\n return Object.getPrototypeOf(Comp).isReactComponent ? (\n \n ) : (\n Comp(props)\n )\n }\n return Comp\n}\n\nexport const mergeProps = (...groups) => {\n let props = {}\n groups.forEach(({ style = {}, className, ...rest } = {}) => {\n props = {\n ...props,\n ...rest,\n style: {\n ...(props.style || {}),\n ...style\n },\n className: [props.className, className].filter(Boolean).join(' ')\n }\n })\n return props\n}\n\nexport const applyHooks = (hooks, initial, ...args) =>\n hooks.reduce((prev, next) => next(prev, ...args), initial)\n\nexport const applyPropHooks = (hooks, ...args) =>\n hooks.reduce((prev, next) => mergeProps(prev, next(...args)), {})\n\nexport const warnUnknownProps = props => {\n if (Object.keys(props).length) {\n throw new Error(\n `Unknown options passed to useReactTable:\n \n${JSON.stringify(props, null, 2)}`\n )\n }\n}\n\nexport function sum(arr) {\n return arr.reduce((prev, curr) => prev + curr, 0)\n}\n\nfunction makePathArray(obj) {\n return flattenDeep(obj)\n .join('.')\n .replace(/\\[/g, '.')\n .replace(/\\]/g, '')\n .split('.')\n}\n\nfunction flattenDeep(arr, newArr = []) {\n if (!Array.isArray(arr)) {\n newArr.push(arr)\n } else {\n for (let i = 0; i < arr.length; i += 1) {\n flattenDeep(arr[i], newArr)\n }\n }\n return newArr\n}\n","import { useState, useMemo } from 'react'\n\nexport const defaultState = {}\n\nconst defaultReducer = (old, newState) => newState\n\nexport const useTableState = (\n initialState = {},\n overrides = {},\n { reducer = defaultReducer, useState: userUseState = useState } = {}\n) => {\n let [state, setState] = userUseState({\n ...defaultState,\n ...initialState\n })\n\n const overriddenState = useMemo(() => {\n const newState = {\n ...state\n }\n Object.keys(overrides).forEach(key => {\n newState[key] = overrides[key]\n })\n return newState\n }, [state, ...Object.values(overrides)])\n\n const reducedSetState = (updater, type) =>\n setState(old => {\n const newState = updater(old)\n return reducer(old, newState, type)\n })\n\n return [overriddenState, reducedSetState]\n}\n","import PropTypes from 'prop-types'\n//\nimport { flexRender, applyHooks, applyPropHooks, mergeProps } from '../utils'\n\nimport { useTableState } from './useTableState'\n\nconst renderErr =\n 'You must specify a render \"type\". This could be \"Header\", \"Filter\", or any other custom renderers you have set on your column.'\n\nconst propTypes = {\n // General\n data: PropTypes.array.isRequired,\n debug: PropTypes.bool\n}\n\nexport const useTable = (props, ...plugins) => {\n // Validate props\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useTable')\n\n // Destructure props\n let { data = [], state: userState, debug } = props\n\n debug = process.env.NODE_ENV === 'production' ? false : debug\n\n // Always provide a default state\n const defaultState = useTableState()\n\n // But use the users state if provided\n const state = userState || defaultState\n\n // These are hooks that plugins can use right before render\n const hooks = {\n beforeRender: [],\n columns: [],\n headers: [],\n headerGroups: [],\n rows: [],\n row: [],\n renderableRows: [],\n getTableProps: [],\n getRowProps: [],\n getHeaderRowProps: [],\n getHeaderProps: [],\n getCellProps: []\n }\n\n // The initial api\n let api = {\n ...props,\n data,\n state,\n hooks\n }\n\n if (debug) console.time('hooks')\n // Loop through plugins to build the api out\n api = plugins.filter(Boolean).reduce((prev, next) => next(prev), api)\n if (debug) console.timeEnd('hooks')\n\n // Run the beforeRender hook\n if (debug) console.time('hooks.beforeRender')\n applyHooks(api.hooks.beforeRender, undefined, api)\n if (debug) console.timeEnd('hooks.beforeRender')\n\n if (debug) console.time('hooks.columns')\n api.columns = applyHooks(api.hooks.columns, api.columns, api)\n if (debug) console.timeEnd('hooks.columns')\n\n if (debug) console.time('hooks.headers')\n api.headers = applyHooks(api.hooks.headers, api.headers, api)\n if (debug) console.timeEnd('hooks.headers')\n ;[...api.columns, ...api.headers].forEach(column => {\n // Give columns/headers rendering power\n column.render = (type, userProps = {}) => {\n if (!type) {\n throw new Error(renderErr)\n }\n return flexRender(column[type], {\n ...api,\n ...column,\n ...userProps\n })\n }\n\n // Give columns/headers getHeaderProps\n column.getHeaderProps = props =>\n mergeProps(\n {\n key: ['header', column.id].join('_')\n },\n applyPropHooks(api.hooks.getHeaderProps, column, api),\n props\n )\n })\n\n if (debug) console.time('hooks.headerGroups')\n api.headerGroups = applyHooks(\n api.hooks.headerGroups,\n api.headerGroups,\n api\n ).filter((headerGroup, i) => {\n // Filter out any headers and headerGroups that don't have visible columns\n headerGroup.headers = headerGroup.headers.filter(header => {\n const recurse = columns =>\n columns.filter(column => {\n if (column.columns) {\n return recurse(column.columns)\n }\n return column.visible\n }).length\n if (header.columns) {\n return recurse(header.columns)\n }\n return header.visible\n })\n\n // Give headerGroups getRowProps\n if (headerGroup.headers.length) {\n headerGroup.getRowProps = (props = {}) =>\n mergeProps(\n {\n key: [`header${i}`].join('_')\n },\n applyPropHooks(api.hooks.getHeaderRowProps, headerGroup, api),\n props\n )\n return true\n }\n\n return false\n })\n if (debug) console.timeEnd('hooks.headerGroups')\n\n // Run the rows (this could be a dangerous hook with a ton of data)\n if (debug) console.time('hooks.rows')\n api.rows = applyHooks(api.hooks.rows, api.rows, api)\n if (debug) console.timeEnd('hooks.rows')\n\n // This function is absolutely necessary and MUST be called on\n // any rows the user wishes to be displayed.\n api.prepareRow = row => {\n const { index } = row\n row.getRowProps = props =>\n mergeProps(\n { key: ['row', index].join('_') },\n applyHooks(api.hooks.getRowProps, row, api),\n props\n )\n\n row.cells = row.cells.filter(cell => cell.column.visible)\n\n row.cells.forEach(cell => {\n if (!cell) {\n return\n }\n\n const { column } = cell\n\n cell.getCellProps = props => {\n const columnPathStr = [index, column.id].join('_')\n return mergeProps(\n {\n key: ['cell', columnPathStr].join('_')\n },\n applyPropHooks(api.hooks.getCellProps, cell, api),\n props\n )\n }\n\n cell.render = (type, userProps = {}) => {\n if (!type) {\n throw new Error(\n 'You must specify a render \"type\". This could be \"Cell\", \"Header\", \"Filter\", \"Aggregated\" or any other custom renderers you have set on your column.'\n )\n }\n return flexRender(column[type], {\n ...api,\n ...cell,\n ...userProps\n })\n }\n })\n }\n\n api.getTableProps = userProps =>\n mergeProps(applyPropHooks(api.hooks.getTableProps, api), userProps)\n\n api.getRowProps = userProps =>\n mergeProps(applyPropHooks(api.hooks.getRowProps, api), userProps)\n\n return api\n}\n","import { useMemo } from 'react'\nimport PropTypes from 'prop-types'\n\nimport { getBy } from '../utils'\n\nconst propTypes = {\n // General\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n Cell: PropTypes.any,\n Header: PropTypes.any\n })\n )\n}\n\nexport const useColumns = props => {\n const {\n debug,\n columns: userColumns,\n state: [{ groupBy }]\n } = props\n\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useColumns')\n\n const { columns, headerGroups, headers } = useMemo(() => {\n if (debug) console.info('getColumns')\n\n // Decorate All the columns\n let columnTree = decorateColumnTree(userColumns)\n\n // Get the flat list of all columns\n let columns = flattenBy(columnTree, 'columns')\n\n columns = [\n ...groupBy.map(g => columns.find(col => col.id === g)),\n ...columns.filter(col => !groupBy.includes(col.id))\n ]\n\n // Get headerGroups\n const headerGroups = makeHeaderGroups(columns, findMaxDepth(columnTree))\n const headers = flattenBy(headerGroups, 'headers')\n\n return {\n columns,\n headerGroups,\n headers\n }\n }, [groupBy, userColumns])\n\n return {\n ...props,\n columns,\n headerGroups,\n headers\n }\n\n // Find the depth of the columns\n function findMaxDepth(columns, depth = 0) {\n return columns.reduce((prev, curr) => {\n if (curr.columns) {\n return Math.max(prev, findMaxDepth(curr.columns, depth + 1))\n }\n return depth\n }, 0)\n }\n\n function decorateColumn(column, parent) {\n // First check for string accessor\n let { id, accessor, Header } = column\n\n if (typeof accessor === 'string') {\n id = id || accessor\n const accessorString = accessor\n accessor = row => getBy(row, accessorString)\n }\n\n if (!id && typeof Header === 'string') {\n id = Header\n }\n\n if (!id) {\n // Accessor, but no column id? This is bad.\n console.error(column)\n throw new Error('A column id is required!')\n }\n\n column = {\n Header: '',\n Cell: cell => cell.value,\n show: true,\n ...column,\n id,\n accessor,\n parent\n }\n\n return column\n }\n\n // Build the visible columns, headers and flat column list\n function decorateColumnTree(columns, parent, depth = 0) {\n return columns.map(column => {\n column = decorateColumn(column, parent)\n if (column.columns) {\n column.columns = decorateColumnTree(column.columns, column, depth + 1)\n }\n return column\n })\n }\n\n function flattenBy(columns, childKey) {\n const flatColumns = []\n\n const recurse = columns => {\n columns.forEach(d => {\n if (!d[childKey]) {\n flatColumns.push(d)\n } else {\n recurse(d[childKey])\n }\n })\n }\n\n recurse(columns)\n\n return flatColumns\n }\n\n // Build the header groups from the bottom up\n function makeHeaderGroups(columns, maxDepth) {\n const headerGroups = []\n\n const removeChildColumns = column => {\n delete column.columns\n if (column.parent) {\n removeChildColumns(column.parent)\n }\n }\n columns.forEach(removeChildColumns)\n\n const buildGroup = (columns, depth = 0) => {\n const headerGroup = {\n headers: []\n }\n\n const parentColumns = []\n\n const hasParents = columns.some(col => col.parent)\n\n columns.forEach(column => {\n const isFirst = !parentColumns.length\n let latestParentColumn = [...parentColumns].reverse()[0]\n\n // If the column has a parent, add it if necessary\n if (column.parent) {\n if (isFirst || latestParentColumn.originalID !== column.parent.id) {\n parentColumns.push({\n ...column.parent,\n originalID: column.parent.id,\n id: [column.parent.id, parentColumns.length].join('_')\n })\n }\n } else if (hasParents) {\n // If other columns have parents, add a place holder if necessary\n const placeholderColumn = decorateColumn({\n originalID: [column.id, 'placeholder', maxDepth - depth].join('_'),\n id: [\n column.id,\n 'placeholder',\n maxDepth - depth,\n parentColumns.length\n ].join('_')\n })\n if (\n isFirst ||\n latestParentColumn.originalID !== placeholderColumn.originalID\n ) {\n parentColumns.push(placeholderColumn)\n }\n }\n\n // Establish the new columns[] relationship on the parent\n if (column.parent || hasParents) {\n latestParentColumn = [...parentColumns].reverse()[0]\n latestParentColumn.columns = latestParentColumn.columns || []\n if (!latestParentColumn.columns.includes(column)) {\n latestParentColumn.columns.push(column)\n }\n }\n\n headerGroup.headers.push(column)\n })\n\n headerGroups.push(headerGroup)\n\n if (parentColumns.length) {\n buildGroup(parentColumns)\n }\n }\n\n buildGroup(columns)\n\n return headerGroups.reverse()\n }\n}\n","import { useMemo } from 'react'\nimport PropTypes from 'prop-types'\n\nconst propTypes = {\n subRowsKey: PropTypes.string\n}\n\nexport const useRows = props => {\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useRows')\n\n const { debug, columns, subRowsKey = 'subRows', data } = props\n\n const accessedRows = useMemo(() => {\n if (debug) console.info('getAccessedRows')\n\n // Access the row's data\n const accessRow = (originalRow, i, depth = 0) => {\n // Keep the original reference around\n const original = originalRow\n\n // Process any subRows\n const subRows = originalRow[subRowsKey]\n ? originalRow[subRowsKey].map((d, i) => accessRow(d, i, depth + 1))\n : undefined\n\n const row = {\n original,\n index: i,\n subRows,\n depth\n }\n\n // Create the cells and values\n row.values = {}\n columns.forEach(column => {\n row.values[column.id] = column.accessor\n ? column.accessor(originalRow, i, { subRows, depth, data })\n : undefined\n })\n\n return row\n }\n\n // Use the resolved data\n return data.map((d, i) => accessRow(d, i))\n }, [data, columns])\n\n return {\n ...props,\n rows: accessedRows\n }\n}\n","const actions = {}\n\nexport { actions }\n\nexport const addActions = acts => {\n Object.keys(acts).forEach(key => {\n actions[key] = acts[key]\n })\n}\n","import { useMemo } from 'react'\nimport PropTypes from 'prop-types'\n\nimport { getBy, getFirstDefined, setBy } from '../utils'\nimport { addActions, actions } from '../actions'\nimport { defaultState } from './useTableState'\n\ndefaultState.expanded = {}\n\naddActions({\n toggleExpanded: '__toggleExpanded__',\n useExpanded: '__useExpanded__'\n})\n\nconst propTypes = {\n expandedKey: PropTypes.string\n}\n\nexport const useExpanded = props => {\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useExpanded')\n\n const {\n debug,\n columns,\n rows,\n expandedKey = 'expanded',\n hooks,\n state: [{ expanded }, setState]\n } = props\n\n const toggleExpandedByPath = (path, set) => {\n return setState(old => {\n const { expanded } = old\n const existing = getBy(expanded, path)\n set = getFirstDefined(set, !existing)\n return {\n ...old,\n expanded: setBy(expanded, path, set)\n }\n }, actions.toggleExpanded)\n }\n\n hooks.row.push(row => {\n const { path } = row\n row.toggleExpanded = set => toggleExpandedByPath(path, set)\n })\n\n const expandedRows = useMemo(() => {\n if (debug) console.info('getExpandedRows')\n\n const expandedRows = []\n\n // Here we do some mutation, but it's the last stage in the\n // immutable process so this is safe\n const handleRow = (row, index, depth = 0, parentPath = []) => {\n // Compute some final state for the row\n const path = [...parentPath, index]\n\n row.path = path\n row.depth = depth\n\n row.isExpanded =\n (row.original && row.original[expandedKey]) || getBy(expanded, path)\n\n row.cells = columns.map(column => {\n const cell = {\n column,\n row,\n state: null,\n value: row.values[column.id]\n }\n\n return cell\n })\n\n expandedRows.push(row)\n\n if (row.isExpanded && row.subRows && row.subRows.length) {\n row.subRows.forEach((row, i) => handleRow(row, i, depth + 1, path))\n }\n }\n\n rows.forEach((row, i) => handleRow(row, i))\n\n return expandedRows\n }, [rows, expanded, columns])\n\n const expandedDepth = findExpandedDepth(expanded)\n\n return {\n ...props,\n toggleExpandedByPath,\n expandedDepth,\n rows: expandedRows\n }\n}\n\nfunction findExpandedDepth(obj, depth = 1) {\n return Object.values(obj).reduce((prev, curr) => {\n if (typeof curr === 'object') {\n return Math.max(prev, findExpandedDepth(curr, depth + 1))\n }\n return depth\n }, 0)\n}\n","import { useMemo } from 'react'\nimport PropTypes from 'prop-types'\n\nimport { defaultFilterFn, getFirstDefined } from '../utils'\nimport { addActions, actions } from '../actions'\nimport { defaultState } from './useTableState'\n\ndefaultState.filters = {}\naddActions({\n setFilter: '__setFilter__',\n setAllFilters: '__setAllFilters__'\n})\n\nconst propTypes = {\n // General\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n filterFn: PropTypes.func,\n filterAll: PropTypes.bool,\n canFilter: PropTypes.bool,\n Filter: PropTypes.any\n })\n ),\n\n filterFn: PropTypes.func,\n manualFilters: PropTypes.bool\n}\n\nexport const useFilters = props => {\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useFilters')\n\n const {\n debug,\n rows,\n columns,\n filterFn = defaultFilterFn,\n manualFilters,\n disableFilters,\n hooks,\n state: [{ filters }, setState]\n } = props\n\n columns.forEach(column => {\n const { id, accessor, canFilter } = column\n column.canFilter = accessor\n ? getFirstDefined(\n canFilter,\n disableFilters === true ? false : undefined,\n true\n )\n : false\n // Was going to add this to the filter hook\n column.filterValue = filters[id]\n })\n\n const setFilter = (id, val) => {\n return setState(old => {\n if (typeof val === 'undefined') {\n const { [id]: prev, ...rest } = filters\n return {\n ...old,\n filters: {\n ...rest\n }\n }\n }\n\n return {\n ...old,\n filters: {\n ...filters,\n [id]: val\n }\n }\n }, actions.setFilter)\n }\n\n const setAllFilters = filters => {\n return setState(old => {\n return {\n ...old,\n filters\n }\n }, actions.setAllFilters)\n }\n\n hooks.columns.push(columns => {\n columns.forEach(column => {\n if (column.canFilter) {\n column.setFilter = val => setFilter(column.id, val)\n }\n })\n return columns\n })\n\n const filteredRows = useMemo(() => {\n if (manualFilters || !Object.keys(filters).length) {\n return rows\n }\n\n if (debug) console.info('getFilteredRows')\n\n // Filters top level and nested rows\n const filterRows = rows => {\n let filteredRows = rows\n\n filteredRows = Object.entries(filters).reduce(\n (filteredSoFar, [columnID, filterValue]) => {\n // Find the filters column\n const column = columns.find(d => d.id === columnID)\n\n // Don't filter hidden columns or columns that have had their filters disabled\n if (!column || column.filterable === false) {\n return filteredSoFar\n }\n\n const filterMethod = column.filterMethod || filterFn\n\n // If 'filterAll' is set to true, pass the entire dataset to the filter method\n if (column.filterAll) {\n return filterMethod(filteredSoFar, columnID, filterValue, column)\n }\n return filteredSoFar.filter(row =>\n filterMethod(row, columnID, filterValue, column)\n )\n },\n rows\n )\n\n // Apply the filter to any subRows\n filteredRows = filteredRows.map(row => {\n if (!row.subRows) {\n return row\n }\n return {\n ...row,\n subRows: filterRows(row.subRows)\n }\n })\n\n // then filter any rows without subcolumns because it would be strange to show\n filteredRows = filteredRows.filter(row => {\n if (!row.subRows) {\n return true\n }\n return row.subRows.length > 0\n })\n\n return filteredRows\n }\n\n return filterRows(rows)\n }, [rows, filters, manualFilters])\n\n return {\n ...props,\n setFilter,\n setAllFilters,\n rows: filteredRows\n }\n}\n","export function sum(values, rows) {\n return values.reduce((sum, next) => sum + next, 0)\n}\n\nexport function average(values, rows) {\n return Math.round((sum(values, rows) / values.length) * 100) / 100\n}\n","import { useMemo } from 'react'\nimport PropTypes from 'prop-types'\n\nimport * as aggregations from '../aggregations'\nimport { addActions, actions } from '../actions'\nimport { defaultState } from './useTableState'\nimport {\n mergeProps,\n applyPropHooks,\n defaultGroupByFn,\n getFirstDefined\n} from '../utils'\n\ndefaultState.groupBy = []\n\naddActions({\n toggleGroupBy: '__toggleGroupBy__'\n})\n\nconst propTypes = {\n // General\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n aggregate: PropTypes.func,\n canGroupBy: PropTypes.bool,\n Aggregated: PropTypes.any\n })\n ),\n groupByFn: PropTypes.func,\n manualGrouping: PropTypes.bool,\n aggregations: PropTypes.object\n}\n\nexport const useGroupBy = props => {\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useGroupBy')\n\n const {\n debug,\n rows,\n columns,\n groupByFn = defaultGroupByFn,\n manualGroupBy,\n disableGrouping,\n aggregations: userAggregations = {},\n hooks,\n state: [{ groupBy }, setState]\n } = props\n\n columns.forEach(column => {\n const { id, accessor, canGroupBy } = column\n column.grouped = groupBy.includes(id)\n\n column.canGroupBy = accessor\n ? getFirstDefined(\n canGroupBy,\n disableGrouping === true ? false : undefined,\n true\n )\n : false\n\n column.Aggregated = column.Aggregated || column.Cell\n })\n\n const toggleGroupBy = (id, toggle) => {\n return setState(old => {\n const resolvedToggle =\n typeof set !== 'undefined' ? toggle : !groupBy.includes(id)\n if (resolvedToggle) {\n return {\n ...old,\n groupBy: [...groupBy, id]\n }\n }\n return {\n ...old,\n groupBy: groupBy.filter(d => d !== id)\n }\n }, actions.toggleGroupBy)\n }\n\n hooks.columns.push(columns => {\n columns.forEach(column => {\n if (column.canGroupBy) {\n column.toggleGroupBy = () => toggleGroupBy(column.id)\n }\n })\n return columns\n })\n\n hooks.getGroupByToggleProps = []\n\n const addGroupByToggleProps = (columns, api) => {\n columns.forEach(column => {\n const { canGroupBy } = column\n column.getGroupByToggleProps = props => {\n return mergeProps(\n {\n onClick: canGroupBy\n ? e => {\n e.persist()\n column.toggleGroupBy()\n }\n : undefined,\n style: {\n cursor: canGroupBy ? 'pointer' : undefined\n },\n title: 'Toggle GroupBy'\n },\n applyPropHooks(api.hooks.getGroupByToggleProps, column, api),\n props\n )\n }\n })\n return columns\n }\n\n hooks.columns.push(addGroupByToggleProps)\n hooks.headers.push(addGroupByToggleProps)\n\n const groupedRows = useMemo(() => {\n if (manualGroupBy || !groupBy.length) {\n return rows\n }\n if (debug) console.info('getGroupedRows')\n // Find the columns that can or are aggregating\n\n // Uses each column to aggregate rows into a single value\n const aggregateRowsToValues = rows => {\n const values = {}\n columns.forEach(column => {\n const columnValues = rows.map(d => d.values[column.id])\n let aggregate =\n userAggregations[column.aggregate] ||\n aggregations[column.aggregate] ||\n column.aggregate\n if (typeof aggregate === 'function') {\n values[column.id] = aggregate(columnValues, rows)\n } else if (aggregate) {\n throw new Error(\n `Invalid aggregate \"${aggregate}\" passed to column with ID: \"${\n column.id\n }\"`\n )\n } else {\n values[column.id] = columnValues[0]\n }\n })\n return values\n }\n\n // Recursively group the data\n const groupRecursively = (rows, groupBy, depth = 0) => {\n // This is the last level, just return the rows\n if (depth >= groupBy.length) {\n return rows\n }\n\n // Group the rows together for this level\n let groupedRows = Object.entries(groupByFn(rows, groupBy[depth])).map(\n ([groupByVal, subRows], index) => {\n // Recurse to sub rows before aggregation\n subRows = groupRecursively(subRows, groupBy, depth + 1)\n\n const values = aggregateRowsToValues(subRows)\n\n const row = {\n groupByID: groupBy[depth],\n groupByVal,\n values,\n subRows,\n depth,\n index\n }\n return row\n }\n )\n\n return groupedRows\n }\n\n // Assign the new data\n return groupRecursively(rows, groupBy)\n }, [rows, groupBy, columns, manualGroupBy])\n\n return {\n ...props,\n rows: groupedRows\n }\n}\n","import { useMemo } from 'react'\nimport PropTypes from 'prop-types'\n\nimport { addActions, actions } from '../actions'\nimport { defaultState } from './useTableState'\nimport {\n mergeProps,\n applyPropHooks,\n getFirstDefined,\n defaultOrderByFn,\n defaultSortByFn\n} from '../utils'\n\ndefaultState.sortBy = []\n\naddActions({\n sortByChange: '__sortByChange__'\n})\n\nconst propTypes = {\n // General\n columns: PropTypes.arrayOf(\n PropTypes.shape({\n sortByFn: PropTypes.func,\n efaultSortDesc: PropTypes.bool\n })\n ),\n sortByFn: PropTypes.func,\n manualSorting: PropTypes.bool,\n disableSorting: PropTypes.bool,\n defaultSortDesc: PropTypes.bool,\n disableMultiSort: PropTypes.bool\n}\n\nexport const useSortBy = props => {\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useSortBy')\n\n const {\n debug,\n rows,\n columns,\n orderByFn = defaultOrderByFn,\n sortByFn = defaultSortByFn,\n manualSorting,\n disableSorting,\n defaultSortDesc,\n hooks,\n state: [{ sortBy }, setState]\n } = props\n\n columns.forEach(column => {\n const { accessor, canSortBy } = column\n column.canSortBy = accessor\n ? getFirstDefined(\n canSortBy,\n disableSorting === true ? false : undefined,\n true\n )\n : false\n })\n\n // Updates sorting based on a columnID, desc flag and multi flag\n const toggleSortByID = (columnID, desc, multi) => {\n return setState(old => {\n const { sortBy } = old\n\n // Find the column for this columnID\n const column = columns.find(d => d.id === columnID)\n const resolvedDefaultSortDesc = getFirstDefined(\n column.defaultSortDesc,\n defaultSortDesc\n )\n\n // Find any existing sortBy for this column\n const existingSortBy = sortBy.find(d => d.id === columnID)\n const hasDescDefined = typeof desc !== 'undefined' && desc !== null\n\n let newSortBy = []\n\n // What should we do with this filter?\n let action\n\n if (!multi) {\n if (sortBy.length <= 1 && existingSortBy) {\n if (existingSortBy.desc) {\n action = 'remove'\n } else {\n action = 'toggle'\n }\n } else {\n action = 'replace'\n }\n } else {\n if (!existingSortBy) {\n action = 'add'\n } else {\n if (hasDescDefined) {\n action = 'set'\n } else {\n action = 'toggle'\n }\n }\n }\n\n if (action === 'replace') {\n newSortBy = [\n {\n id: columnID,\n desc: hasDescDefined ? desc : resolvedDefaultSortDesc\n }\n ]\n } else if (action === 'add') {\n newSortBy = [\n ...sortBy,\n {\n id: columnID,\n desc: hasDescDefined ? desc : resolvedDefaultSortDesc\n }\n ]\n } else if (action === 'set') {\n newSortBy = sortBy.map(d => {\n if (d.id === columnID) {\n return {\n ...d,\n desc\n }\n }\n return d\n })\n } else if (action === 'toggle') {\n newSortBy = sortBy.map(d => {\n if (d.id === columnID) {\n return {\n ...d,\n desc: !existingSortBy.desc\n }\n }\n return d\n })\n } else if (action === 'remove') {\n newSortBy = []\n }\n\n return {\n ...old,\n sortBy: newSortBy\n }\n }, actions.sortByChange)\n }\n\n hooks.columns.push(columns => {\n columns.forEach(column => {\n if (column.canSortBy) {\n column.toggleSortBy = (desc, multi) =>\n toggleSortByID(column.id, desc, multi)\n }\n })\n return columns\n })\n\n hooks.getSortByToggleProps = []\n\n const addSortByToggleProps = (columns, api) => {\n columns.forEach(column => {\n const { canSortBy } = column\n column.getSortByToggleProps = props => {\n return mergeProps(\n {\n onClick: canSortBy\n ? e => {\n e.persist()\n column.toggleSortBy(\n undefined,\n !api.disableMultiSort && e.shiftKey\n )\n }\n : undefined,\n style: {\n cursor: canSortBy ? 'pointer' : undefined\n },\n title: 'Toggle SortBy'\n },\n applyPropHooks(api.hooks.getSortByToggleProps, column, api),\n props\n )\n }\n })\n return columns\n }\n\n hooks.columns.push(addSortByToggleProps)\n hooks.headers.push(addSortByToggleProps)\n\n // Mutate columns to reflect sorting state\n columns.forEach(column => {\n const { id } = column\n column.sorted = sortBy.find(d => d.id === id)\n column.sortedIndex = sortBy.findIndex(d => d.id === id)\n column.sortedDesc = column.sorted ? column.sorted.desc : undefined\n })\n\n const sortedRows = useMemo(() => {\n if (manualSorting || !sortBy.length) {\n return rows\n }\n if (debug) console.info('getSortedRows')\n\n const sortMethodsByColumnID = {}\n\n columns\n .filter(col => col.sortMethod)\n .forEach(col => {\n sortMethodsByColumnID[col.id] = col.sortMethod\n })\n\n const sortData = rows => {\n // Use the orderByFn to compose multiple sortBy's together.\n // This will also perform a stable sorting using the row index\n // if needed.\n const sortedData = orderByFn(\n rows,\n sortBy.map(sort => {\n // Support custom sorting methods for each column\n const columnSortBy = sortMethodsByColumnID[sort.id]\n\n // Return the correct sortFn\n return (a, b) =>\n (columnSortBy || sortByFn)(\n a.values[sort.id],\n b.values[sort.id],\n sort.desc\n )\n }),\n // Map the directions\n sortBy.map(d => !d.desc)\n )\n\n // TODO: this should be optimized. Not good to loop again\n sortedData.forEach(row => {\n if (!row.subRows) {\n return\n }\n row.subRows = sortData(row.subRows)\n })\n\n return sortedData\n }\n\n return sortData(rows)\n }, [rows, columns, sortBy, manualSorting])\n\n return {\n ...props,\n rows: sortedRows\n }\n}\n","import { useMemo, useLayoutEffect } from 'react'\nimport PropTypes from 'prop-types'\n\n//\nimport { addActions, actions } from '../actions'\nimport { defaultState } from './useTableState'\n\ndefaultState.pageSize = 10\ndefaultState.pageIndex = 0\n\naddActions({\n pageChange: '__pageChange__'\n})\n\nconst propTypes = {\n // General\n manualPagination: PropTypes.bool\n}\n\nexport const usePagination = props => {\n PropTypes.checkPropTypes(propTypes, props, 'property', 'usePagination')\n\n const {\n rows,\n manualPagination,\n debug,\n state: [\n {\n pageSize,\n pageIndex,\n pageCount: userPageCount,\n filters,\n groupBy,\n sortBy\n },\n setState\n ]\n } = props\n\n useLayoutEffect(() => {\n setState(\n old => ({\n ...old,\n pageIndex: 0\n }),\n actions.pageChange\n )\n }, [filters, groupBy, sortBy])\n\n const { pages, pageCount } = useMemo(() => {\n if (manualPagination) {\n return {\n pages: [rows],\n pageCount: userPageCount\n }\n }\n if (debug) console.info('getPages')\n\n // Create a new pages with the first page ready to go.\n const pages = rows.length ? [] : [[]]\n\n // Start the pageIndex and currentPage cursors\n let cursor = 0\n while (cursor < rows.length) {\n const end = cursor + pageSize\n pages.push(rows.slice(cursor, end))\n cursor = end\n }\n\n const pageCount = pages.length\n\n return {\n pages,\n pageCount,\n pageOptions\n }\n }, [rows, pageSize, userPageCount])\n\n const pageOptions = [...new Array(pageCount)].map((d, i) => i)\n const page = manualPagination ? rows : pages[pageIndex] || []\n const canPreviousPage = pageIndex > 0\n const canNextPage = pageIndex < pageCount - 1\n\n const gotoPage = pageIndex => {\n if (debug) console.info('gotoPage')\n return setState(old => {\n if (pageIndex < 0 || pageIndex > pageCount - 1) {\n return old\n }\n return {\n ...old,\n pageIndex\n }\n }, actions.pageChange)\n }\n\n const previousPage = () => {\n return gotoPage(pageIndex - 1)\n }\n\n const nextPage = () => {\n return gotoPage(pageIndex + 1)\n }\n\n const setPageSize = pageSize => {\n setState(old => {\n const topRowIndex = old.pageSize * old.pageIndex\n const pageIndex = Math.floor(topRowIndex / pageSize)\n return {\n ...old,\n pageIndex,\n pageSize\n }\n }, actions.setPageSize)\n }\n\n return {\n ...props,\n pages,\n pageOptions,\n page,\n canPreviousPage,\n canNextPage,\n gotoPage,\n previousPage,\n nextPage,\n setPageSize\n }\n}\n","import PropTypes from 'prop-types'\n\nimport { getFirstDefined, sum } from '../utils'\n\nexport const actions = {}\n\nconst propTypes = {\n defaultFlex: PropTypes.number\n}\n\nexport const useFlexLayout = props => {\n PropTypes.checkPropTypes(propTypes, props, 'property', 'useFlexLayout')\n\n const {\n defaultFlex = 1,\n hooks: {\n columns: columnsHooks,\n getRowProps,\n getHeaderRowProps,\n getHeaderProps,\n getCellProps\n }\n } = props\n\n columnsHooks.push((columns, api) => {\n const visibleColumns = columns.filter(column => {\n column.visible =\n typeof column.show === 'function' ? column.show(api) : !!column.show\n return column.visible\n })\n\n const columnMeasurements = {}\n\n let sumWidth = 0\n visibleColumns.forEach(column => {\n const { width, minWidth } = getSizesForColumn(\n column,\n defaultFlex,\n undefined,\n undefined,\n api\n )\n if (width) {\n sumWidth += width\n } else if (minWidth) {\n sumWidth += minWidth\n } else {\n sumWidth += defaultFlex\n }\n })\n\n const rowStyles = {\n style: {\n display: 'flex',\n minWidth: `${sumWidth}px`\n }\n }\n\n api.rowStyles = rowStyles\n\n getRowProps.push(() => rowStyles)\n getHeaderRowProps.push(() => rowStyles)\n\n getHeaderProps.push(column => ({\n style: {\n boxSizing: 'border-box',\n ...getStylesForColumn(column, columnMeasurements, defaultFlex, api)\n }\n // [refKey]: el => {\n // renderedCellInfoRef.current[key] = {\n // column,\n // el\n // };\n // },\n }))\n\n getCellProps.push(cell => {\n return {\n style: {\n display: 'block',\n boxSizing: 'border-box',\n ...getStylesForColumn(\n cell.column,\n columnMeasurements,\n defaultFlex,\n undefined,\n api\n )\n }\n // [refKey]: el => {\n // renderedCellInfoRef.current[columnPathStr] = {\n // column,\n // el\n // };\n // }\n }\n })\n\n return columns\n })\n\n return props\n}\n\n// Utils\n\nfunction getStylesForColumn(column, columnMeasurements, defaultFlex, api) {\n const { flex, width, maxWidth } = getSizesForColumn(\n column,\n columnMeasurements,\n defaultFlex,\n api\n )\n\n return {\n flex: `${flex} 0 auto`,\n width: `${width}px`,\n maxWidth: `${maxWidth}px`\n }\n}\n\nfunction getSizesForColumn(\n { columns, id, width, minWidth, maxWidth },\n columnMeasurements,\n defaultFlex,\n api\n) {\n if (columns) {\n columns = columns\n .map(column =>\n getSizesForColumn(column, columnMeasurements, defaultFlex, api)\n )\n .filter(Boolean)\n\n if (!columns.length) {\n return false\n }\n\n const flex = sum(columns.map(col => col.flex))\n const width = sum(columns.map(col => col.width))\n const maxWidth = sum(columns.map(col => col.maxWidth))\n\n return {\n flex,\n width,\n maxWidth\n }\n }\n\n return {\n flex: width ? 0 : defaultFlex,\n width:\n width === 'auto'\n ? columnMeasurements[id] || defaultFlex\n : getFirstDefined(width, minWidth, defaultFlex),\n maxWidth\n }\n}\n\n// const resetRefs = () => {\n// if (debug) console.info(\"resetRefs\");\n// renderedCellInfoRef.current = {};\n// };\n\n// const calculateAutoWidths = () => {\n// RAF(() => {\n// const newColumnMeasurements = {};\n// Object.values(renderedCellInfoRef.current).forEach(({ column, el }) => {\n// if (!el) {\n// return;\n// }\n\n// let measurement = 0;\n\n// const measureChildren = children => {\n// if (children) {\n// [].slice.call(children).forEach(child => {\n// measurement = Math.max(\n// measurement,\n// Math.ceil(child.offsetWidth) || 0\n// );\n// measureChildren(child.children);\n// });\n// }\n// return measurement;\n// };\n\n// const parentDims = getElementDimensions(el);\n// measureChildren(el.children);\n\n// newColumnMeasurements[column.id] = Math.max(\n// newColumnMeasurements[column.id] || 0,\n// measurement + parentDims.paddingLeft + parentDims.paddingRight\n// );\n// });\n\n// const oldKeys = Object.keys(columnMeasurements);\n// const newKeys = Object.keys(newColumnMeasurements);\n\n// const needsUpdate =\n// oldKeys.length !== newKeys.length ||\n// oldKeys.some(key => {\n// return columnMeasurements[key] !== newColumnMeasurements[key];\n// });\n\n// if (needsUpdate) {\n// setState(old => {\n// return {\n// ...old,\n// columnMeasurements: newColumnMeasurements\n// };\n// }, actions.updateAutoWidth);\n// }\n// });\n// };\n","import { useState } from 'react'\n\n// Token pagination behaves a bit differently from\n// index based pagination. This hook aids in that process.\n\nexport const useTokenPagination = () => {\n const [pageToken, setPageToken] = useState()\n const [nextPageToken, setNextPageToken] = useState()\n const [previousPageTokens, setPreviousPageTokens] = useState([])\n const [pageIndex, setPageIndex] = useState(0)\n\n // Since we're using pagination tokens intead of index, we need\n // to be a bit clever with page-like navigation here.\n const nextPage = () => {\n setPageIndex(old => old + 1)\n setPreviousPageTokens(old => [...old, pageToken])\n setPageToken(nextPageToken)\n }\n\n const previousPage = () => {\n setPageIndex(old => old - 1)\n setPreviousPageTokens(old =>\n [...old]\n .reverse()\n .slice(1)\n .reverse()\n )\n setPageToken(previousPageTokens[previousPageTokens.length - 1])\n }\n\n const resetPagination = () => {\n setPageToken(undefined)\n setPageIndex(0)\n setNextPageToken(undefined)\n setPreviousPageTokens([])\n }\n\n const canPreviousPage = previousPageTokens.length\n const canNextPage = nextPageToken\n\n return {\n setNextPageToken,\n pageToken,\n pageIndex,\n previousPage,\n nextPage,\n canPreviousPage,\n canNextPage,\n resetPagination\n }\n}\n"],"names":["getBy","obj","path","def","val","pathObj","makePathArray","reduce","cursor","pathPart","e","defaultOrderByFn","arr","funcs","dirs","_toConsumableArray","sort","rowA","rowB","i","length","sortFn","desc","sortInt","index","defaultSortByFn","a","b","toLowerCase","getFirstDefined","arguments","defaultGroupByFn","rows","grouper","prev","row","resKey","values","Array","isArray","push","defaultFilterFn","id","value","column","undefined","String","includes","setBy","recurse","depth","key","target","_typeof","flexRender","Comp","props","Object","getPrototypeOf","isReactComponent","React","mergeProps","groups","forEach","style","className","rest","filter","Boolean","join","applyHooks","hooks","initial","args","next","applyPropHooks","sum","curr","flattenDeep","replace","split","newArr","defaultState","defaultReducer","old","newState","useTableState","initialState","overrides","reducer","useState","state","setState","useMemo","keys","updater","type","renderErr","propTypes","data","PropTypes","array","isRequired","debug","bool","useTable","checkPropTypes","userState","process","env","NODE_ENV","api","beforeRender","columns","headers","headerGroups","renderableRows","getTableProps","getRowProps","getHeaderRowProps","getHeaderProps","getCellProps","console","time","plugins","timeEnd","render","userProps","Error","headerGroup","header","visible","prepareRow","cells","cell","columnPathStr","arrayOf","shape","Cell","any","Header","useColumns","userColumns","groupBy","info","columnTree","decorateColumnTree","parent","map","decorateColumn","flattenBy","maxDepth","removeChildColumns","buildGroup","parentColumns","hasParents","some","col","isFirst","latestParentColumn","reverse","originalID","placeholderColumn","makeHeaderGroups","g","find","findMaxDepth","Math","max","accessor","accessorString","error","show","childKey","flatColumns","d","subRowsKey","string","useRows","accessRow","originalRow","original","subRows","actions","addActions","acts","expanded","toggleExpanded","useExpanded","expandedKey","toggleExpandedByPath","set","existing","expandedRows","handleRow","parentPath","isExpanded","expandedDepth","findExpandedDepth","filters","setFilter","setAllFilters","filterFn","func","filterAll","canFilter","Filter","manualFilters","useFilters","disableFilters","filterValue","filteredRows","filterRows","entries","filteredSoFar","columnID","filterable","filterMethod","average","round","toggleGroupBy","aggregate","canGroupBy","Aggregated","groupByFn","manualGrouping","aggregations","object","useGroupBy","manualGroupBy","disableGrouping","userAggregations","grouped","toggle","getGroupByToggleProps","addGroupByToggleProps","onClick","persist","title","groupRecursively","groupByVal","columnValues","groupByID","sortBy","sortByChange","sortByFn","efaultSortDesc","manualSorting","disableSorting","defaultSortDesc","disableMultiSort","useSortBy","orderByFn","canSortBy","toggleSortBy","multi","action","resolvedDefaultSortDesc","existingSortBy","hasDescDefined","newSortBy","getSortByToggleProps","addSortByToggleProps","shiftKey","sorted","sortedIndex","findIndex","sortedDesc","sortMethodsByColumnID","sortMethod","sortData","sortedData","columnSortBy","pageSize","pageIndex","pageChange","manualPagination","usePagination","userPageCount","pageCount","useLayoutEffect","pages","end","slice","pageOptions","page","gotoPage","canPreviousPage","canNextPage","previousPage","nextPage","setPageSize","topRowIndex","floor","defaultFlex","number","useFlexLayout","columnsHooks","visibleColumns","columnMeasurements","sumWidth","getSizesForColumn","width","minWidth","rowStyles","display","boxSizing","getStylesForColumn","flex","maxWidth","useTokenPagination","pageToken","setPageToken","nextPageToken","setNextPageToken","previousPageTokens","setPreviousPageTokens","setPageIndex","resetPagination"],"mappings":"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"} \ No newline at end of file diff --git a/dist/index.js.zip b/dist/index.js.zip new file mode 100644 index 0000000..db05c49 Binary files /dev/null and b/dist/index.js.zip differ diff --git a/rollup.config.js b/rollup.config.js index 3d92a55..c215136 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,42 +1,32 @@ -import nodeResolve from 'rollup-plugin-node-resolve' import babel from 'rollup-plugin-babel' -import replace from 'rollup-plugin-replace' import commonjs from 'rollup-plugin-commonjs' -import uglify from 'rollup-plugin-uglify' +import external from 'rollup-plugin-peer-deps-external' +import resolve from 'rollup-plugin-node-resolve' +import { uglify } from 'rollup-plugin-uglify' -const env = process.env.NODE_ENV +import pkg from './package.json' -const config = { +export default { input: 'src/index.js', - output: { - file: env === 'production' ? 'react-table.min.js' : 'react-table.js', - format: 'umd', - globals: { - react: 'React', - }, - name: 'ReactTable', - exports: 'named', - }, - external: ['react'], - plugins: [ - nodeResolve(), - babel({ - exclude: '**/node_modules/**', - }), - replace({ - 'process.env.NODE_ENV': JSON.stringify(env), - }), - commonjs(), + output: [ + { + file: pkg.main, + format: 'cjs', + sourcemap: true + } + // { + // file: pkg.module, + // format: "es", + // sourcemap: true + // } ], + plugins: [ + external(), + babel({ + exclude: 'node_modules/**' + }), + resolve(), + commonjs(), + uglify() + ] } - -if (env === 'production') { - config.plugins.push(uglify({ - compress: { - dead_code: true, - warnings: false, - }, - })) -} - -export default config diff --git a/src/actions.js b/src/actions.js new file mode 100755 index 0000000..03de070 --- /dev/null +++ b/src/actions.js @@ -0,0 +1,9 @@ +const actions = {} + +export { actions } + +export const addActions = acts => { + Object.keys(acts).forEach(key => { + actions[key] = acts[key] + }) +} diff --git a/src/aggregations.js b/src/aggregations.js index 1104a9a..ef10cd0 100755 --- a/src/aggregations.js +++ b/src/aggregations.js @@ -1,7 +1,7 @@ -export function sum (values, rows) { +export function sum(values, rows) { return values.reduce((sum, next) => sum + next, 0) } -export function average (values, rows) { +export function average(values, rows) { return Math.round((sum(values, rows) / values.length) * 100) / 100 } diff --git a/src/hooks/useAccessedRows.js b/src/hooks/useAccessedRows.js deleted file mode 100755 index 3cff43e..0000000 --- a/src/hooks/useAccessedRows.js +++ /dev/null @@ -1,41 +0,0 @@ -import { useMemo } from 'react' - -export default function useAccessedRows ({ - debug, data, columns, subRowsKey, -}) { - return useMemo( - () => { - if (debug) console.info('getAccessedRows') - - // Access the row's data - const accessRow = (data, i, depth = 0) => { - // Keep the original reference around - const original = data - - // Process any subRows - const subRows = data[subRowsKey] - ? data[subRowsKey].map((d, i) => accessRow(d, i, depth + 1)) - : undefined - - const row = { - original, - index: i, - subRows, - depth, - } - - // Create the cells and values - row.values = {} - columns.forEach(column => { - row.values[column.id] = column.accessor ? column.accessor(data) : undefined - }) - - return row - } - - // Use the resolved data - return data.map((d, i) => accessRow(d, i)) - }, - [data, columns] - ) -} diff --git a/src/hooks/useColumns.js b/src/hooks/useColumns.js index 2d98ea3..1a86b20 100755 --- a/src/hooks/useColumns.js +++ b/src/hooks/useColumns.js @@ -1,45 +1,61 @@ import { useMemo } from 'react' +import PropTypes from 'prop-types' -import { getFirstDefined, getBy } from '../utils' +import { getBy } from '../utils' -export default function useColumns ({ - debug, - groupBy, - userColumns, - disableSorting, - disableGrouping, - disableFilters, -}) { - return useMemo( - () => { - if (debug) console.info('getColumns') - - // Decorate All the columns - const columnTree = decorateColumnTree(userColumns) - - // Get the flat list of all columns - let columns = flattenBy(columnTree, 'columns') - - columns = [ - ...groupBy.map(g => columns.find(col => col.id === g)), - ...columns.filter(col => !groupBy.includes(col.id)), - ] - - // Get headerGroups - const headerGroups = makeHeaderGroups(columns, findMaxDepth(columnTree)) - const headers = flattenBy(headerGroups, 'headers') - - return { - columns, - headerGroups, - headers, - } - }, - [groupBy, userColumns] +const propTypes = { + // General + columns: PropTypes.arrayOf( + PropTypes.shape({ + Cell: PropTypes.any, + Header: PropTypes.any + }) ) +} + +export const useColumns = props => { + const { + debug, + columns: userColumns, + state: [{ groupBy }] + } = props + + PropTypes.checkPropTypes(propTypes, props, 'property', 'useColumns') + + const { columns, headerGroups, headers } = useMemo(() => { + if (debug) console.info('getColumns') + + // Decorate All the columns + let columnTree = decorateColumnTree(userColumns) + + // Get the flat list of all columns + let columns = flattenBy(columnTree, 'columns') + + columns = [ + ...groupBy.map(g => columns.find(col => col.id === g)), + ...columns.filter(col => !groupBy.includes(col.id)) + ] + + // Get headerGroups + const headerGroups = makeHeaderGroups(columns, findMaxDepth(columnTree)) + const headers = flattenBy(headerGroups, 'headers') + + return { + columns, + headerGroups, + headers + } + }, [groupBy, userColumns]) + + return { + ...props, + columns, + headerGroups, + headers + } // Find the depth of the columns - function findMaxDepth (columns, depth = 0) { + function findMaxDepth(columns, depth = 0) { return columns.reduce((prev, curr) => { if (curr.columns) { return Math.max(prev, findMaxDepth(curr.columns, depth + 1)) @@ -48,11 +64,9 @@ export default function useColumns ({ }, 0) } - function decorateColumn (column, parent) { + function decorateColumn(column, parent) { // First check for string accessor - let { - id, accessor, Header, canSortBy, canGroupBy, canFilter, - } = column + let { id, accessor, Header } = column if (typeof accessor === 'string') { id = id || accessor @@ -60,18 +74,6 @@ export default function useColumns ({ accessor = row => getBy(row, accessorString) } - const grouped = groupBy.includes(id) - - canSortBy = accessor - ? getFirstDefined(canSortBy, disableSorting === true ? false : undefined, true) - : false - canGroupBy = accessor - ? getFirstDefined(canGroupBy, disableGrouping === true ? false : undefined, true) - : false - canFilter = accessor - ? getFirstDefined(canFilter, disableFilters === true ? false : undefined, true) - : false - if (!id && typeof Header === 'string') { id = Header } @@ -87,22 +89,16 @@ export default function useColumns ({ Cell: cell => cell.value, show: true, ...column, - grouped, - canSortBy, - canGroupBy, - canFilter, id, accessor, - parent, + parent } - column.Aggregated = column.Aggregated || column.Cell - return column } // Build the visible columns, headers and flat column list - function decorateColumnTree (columns, parent, depth = 0) { + function decorateColumnTree(columns, parent, depth = 0) { return columns.map(column => { column = decorateColumn(column, parent) if (column.columns) { @@ -112,7 +108,7 @@ export default function useColumns ({ }) } - function flattenBy (columns, childKey) { + function flattenBy(columns, childKey) { const flatColumns = [] const recurse = columns => { @@ -131,7 +127,7 @@ export default function useColumns ({ } // Build the header groups from the bottom up - function makeHeaderGroups (columns, maxDepth) { + function makeHeaderGroups(columns, maxDepth) { const headerGroups = [] const removeChildColumns = column => { @@ -144,7 +140,7 @@ export default function useColumns ({ const buildGroup = (columns, depth = 0) => { const headerGroup = { - headers: [], + headers: [] } const parentColumns = [] @@ -161,16 +157,24 @@ export default function useColumns ({ parentColumns.push({ ...column.parent, originalID: column.parent.id, - id: [column.parent.id, parentColumns.length].join('_'), + id: [column.parent.id, parentColumns.length].join('_') }) } } else if (hasParents) { // If other columns have parents, add a place holder if necessary const placeholderColumn = decorateColumn({ originalID: [column.id, 'placeholder', maxDepth - depth].join('_'), - id: [column.id, 'placeholder', maxDepth - depth, parentColumns.length].join('_'), + id: [ + column.id, + 'placeholder', + maxDepth - depth, + parentColumns.length + ].join('_') }) - if (isFirst || latestParentColumn.originalID !== placeholderColumn.originalID) { + if ( + isFirst || + latestParentColumn.originalID !== placeholderColumn.originalID + ) { parentColumns.push(placeholderColumn) } } diff --git a/src/hooks/useControlledState.js b/src/hooks/useControlledState.js deleted file mode 100755 index ad3ef5b..0000000 --- a/src/hooks/useControlledState.js +++ /dev/null @@ -1,24 +0,0 @@ -const mergeStateAndProps = (state, defaults, props) => { - Object.keys(props).forEach(key => { - if (typeof props[key] !== 'undefined') { - state[key] = props[key] - } - }) - - Object.keys(defaults).forEach(key => { - if (typeof state[key] === 'undefined') { - state[key] = defaults[key] - } - }) - - return state -} - -export default function useControlledState ([userState, userSetState], defaults, props) { - const state = mergeStateAndProps(userState, defaults, props) - - const setState = (updater, type) => - userSetState(old => updater(mergeStateAndProps(old, defaults, props)), type) - - return [state, setState] -} diff --git a/src/hooks/useExpanded.js b/src/hooks/useExpanded.js new file mode 100755 index 0000000..1ac7d58 --- /dev/null +++ b/src/hooks/useExpanded.js @@ -0,0 +1,105 @@ +import { useMemo } from 'react' +import PropTypes from 'prop-types' + +import { getBy, getFirstDefined, setBy } from '../utils' +import { addActions, actions } from '../actions' +import { defaultState } from './useTableState' + +defaultState.expanded = {} + +addActions({ + toggleExpanded: '__toggleExpanded__', + useExpanded: '__useExpanded__' +}) + +const propTypes = { + expandedKey: PropTypes.string +} + +export const useExpanded = props => { + PropTypes.checkPropTypes(propTypes, props, 'property', 'useExpanded') + + const { + debug, + columns, + rows, + expandedKey = 'expanded', + hooks, + state: [{ expanded }, setState] + } = props + + const toggleExpandedByPath = (path, set) => { + return setState(old => { + const { expanded } = old + const existing = getBy(expanded, path) + set = getFirstDefined(set, !existing) + return { + ...old, + expanded: setBy(expanded, path, set) + } + }, actions.toggleExpanded) + } + + hooks.row.push(row => { + const { path } = row + row.toggleExpanded = set => toggleExpandedByPath(path, set) + }) + + const expandedRows = useMemo(() => { + if (debug) console.info('getExpandedRows') + + const expandedRows = [] + + // Here we do some mutation, but it's the last stage in the + // immutable process so this is safe + const handleRow = (row, index, depth = 0, parentPath = []) => { + // Compute some final state for the row + const path = [...parentPath, index] + + row.path = path + row.depth = depth + + row.isExpanded = + (row.original && row.original[expandedKey]) || getBy(expanded, path) + + row.cells = columns.map(column => { + const cell = { + column, + row, + state: null, + value: row.values[column.id] + } + + return cell + }) + + expandedRows.push(row) + + if (row.isExpanded && row.subRows && row.subRows.length) { + row.subRows.forEach((row, i) => handleRow(row, i, depth + 1, path)) + } + } + + rows.forEach((row, i) => handleRow(row, i)) + + return expandedRows + }, [rows, expanded, columns]) + + const expandedDepth = findExpandedDepth(expanded) + + return { + ...props, + toggleExpandedByPath, + expandedDepth, + rows: expandedRows + } +} + +function findExpandedDepth(obj, depth = 1) { + return Object.values(obj).reduce((prev, curr) => { + if (typeof curr === 'object') { + return Math.max(prev, findExpandedDepth(curr, depth + 1)) + } + return depth + }, 0) +} diff --git a/src/hooks/useExpandedRows.js b/src/hooks/useExpandedRows.js deleted file mode 100755 index 3236f84..0000000 --- a/src/hooks/useExpandedRows.js +++ /dev/null @@ -1,55 +0,0 @@ -import { useMemo, useEffect } from 'react' - -import { getBy } from '../utils' - -export default function useExpandedRows ({ - debug, - expanded, - expandedKey, - columns, - rows, - setState, - actions, -}) { - return useMemo( - () => { - if (debug) console.info('getExpandedRows') - - const expandedRows = [] - - // Here we do some mutation, but it's the last stage in the - // immutable process so this is safe - const handleRow = (row, index, depth = 0, parentPath = []) => { - // Compute some final state for the row - const path = [...parentPath, index] - - row.path = path - row.depth = depth - - row.isExpanded = (row.original && row.original[expandedKey]) || getBy(expanded, path) - - row.cells = columns.map(column => { - const cell = { - column, - row, - state: null, - value: row.values[column.id], - } - - return cell - }) - - expandedRows.push(row) - - if (row.isExpanded && row.subRows && row.subRows.length) { - row.subRows.forEach((row, i) => handleRow(row, i, depth + 1, path)) - } - } - - rows.forEach((row, i) => handleRow(row, i)) - - return expandedRows - }, - [rows, expanded, columns] - ) -} diff --git a/src/hooks/useFilteredRows.js b/src/hooks/useFilteredRows.js deleted file mode 100755 index 1076303..0000000 --- a/src/hooks/useFilteredRows.js +++ /dev/null @@ -1,67 +0,0 @@ -import { useMemo } from 'react' - -export default function useFilteredRows ({ - debug, - filters, - rows, - columns, - filterFn, - manualFilters, -}) { - return useMemo( - () => { - if (manualFilters || !Object.keys(filters).length) { - return rows - } - - if (debug) console.info('getFilteredRows') - - // Filters top level and nested rows - const filterRows = rows => { - let filteredRows = rows - - filteredRows = Object.entries(filters).reduce((filteredSoFar, [columnID, filterValue]) => { - // Find the filters column - const column = columns.find(d => d.id === columnID) - - // Don't filter hidden columns or columns that have had their filters disabled - if (!column || column.filterable === false) { - return filteredSoFar - } - - const filterMethod = column.filterMethod || filterFn - - // If 'filterAll' is set to true, pass the entire dataset to the filter method - if (column.filterAll) { - return filterMethod(filteredSoFar, columnID, filterValue, column) - } - return filteredSoFar.filter(row => filterMethod(row, columnID, filterValue, column)) - }, rows) - - // Apply the filter to any subRows - filteredRows = filteredRows.map(row => { - if (!row.subRows) { - return row - } - return { - ...row, - subRows: filterRows(row.subRows), - } - }) - - // then filter any rows without subcolumns because it would be strange to show - filteredRows = filteredRows.filter(row => { - if (!row.subRows) { - return true - } - return row.subRows.length > 0 - }) - - return filteredRows - } - - return filterRows(rows) - }, - [rows, filters, manualFilters] - ) -} diff --git a/src/hooks/useFilters.js b/src/hooks/useFilters.js new file mode 100755 index 0000000..1948afc --- /dev/null +++ b/src/hooks/useFilters.js @@ -0,0 +1,161 @@ +import { useMemo } from 'react' +import PropTypes from 'prop-types' + +import { defaultFilterFn, getFirstDefined } from '../utils' +import { addActions, actions } from '../actions' +import { defaultState } from './useTableState' + +defaultState.filters = {} +addActions({ + setFilter: '__setFilter__', + setAllFilters: '__setAllFilters__' +}) + +const propTypes = { + // General + columns: PropTypes.arrayOf( + PropTypes.shape({ + filterFn: PropTypes.func, + filterAll: PropTypes.bool, + canFilter: PropTypes.bool, + Filter: PropTypes.any + }) + ), + + filterFn: PropTypes.func, + manualFilters: PropTypes.bool +} + +export const useFilters = props => { + PropTypes.checkPropTypes(propTypes, props, 'property', 'useFilters') + + const { + debug, + rows, + columns, + filterFn = defaultFilterFn, + manualFilters, + disableFilters, + hooks, + state: [{ filters }, setState] + } = props + + columns.forEach(column => { + const { id, accessor, canFilter } = column + column.canFilter = accessor + ? getFirstDefined( + canFilter, + disableFilters === true ? false : undefined, + true + ) + : false + // Was going to add this to the filter hook + column.filterValue = filters[id] + }) + + const setFilter = (id, val) => { + return setState(old => { + if (typeof val === 'undefined') { + const { [id]: prev, ...rest } = filters + return { + ...old, + filters: { + ...rest + } + } + } + + return { + ...old, + filters: { + ...filters, + [id]: val + } + } + }, actions.setFilter) + } + + const setAllFilters = filters => { + return setState(old => { + return { + ...old, + filters + } + }, actions.setAllFilters) + } + + hooks.columns.push(columns => { + columns.forEach(column => { + if (column.canFilter) { + column.setFilter = val => setFilter(column.id, val) + } + }) + return columns + }) + + const filteredRows = useMemo(() => { + if (manualFilters || !Object.keys(filters).length) { + return rows + } + + if (debug) console.info('getFilteredRows') + + // Filters top level and nested rows + const filterRows = rows => { + let filteredRows = rows + + filteredRows = Object.entries(filters).reduce( + (filteredSoFar, [columnID, filterValue]) => { + // Find the filters column + const column = columns.find(d => d.id === columnID) + + // Don't filter hidden columns or columns that have had their filters disabled + if (!column || column.filterable === false) { + return filteredSoFar + } + + const filterMethod = column.filterMethod || filterFn + + // If 'filterAll' is set to true, pass the entire dataset to the filter method + if (column.filterAll) { + return filterMethod(filteredSoFar, columnID, filterValue, column) + } + return filteredSoFar.filter(row => + filterMethod(row, columnID, filterValue, column) + ) + }, + rows + ) + + // Apply the filter to any subRows + filteredRows = filteredRows.map(row => { + if (!row.subRows) { + return row + } + return { + ...row, + subRows: filterRows(row.subRows) + } + }) + + // then filter any rows without subcolumns because it would be strange to show + filteredRows = filteredRows.filter(row => { + if (!row.subRows) { + return true + } + return row.subRows.length > 0 + }) + + return filteredRows + } + + return filterRows(rows) + }, [rows, filters, manualFilters]) + + return { + ...props, + setFilter, + setAllFilters, + rows: filteredRows + } +} diff --git a/src/useFlexLayout.js b/src/hooks/useFlexLayout.js similarity index 51% rename from src/useFlexLayout.js rename to src/hooks/useFlexLayout.js index 7c0d361..35e2341 100755 --- a/src/useFlexLayout.js +++ b/src/hooks/useFlexLayout.js @@ -1,115 +1,135 @@ -import { useMemo, useState } from 'react' import PropTypes from 'prop-types' -import { getFirstDefined, sum } from './utils' - -const propTypes = { - defaultFlex: PropTypes.number, -} +import { getFirstDefined, sum } from '../utils' export const actions = {} -export default function useFlexLayout (api, props = {}) { - // Validate props +const propTypes = { + defaultFlex: PropTypes.number +} + +export const useFlexLayout = props => { PropTypes.checkPropTypes(propTypes, props, 'property', 'useFlexLayout') const { + defaultFlex = 1, hooks: { - getRowProps, getHeaderRowProps, getHeaderProps, getCellProps, - }, - visibleColumns, - } = api + columns: columnsHooks, + getRowProps, + getHeaderRowProps, + getHeaderProps, + getCellProps + } + } = props - const { defaultFlex = 1 } = props + columnsHooks.push((columns, api) => { + const visibleColumns = columns.filter(column => { + column.visible = + typeof column.show === 'function' ? column.show(api) : !!column.show + return column.visible + }) - const [columnMeasurements, setColumnMeasurements] = useState({}) + const columnMeasurements = {} - const rowStyles = useMemo( - () => { - let sumWidth = 0 - visibleColumns.forEach(column => { - const { width, minWidth } = getSizesForColumn( - column, - defaultFlex, - undefined, - undefined, - api - ) - if (width) { - sumWidth += width - } else if (minWidth) { - sumWidth += minWidth - } else { - sumWidth += defaultFlex - } - }) + let sumWidth = 0 + visibleColumns.forEach(column => { + const { width, minWidth } = getSizesForColumn( + column, + defaultFlex, + undefined, + undefined, + api + ) + if (width) { + sumWidth += width + } else if (minWidth) { + sumWidth += minWidth + } else { + sumWidth += defaultFlex + } + }) + const rowStyles = { + style: { + display: 'flex', + minWidth: `${sumWidth}px` + } + } + + api.rowStyles = rowStyles + + getRowProps.push(() => rowStyles) + getHeaderRowProps.push(() => rowStyles) + + getHeaderProps.push(column => ({ + style: { + boxSizing: 'border-box', + ...getStylesForColumn(column, columnMeasurements, defaultFlex, api) + } + // [refKey]: el => { + // renderedCellInfoRef.current[key] = { + // column, + // el + // }; + // }, + })) + + getCellProps.push(cell => { return { style: { - display: 'flex', - minWidth: `${sumWidth}px`, - }, + display: 'block', + boxSizing: 'border-box', + ...getStylesForColumn( + cell.column, + columnMeasurements, + defaultFlex, + undefined, + api + ) + } + // [refKey]: el => { + // renderedCellInfoRef.current[columnPathStr] = { + // column, + // el + // }; + // } } - }, - [visibleColumns] - ) + }) - getRowProps.push(row => rowStyles) - getHeaderRowProps.push(row => rowStyles) + return columns + }) - getHeaderProps.push(column => ({ - style: { - boxSizing: 'border-box', - ...getStylesForColumn(column, columnMeasurements, defaultFlex, api), - }, - // [refKey]: el => { - // renderedCellInfoRef.current[key] = { - // column, - // el - // }; - // }, - })) - - getCellProps.push(cell => ({ - style: { - display: 'block', - boxSizing: 'border-box', - ...getStylesForColumn(cell.column, columnMeasurements, defaultFlex, undefined, api), - }, - // [refKey]: el => { - // renderedCellInfoRef.current[columnPathStr] = { - // column, - // el - // }; - // } - })) - - return { - rowStyles, - } + return props } -function getStylesForColumn (column, columnMeasurements, defaultFlex, api) { - const { flex, width, maxWidth } = getSizesForColumn(column, columnMeasurements, defaultFlex, api) +// Utils + +function getStylesForColumn(column, columnMeasurements, defaultFlex, api) { + const { flex, width, maxWidth } = getSizesForColumn( + column, + columnMeasurements, + defaultFlex, + api + ) return { flex: `${flex} 0 auto`, width: `${width}px`, - maxWidth: `${maxWidth}px`, + maxWidth: `${maxWidth}px` } } -function getSizesForColumn ( - { - columns, id, width, minWidth, maxWidth, - }, +function getSizesForColumn( + { columns, id, width, minWidth, maxWidth }, columnMeasurements, defaultFlex, api ) { if (columns) { columns = columns - .map(column => getSizesForColumn(column, columnMeasurements, defaultFlex, api)) + .map(column => + getSizesForColumn(column, columnMeasurements, defaultFlex, api) + ) .filter(Boolean) if (!columns.length) { @@ -123,7 +143,7 @@ function getSizesForColumn ( return { flex, width, - maxWidth, + maxWidth } } @@ -133,7 +153,7 @@ function getSizesForColumn ( width === 'auto' ? columnMeasurements[id] || defaultFlex : getFirstDefined(width, minWidth, defaultFlex), - maxWidth, + maxWidth } } diff --git a/src/hooks/useGroupBy.js b/src/hooks/useGroupBy.js new file mode 100755 index 0000000..acaf06d --- /dev/null +++ b/src/hooks/useGroupBy.js @@ -0,0 +1,189 @@ +import { useMemo } from 'react' +import PropTypes from 'prop-types' + +import * as aggregations from '../aggregations' +import { addActions, actions } from '../actions' +import { defaultState } from './useTableState' +import { + mergeProps, + applyPropHooks, + defaultGroupByFn, + getFirstDefined +} from '../utils' + +defaultState.groupBy = [] + +addActions({ + toggleGroupBy: '__toggleGroupBy__' +}) + +const propTypes = { + // General + columns: PropTypes.arrayOf( + PropTypes.shape({ + aggregate: PropTypes.func, + canGroupBy: PropTypes.bool, + Aggregated: PropTypes.any + }) + ), + groupByFn: PropTypes.func, + manualGrouping: PropTypes.bool, + aggregations: PropTypes.object +} + +export const useGroupBy = props => { + PropTypes.checkPropTypes(propTypes, props, 'property', 'useGroupBy') + + const { + debug, + rows, + columns, + groupByFn = defaultGroupByFn, + manualGroupBy, + disableGrouping, + aggregations: userAggregations = {}, + hooks, + state: [{ groupBy }, setState] + } = props + + columns.forEach(column => { + const { id, accessor, canGroupBy } = column + column.grouped = groupBy.includes(id) + + column.canGroupBy = accessor + ? getFirstDefined( + canGroupBy, + disableGrouping === true ? false : undefined, + true + ) + : false + + column.Aggregated = column.Aggregated || column.Cell + }) + + const toggleGroupBy = (id, toggle) => { + return setState(old => { + const resolvedToggle = + typeof set !== 'undefined' ? toggle : !groupBy.includes(id) + if (resolvedToggle) { + return { + ...old, + groupBy: [...groupBy, id] + } + } + return { + ...old, + groupBy: groupBy.filter(d => d !== id) + } + }, actions.toggleGroupBy) + } + + hooks.columns.push(columns => { + columns.forEach(column => { + if (column.canGroupBy) { + column.toggleGroupBy = () => toggleGroupBy(column.id) + } + }) + return columns + }) + + hooks.getGroupByToggleProps = [] + + const addGroupByToggleProps = (columns, api) => { + columns.forEach(column => { + const { canGroupBy } = column + column.getGroupByToggleProps = props => { + return mergeProps( + { + onClick: canGroupBy + ? e => { + e.persist() + column.toggleGroupBy() + } + : undefined, + style: { + cursor: canGroupBy ? 'pointer' : undefined + }, + title: 'Toggle GroupBy' + }, + applyPropHooks(api.hooks.getGroupByToggleProps, column, api), + props + ) + } + }) + return columns + } + + hooks.columns.push(addGroupByToggleProps) + hooks.headers.push(addGroupByToggleProps) + + const groupedRows = useMemo(() => { + if (manualGroupBy || !groupBy.length) { + return rows + } + if (debug) console.info('getGroupedRows') + // Find the columns that can or are aggregating + + // Uses each column to aggregate rows into a single value + const aggregateRowsToValues = rows => { + const values = {} + columns.forEach(column => { + const columnValues = rows.map(d => d.values[column.id]) + let aggregate = + userAggregations[column.aggregate] || + aggregations[column.aggregate] || + column.aggregate + if (typeof aggregate === 'function') { + values[column.id] = aggregate(columnValues, rows) + } else if (aggregate) { + throw new Error( + `Invalid aggregate "${aggregate}" passed to column with ID: "${ + column.id + }"` + ) + } else { + values[column.id] = columnValues[0] + } + }) + return values + } + + // Recursively group the data + const groupRecursively = (rows, groupBy, depth = 0) => { + // This is the last level, just return the rows + if (depth >= groupBy.length) { + return rows + } + + // Group the rows together for this level + let groupedRows = Object.entries(groupByFn(rows, groupBy[depth])).map( + ([groupByVal, subRows], index) => { + // Recurse to sub rows before aggregation + subRows = groupRecursively(subRows, groupBy, depth + 1) + + const values = aggregateRowsToValues(subRows) + + const row = { + groupByID: groupBy[depth], + groupByVal, + values, + subRows, + depth, + index + } + return row + } + ) + + return groupedRows + } + + // Assign the new data + return groupRecursively(rows, groupBy) + }, [rows, groupBy, columns, manualGroupBy]) + + return { + ...props, + rows: groupedRows + } +} diff --git a/src/hooks/useGroupedRows.js b/src/hooks/useGroupedRows.js deleted file mode 100755 index afd5dcc..0000000 --- a/src/hooks/useGroupedRows.js +++ /dev/null @@ -1,77 +0,0 @@ -import { useMemo } from 'react' - -import * as aggregations from '../aggregations' - -export default function useGroupedRows ({ - debug, - groupBy, - rows, - columns, - groupByFn, - manualGroupBy, - userAggregations, -}) { - return useMemo( - () => { - if (manualGroupBy || !groupBy.length) { - return rows - } - if (debug) console.info('getGroupedRows') - // Find the columns that can or are aggregating - - // Uses each column to aggregate rows into a single value - const aggregateRowsToValues = rows => { - const values = {} - columns.forEach(column => { - const columnValues = rows.map(d => d.values[column.id]) - const aggregate = - userAggregations[column.aggregate] || aggregations[column.aggregate] || column.aggregate - if (typeof aggregate === 'function') { - values[column.id] = aggregate(columnValues, rows) - } else if (aggregate) { - throw new Error( - `Invalid aggregate "${aggregate}" passed to column with ID: "${column.id}"` - ) - } else { - values[column.id] = columnValues[0] - } - }) - return values - } - - // Recursively group the data - const groupRecursively = (rows, groupBy, depth = 0) => { - // This is the last level, just return the rows - if (depth >= groupBy.length) { - return rows - } - - // Group the rows together for this level - const groupedRows = Object.entries(groupByFn(rows, groupBy[depth])).map( - ([groupByVal, subRows], index) => { - // Recurse to sub rows before aggregation - subRows = groupRecursively(subRows, groupBy, depth + 1) - - const values = aggregateRowsToValues(subRows) - - const row = { - groupByID: groupBy[depth], - groupByVal, - values, - subRows, - depth, - index, - } - return row - } - ) - - return groupedRows - } - - // Assign the new data - return groupRecursively(rows, groupBy) - }, - [rows, groupBy, columns, manualGroupBy] - ) -} diff --git a/src/hooks/usePagination.js b/src/hooks/usePagination.js new file mode 100755 index 0000000..9974d92 --- /dev/null +++ b/src/hooks/usePagination.js @@ -0,0 +1,129 @@ +import { useMemo, useLayoutEffect } from 'react' +import PropTypes from 'prop-types' + +// +import { addActions, actions } from '../actions' +import { defaultState } from './useTableState' + +defaultState.pageSize = 10 +defaultState.pageIndex = 0 + +addActions({ + pageChange: '__pageChange__' +}) + +const propTypes = { + // General + manualPagination: PropTypes.bool +} + +export const usePagination = props => { + PropTypes.checkPropTypes(propTypes, props, 'property', 'usePagination') + + const { + rows, + manualPagination, + debug, + state: [ + { + pageSize, + pageIndex, + pageCount: userPageCount, + filters, + groupBy, + sortBy + }, + setState + ] + } = props + + useLayoutEffect(() => { + setState( + old => ({ + ...old, + pageIndex: 0 + }), + actions.pageChange + ) + }, [filters, groupBy, sortBy]) + + const { pages, pageCount } = useMemo(() => { + if (manualPagination) { + return { + pages: [rows], + pageCount: userPageCount + } + } + if (debug) console.info('getPages') + + // Create a new pages with the first page ready to go. + const pages = rows.length ? [] : [[]] + + // Start the pageIndex and currentPage cursors + let cursor = 0 + while (cursor < rows.length) { + const end = cursor + pageSize + pages.push(rows.slice(cursor, end)) + cursor = end + } + + const pageCount = pages.length + + return { + pages, + pageCount, + pageOptions + } + }, [rows, pageSize, userPageCount]) + + const pageOptions = [...new Array(pageCount)].map((d, i) => i) + const page = manualPagination ? rows : pages[pageIndex] || [] + const canPreviousPage = pageIndex > 0 + const canNextPage = pageIndex < pageCount - 1 + + const gotoPage = pageIndex => { + if (debug) console.info('gotoPage') + return setState(old => { + if (pageIndex < 0 || pageIndex > pageCount - 1) { + return old + } + return { + ...old, + pageIndex + } + }, actions.pageChange) + } + + const previousPage = () => { + return gotoPage(pageIndex - 1) + } + + const nextPage = () => { + return gotoPage(pageIndex + 1) + } + + const setPageSize = pageSize => { + setState(old => { + const topRowIndex = old.pageSize * old.pageIndex + const pageIndex = Math.floor(topRowIndex / pageSize) + return { + ...old, + pageIndex, + pageSize + } + }, actions.setPageSize) + } + + return { + ...props, + pages, + pageOptions, + page, + canPreviousPage, + canNextPage, + gotoPage, + previousPage, + nextPage, + setPageSize + } +} diff --git a/src/hooks/useRows.js b/src/hooks/useRows.js new file mode 100755 index 0000000..10d6381 --- /dev/null +++ b/src/hooks/useRows.js @@ -0,0 +1,52 @@ +import { useMemo } from 'react' +import PropTypes from 'prop-types' + +const propTypes = { + subRowsKey: PropTypes.string +} + +export const useRows = props => { + PropTypes.checkPropTypes(propTypes, props, 'property', 'useRows') + + const { debug, columns, subRowsKey = 'subRows', data } = props + + const accessedRows = useMemo(() => { + if (debug) console.info('getAccessedRows') + + // Access the row's data + const accessRow = (originalRow, i, depth = 0) => { + // Keep the original reference around + const original = originalRow + + // Process any subRows + const subRows = originalRow[subRowsKey] + ? originalRow[subRowsKey].map((d, i) => accessRow(d, i, depth + 1)) + : undefined + + const row = { + original, + index: i, + subRows, + depth + } + + // Create the cells and values + row.values = {} + columns.forEach(column => { + row.values[column.id] = column.accessor + ? column.accessor(originalRow, i, { subRows, depth, data }) + : undefined + }) + + return row + } + + // Use the resolved data + return data.map((d, i) => accessRow(d, i)) + }, [data, columns]) + + return { + ...props, + rows: accessedRows + } +} diff --git a/src/hooks/useSortBy.js b/src/hooks/useSortBy.js new file mode 100755 index 0000000..4e0f905 --- /dev/null +++ b/src/hooks/useSortBy.js @@ -0,0 +1,256 @@ +import { useMemo } from 'react' +import PropTypes from 'prop-types' + +import { addActions, actions } from '../actions' +import { defaultState } from './useTableState' +import { + mergeProps, + applyPropHooks, + getFirstDefined, + defaultOrderByFn, + defaultSortByFn +} from '../utils' + +defaultState.sortBy = [] + +addActions({ + sortByChange: '__sortByChange__' +}) + +const propTypes = { + // General + columns: PropTypes.arrayOf( + PropTypes.shape({ + sortByFn: PropTypes.func, + efaultSortDesc: PropTypes.bool + }) + ), + sortByFn: PropTypes.func, + manualSorting: PropTypes.bool, + disableSorting: PropTypes.bool, + defaultSortDesc: PropTypes.bool, + disableMultiSort: PropTypes.bool +} + +export const useSortBy = props => { + PropTypes.checkPropTypes(propTypes, props, 'property', 'useSortBy') + + const { + debug, + rows, + columns, + orderByFn = defaultOrderByFn, + sortByFn = defaultSortByFn, + manualSorting, + disableSorting, + defaultSortDesc, + hooks, + state: [{ sortBy }, setState] + } = props + + columns.forEach(column => { + const { accessor, canSortBy } = column + column.canSortBy = accessor + ? getFirstDefined( + canSortBy, + disableSorting === true ? false : undefined, + true + ) + : false + }) + + // Updates sorting based on a columnID, desc flag and multi flag + const toggleSortByID = (columnID, desc, multi) => { + return setState(old => { + const { sortBy } = old + + // Find the column for this columnID + const column = columns.find(d => d.id === columnID) + const resolvedDefaultSortDesc = getFirstDefined( + column.defaultSortDesc, + defaultSortDesc + ) + + // Find any existing sortBy for this column + const existingSortBy = sortBy.find(d => d.id === columnID) + const hasDescDefined = typeof desc !== 'undefined' && desc !== null + + let newSortBy = [] + + // What should we do with this filter? + let action + + if (!multi) { + if (sortBy.length <= 1 && existingSortBy) { + if (existingSortBy.desc) { + action = 'remove' + } else { + action = 'toggle' + } + } else { + action = 'replace' + } + } else { + if (!existingSortBy) { + action = 'add' + } else { + if (hasDescDefined) { + action = 'set' + } else { + action = 'toggle' + } + } + } + + if (action === 'replace') { + newSortBy = [ + { + id: columnID, + desc: hasDescDefined ? desc : resolvedDefaultSortDesc + } + ] + } else if (action === 'add') { + newSortBy = [ + ...sortBy, + { + id: columnID, + desc: hasDescDefined ? desc : resolvedDefaultSortDesc + } + ] + } else if (action === 'set') { + newSortBy = sortBy.map(d => { + if (d.id === columnID) { + return { + ...d, + desc + } + } + return d + }) + } else if (action === 'toggle') { + newSortBy = sortBy.map(d => { + if (d.id === columnID) { + return { + ...d, + desc: !existingSortBy.desc + } + } + return d + }) + } else if (action === 'remove') { + newSortBy = [] + } + + return { + ...old, + sortBy: newSortBy + } + }, actions.sortByChange) + } + + hooks.columns.push(columns => { + columns.forEach(column => { + if (column.canSortBy) { + column.toggleSortBy = (desc, multi) => + toggleSortByID(column.id, desc, multi) + } + }) + return columns + }) + + hooks.getSortByToggleProps = [] + + const addSortByToggleProps = (columns, api) => { + columns.forEach(column => { + const { canSortBy } = column + column.getSortByToggleProps = props => { + return mergeProps( + { + onClick: canSortBy + ? e => { + e.persist() + column.toggleSortBy( + undefined, + !api.disableMultiSort && e.shiftKey + ) + } + : undefined, + style: { + cursor: canSortBy ? 'pointer' : undefined + }, + title: 'Toggle SortBy' + }, + applyPropHooks(api.hooks.getSortByToggleProps, column, api), + props + ) + } + }) + return columns + } + + hooks.columns.push(addSortByToggleProps) + hooks.headers.push(addSortByToggleProps) + + // Mutate columns to reflect sorting state + columns.forEach(column => { + const { id } = column + column.sorted = sortBy.find(d => d.id === id) + column.sortedIndex = sortBy.findIndex(d => d.id === id) + column.sortedDesc = column.sorted ? column.sorted.desc : undefined + }) + + const sortedRows = useMemo(() => { + if (manualSorting || !sortBy.length) { + return rows + } + if (debug) console.info('getSortedRows') + + const sortMethodsByColumnID = {} + + columns + .filter(col => col.sortMethod) + .forEach(col => { + sortMethodsByColumnID[col.id] = col.sortMethod + }) + + const sortData = rows => { + // Use the orderByFn to compose multiple sortBy's together. + // This will also perform a stable sorting using the row index + // if needed. + const sortedData = orderByFn( + rows, + sortBy.map(sort => { + // Support custom sorting methods for each column + const columnSortBy = sortMethodsByColumnID[sort.id] + + // Return the correct sortFn + return (a, b) => + (columnSortBy || sortByFn)( + a.values[sort.id], + b.values[sort.id], + sort.desc + ) + }), + // Map the directions + sortBy.map(d => !d.desc) + ) + + // TODO: this should be optimized. Not good to loop again + sortedData.forEach(row => { + if (!row.subRows) { + return + } + row.subRows = sortData(row.subRows) + }) + + return sortedData + } + + return sortData(rows) + }, [rows, columns, sortBy, manualSorting]) + + return { + ...props, + rows: sortedRows + } +} diff --git a/src/hooks/useSortedRows.js b/src/hooks/useSortedRows.js deleted file mode 100755 index 9dcf1fd..0000000 --- a/src/hooks/useSortedRows.js +++ /dev/null @@ -1,60 +0,0 @@ -import { useMemo } from 'react' - -export default function useSortedRows ({ - debug, - sortBy, - rows, - columns, - orderByFn, - sortByFn, - manualSorting, -}) { - return useMemo( - () => { - if (manualSorting || !sortBy.length) { - return rows - } - if (debug) console.info('getSortedRows') - - const sortMethodsByColumnID = {} - - columns - .filter(col => col.sortMethod) - .forEach(col => { - sortMethodsByColumnID[col.id] = col.sortMethod - }) - - const sortData = rows => { - // Use the orderByFn to compose multiple sortBy's together. - // This will also perform a stable sorting using the row index - // if needed. - const sortedData = orderByFn( - rows, - sortBy.map(sort => { - // Support custom sorting methods for each column - const columnSortBy = sortMethodsByColumnID[sort.id] - - // Return the correct sortFn - return (a, b) => - (columnSortBy || sortByFn)(a.values[sort.id], b.values[sort.id], sort.desc) - }), - // Map the directions - sortBy.map(d => !d.desc) - ) - - // TODO: this should be optimized. Not good to loop again - sortedData.forEach(row => { - if (!row.subRows) { - return - } - row.subRows = sortData(row.subRows) - }) - - return sortedData - } - - return sortData(rows) - }, - [rows, columns, sortBy, manualSorting] - ) -} diff --git a/src/hooks/useTable.js b/src/hooks/useTable.js new file mode 100755 index 0000000..52dae3c --- /dev/null +++ b/src/hooks/useTable.js @@ -0,0 +1,192 @@ +import PropTypes from 'prop-types' +// +import { flexRender, applyHooks, applyPropHooks, mergeProps } from '../utils' + +import { useTableState } from './useTableState' + +const renderErr = + 'You must specify a render "type". This could be "Header", "Filter", or any other custom renderers you have set on your column.' + +const propTypes = { + // General + data: PropTypes.array.isRequired, + debug: PropTypes.bool +} + +export const useTable = (props, ...plugins) => { + // Validate props + PropTypes.checkPropTypes(propTypes, props, 'property', 'useTable') + + // Destructure props + let { data = [], state: userState, debug } = props + + debug = process.env.NODE_ENV === 'production' ? false : debug + + // Always provide a default state + const defaultState = useTableState() + + // But use the users state if provided + const state = userState || defaultState + + // These are hooks that plugins can use right before render + const hooks = { + beforeRender: [], + columns: [], + headers: [], + headerGroups: [], + rows: [], + row: [], + renderableRows: [], + getTableProps: [], + getRowProps: [], + getHeaderRowProps: [], + getHeaderProps: [], + getCellProps: [] + } + + // The initial api + let api = { + ...props, + data, + state, + hooks + } + + if (debug) console.time('hooks') + // Loop through plugins to build the api out + api = plugins.filter(Boolean).reduce((prev, next) => next(prev), api) + if (debug) console.timeEnd('hooks') + + // Run the beforeRender hook + if (debug) console.time('hooks.beforeRender') + applyHooks(api.hooks.beforeRender, undefined, api) + if (debug) console.timeEnd('hooks.beforeRender') + + if (debug) console.time('hooks.columns') + api.columns = applyHooks(api.hooks.columns, api.columns, api) + if (debug) console.timeEnd('hooks.columns') + + if (debug) console.time('hooks.headers') + api.headers = applyHooks(api.hooks.headers, api.headers, api) + if (debug) console.timeEnd('hooks.headers') + ;[...api.columns, ...api.headers].forEach(column => { + // Give columns/headers rendering power + column.render = (type, userProps = {}) => { + if (!type) { + throw new Error(renderErr) + } + return flexRender(column[type], { + ...api, + ...column, + ...userProps + }) + } + + // Give columns/headers getHeaderProps + column.getHeaderProps = props => + mergeProps( + { + key: ['header', column.id].join('_') + }, + applyPropHooks(api.hooks.getHeaderProps, column, api), + props + ) + }) + + if (debug) console.time('hooks.headerGroups') + api.headerGroups = applyHooks( + api.hooks.headerGroups, + api.headerGroups, + api + ).filter((headerGroup, i) => { + // Filter out any headers and headerGroups that don't have visible columns + headerGroup.headers = headerGroup.headers.filter(header => { + const recurse = columns => + columns.filter(column => { + if (column.columns) { + return recurse(column.columns) + } + return column.visible + }).length + if (header.columns) { + return recurse(header.columns) + } + return header.visible + }) + + // Give headerGroups getRowProps + if (headerGroup.headers.length) { + headerGroup.getRowProps = (props = {}) => + mergeProps( + { + key: [`header${i}`].join('_') + }, + applyPropHooks(api.hooks.getHeaderRowProps, headerGroup, api), + props + ) + return true + } + + return false + }) + if (debug) console.timeEnd('hooks.headerGroups') + + // Run the rows (this could be a dangerous hook with a ton of data) + if (debug) console.time('hooks.rows') + api.rows = applyHooks(api.hooks.rows, api.rows, api) + if (debug) console.timeEnd('hooks.rows') + + // This function is absolutely necessary and MUST be called on + // any rows the user wishes to be displayed. + api.prepareRow = row => { + const { index } = row + row.getRowProps = props => + mergeProps( + { key: ['row', index].join('_') }, + applyHooks(api.hooks.getRowProps, row, api), + props + ) + + row.cells = row.cells.filter(cell => cell.column.visible) + + row.cells.forEach(cell => { + if (!cell) { + return + } + + const { column } = cell + + cell.getCellProps = props => { + const columnPathStr = [index, column.id].join('_') + return mergeProps( + { + key: ['cell', columnPathStr].join('_') + }, + applyPropHooks(api.hooks.getCellProps, cell, api), + props + ) + } + + cell.render = (type, userProps = {}) => { + if (!type) { + throw new Error( + 'You must specify a render "type". This could be "Cell", "Header", "Filter", "Aggregated" or any other custom renderers you have set on your column.' + ) + } + return flexRender(column[type], { + ...api, + ...cell, + ...userProps + }) + } + }) + } + + api.getTableProps = userProps => + mergeProps(applyPropHooks(api.hooks.getTableProps, api), userProps) + + api.getRowProps = userProps => + mergeProps(applyPropHooks(api.hooks.getRowProps, api), userProps) + + return api +} diff --git a/src/hooks/useTableMethods.js b/src/hooks/useTableMethods.js deleted file mode 100755 index 6a992c8..0000000 --- a/src/hooks/useTableMethods.js +++ /dev/null @@ -1,156 +0,0 @@ -import { getBy, setBy, getFirstDefined } from '../utils' - -export default function useTableMethods ({ - debug, - setState, - actions, - groupBy, - columns, - defaultSortDesc, - filters, -}) { - const toggleExpandedByPath = (path, set) => - setState(old => { - const { expanded } = old - const existing = getBy(expanded, path) - set = getFirstDefined(set, !existing) - return { - ...old, - expanded: setBy(expanded, path, set), - } - }, actions.toggleExpanded) - - // Updates sorting based on a columnID, desc flag and multi flag - const toggleSortByID = (columnID, desc, multi) => - setState(old => { - const { sortBy } = old - - // Find the column for this columnID - const column = columns.find(d => d.id === columnID) - const resolvedDefaultSortDesc = getFirstDefined(column.defaultSortDesc, defaultSortDesc) - - // Find any existing sortBy for this column - const existingSortBy = sortBy.find(d => d.id === columnID) - const hasDescDefined = typeof desc !== 'undefined' && desc !== null - - let newSortBy = [] - - // What should we do with this filter? - let action - - if (!multi) { - if (sortBy.length <= 1 && existingSortBy) { - if (existingSortBy.desc) { - action = 'remove' - } else { - action = 'toggle' - } - } else { - action = 'replace' - } - } else if (!existingSortBy) { - action = 'add' - } else if (hasDescDefined) { - action = 'set' - } else { - action = 'toggle' - } - - if (action === 'replace') { - newSortBy = [ - { - id: columnID, - desc: hasDescDefined ? desc : resolvedDefaultSortDesc, - }, - ] - } else if (action === 'add') { - newSortBy = [ - ...sortBy, - { - id: columnID, - desc: hasDescDefined ? desc : resolvedDefaultSortDesc, - }, - ] - } else if (action === 'set') { - newSortBy = sortBy.map(d => { - if (d.id === columnID) { - return { - ...d, - desc, - } - } - return d - }) - } else if (action === 'toggle') { - newSortBy = sortBy.map(d => { - if (d.id === columnID) { - return { - ...d, - desc: !existingSortBy.desc, - } - } - return d - }) - } else if (action === 'remove') { - newSortBy = [] - } - - return { - ...old, - sortBy: newSortBy, - } - }, actions.sortByChange) - - const toggleGroupBy = (id, toggle) => - setState(old => { - const resolvedToggle = typeof set !== 'undefined' ? toggle : !groupBy.includes(id) - if (resolvedToggle) { - return { - ...old, - groupBy: [...groupBy, id], - } - } - return { - ...old, - groupBy: groupBy.filter(d => d !== id), - } - }, actions.toggleGroupBy) - - const setFilter = (id, val) => - setState(old => { - if (typeof val === 'undefined') { - const { [id]: prev, ...rest } = filters - return { - ...old, - filters: { - ...rest, - }, - } - } - - return { - ...old, - filters: { - ...filters, - [id]: val, - }, - } - }, actions.setFilter) - - const setAllFilters = filters => - setState( - old => ({ - ...old, - filters, - }), - actions.setAllFilters - ) - - return { - toggleExpandedByPath, - toggleSortByID, - toggleGroupBy, - setFilter, - setAllFilters, - } -} diff --git a/src/hooks/useTableState.js b/src/hooks/useTableState.js new file mode 100755 index 0000000..eb24225 --- /dev/null +++ b/src/hooks/useTableState.js @@ -0,0 +1,34 @@ +import { useState, useMemo } from 'react' + +export const defaultState = {} + +const defaultReducer = (old, newState) => newState + +export const useTableState = ( + initialState = {}, + overrides = {}, + { reducer = defaultReducer, useState: userUseState = useState } = {} +) => { + let [state, setState] = userUseState({ + ...defaultState, + ...initialState + }) + + const overriddenState = useMemo(() => { + const newState = { + ...state + } + Object.keys(overrides).forEach(key => { + newState[key] = overrides[key] + }) + return newState + }, [state, ...Object.values(overrides)]) + + const reducedSetState = (updater, type) => + setState(old => { + const newState = updater(old) + return reducer(old, newState, type) + }) + + return [overriddenState, reducedSetState] +} diff --git a/src/hooks/useTokenPagination.js b/src/hooks/useTokenPagination.js new file mode 100644 index 0000000..e1d40ac --- /dev/null +++ b/src/hooks/useTokenPagination.js @@ -0,0 +1,51 @@ +import { useState } from 'react' + +// Token pagination behaves a bit differently from +// index based pagination. This hook aids in that process. + +export const useTokenPagination = () => { + const [pageToken, setPageToken] = useState() + const [nextPageToken, setNextPageToken] = useState() + const [previousPageTokens, setPreviousPageTokens] = useState([]) + const [pageIndex, setPageIndex] = useState(0) + + // Since we're using pagination tokens intead of index, we need + // to be a bit clever with page-like navigation here. + const nextPage = () => { + setPageIndex(old => old + 1) + setPreviousPageTokens(old => [...old, pageToken]) + setPageToken(nextPageToken) + } + + const previousPage = () => { + setPageIndex(old => old - 1) + setPreviousPageTokens(old => + [...old] + .reverse() + .slice(1) + .reverse() + ) + setPageToken(previousPageTokens[previousPageTokens.length - 1]) + } + + const resetPagination = () => { + setPageToken(undefined) + setPageIndex(0) + setNextPageToken(undefined) + setPreviousPageTokens([]) + } + + const canPreviousPage = previousPageTokens.length + const canNextPage = nextPageToken + + return { + setNextPageToken, + pageToken, + pageIndex, + previousPage, + nextPage, + canPreviousPage, + canNextPage, + resetPagination + } +} diff --git a/src/index.js b/src/index.js index ec33283..947494a 100755 --- a/src/index.js +++ b/src/index.js @@ -1,11 +1,12 @@ -import useReactTable, { actions as mainActions } from './useReactTable' -import usePagination, { actions as paginationActions } from './usePagination' -import useFlexLayout, { actions as flexLayoutActions } from './useFlexLayout' - -const actions = { - ...mainActions, - ...paginationActions, - ...flexLayoutActions, -} - -export { useReactTable, usePagination, useFlexLayout, actions } +export { useTable } from './hooks/useTable' +export { useColumns } from './hooks/useColumns' +export { useRows } from './hooks/useRows' +export { useExpanded } from './hooks/useExpanded' +export { useFilters } from './hooks/useFilters' +export { useGroupBy } from './hooks/useGroupBy' +export { useSortBy } from './hooks/useSortBy' +export { usePagination } from './hooks/usePagination' +export { useTableState } from './hooks/useTableState' +export { useFlexLayout } from './hooks/useFlexLayout' +export { useTokenPagination } from './hooks/useTokenPagination' +export { actions } from './actions' diff --git a/src/usePagination.js b/src/usePagination.js deleted file mode 100755 index 5712b76..0000000 --- a/src/usePagination.js +++ /dev/null @@ -1,155 +0,0 @@ -import { useMemo, useState, useLayoutEffect } from 'react' -import PropTypes from 'prop-types' - -import { warnUnknownProps } from './utils' -import useControlledState from './hooks/useControlledState' - -const propTypes = { - defaultPageSize: PropTypes.number, - defaultPageIndex: PropTypes.number, - pageSize: PropTypes.number, - pages: PropTypes.number, - pageIndex: PropTypes.number, - onStateChange: PropTypes.func, - stateReducer: PropTypes.func, - subRowsKey: PropTypes.string, - debug: PropTypes.bool, -} - -export const actions = { - pageChange: '__pageChange__', -} - -export default function usePagination ( - { - debug: parentDebug, rows, prepareRows, groupedRows, sortedRows, filteredRows, - }, - props = {} -) { - // Validate props - PropTypes.checkPropTypes(propTypes, props, 'property', 'usePagination') - - // Destructure props - const { - defaultPageSize = 10, - defaultPageIndex = 0, - pageSize: userPageSize, - pageIndex: userPageIndex, - state: userState, - manualPagination, - pageCount: userPageCount, - pageOptions: userPageOptions, - debug = parentDebug, - ...rest - } = props - - warnUnknownProps(rest) - - const defaultState = useState({}) - const localState = userState || defaultState - - // Build the controllable state - const [{ pageSize, pageIndex }, setState] = useControlledState( - localState, - { - pageSize: defaultPageSize, - pageIndex: defaultPageIndex, - }, - { - pageSize: userPageSize, - pageIndex: userPageIndex, - } - ) - - useLayoutEffect( - () => { - if (manualPagination) { - return - } - setState( - old => ({ - ...old, - pageIndex: 0, - }), - actions.pageChange - ) - }, - [groupedRows, sortedRows, filteredRows] - ) - - const { pages, pageCount } = useMemo( - () => { - if (manualPagination) { - return { - pages: [rows], - pageCount: userPageCount, - } - } - if (debug) console.info('getPages') - - // Create a new pages with the first page ready to go. - const pages = rows.length ? [] : [[]] - - // Start the pageIndex and currentPage cursors - let cursor = 0 - while (cursor < rows.length) { - const end = cursor + pageSize - pages.push(rows.slice(cursor, end)) - cursor = end - } - - const pageCount = pages.length - - return { - pages, - pageCount, - pageOptions, - } - }, - [rows, pageSize, userPageCount] - ) - - const pageOptions = [...new Array(pageCount)].map((d, i) => i) - const page = manualPagination ? rows : pages[pageIndex] || [] - const canPreviousPage = pageIndex > 0 - const canNextPage = pageIndex < pageCount - 1 - - const gotoPage = pageIndex => { - if (debug) console.info('gotoPage') - return setState(old => { - if (pageIndex < 0 || pageIndex > pageCount - 1) { - return old - } - return { - ...old, - pageIndex, - } - }, actions.pageChange) - } - - const previousPage = () => gotoPage(pageIndex - 1) - - const nextPage = () => gotoPage(pageIndex + 1) - - const setPageSize = pageSize => { - setState(old => ({ - ...old, - pageSize, - })) - } - - prepareRows(page) - - return { - pages, - pageIndex, - pageOptions, - page, - canPreviousPage, - canNextPage, - gotoPage, - previousPage, - nextPage, - setPageSize, - } -} diff --git a/src/useReactTable.js b/src/useReactTable.js deleted file mode 100755 index 56911a0..0000000 --- a/src/useReactTable.js +++ /dev/null @@ -1,470 +0,0 @@ -import { useState, useMemo, useRef } from 'react' -import PropTypes from 'prop-types' -// -import { - defaultOrderByFn, - defaultSortByFn, - defaultGroupByFn, - defaultFilterFn, - flexRender, - findExpandedDepth, - applyHooks, - mergeProps, - warnUnknownProps, -} from './utils' - -// Internal Hooks -import useControlledState from './hooks/useControlledState' -import useColumns from './hooks/useColumns' -import useTableMethods from './hooks/useTableMethods' -import useAccessedRows from './hooks/useAccessedRows' -import useGroupedRows from './hooks/useGroupedRows' -import useFilteredRows from './hooks/useFilteredRows' -import useSortedRows from './hooks/useSortedRows' -import useExpandedRows from './hooks/useExpandedRows' - -const defaultFlex = 1 -const renderErr = - 'You must specify a render "type". This could be "Header", "Filter", or any other custom renderers you have set on your column.' - -export const actions = { - sortByChange: '__sortByChange', - updateAutoWidth: '__updateAutoWidth__', - toggleGroupBy: '__toggleGroupBy__', - toggleExpanded: '__toggleExpanded__', - setExpanded: '__setExpanded__', - setFilter: '__setFilter__', - setAllFilters: '__setAllFilters__', -} - -const propTypes = { - // General - data: PropTypes.any, - columns: PropTypes.arrayOf( - PropTypes.shape({ - aggregate: PropTypes.func, - filterFn: PropTypes.func, - filterAll: PropTypes.bool, - sortByFn: PropTypes.func, - resolvedDefaultSortDesc: PropTypes.bool, - canSortBy: PropTypes.bool, - canGroupBy: PropTypes.bool, - Cell: PropTypes.any, - Header: PropTypes.any, - Filter: PropTypes.any, - }) - ), - defaultFilters: PropTypes.array, - defaultSortBy: PropTypes.array, - defaultGroupBy: PropTypes.array, - - groupBy: PropTypes.array, - filters: PropTypes.array, - sortBy: PropTypes.array, - - filterFn: PropTypes.func, - sortByFn: PropTypes.func, - orderByFn: PropTypes.func, - groupByFn: PropTypes.func, - - manualGrouping: PropTypes.bool, - manualFilters: PropTypes.bool, - manualSorting: PropTypes.bool, - - disableGrouping: PropTypes.bool, - disableFilters: PropTypes.bool, - disableSorting: PropTypes.bool, - - defaultSortDesc: PropTypes.bool, - disableMultiSort: PropTypes.bool, - subRowsKey: PropTypes.string, - expandedKey: PropTypes.string, - userAggregations: PropTypes.object, - - debug: PropTypes.bool, -} - -export default function useReactTable (props) { - // Validate props - PropTypes.checkPropTypes(propTypes, props, 'property', 'useReactTable') - - // Destructure props - const { - data = [], - state: userState, - columns: userColumns, - sortBy: userSortBy, - groupBy: userGroupBy, - filters: userFilters, - expanded: userExpanded, - defaultSortBy = [], - defaultGroupBy = [], - defaultFilters = {}, - defaultExpanded = {}, - manualGrouping, - manualFilters, - manualSorting, - disableSorting, - disableGrouping, - disableFilters, - defaultSortDesc, - disableMultiSort, - subRowsKey = 'subRows', - expandedKey = 'expanded', - filterFn = defaultFilterFn, - sortByFn = defaultSortByFn, - orderByFn = defaultOrderByFn, - groupByFn = defaultGroupByFn, - userAggregations = {}, - debug, - ...rest - } = props - - warnUnknownProps(rest) - - const defaultState = useState({}) - - const localState = userState || defaultState - - // Build the controllable state - const [{ - sortBy, groupBy, filters, expanded, - }, setState] = useControlledState( - localState, - { - sortBy: defaultSortBy, - groupBy: defaultGroupBy, - filters: defaultFilters, - expanded: defaultExpanded, - }, - { - sortBy: userSortBy, - groupBy: userGroupBy, - filters: userFilters, - expanded: userExpanded, - } - ) - - const expandedDepth = findExpandedDepth(expanded) - const renderedCellInfoRef = useRef({}) - - // Build the base column - let { columns, headerGroups, headers } = useColumns({ - debug, - groupBy, - userColumns, - defaultFlex, - renderedCellInfoRef, - disableSorting, - disableGrouping, - disableFilters, - }) - - // Use data and columns as memoization - const accessedRows = useAccessedRows({ - debug, - data, - columns, - subRowsKey, - }) - - // Use rows and groupBy as memoization for row grouping - const groupedRows = useGroupedRows({ - debug, - rows: accessedRows, - groupBy, - columns, - groupByFn, - manualGrouping, - userAggregations, - }) - - const filteredRows = useFilteredRows({ - debug, - rows: groupedRows, - filters, - columns, - filterFn, - manualFilters, - }) - - const sortedRows = useSortedRows({ - debug, - rows: filteredRows, - sortBy, - columns, - orderByFn, - sortByFn, - manualSorting, - }) - - const rows = useExpandedRows({ - debug, - rows: sortedRows, - expanded, - expandedKey, - columns, - groupBy, - setState, - actions, - }) - - // Mutate columns to reflect sorting state - columns.forEach(column => { - const { id } = column - column.sorted = sortBy.find(d => d.id === id) - column.sortedIndex = sortBy.findIndex(d => d.id === id) - column.sortedDesc = column.sorted ? column.sorted.desc : undefined - column.filterVal = filters[id] - }) - - // Public API - - const { - toggleExpandedByPath, - toggleSortByID, - toggleGroupBy, - setFilter, - setAllFilters, - } = useTableMethods({ - debug, - setState, - actions, - groupBy, - columns, - defaultSortDesc, - filters, - }) - - const state = { - // State - columns, - expandedDepth, - accessedRows, - groupedRows, - filteredRows, - sortedRows, - rows, - headerGroups, - renderedCellInfoRef, - disableMultiSort, - - // Controllable state - groupBy, - filters, - sortBy, - expanded, - } - - const api = { - // State manager, - ...state, - - // Methods - toggleExpandedByPath, - toggleSortByID, - toggleGroupBy, - setFilter, - setAllFilters, - } - - columns.forEach(column => attachApi(column, api)) - headers.forEach(header => attachApi(header, api)) - - const visibleColumns = columns.filter(column => { - column.visible = typeof column.show === 'function' ? column.show(state) : !!column.show - return column.visible - }) - - state.visibleColumns = visibleColumns - api.visibleColumns = visibleColumns - - api.hooks = { - getTableProps: [], - getRowProps: [], - getHeaderRowProps: [], - getCellProps: [], - getHeaderProps: [], - getSortByToggleProps: [], - getGroupByToggleProps: [], - } - - api.getTableProps = props => mergeProps( - { - style: { - overflowX: 'auto', - }, - }, - applyHooks(api.hooks.getTableProps), - props - ) - - api.getRowProps = props => mergeProps(applyHooks(api.hooks.getRowProps), props) - - // Filter out hidden header groups or header groups that - // have no visible columns, then add the getRowProps method - headerGroups = useMemo( - () => - headerGroups.filter((headerGroup, i) => { - headerGroup.headers = headerGroup.headers.filter(header => { - const recurse = columns => columns.filter(column => { - if (column.columns) { - return recurse(column.columns) - } - return column.visible - }).length - if (header.columns) { - return recurse(header.columns) - } - return header.visible - }) - - if (headerGroup.headers.length) { - headerGroup.getRowProps = (props = {}) => mergeProps( - { - key: [`header${i}`].join('_'), - }, - applyHooks(api.hooks.getHeaderRowProps, headerGroup), - props - ) - return true - } - - return false - }), - [headerGroups] - ) - - // A function that mutates and prepares page rows with methods - api.prepareRows = rows => { - rows.forEach((row, i) => { - const { path } = row - row.getRowProps = props => mergeProps( - { key: ['row', i].join('_') }, - applyHooks(api.hooks.getRowProps, row), - props - ) - - row.toggleExpanded = set => toggleExpandedByPath(path, set) - - row.cells = row.cells.filter(cell => cell.column.visible); - [row.groupByCell, ...row.cells].forEach(cell => { - if (!cell) { - return - } - - const { column } = cell - - cell.getCellProps = props => { - const columnPathStr = [i, column.id].join('_') - return mergeProps( - { - key: ['cell', columnPathStr].join('_'), - }, - applyHooks(api.hooks.getCellProps, cell), - props - ) - } - - cell.render = (type, userProps = {}) => { - if (!type) { - throw new Error( - 'You must specify a render "type". This could be "Cell", "Header", "Filter", "Aggregated" or any other custom renderers you have set on your column.' - ) - } - return flexRender(column[type], { - ...api, - ...cell, - ...userProps, - }) - } - }) - }) - } - - const makeHook = api => { - api.hook = (hook, ...args) => { - const result = hook(api, ...args) || {} - const newApi = { - ...api, - ...result, - } - makeHook(newApi) - return newApi - } - } - - makeHook(api) - - return api -} - -function attachApi (column, api) { - const { - id, canSortBy, canGroupBy, canFilter, - } = column - const { toggleSortByID, toggleGroupBy, setFilter } = api - - column.render = (type, userProps = {}) => { - if (!type) { - throw new Error(renderErr) - } - return flexRender(column[type], { - ...api, - ...column, - ...userProps, - }) - } - - if (canSortBy) { - column.toggleSortBy = (desc, multi) => toggleSortByID(id, desc, multi) - } - if (canGroupBy) { - column.toggleGroupBy = () => toggleGroupBy(id) - } - if (canFilter) { - column.setFilter = val => setFilter(id, val) - } - - column.getSortByToggleProps = props => mergeProps( - { - onClick: canSortBy - ? e => { - e.persist() - column.toggleSortBy(undefined, !api.disableMultiSort && e.shiftKey) - } - : undefined, - style: { - cursor: canSortBy ? 'pointer' : undefined, - }, - title: 'Toggle SortBy', - }, - applyHooks(api.hooks.getSortByToggleProps, column), - props - ) - - column.getGroupByToggleProps = props => mergeProps( - { - onClick: canGroupBy - ? e => { - e.persist() - column.toggleGroupBy() - } - : undefined, - style: { - cursor: canGroupBy ? 'pointer' : undefined, - }, - title: 'Toggle GroupBy', - }, - applyHooks(api.hooks.getGroupByToggleProps, column), - props - ) - - column.getHeaderProps = props => mergeProps( - { - key: ['header', column.id].join('_'), - }, - applyHooks(api.hooks.getHeaderProps, column), - props - ) -} diff --git a/src/utils.js b/src/utils.js index 0b083b4..c0ea29b 100755 --- a/src/utils.js +++ b/src/utils.js @@ -1,6 +1,6 @@ import React from 'react' -export function getBy (obj, path, def) { +export function getBy(obj, path, def) { if (!path) { return obj } @@ -14,7 +14,7 @@ export function getBy (obj, path, def) { return typeof val !== 'undefined' ? val : def } -export function defaultOrderByFn (arr, funcs, dirs) { +export function defaultOrderByFn(arr, funcs, dirs) { return [...arr].sort((rowA, rowB) => { for (let i = 0; i < funcs.length; i += 1) { const sortFn = funcs[i] @@ -28,7 +28,7 @@ export function defaultOrderByFn (arr, funcs, dirs) { }) } -export function defaultSortByFn (a, b, desc) { +export function defaultSortByFn(a, b, desc) { // force null and undefined to the bottom a = a === null || a === undefined ? '' : a b = b === null || b === undefined ? '' : b @@ -47,7 +47,7 @@ export function defaultSortByFn (a, b, desc) { return 0 } -export function getFirstDefined (...args) { +export function getFirstDefined(...args) { for (let i = 0; i < args.length; i += 1) { if (typeof args[i] !== 'undefined') { return args[i] @@ -55,16 +55,19 @@ export function getFirstDefined (...args) { } } -export function defaultGroupByFn (rows, grouper) { +export function defaultGroupByFn(rows, grouper) { return rows.reduce((prev, row, i) => { - const resKey = typeof grouper === 'function' ? grouper(row.values, i) : row.values[grouper] + const resKey = + typeof grouper === 'function' + ? grouper(row.values, i) + : row.values[grouper] prev[resKey] = Array.isArray(prev[resKey]) ? prev[resKey] : [] prev[resKey].push(row) return prev }, {}) } -export function defaultFilterFn (row, id, value, column) { +export function defaultFilterFn(row, id, value, column) { return row.values[id] !== undefined ? String(row.values[id]) .toLowerCase() @@ -72,59 +75,57 @@ export function defaultFilterFn (row, id, value, column) { : true } -export function setBy (obj = {}, path, value) { +export function setBy(obj = {}, path, value) { const recurse = (obj, depth = 0) => { const key = path[depth] const target = typeof obj[key] !== 'object' ? {} : obj[key] - const subValue = depth === path.length - 1 ? value : recurse(target, depth + 1) + const subValue = + depth === path.length - 1 ? value : recurse(target, depth + 1) return { ...obj, - [key]: subValue, + [key]: subValue } } return recurse(obj) } -export function getElementDimensions (element) { +export function getElementDimensions(element) { const rect = element.getBoundingClientRect() const style = window.getComputedStyle(element) const margins = { left: parseInt(style.marginLeft), - right: parseInt(style.marginRight), + right: parseInt(style.marginRight) } const padding = { left: parseInt(style.paddingLeft), - right: parseInt(style.paddingRight), + right: parseInt(style.paddingRight) } return { left: Math.ceil(rect.left), width: Math.ceil(rect.width), - outerWidth: Math.ceil(rect.width + margins.left + margins.right + padding.left + padding.right), + outerWidth: Math.ceil( + rect.width + margins.left + margins.right + padding.left + padding.right + ), marginLeft: margins.left, marginRight: margins.right, paddingLeft: padding.left, paddingRight: padding.right, - scrollWidth: element.scrollWidth, + scrollWidth: element.scrollWidth } } -export function flexRender (Comp, props) { +export function flexRender(Comp, props) { if (typeof Comp === 'function') { - return Object.getPrototypeOf(Comp).isReactComponent ? : Comp(props) + return Object.getPrototypeOf(Comp).isReactComponent ? ( + + ) : ( + Comp(props) + ) } return Comp } -export function findExpandedDepth (obj, depth = 1) { - return Object.values(obj).reduce((prev, curr) => { - if (typeof curr === 'object') { - return Math.max(prev, findExpandedDepth(curr, depth + 1)) - } - return depth - }, 0) -} - export const mergeProps = (...groups) => { let props = {} groups.forEach(({ style = {}, className, ...rest } = {}) => { @@ -133,15 +134,18 @@ export const mergeProps = (...groups) => { ...rest, style: { ...(props.style || {}), - ...style, + ...style }, - className: [props.className, className].filter(Boolean).join(' '), + className: [props.className, className].filter(Boolean).join(' ') } }) return props } -export const applyHooks = (hooks, ...args) => +export const applyHooks = (hooks, initial, ...args) => + hooks.reduce((prev, next) => next(prev, ...args), initial) + +export const applyPropHooks = (hooks, ...args) => hooks.reduce((prev, next) => mergeProps(prev, next(...args)), {}) export const warnUnknownProps = props => { @@ -154,11 +158,11 @@ ${JSON.stringify(props, null, 2)}` } } -export function sum (arr) { +export function sum(arr) { return arr.reduce((prev, curr) => prev + curr, 0) } -function makePathArray (obj) { +function makePathArray(obj) { return flattenDeep(obj) .join('.') .replace(/\[/g, '.') @@ -166,7 +170,7 @@ function makePathArray (obj) { .split('.') } -function flattenDeep (arr, newArr = []) { +function flattenDeep(arr, newArr = []) { if (!Array.isArray(arr)) { newArr.push(arr) } else { diff --git a/yarn.lock b/yarn.lock index 05ebcf0..d68aeaa 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,135 +2,854 @@ # yarn lockfile v1 -"@babel/code-frame@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.44.tgz#2a02643368de80916162be70865c97774f3adbd9" +"@babel/code-frame@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" + integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== dependencies: - "@babel/highlight" "7.0.0-beta.44" + "@babel/highlight" "^7.0.0" -"@babel/generator@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0-beta.44.tgz#c7e67b9b5284afcf69b309b50d7d37f3e5033d42" +"@babel/core@^7.1.6": + version "7.2.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.2.2.tgz#07adba6dde27bb5ad8d8672f15fde3e08184a687" + integrity sha512-59vB0RWt09cAct5EIe58+NzGP4TFSD3Bz//2/ELy3ZeTeKF6VTD1AXlH8BGGbCX0PuobZBsIzO7IAI9PH67eKw== dependencies: - "@babel/types" "7.0.0-beta.44" + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.2.2" + "@babel/helpers" "^7.2.0" + "@babel/parser" "^7.2.2" + "@babel/template" "^7.2.2" + "@babel/traverse" "^7.2.2" + "@babel/types" "^7.2.2" + convert-source-map "^1.1.0" + debug "^4.1.0" + json5 "^2.1.0" + lodash "^4.17.10" + resolve "^1.3.2" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.2.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.3.2.tgz#fff31a7b2f2f3dad23ef8e01be45b0d5c2fc0132" + integrity sha512-f3QCuPppXxtZOEm5GWPra/uYUjmNQlu9pbAD8D/9jze4pTY83rTtB1igTBSwvkeNlC5gR24zFFkz+2WHLFQhqQ== + dependencies: + "@babel/types" "^7.3.2" jsesc "^2.5.1" - lodash "^4.2.0" + lodash "^4.17.10" source-map "^0.5.0" trim-right "^1.0.1" -"@babel/helper-function-name@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.44.tgz#e18552aaae2231100a6e485e03854bc3532d44dd" +"@babel/helper-annotate-as-pure@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz#323d39dd0b50e10c7c06ca7d7638e6864d8c5c32" + integrity sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q== dependencies: - "@babel/helper-get-function-arity" "7.0.0-beta.44" - "@babel/template" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" + "@babel/types" "^7.0.0" -"@babel/helper-get-function-arity@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.44.tgz#d03ca6dd2b9f7b0b1e6b32c56c72836140db3a15" +"@babel/helper-builder-binary-assignment-operator-visitor@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz#6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f" + integrity sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w== dependencies: - "@babel/types" "7.0.0-beta.44" + "@babel/helper-explode-assignable-expression" "^7.1.0" + "@babel/types" "^7.0.0" -"@babel/helper-split-export-declaration@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.44.tgz#c0b351735e0fbcb3822c8ad8db4e583b05ebd9dc" +"@babel/helper-builder-react-jsx@^7.3.0": + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.3.0.tgz#a1ac95a5d2b3e88ae5e54846bf462eeb81b318a4" + integrity sha512-MjA9KgwCuPEkQd9ncSXvSyJ5y+j2sICHyrI0M3L+6fnS4wMSNDc1ARXsbTfbb2cXHn17VisSnU/sHFTCxVxSMw== dependencies: - "@babel/types" "7.0.0-beta.44" + "@babel/types" "^7.3.0" + esutils "^2.0.0" -"@babel/highlight@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.44.tgz#18c94ce543916a80553edcdcf681890b200747d5" +"@babel/helper-call-delegate@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz#6a957f105f37755e8645343d3038a22e1449cc4a" + integrity sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ== + dependencies: + "@babel/helper-hoist-variables" "^7.0.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-create-class-features-plugin@^7.3.0": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.3.2.tgz#ba1685603eb1c9f2f51c9106d5180135c163fe73" + integrity sha512-tdW8+V8ceh2US4GsYdNVNoohq5uVwOf9k6krjwW4E1lINcHgttnWcNqgdoessn12dAy8QkbezlbQh2nXISNY+A== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.2.3" + +"@babel/helper-define-map@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.1.0.tgz#3b74caec329b3c80c116290887c0dd9ae468c20c" + integrity sha512-yPPcW8dc3gZLN+U1mhYV91QU3n5uTbx7DUdf8NnPbjS0RMwBuHi9Xt2MUgppmNz7CJxTBWsGczTiEp1CSOTPRg== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/types" "^7.0.0" + lodash "^4.17.10" + +"@babel/helper-explode-assignable-expression@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz#537fa13f6f1674df745b0c00ec8fe4e99681c8f6" + integrity sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA== + dependencies: + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-function-name@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" + integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== + dependencies: + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-get-function-arity@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" + integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-hoist-variables@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.0.0.tgz#46adc4c5e758645ae7a45deb92bab0918c23bb88" + integrity sha512-Ggv5sldXUeSKsuzLkddtyhyHe2YantsxWKNi7A+7LeD12ExRDWTRk29JCXpaHPAbMaIPZSil7n+lq78WY2VY7w== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-member-expression-to-functions@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz#8cd14b0a0df7ff00f009e7d7a436945f47c7a16f" + integrity sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-module-imports@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz#96081b7111e486da4d2cd971ad1a4fe216cc2e3d" + integrity sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-module-transforms@^7.1.0": + version "7.2.2" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.2.2.tgz#ab2f8e8d231409f8370c883d20c335190284b963" + integrity sha512-YRD7I6Wsv+IHuTPkAmAS4HhY0dkPobgLftHp0cRGZSdrRvmZY8rFvae/GVu3bD00qscuvK3WPHB3YdNpBXUqrA== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/template" "^7.2.2" + "@babel/types" "^7.2.2" + lodash "^4.17.10" + +"@babel/helper-optimise-call-expression@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz#a2920c5702b073c15de51106200aa8cad20497d5" + integrity sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-plugin-utils@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz#bbb3fbee98661c569034237cc03967ba99b4f250" + integrity sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA== + +"@babel/helper-regex@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.0.0.tgz#2c1718923b57f9bbe64705ffe5640ac64d9bdb27" + integrity sha512-TR0/N0NDCcUIUEbqV6dCO+LptmmSQFQ7q70lfcEB4URsjD0E1HzicrwUH+ap6BAQ2jhCX9Q4UqZy4wilujWlkg== + dependencies: + lodash "^4.17.10" + +"@babel/helper-remap-async-to-generator@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz#361d80821b6f38da75bd3f0785ece20a88c5fe7f" + integrity sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-wrap-function" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-replace-supers@^7.1.0", "@babel/helper-replace-supers@^7.2.3": + version "7.2.3" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.2.3.tgz#19970020cf22677d62b3a689561dbd9644d8c5e5" + integrity sha512-GyieIznGUfPXPWu0yLS6U55Mz67AZD9cUk0BfirOWlPrXlBcan9Gz+vHGz+cPfuoweZSnPzPIm67VtQM0OWZbA== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.0.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/traverse" "^7.2.3" + "@babel/types" "^7.0.0" + +"@babel/helper-simple-access@^7.1.0": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz#65eeb954c8c245beaa4e859da6188f39d71e585c" + integrity sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w== + dependencies: + "@babel/template" "^7.1.0" + "@babel/types" "^7.0.0" + +"@babel/helper-split-export-declaration@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz#3aae285c0311c2ab095d997b8c9a94cad547d813" + integrity sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag== + dependencies: + "@babel/types" "^7.0.0" + +"@babel/helper-wrap-function@^7.1.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz#c4e0012445769e2815b55296ead43a958549f6fa" + integrity sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/template" "^7.1.0" + "@babel/traverse" "^7.1.0" + "@babel/types" "^7.2.0" + +"@babel/helpers@^7.2.0": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.3.1.tgz#949eec9ea4b45d3210feb7dc1c22db664c9e44b9" + integrity sha512-Q82R3jKsVpUV99mgX50gOPCWwco9Ec5Iln/8Vyu4osNIOQgSrd9RFrQeUvmvddFNoLwMyOUWU+5ckioEKpDoGA== + dependencies: + "@babel/template" "^7.1.2" + "@babel/traverse" "^7.1.5" + "@babel/types" "^7.3.0" + +"@babel/highlight@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" + integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== dependencies: chalk "^2.0.0" esutils "^2.0.2" - js-tokens "^3.0.0" + js-tokens "^4.0.0" -"@babel/template@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.44.tgz#f8832f4fdcee5d59bf515e595fc5106c529b394f" - dependencies: - "@babel/code-frame" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" - babylon "7.0.0-beta.44" - lodash "^4.2.0" +"@babel/parser@^7.0.0", "@babel/parser@^7.2.2", "@babel/parser@^7.2.3": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.3.2.tgz#95cdeddfc3992a6ca2a1315191c1679ca32c55cd" + integrity sha512-QzNUC2RO1gadg+fs21fi0Uu0OuGNzRKEmgCxoLNzbCdoprLwjfmZwzUrpUNfJPaVRwBpDY47A17yYEGWyRelnQ== -"@babel/traverse@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.44.tgz#a970a2c45477ad18017e2e465a0606feee0d2966" +"@babel/plugin-proposal-async-generator-functions@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz#b289b306669dce4ad20b0252889a15768c9d417e" + integrity sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ== dependencies: - "@babel/code-frame" "7.0.0-beta.44" - "@babel/generator" "7.0.0-beta.44" - "@babel/helper-function-name" "7.0.0-beta.44" - "@babel/helper-split-export-declaration" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" - babylon "7.0.0-beta.44" - debug "^3.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.1.0" + "@babel/plugin-syntax-async-generators" "^7.2.0" + +"@babel/plugin-proposal-class-properties@^7.2.1": + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.3.0.tgz#272636bc0fa19a0bc46e601ec78136a173ea36cd" + integrity sha512-wNHxLkEKTQ2ay0tnsam2z7fGZUi+05ziDJflEt3AZTP3oXLKHJp9HqhfroB/vdMvt3sda9fAbq7FsG8QPDrZBg== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.3.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-proposal-json-strings@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz#568ecc446c6148ae6b267f02551130891e29f317" + integrity sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-json-strings" "^7.2.0" + +"@babel/plugin-proposal-object-rest-spread@^7.3.1": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.3.2.tgz#6d1859882d4d778578e41f82cc5d7bf3d5daf6c1" + integrity sha512-DjeMS+J2+lpANkYLLO+m6GjoTMygYglKmRe6cDTbFv3L9i6mmiE8fe6B8MtCSLZpVXscD5kn7s6SgtHrDoBWoA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + +"@babel/plugin-proposal-optional-catch-binding@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz#135d81edb68a081e55e56ec48541ece8065c38f5" + integrity sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + +"@babel/plugin-proposal-unicode-property-regex@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.2.0.tgz#abe7281fe46c95ddc143a65e5358647792039520" + integrity sha512-LvRVYb7kikuOtIoUeWTkOxQEV1kYvL5B6U3iWEGCzPNRus1MzJweFqORTj+0jkxozkTSYNJozPOddxmqdqsRpw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + regexpu-core "^4.2.0" + +"@babel/plugin-syntax-async-generators@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz#69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f" + integrity sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-json-strings@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz#72bd13f6ffe1d25938129d2a186b11fd62951470" + integrity sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-jsx@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz#0b85a3b4bc7cdf4cc4b8bf236335b907ca22e7c7" + integrity sha512-VyN4QANJkRW6lDBmENzRszvZf3/4AXaj9YR7GwrWeeN9tEBPuXbmDYVU9bYBN0D70zCWVwUy0HWq2553VCb6Hw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-object-rest-spread@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz#3b7a3e733510c57e820b9142a6579ac8b0dfad2e" + integrity sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz#a94013d6eda8908dfe6a477e7f9eda85656ecf5c" + integrity sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-arrow-functions@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz#9aeafbe4d6ffc6563bf8f8372091628f00779550" + integrity sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-async-to-generator@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.2.0.tgz#68b8a438663e88519e65b776f8938f3445b1a2ff" + integrity sha512-CEHzg4g5UraReozI9D4fblBYABs7IM6UerAVG7EJVrTLC5keh00aEuLUT+O40+mJCEzaXkYfTCUKIyeDfMOFFQ== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-remap-async-to-generator" "^7.1.0" + +"@babel/plugin-transform-block-scoped-functions@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz#5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190" + integrity sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-block-scoping@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.2.0.tgz#f17c49d91eedbcdf5dd50597d16f5f2f770132d4" + integrity sha512-vDTgf19ZEV6mx35yiPJe4fS02mPQUUcBNwWQSZFXSzTSbsJFQvHt7DqyS3LK8oOWALFOsJ+8bbqBgkirZteD5Q== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + lodash "^4.17.10" + +"@babel/plugin-transform-classes@^7.2.0": + version "7.2.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.2.2.tgz#6c90542f210ee975aa2aa8c8b5af7fa73a126953" + integrity sha512-gEZvgTy1VtcDOaQty1l10T3jQmJKlNVxLDCs+3rCVPr6nMkODLELxViq5X9l+rfxbie3XrfrMCYYY6eX3aOcOQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-define-map" "^7.1.0" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-optimise-call-expression" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" globals "^11.1.0" - invariant "^2.2.0" - lodash "^4.2.0" -"@babel/types@7.0.0-beta.44": - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.44.tgz#6b1b164591f77dec0a0342aca995f2d046b3a757" +"@babel/plugin-transform-computed-properties@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz#83a7df6a658865b1c8f641d510c6f3af220216da" + integrity sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-destructuring@^7.2.0": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.3.2.tgz#f2f5520be055ba1c38c41c0e094d8a461dd78f2d" + integrity sha512-Lrj/u53Ufqxl/sGxyjsJ2XNtNuEjDyjpqdhMNh5aZ+XFOdThL46KBj27Uem4ggoezSYBxKWAil6Hu8HtwqesYw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-dotall-regex@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.2.0.tgz#f0aabb93d120a8ac61e925ea0ba440812dbe0e49" + integrity sha512-sKxnyHfizweTgKZf7XsXu/CNupKhzijptfTM+bozonIuyVrLWVUvYjE2bhuSBML8VQeMxq4Mm63Q9qvcvUcciQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + regexpu-core "^4.1.3" + +"@babel/plugin-transform-duplicate-keys@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.2.0.tgz#d952c4930f312a4dbfff18f0b2914e60c35530b3" + integrity sha512-q+yuxW4DsTjNceUiTzK0L+AfQ0zD9rWaTLiUqHA8p0gxx7lu1EylenfzjeIWNkPy6e/0VG/Wjw9uf9LueQwLOw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-exponentiation-operator@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz#a63868289e5b4007f7054d46491af51435766008" + integrity sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A== + dependencies: + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-for-of@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.2.0.tgz#ab7468befa80f764bb03d3cb5eef8cc998e1cad9" + integrity sha512-Kz7Mt0SsV2tQk6jG5bBv5phVbkd0gd27SgYD4hH1aLMJRchM0dzHaXvrWhVZ+WxAlDoAKZ7Uy3jVTW2mKXQ1WQ== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-function-name@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.2.0.tgz#f7930362829ff99a3174c39f0afcc024ef59731a" + integrity sha512-kWgksow9lHdvBC2Z4mxTsvc7YdY7w/V6B2vy9cTIPtLEE9NhwoWivaxdNM/S37elu5bqlLP/qOY906LukO9lkQ== + dependencies: + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-literals@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz#690353e81f9267dad4fd8cfd77eafa86aba53ea1" + integrity sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-amd@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.2.0.tgz#82a9bce45b95441f617a24011dc89d12da7f4ee6" + integrity sha512-mK2A8ucqz1qhrdqjS9VMIDfIvvT2thrEsIQzbaTdc5QFzhDjQv2CkJJ5f6BXIkgbmaoax3zBr2RyvV/8zeoUZw== + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-commonjs@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.2.0.tgz#c4f1933f5991d5145e9cfad1dfd848ea1727f404" + integrity sha512-V6y0uaUQrQPXUrmj+hgnks8va2L0zcZymeU7TtWEgdRLNkceafKXEduv7QzgQAE4lT+suwooG9dC7LFhdRAbVQ== + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-simple-access" "^7.1.0" + +"@babel/plugin-transform-modules-systemjs@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.2.0.tgz#912bfe9e5ff982924c81d0937c92d24994bb9068" + integrity sha512-aYJwpAhoK9a+1+O625WIjvMY11wkB/ok0WClVwmeo3mCjcNRjt+/8gHWrB5i+00mUju0gWsBkQnPpdvQ7PImmQ== + dependencies: + "@babel/helper-hoist-variables" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-modules-umd@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz#7678ce75169f0877b8eb2235538c074268dd01ae" + integrity sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw== + dependencies: + "@babel/helper-module-transforms" "^7.1.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-named-capturing-groups-regex@^7.3.0": + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.3.0.tgz#140b52985b2d6ef0cb092ef3b29502b990f9cd50" + integrity sha512-NxIoNVhk9ZxS+9lSoAQ/LM0V2UEvARLttEHUrRDGKFaAxOYQcrkN/nLRE+BbbicCAvZPl7wMP0X60HsHE5DtQw== + dependencies: + regexp-tree "^0.1.0" + +"@babel/plugin-transform-new-target@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.0.0.tgz#ae8fbd89517fa7892d20e6564e641e8770c3aa4a" + integrity sha512-yin069FYjah+LbqfGeTfzIBODex/e++Yfa0rH0fpfam9uTbuEeEOx5GLGr210ggOV77mVRNoeqSYqeuaqSzVSw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-object-super@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.2.0.tgz#b35d4c10f56bab5d650047dad0f1d8e8814b6598" + integrity sha512-VMyhPYZISFZAqAPVkiYb7dUe2AsVi2/wCT5+wZdsNO31FojQJa9ns40hzZ6U9f50Jlq4w6qwzdBB2uwqZ00ebg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-replace-supers" "^7.1.0" + +"@babel/plugin-transform-parameters@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.2.0.tgz#0d5ad15dc805e2ea866df4dd6682bfe76d1408c2" + integrity sha512-kB9+hhUidIgUoBQ0MsxMewhzr8i60nMa2KgeJKQWYrqQpqcBYtnpR+JgkadZVZoaEZ/eKu9mclFaVwhRpLNSzA== + dependencies: + "@babel/helper-call-delegate" "^7.1.0" + "@babel/helper-get-function-arity" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-react-constant-elements@^7.0.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.2.0.tgz#ed602dc2d8bff2f0cb1a5ce29263dbdec40779f7" + integrity sha512-YYQFg6giRFMsZPKUM9v+VcHOdfSQdz9jHCx3akAi3UYgyjndmdYGSXylQ/V+HswQt4fL8IklchD9HTsaOCrWQQ== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-react-display-name@^7.0.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz#ebfaed87834ce8dc4279609a4f0c324c156e3eb0" + integrity sha512-Htf/tPa5haZvRMiNSQSFifK12gtr/8vwfr+A9y69uF0QcU77AVu4K7MiHEkTxF7lQoHOL0F9ErqgfNEAKgXj7A== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-react-jsx-self@^7.0.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.2.0.tgz#461e21ad9478f1031dd5e276108d027f1b5240ba" + integrity sha512-v6S5L/myicZEy+jr6ielB0OR8h+EH/1QFx/YJ7c7Ua+7lqsjj/vW6fD5FR9hB/6y7mGbfT4vAURn3xqBxsUcdg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.2.0" + +"@babel/plugin-transform-react-jsx-source@^7.0.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.2.0.tgz#20c8c60f0140f5dd3cd63418d452801cf3f7180f" + integrity sha512-A32OkKTp4i5U6aE88GwwcuV4HAprUgHcTq0sSafLxjr6AW0QahrCRCjxogkbbcdtpbXkuTOlgpjophCxb6sh5g== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.2.0" + +"@babel/plugin-transform-react-jsx@^7.0.0": + version "7.3.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.3.0.tgz#f2cab99026631c767e2745a5368b331cfe8f5290" + integrity sha512-a/+aRb7R06WcKvQLOu4/TpjKOdvVEKRLWFpKcNuHhiREPgGRB4TQJxq07+EZLS8LFVYpfq1a5lDUnuMdcCpBKg== + dependencies: + "@babel/helper-builder-react-jsx" "^7.3.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-syntax-jsx" "^7.2.0" + +"@babel/plugin-transform-regenerator@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.0.0.tgz#5b41686b4ed40bef874d7ed6a84bdd849c13e0c1" + integrity sha512-sj2qzsEx8KDVv1QuJc/dEfilkg3RRPvPYx/VnKLtItVQRWt1Wqf5eVCOLZm29CiGFfYYsA3VPjfizTCV0S0Dlw== + dependencies: + regenerator-transform "^0.13.3" + +"@babel/plugin-transform-shorthand-properties@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz#6333aee2f8d6ee7e28615457298934a3b46198f0" + integrity sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-spread@^7.2.0": + version "7.2.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz#3103a9abe22f742b6d406ecd3cd49b774919b406" + integrity sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-sticky-regex@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz#a1e454b5995560a9c1e0d537dfc15061fd2687e1" + integrity sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + +"@babel/plugin-transform-template-literals@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.2.0.tgz#d87ed01b8eaac7a92473f608c97c089de2ba1e5b" + integrity sha512-FkPix00J9A/XWXv4VoKJBMeSkyY9x/TqIh76wzcdfl57RJJcf8CehQ08uwfhCDNtRQYtHQKBTwKZDEyjE13Lwg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-typeof-symbol@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz#117d2bcec2fbf64b4b59d1f9819894682d29f2b2" + integrity sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + +"@babel/plugin-transform-unicode-regex@^7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.2.0.tgz#4eb8db16f972f8abb5062c161b8b115546ade08b" + integrity sha512-m48Y0lMhrbXEJnVUaYly29jRXbQ3ksxPrS1Tg8t+MHqzXhtBYAvI51euOBaoAlZLPHsieY9XPVMf80a5x0cPcA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/helper-regex" "^7.0.0" + regexpu-core "^4.1.3" + +"@babel/preset-env@^7.1.6", "@babel/preset-env@^7.2.0": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.3.1.tgz#389e8ca6b17ae67aaf9a2111665030be923515db" + integrity sha512-FHKrD6Dxf30e8xgHQO0zJZpUPfVZg+Xwgz5/RdSWCbza9QLNk4Qbp40ctRoqDxml3O8RMzB1DU55SXeDG6PqHQ== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-proposal-async-generator-functions" "^7.2.0" + "@babel/plugin-proposal-json-strings" "^7.2.0" + "@babel/plugin-proposal-object-rest-spread" "^7.3.1" + "@babel/plugin-proposal-optional-catch-binding" "^7.2.0" + "@babel/plugin-proposal-unicode-property-regex" "^7.2.0" + "@babel/plugin-syntax-async-generators" "^7.2.0" + "@babel/plugin-syntax-json-strings" "^7.2.0" + "@babel/plugin-syntax-object-rest-spread" "^7.2.0" + "@babel/plugin-syntax-optional-catch-binding" "^7.2.0" + "@babel/plugin-transform-arrow-functions" "^7.2.0" + "@babel/plugin-transform-async-to-generator" "^7.2.0" + "@babel/plugin-transform-block-scoped-functions" "^7.2.0" + "@babel/plugin-transform-block-scoping" "^7.2.0" + "@babel/plugin-transform-classes" "^7.2.0" + "@babel/plugin-transform-computed-properties" "^7.2.0" + "@babel/plugin-transform-destructuring" "^7.2.0" + "@babel/plugin-transform-dotall-regex" "^7.2.0" + "@babel/plugin-transform-duplicate-keys" "^7.2.0" + "@babel/plugin-transform-exponentiation-operator" "^7.2.0" + "@babel/plugin-transform-for-of" "^7.2.0" + "@babel/plugin-transform-function-name" "^7.2.0" + "@babel/plugin-transform-literals" "^7.2.0" + "@babel/plugin-transform-modules-amd" "^7.2.0" + "@babel/plugin-transform-modules-commonjs" "^7.2.0" + "@babel/plugin-transform-modules-systemjs" "^7.2.0" + "@babel/plugin-transform-modules-umd" "^7.2.0" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.3.0" + "@babel/plugin-transform-new-target" "^7.0.0" + "@babel/plugin-transform-object-super" "^7.2.0" + "@babel/plugin-transform-parameters" "^7.2.0" + "@babel/plugin-transform-regenerator" "^7.0.0" + "@babel/plugin-transform-shorthand-properties" "^7.2.0" + "@babel/plugin-transform-spread" "^7.2.0" + "@babel/plugin-transform-sticky-regex" "^7.2.0" + "@babel/plugin-transform-template-literals" "^7.2.0" + "@babel/plugin-transform-typeof-symbol" "^7.2.0" + "@babel/plugin-transform-unicode-regex" "^7.2.0" + browserslist "^4.3.4" + invariant "^2.2.2" + js-levenshtein "^1.1.3" + semver "^5.3.0" + +"@babel/preset-react@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz#e86b4b3d99433c7b3e9e91747e2653958bc6b3c0" + integrity sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@babel/plugin-transform-react-display-name" "^7.0.0" + "@babel/plugin-transform-react-jsx" "^7.0.0" + "@babel/plugin-transform-react-jsx-self" "^7.0.0" + "@babel/plugin-transform-react-jsx-source" "^7.0.0" + +"@babel/runtime@^7.2.0": + version "7.3.1" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.3.1.tgz#574b03e8e8a9898eaf4a872a92ea20b7846f6f2a" + integrity sha512-7jGW8ppV0ant637pIqAcFfQDDH1orEPGJb8aXfUozuCU3QqX7rX4DA8iwrbPrR1hcH0FTTHz47yQnk+bl5xHQA== + dependencies: + regenerator-runtime "^0.12.0" + +"@babel/template@^7.1.0", "@babel/template@^7.1.2", "@babel/template@^7.2.2": + version "7.2.2" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.2.2.tgz#005b3fdf0ed96e88041330379e0da9a708eb2907" + integrity sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.2.2" + "@babel/types" "^7.2.2" + +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.1.5", "@babel/traverse@^7.2.2", "@babel/traverse@^7.2.3": + version "7.2.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.2.3.tgz#7ff50cefa9c7c0bd2d81231fdac122f3957748d8" + integrity sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/generator" "^7.2.2" + "@babel/helper-function-name" "^7.1.0" + "@babel/helper-split-export-declaration" "^7.0.0" + "@babel/parser" "^7.2.3" + "@babel/types" "^7.2.2" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.10" + +"@babel/types@^7.0.0", "@babel/types@^7.1.6", "@babel/types@^7.2.0", "@babel/types@^7.2.2", "@babel/types@^7.3.0", "@babel/types@^7.3.2": + version "7.3.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.3.2.tgz#424f5be4be633fff33fb83ab8d67e4a8290f5a2f" + integrity sha512-3Y6H8xlUlpbGR+XvawiH0UXehqydTmNmEpozWcXymqwcrwYAl5KMvKtQ+TF6f6E08V6Jur7v/ykdDSF+WDEIXQ== dependencies: esutils "^2.0.2" - lodash "^4.2.0" + lodash "^4.17.10" to-fast-properties "^2.0.0" -abbrev@1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" +"@svgr/babel-plugin-add-jsx-attribute@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-4.0.0.tgz#5acf239cd2747b1a36ec7e708de05d914cb9b948" + integrity sha512-PDvHV2WhSGCSExp+eIMEKxYd1Q0SBvXLb4gAOXbdh0dswHFFgXWzxGjCmx5aln4qGrhkuN81khzYzR/44DYaMA== -acorn-jsx@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" +"@svgr/babel-plugin-remove-jsx-attribute@^4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-4.0.3.tgz#32564b5c4d761b51e34492b6a4894196c0f75803" + integrity sha512-fpG7AzzJxz1tc8ITYS1jCAt1cq4ydK2R+sx//BMTJgvOjfk91M5GiqFolP8aYTzLcum92IGNAVFS3zEcucOQEA== + +"@svgr/babel-plugin-remove-jsx-empty-expression@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-4.0.0.tgz#0b59338c00671cf8137eb823bd84a3efac686502" + integrity sha512-nBGVl6LzXTdk1c6w3rMWcjq3mYGz+syWc5b3CdqAiEeY/nswYDoW/cnGUKKC8ofD6/LaG+G/IUnfv3jKoHz43A== + +"@svgr/babel-plugin-replace-jsx-attribute-value@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-4.0.0.tgz#91785643540c2300f3d89e515b37af9b5ce4e695" + integrity sha512-ejQqpTfORy6TT5w1x/2IQkscgfbtNFjitcFDu63GRz7qfhVTYhMdiJvJ1+Aw9hmv9bO4tXThGQDr1IF5lIvgew== + +"@svgr/babel-plugin-svg-dynamic-title@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-4.0.0.tgz#eb8d50b80ba0a26f9b27c7268e2a803d90f1bc9e" + integrity sha512-OE6GT9WRKWqd0Dk6NJ5TYXTF5OxAyn74+c/D+gTLbCXnK2A0luEXuwMbe5zR5Px4A/jow2OeEBboTENl4vtuQg== + +"@svgr/babel-plugin-svg-em-dimensions@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-4.0.0.tgz#0de3972c46ff1960bed765646037a3a7f9e1da3d" + integrity sha512-QeDRGHXfjYEBTXxV0TsjWmepsL9Up5BOOlMFD557x2JrSiVGUn2myNxHIrHiVW0+nnWnaDcrkjg/jUvbJ5nKCg== + +"@svgr/babel-plugin-transform-react-native-svg@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-4.0.0.tgz#5e8ecc2a9870ae05fb1e553b1fe9c6b5853a1c66" + integrity sha512-c6eE6ovs14k6dmHKoy26h7iRFhjWNnwYVrDWIPfouVm/gcLIeMw/ME4i91O5LEfaDHs6kTRCcVpbAVbNULZOtw== + +"@svgr/babel-plugin-transform-svg-component@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-4.1.0.tgz#257159e28a21ac20988b1eaa5f59d4724f37fdaa" + integrity sha512-uulxdx2p3nrM2BkrtADQHK8IhEzCxdUILfC/ddvFC8tlFWuKiA3ych8C6q0ulyQHq34/3hzz+3rmUbhWF9redg== + +"@svgr/babel-preset@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-4.1.0.tgz#f6fa8ad90064b85dd7a3566a70b7006e789e8385" + integrity sha512-Nat5aJ3VO3LE8KfMyIbd3sGWnaWPiFCeWIdEV+lalga0To/tpmzsnPDdnrR9fNYhvSSLJbwhU/lrLYt9wXY0ZQ== dependencies: - acorn "^3.0.4" + "@svgr/babel-plugin-add-jsx-attribute" "^4.0.0" + "@svgr/babel-plugin-remove-jsx-attribute" "^4.0.3" + "@svgr/babel-plugin-remove-jsx-empty-expression" "^4.0.0" + "@svgr/babel-plugin-replace-jsx-attribute-value" "^4.0.0" + "@svgr/babel-plugin-svg-dynamic-title" "^4.0.0" + "@svgr/babel-plugin-svg-em-dimensions" "^4.0.0" + "@svgr/babel-plugin-transform-react-native-svg" "^4.0.0" + "@svgr/babel-plugin-transform-svg-component" "^4.1.0" -acorn@^3.0.4: - version "3.3.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" +"@svgr/core@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@svgr/core/-/core-4.1.0.tgz#4f8ad24fb4ab25c787c12a6bbb511c6430558f83" + integrity sha512-ahv3lvOKuUAcs0KbQ4Jr5fT5pGHhye4ew8jZVS4lw8IQdWrbG/o3rkpgxCPREBk7PShmEoGQpteeXVwp2yExuQ== + dependencies: + "@svgr/plugin-jsx" "^4.1.0" + camelcase "^5.0.0" + cosmiconfig "^5.0.7" -acorn@^5.2.1, acorn@^5.5.0: - version "5.5.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.5.3.tgz#f473dd47e0277a08e28e9bec5aeeb04751f0b8c9" +"@svgr/hast-util-to-babel-ast@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-4.1.0.tgz#a1eb0f47059769896f759f47995b636fce5d9fa4" + integrity sha512-tdkEZHmigYYiVhIEzycAMKN5aUSpddUnjr6v7bPwaNTFuSyqGUrpCg1JlIGi7PUaaJVHbn6whGQMGUpKOwT5nw== + dependencies: + "@babel/types" "^7.1.6" -ajv-keywords@^1.0.0: +"@svgr/plugin-jsx@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-4.1.0.tgz#4045e9cc0589374a6c182a1217c80e6734b5cbec" + integrity sha512-xwu+9TGziuN7cu7p+vhCw2EJIfv8iDNMzn2dR0C7fBYc8q+SRtYTcg4Uyn8ZWh6DM+IZOlVrS02VEMT0FQzXSA== + dependencies: + "@babel/core" "^7.1.6" + "@svgr/babel-preset" "^4.1.0" + "@svgr/hast-util-to-babel-ast" "^4.1.0" + rehype-parse "^6.0.0" + unified "^7.0.2" + vfile "^3.0.1" + +"@svgr/plugin-svgo@^4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-4.0.3.tgz#a07ea0a736c26fa3a5440fe8e222e2e887764cab" + integrity sha512-MgL1CrlxvNe+1tQjPUc2bIJtsdJOIE5arbHlPgW+XVWGjMZTUcyNNP8R7/IjM2Iyrc98UJY+WYiiWHrinnY9ZQ== + dependencies: + cosmiconfig "^5.0.7" + merge-deep "^3.0.2" + svgo "^1.1.1" + +"@svgr/rollup@^4.1.0": + version "4.1.0" + resolved "https://registry.yarnpkg.com/@svgr/rollup/-/rollup-4.1.0.tgz#fd1be5eef562c31983a58101bf4528084d5094d0" + integrity sha512-7+smsooCaAxqc1CHxtHMxVj0uvn/rwETXj2tRqmo+IOklfS+lSYEKT6Mldsj0vDhM+CX9F6xIiLgIuA2hk+wvQ== + dependencies: + "@babel/core" "^7.1.6" + "@babel/plugin-transform-react-constant-elements" "^7.0.0" + "@babel/preset-env" "^7.1.6" + "@babel/preset-react" "^7.0.0" + "@svgr/core" "^4.1.0" + "@svgr/plugin-jsx" "^4.1.0" + "@svgr/plugin-svgo" "^4.0.3" + rollup-pluginutils "^2.3.3" + +"@types/estree@0.0.39": + version "0.0.39" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" + integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== + +"@types/node@*": + version "10.12.21" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.12.21.tgz#7e8a0c34cf29f4e17a36e9bd0ea72d45ba03908e" + integrity sha512-CBgLNk4o3XMnqMc0rhb6lc77IwShMEglz05deDcn2lQxyXEZivfwgYJu7SMha9V5XcrP6qZuevTHV/QrN2vjKQ== + +"@types/q@^1.5.1": version "1.5.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" + resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.1.tgz#48fd98c1561fe718b61733daed46ff115b496e18" + integrity sha512-eqz8c/0kwNi/OEHQfvIuJVLTst3in0e7uTKeuY+WL/zfKn0xVujOTp42bS/vUUokhK5P2BppLd9JXMOMHcgbjA== -ajv-keywords@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" +"@types/unist@*", "@types/unist@^2.0.0": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.2.tgz#5dc0a7f76809b7518c0df58689cd16a19bd751c6" + integrity sha512-iHI60IbyfQilNubmxsq4zqSjdynlmc2Q/QvH9kjzg9+CCYVVzq1O6tc7VBzSygIwnmOt07w80IG6HDQvjv3Liw== -ajv@^4.7.0, ajv@^4.9.1: - version "4.11.8" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" - dependencies: - co "^4.6.0" - json-stable-stringify "^1.0.1" - -ajv@^5.2.3, ajv@^5.3.0: - version "5.5.2" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" - dependencies: - co "^4.6.0" - fast-deep-equal "^1.0.0" - fast-json-stable-stringify "^2.0.0" - json-schema-traverse "^0.3.0" - -amdefine@>=0.0.4: +"@types/vfile-message@*": version "1.0.1" - resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + resolved "https://registry.yarnpkg.com/@types/vfile-message/-/vfile-message-1.0.1.tgz#e1e9895cc6b36c462d4244e64e6d0b6eaf65355a" + integrity sha512-mlGER3Aqmq7bqR1tTTIVHq8KSAFFRyGbrxuM8C/H82g6k7r2fS+IMEkIu3D7JHzG10NvPdR8DNx0jr0pwpp4dA== + dependencies: + "@types/node" "*" + "@types/unist" "*" -ansi-escapes@^1.1.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" +"@types/vfile@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/vfile/-/vfile-3.0.2.tgz#19c18cd232df11ce6fa6ad80259bc86c366b09b9" + integrity sha512-b3nLFGaGkJ9rzOcuXRfHkZMdjsawuDD0ENL9fzTophtBg8FJHSGbH7daXkEpcwy3v7Xol3pAvsmlYyFhR4pqJw== + dependencies: + "@types/node" "*" + "@types/unist" "*" + "@types/vfile-message" "*" -ansi-escapes@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.1.0.tgz#f73207bb81207d75fd6c83f125af26eea378ca30" +acorn-jsx@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.0.1.tgz#32a064fd925429216a09b141102bfdd185fae40e" + integrity sha512-HJ7CfNHrfJLlNTzIEUTj43LNWGkqpRLxm3YjAlcD0ACydk9XynzYsCBHxut+iqt+1aBXkx9UP/w/ZqMr13XIzg== + +acorn@^6.0.2: + version "6.0.7" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.0.7.tgz#490180ce18337270232d9488a44be83d9afb7fd3" + integrity sha512-HNJNgE60C9eOTgn974Tlp3dpLZdUr+SoxxDwPaY9J/kDNOLQTkaDgwBUXAF4SSsrAwD9RpdxuHK/EbuF+W9Ahw== + +ajv@^6.5.3, ajv@^6.6.1: + version "6.8.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.8.1.tgz#0890b93742985ebf8973cd365c5b23920ce3cb20" + integrity sha512-eqxCp82P+JfqL683wwsL73XmFs1eG6qjw+RD3YHx+Jll1r0jNd4dh8QG9NYAeNGA/hnZjeEDgtTskgJULbxpWQ== + dependencies: + fast-deep-equal "^2.0.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ansi-escapes@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" + integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== ansi-regex@^2.0.0: version "2.1.1" @@ -140,9 +859,10 @@ ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" -ansi-styles@^2.1.0, ansi-styles@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" +ansi-regex@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.0.0.tgz#70de791edf021404c3fd615aa89118ae0432e5a9" + integrity sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w== ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" @@ -150,37 +870,12 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" -anymatch@^1.3.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" - dependencies: - micromatch "^2.1.5" - normalize-path "^2.0.0" - -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - -are-we-there-yet@~1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" - dependencies: - delegates "^1.0.0" - readable-stream "^2.0.6" - argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" dependencies: sprintf-js "~1.0.2" -aria-query@^0.7.0: - version "0.7.1" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-0.7.1.tgz#26cbb5aff64144b0a825be1846e0b16cfa00b11e" - dependencies: - ast-types-flow "0.0.7" - commander "^2.11.0" - arr-diff@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" @@ -191,13 +886,10 @@ arr-flatten@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" -array-filter@~0.0.0: - version "0.0.1" - resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" - -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= array-includes@^3.0.3: version "3.0.3" @@ -206,21 +898,13 @@ array-includes@^3.0.3: define-properties "^1.1.2" es-abstract "^1.7.0" -array-map@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" - -array-reduce@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" - array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" dependencies: array-uniq "^1.0.1" -array-uniq@^1.0.0, array-uniq@^1.0.1: +array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -228,764 +912,47 @@ array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" -array.prototype.find@^2.0.1: - version "2.0.4" - resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.0.4.tgz#556a5c5362c08648323ddaeb9de9d14bc1864c90" - dependencies: - define-properties "^1.1.2" - es-abstract "^1.7.0" - -arrify@^1.0.0, arrify@~1.0.1: +arrify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" -asap@~2.0.3: - version "2.0.6" - resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" - -asn1@~0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" - -assert-plus@1.0.0, assert-plus@^1.0.0: +astral-regex@^1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== -assert-plus@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" +babel-core@7.0.0-bridge.0: + version "7.0.0-bridge.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" + integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== -ast-types-flow@0.0.7: - version "0.0.7" - resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad" - -async-each@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - -autoprefixer@^6.7.0: - version "6.7.7" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" +babel-eslint@^10.0.1: + version "10.0.1" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-10.0.1.tgz#919681dc099614cd7d31d45c8908695092a1faed" + integrity sha512-z7OT1iNV+TjOwHNLLyJk+HN+YVWX+CLE6fPD2SymJZOZQBs+QIexFjhm4keGTm8MW9xr4EC9Q0PbaLB24V5GoQ== dependencies: - browserslist "^1.7.6" - caniuse-db "^1.0.30000634" - normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^5.2.16" - postcss-value-parser "^3.2.3" - -aws-sign2@~0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" - -aws4@^1.2.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289" - -axobject-query@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/axobject-query/-/axobject-query-0.1.0.tgz#62f59dbc59c9f9242759ca349960e7a2fe3c36c0" - dependencies: - ast-types-flow "0.0.7" - -babel-cli@6.14.0: - version "6.14.0" - resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.14.0.tgz#cbc778ad1ff4e58c87b87d7e08993993c2d3b75f" - dependencies: - babel-core "^6.14.0" - babel-polyfill "^6.9.0" - babel-register "^6.14.0" - babel-runtime "^6.9.0" - bin-version-check "^2.1.0" - chalk "1.1.1" - commander "^2.8.1" - convert-source-map "^1.1.0" - fs-readdir-recursive "^0.1.0" - glob "^5.0.5" - lodash "^4.2.0" - log-symbols "^1.0.2" - output-file-sync "^1.1.0" - path-exists "^1.0.0" - path-is-absolute "^1.0.0" - request "^2.65.0" - slash "^1.0.0" - source-map "^0.5.0" - v8flags "^2.0.10" - optionalDependencies: - chokidar "^1.0.0" - -babel-code-frame@^6.16.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - dependencies: - chalk "^1.1.3" - esutils "^2.0.2" - js-tokens "^3.0.2" - -babel-core@^6.14.0, babel-core@^6.22.0: - version "6.22.1" - resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.22.1.tgz#9c5fd658ba1772d28d721f6d25d968fc7ae21648" - dependencies: - babel-code-frame "^6.22.0" - babel-generator "^6.22.0" - babel-helpers "^6.22.0" - babel-messages "^6.22.0" - babel-register "^6.22.0" - babel-runtime "^6.22.0" - babel-template "^6.22.0" - babel-traverse "^6.22.1" - babel-types "^6.22.0" - babylon "^6.11.0" - convert-source-map "^1.1.0" - debug "^2.1.1" - json5 "^0.5.0" - lodash "^4.2.0" - minimatch "^3.0.2" - path-is-absolute "^1.0.0" - private "^0.1.6" - slash "^1.0.0" - source-map "^0.5.0" - -babel-eslint@6.1.2: - version "6.1.2" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-6.1.2.tgz#5293419fe3672d66598d327da9694567ba6a5f2f" - dependencies: - babel-traverse "^6.0.20" - babel-types "^6.0.19" - babylon "^6.0.18" - lodash.assign "^4.0.0" - lodash.pickby "^4.0.0" - -babel-eslint@^8.2.2: - version "8.2.3" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-8.2.3.tgz#1a2e6681cc9bc4473c32899e59915e19cd6733cf" - dependencies: - "@babel/code-frame" "7.0.0-beta.44" - "@babel/traverse" "7.0.0-beta.44" - "@babel/types" "7.0.0-beta.44" - babylon "7.0.0-beta.44" - eslint-scope "~3.7.1" + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.0.0" + "@babel/traverse" "^7.0.0" + "@babel/types" "^7.0.0" + eslint-scope "3.7.1" eslint-visitor-keys "^1.0.0" -babel-generator@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.22.0.tgz#d642bf4961911a8adc7c692b0c9297f325cda805" - dependencies: - babel-messages "^6.22.0" - babel-runtime "^6.22.0" - babel-types "^6.22.0" - detect-indent "^4.0.0" - jsesc "^1.3.0" - lodash "^4.2.0" - source-map "^0.5.0" - -babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" - dependencies: - babel-helper-explode-assignable-expression "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-builder-react-jsx@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz#39ff8313b75c8b65dceff1f31d383e0ff2a408a0" - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - esutils "^2.0.2" - -babel-helper-call-delegate@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-define-map@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-explode-assignable-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" - dependencies: - babel-runtime "^6.22.0" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-function-name@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" - dependencies: - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-get-function-arity@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-hoist-variables@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-optimise-call-expression@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-helper-regex@^6.24.1: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" - dependencies: - babel-runtime "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-helper-remap-async-to-generator@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helper-replace-supers@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" - dependencies: - babel-helper-optimise-call-expression "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-helpers@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.22.0.tgz#d275f55f2252b8101bff07bc0c556deda657392c" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.22.0" - -babel-messages@^6.22.0, babel-messages@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-check-es2015-constants@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-external-helpers@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-external-helpers/-/babel-plugin-external-helpers-6.22.0.tgz#2285f48b02bd5dede85175caf8c62e86adccefa1" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-syntax-async-functions@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" - -babel-plugin-syntax-class-properties@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" - -babel-plugin-syntax-exponentiation-operator@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" - -babel-plugin-syntax-flow@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" - -babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" - -babel-plugin-syntax-object-rest-spread@^6.8.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" - -babel-plugin-syntax-trailing-function-commas@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" - -babel-plugin-transform-async-to-generator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" - dependencies: - babel-helper-remap-async-to-generator "^6.24.1" - babel-plugin-syntax-async-functions "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-class-properties@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" - dependencies: - babel-helper-function-name "^6.24.1" - babel-plugin-syntax-class-properties "^6.8.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-arrow-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-block-scoping@^6.23.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" - dependencies: - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - lodash "^4.17.4" - -babel-plugin-transform-es2015-classes@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" - dependencies: - babel-helper-define-map "^6.24.1" - babel-helper-function-name "^6.24.1" - babel-helper-optimise-call-expression "^6.24.1" - babel-helper-replace-supers "^6.24.1" - babel-messages "^6.23.0" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-computed-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" - dependencies: - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-destructuring@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-duplicate-keys@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-for-of@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-function-name@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" - dependencies: - babel-helper-function-name "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" - dependencies: - babel-plugin-transform-es2015-modules-commonjs "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: - version "6.26.2" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" - dependencies: - babel-plugin-transform-strict-mode "^6.24.1" - babel-runtime "^6.26.0" - babel-template "^6.26.0" - babel-types "^6.26.0" - -babel-plugin-transform-es2015-modules-systemjs@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" - dependencies: - babel-helper-hoist-variables "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-modules-umd@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" - dependencies: - babel-plugin-transform-es2015-modules-amd "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - -babel-plugin-transform-es2015-object-super@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" - dependencies: - babel-helper-replace-supers "^6.24.1" - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-parameters@^6.23.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" - dependencies: - babel-helper-call-delegate "^6.24.1" - babel-helper-get-function-arity "^6.24.1" - babel-runtime "^6.22.0" - babel-template "^6.24.1" - babel-traverse "^6.24.1" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-shorthand-properties@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-spread@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-sticky-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-plugin-transform-es2015-template-literals@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-typeof-symbol@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-es2015-unicode-regex@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" - dependencies: - babel-helper-regex "^6.24.1" - babel-runtime "^6.22.0" - regexpu-core "^2.0.0" - -babel-plugin-transform-exponentiation-operator@^6.22.0: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" - dependencies: - babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" - babel-plugin-syntax-exponentiation-operator "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-flow-strip-types@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" - dependencies: - babel-plugin-syntax-flow "^6.18.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-object-rest-spread@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" - dependencies: - babel-plugin-syntax-object-rest-spread "^6.8.0" - babel-runtime "^6.26.0" - -babel-plugin-transform-react-display-name@^6.23.0: - version "6.25.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1" - dependencies: - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx-self@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz#df6d80a9da2612a121e6ddd7558bcbecf06e636e" - dependencies: - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx-source@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6" - dependencies: - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-react-jsx@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3" - dependencies: - babel-helper-builder-react-jsx "^6.24.1" - babel-plugin-syntax-jsx "^6.8.0" - babel-runtime "^6.22.0" - -babel-plugin-transform-regenerator@^6.22.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" - dependencies: - regenerator-transform "^0.10.0" - -babel-plugin-transform-strict-mode@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - dependencies: - babel-runtime "^6.22.0" - babel-types "^6.24.1" - -babel-polyfill@^6.9.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.22.0.tgz#1ac99ebdcc6ba4db1e2618c387b2084a82154a3b" - dependencies: - babel-runtime "^6.22.0" - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-preset-env@^1.6.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.7.0.tgz#dea79fa4ebeb883cd35dab07e260c1c9c04df77a" - dependencies: - babel-plugin-check-es2015-constants "^6.22.0" - babel-plugin-syntax-trailing-function-commas "^6.22.0" - babel-plugin-transform-async-to-generator "^6.22.0" - babel-plugin-transform-es2015-arrow-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" - babel-plugin-transform-es2015-block-scoping "^6.23.0" - babel-plugin-transform-es2015-classes "^6.23.0" - babel-plugin-transform-es2015-computed-properties "^6.22.0" - babel-plugin-transform-es2015-destructuring "^6.23.0" - babel-plugin-transform-es2015-duplicate-keys "^6.22.0" - babel-plugin-transform-es2015-for-of "^6.23.0" - babel-plugin-transform-es2015-function-name "^6.22.0" - babel-plugin-transform-es2015-literals "^6.22.0" - babel-plugin-transform-es2015-modules-amd "^6.22.0" - babel-plugin-transform-es2015-modules-commonjs "^6.23.0" - babel-plugin-transform-es2015-modules-systemjs "^6.23.0" - babel-plugin-transform-es2015-modules-umd "^6.23.0" - babel-plugin-transform-es2015-object-super "^6.22.0" - babel-plugin-transform-es2015-parameters "^6.23.0" - babel-plugin-transform-es2015-shorthand-properties "^6.22.0" - babel-plugin-transform-es2015-spread "^6.22.0" - babel-plugin-transform-es2015-sticky-regex "^6.22.0" - babel-plugin-transform-es2015-template-literals "^6.22.0" - babel-plugin-transform-es2015-typeof-symbol "^6.23.0" - babel-plugin-transform-es2015-unicode-regex "^6.22.0" - babel-plugin-transform-exponentiation-operator "^6.22.0" - babel-plugin-transform-regenerator "^6.22.0" - browserslist "^3.2.6" - invariant "^2.2.2" - semver "^5.3.0" - -babel-preset-flow@^6.23.0: - version "6.23.0" - resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d" - dependencies: - babel-plugin-transform-flow-strip-types "^6.22.0" - -babel-preset-react@^6.24.1: - version "6.24.1" - resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380" - dependencies: - babel-plugin-syntax-jsx "^6.3.13" - babel-plugin-transform-react-display-name "^6.23.0" - babel-plugin-transform-react-jsx "^6.24.1" - babel-plugin-transform-react-jsx-self "^6.22.0" - babel-plugin-transform-react-jsx-source "^6.22.0" - babel-preset-flow "^6.23.0" - -babel-register@^6.14.0, babel-register@^6.22.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.22.0.tgz#a61dd83975f9ca4a9e7d6eff3059494cd5ea4c63" - dependencies: - babel-core "^6.22.0" - babel-runtime "^6.22.0" - core-js "^2.4.0" - home-or-tmp "^2.0.0" - lodash "^4.2.0" - mkdirp "^0.5.1" - source-map-support "^0.4.2" - -babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.11.0" - -babel-runtime@^6.6.1, babel-runtime@^6.9.0: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.22.0.tgz#1cf8b4ac67c77a4ddb0db2ae1f74de52ac4ca611" - dependencies: - core-js "^2.4.0" - regenerator-runtime "^0.10.0" - -babel-template@^6.22.0, babel-template@^6.24.1, babel-template@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - dependencies: - babel-runtime "^6.26.0" - babel-traverse "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - lodash "^4.17.4" - -babel-traverse@^6.0.20, babel-traverse@^6.22.1: - version "6.22.1" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.22.1.tgz#3b95cd6b7427d6f1f757704908f2fc9748a5f59f" - dependencies: - babel-code-frame "^6.22.0" - babel-messages "^6.22.0" - babel-runtime "^6.22.0" - babel-types "^6.22.0" - babylon "^6.15.0" - debug "^2.2.0" - globals "^9.0.0" - invariant "^2.2.0" - lodash "^4.2.0" - -babel-traverse@^6.24.1, babel-traverse@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - dependencies: - babel-code-frame "^6.26.0" - babel-messages "^6.23.0" - babel-runtime "^6.26.0" - babel-types "^6.26.0" - babylon "^6.18.0" - debug "^2.6.8" - globals "^9.18.0" - invariant "^2.2.2" - lodash "^4.17.4" - -babel-types@^6.0.19: - version "6.22.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.22.0.tgz#2a447e8d0ea25d2512409e4175479fd78cc8b1db" - dependencies: - babel-runtime "^6.22.0" - esutils "^2.0.2" - lodash "^4.2.0" - to-fast-properties "^1.0.1" - -babel-types@^6.19.0, babel-types@^6.22.0, babel-types@^6.24.1, babel-types@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - dependencies: - babel-runtime "^6.26.0" - esutils "^2.0.2" - lodash "^4.17.4" - to-fast-properties "^1.0.3" - -babylon@7.0.0-beta.44: - version "7.0.0-beta.44" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.44.tgz#89159e15e6e30c5096e22d738d8c0af8a0e8ca1d" - -babylon@^6.0.18: - version "6.15.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.15.0.tgz#ba65cfa1a80e1759b0e89fb562e27dccae70348e" - -babylon@^6.11.0, babylon@^6.15.0, babylon@^6.18.0: - version "6.18.0" - resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" +bail@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.3.tgz#63cfb9ddbac829b02a3128cd53224be78e6c21a3" + integrity sha512-1X8CnjFVQ+a+KW36uBNMTU5s8+v5FzeqrP7hTG5aTb4aPreSbZJlhwPon9VKMuEVgV++JM+SQrALY3kr7eswdg== balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" -base16@^1.0.0: +boolbase@^1.0.0, boolbase@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/base16/-/base16-1.0.0.tgz#e297f60d7ec1014a7a971a39ebc8a98c0b681e70" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= -bcrypt-pbkdf@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" - dependencies: - tweetnacl "^0.14.3" - -bin-version-check@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/bin-version-check/-/bin-version-check-2.1.0.tgz#e4e5df290b9069f7d111324031efc13fdd11a5b0" - dependencies: - bin-version "^1.0.0" - minimist "^1.1.0" - semver "^4.0.3" - semver-truncate "^1.0.0" - -bin-version@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/bin-version/-/bin-version-1.0.4.tgz#9eb498ee6fd76f7ab9a7c160436f89579435d78e" - dependencies: - find-versions "^1.0.0" - -binary-extensions@^1.0.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" - -block-stream@*: - version "0.0.9" - resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" - dependencies: - inherits "~2.0.0" - -boom@2.x.x: - version "2.10.1" - resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" - dependencies: - hoek "2.x.x" - -brace-expansion@^1.0.0, brace-expansion@^1.1.7: +brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" dependencies: @@ -1000,92 +967,62 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" -browserslist@^1.7.6: - version "1.7.7" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" +browserslist@^4.3.4: + version "4.4.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.4.1.tgz#42e828954b6b29a7a53e352277be429478a69062" + integrity sha512-pEBxEXg7JwaakBXjATYw/D1YZh4QUSCX/Mnd/wnqSRPPSi1U39iDhDoKGoBUcraKdxDlrYqJxSI5nNvD+dWP2A== dependencies: - caniuse-db "^1.0.30000639" - electron-to-chromium "^1.2.7" + caniuse-lite "^1.0.30000929" + electron-to-chromium "^1.3.103" + node-releases "^1.1.3" -browserslist@^3.2.6: - version "3.2.7" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-3.2.7.tgz#aa488634d320b55e88bab0256184dbbcca1e6de9" - dependencies: - caniuse-lite "^1.0.30000835" - electron-to-chromium "^1.3.45" - -buffer-from@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.0.0.tgz#4cb8832d23612589b0406e9e2956c17f06fdf531" - -builtin-modules@^1.0.0, builtin-modules@^1.1.1: +builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" -builtin-modules@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-2.0.0.tgz#60b7ef5ae6546bd7deefa74b08b62a43a232648e" - -caller-path@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" - dependencies: - callsites "^0.2.0" - -callsites@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" - -camelcase-keys@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" - dependencies: - camelcase "^2.0.0" - map-obj "^1.0.0" - -camelcase@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" - -camelcase@^3.0.0: +builtin-modules@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.0.0.tgz#1e587d44b006620d90286cc7a9238bbc6129cab1" + integrity sha512-hMIeU4K2ilbXV6Uv93ZZ0Avg/M91RaKXucQ+4me2Do1txxBDyDZWCBa5bJSLqoNTRpXTLwEzIk1KmloenDDjhg== -caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: - version "1.0.30000746" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000746.tgz#501098c66f5fbbf634c02f25508b05e8809910f4" - -caniuse-lite@^1.0.30000835: - version "1.0.30000843" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000843.tgz#4fdec258dc641c385744cdd49d23c5459c3d4411" - -caseless@~0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" - -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - -chalk@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.1.tgz#509afb67066e7499f7eb3535c77445772ae2d019" +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= dependencies: - ansi-styles "^2.1.0" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" + callsites "^2.0.0" -chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= dependencies: - ansi-styles "^2.2.1" - escape-string-regexp "^1.0.2" - has-ansi "^2.0.0" - strip-ansi "^3.0.0" - supports-color "^2.0.0" + caller-callsite "^2.0.0" + +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + +callsites@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.0.0.tgz#fb7eb569b72ad7a45812f93fd9430a3e410b3dd3" + integrity sha512-tWnkwu9YEq2uzlBDI4RcLn8jrFvF9AOi8PxDNU3hZZjJcjkcRAq3vCI+vZcg1SuxISDYe86k9VZFwAxDiJGoAw== + +camelcase@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.0.0.tgz#03295527d58bd3cd4aa75363f35b2e8d97be2f42" + integrity sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA== + +caniuse-lite@^1.0.30000929: + version "1.0.30000934" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000934.tgz#4f2d749f51e9e2d4e9b182f8f121d26ec4208e8d" + integrity sha512-o7yfZn0R9N+mWAuksDsdLsb1gu9o//XK0QSU0zSSReKNRsXsFc/n/psxi0YSPNiqlKxImp5h4DHnAPdwYJ8nNA== + +ccount@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.0.3.tgz#f1cec43f332e2ea5a569fd46f9f5bde4e6102aff" + integrity sha512-Jt9tIBkRc9POUof7QA/VwWd+58fKkEEfI+/t1/eOlxKM7ZhrczNzMFefge7Ai+39y1pR/pP6cI19guHy3FSLmw== chalk@^2.0.0: version "2.4.0" @@ -1103,75 +1040,72 @@ chalk@^2.1.0: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chardet@^0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" - -chokidar@^1.0.0, chokidar@^1.5.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.1.tgz#2f4447ab5e96e50fb3d789fd90d4c72e0e4c70c2" +chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== dependencies: - anymatch "^1.3.0" - async-each "^1.0.0" - glob-parent "^2.0.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^2.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - optionalDependencies: - fsevents "^1.0.0" + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" -chokidar@~1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" - dependencies: - anymatch "^1.3.0" - async-each "^1.0.0" - glob-parent "^2.0.0" - inherits "^2.0.1" - is-binary-path "^1.0.0" - is-glob "^2.0.0" - path-is-absolute "^1.0.0" - readdirp "^2.0.0" - optionalDependencies: - fsevents "^1.0.0" +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== circular-json@^0.3.1: version "0.3.3" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.3.tgz#815c99ea84f6809529d2f45791bdf82711352d66" -classnames@^2.2.5: - version "2.2.5" - resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.5.tgz#fb3801d453467649ef3603c7d61a02bd129bde6d" - -cli-cursor@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" - dependencies: - restore-cursor "^1.0.1" - cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" dependencies: restore-cursor "^2.0.0" +cli-table3@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz#0252372d94dfc40dbd8df06005f48f31f656f202" + integrity sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw== + dependencies: + object-assign "^4.1.0" + string-width "^2.1.1" + optionalDependencies: + colors "^1.1.2" + cli-width@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" -cliui@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" +cliui@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" + integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" + string-width "^2.1.1" + strip-ansi "^4.0.0" wrap-ansi "^2.0.0" -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" +clone-deep@^0.2.4: + version "0.2.4" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" + integrity sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY= + dependencies: + for-own "^0.1.3" + is-plain-object "^2.0.1" + kind-of "^3.0.2" + lazy-cache "^1.0.3" + shallow-clone "^0.1.2" + +coa@~2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" + integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== + dependencies: + "@types/q" "^1.5.1" + chalk "^2.4.1" + q "^1.1.2" code-point-at@^1.0.0: version "1.1.0" @@ -1187,43 +1121,32 @@ color-name@^1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" -combined-stream@^1.0.5, combined-stream@~1.0.5: - version "1.0.6" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" +colors@^1.1.2: + version "1.3.3" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.3.3.tgz#39e005d546afe01e01f9c4ca8fa50f686a01205d" + integrity sha512-mmGt/1pZqYRjMxB1axhTo16/snVZ5krrKkcmMeVKxzECMMXoCgnvTPp10QgHfcbQZw8Dq2jMNG6je4JlWU0gWg== + +colors@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" + integrity sha1-FopHAXVran9RoSzgyXv6KMCE7WM= + +comma-separated-tokens@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.5.tgz#b13793131d9ea2d2431cf5b507ddec258f0ce0db" + integrity sha512-Cg90/fcK93n0ecgYTAz1jaA3zvnQ0ExlmKY1rdbyHqAx6BHxwoJc+J7HDu0iuQ7ixEs1qaa+WyQ6oeuBpYP1iA== dependencies: - delayed-stream "~1.0.0" + trim "0.0.1" -commander@^2.11.0, commander@^2.9.0: - version "2.15.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" - -commander@^2.8.1: - version "2.9.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" - dependencies: - graceful-readlink ">= 1.0.0" - -commander@~2.13.0: - version "2.13.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" +commander@~2.17.1: + version "2.17.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" + integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" -concat-stream@^1.5.2, concat-stream@^1.6.0: - version "1.6.2" - resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - dependencies: - buffer-from "^1.0.0" - inherits "^2.0.3" - readable-stream "^2.2.2" - typedarray "^0.0.6" - -console-control-strings@^1.0.0, console-control-strings@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - contains-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" @@ -1232,17 +1155,20 @@ convert-source-map@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.3.0.tgz#e9f3e9c6e2728efc2676696a70eb382f73106a67" -core-js@^1.0.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" - -core-js@^2.4.0: - version "2.5.6" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.6.tgz#0fe6d45bf3cac3ac364a9d72de7576f4eb221b9d" - -core-util-is@1.0.2, core-util-is@~1.0.0: +core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +cosmiconfig@^5.0.7: + version "5.0.7" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.7.tgz#39826b292ee0d78eda137dfa3173bd1c21a43b04" + integrity sha512-PcLqxTKiDmNT6pSpy4N6KtuPwb53W+2tzNvwOZw0WH9N6O0vLIBq0x8aj8Oj75ere4YcGi48bDFCL+3fRJdlNA== + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.9.0" + parse-json "^4.0.0" cross-env@^5.1.4: version "5.1.4" @@ -1251,7 +1177,7 @@ cross-env@^5.1.4: cross-spawn "^5.1.0" is-windows "^1.0.0" -cross-spawn@^5.1.0, cross-spawn@~5.1.0: +cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" dependencies: @@ -1259,9 +1185,10 @@ cross-spawn@^5.1.0, cross-spawn@~5.1.0: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^6.0.4: +cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== dependencies: nice-try "^1.0.4" path-key "^2.0.1" @@ -1269,73 +1196,71 @@ cross-spawn@^6.0.4: shebang-command "^1.2.0" which "^1.2.9" -cryptiles@2.x.x: - version "2.0.5" - resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" +css-select-base-adapter@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" + integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== + +css-select@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.0.2.tgz#ab4386cec9e1f668855564b17c3733b43b2a5ede" + integrity sha512-dSpYaDVoWaELjvZ3mS6IKZM/y2PMPa/XYoEfYNZePL4U/XgyxZNroHEHReDx/d+VgXh9VbCTtFqLkFbmeqeaRQ== dependencies: - boom "2.x.x" + boolbase "^1.0.0" + css-what "^2.1.2" + domutils "^1.7.0" + nth-check "^1.0.2" -css-parse@1.7.x: - version "1.7.0" - resolved "https://registry.yarnpkg.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" - -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" +css-tree@1.0.0-alpha.28: + version "1.0.0-alpha.28" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.28.tgz#8e8968190d886c9477bc8d61e96f61af3f7ffa7f" + integrity sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w== dependencies: - array-find-index "^1.0.1" + mdn-data "~1.1.0" + source-map "^0.5.3" -d@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" +css-tree@1.0.0-alpha.29: + version "1.0.0-alpha.29" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.29.tgz#3fa9d4ef3142cbd1c301e7664c1f352bd82f5a39" + integrity sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg== dependencies: - es5-ext "^0.10.9" + mdn-data "~1.1.0" + source-map "^0.5.3" -damerau-levenshtein@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514" +css-url-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/css-url-regex/-/css-url-regex-1.1.0.tgz#83834230cc9f74c457de59eebd1543feeb83b7ec" + integrity sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w= -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" +css-what@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.2.tgz#c0876d9d0480927d7d4920dcd72af3595649554d" + integrity sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ== + +csso@^3.5.0: + version "3.5.1" + resolved "https://registry.yarnpkg.com/csso/-/csso-3.5.1.tgz#7b9eb8be61628973c1b261e169d2f024008e758b" + integrity sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg== dependencies: - assert-plus "^1.0.0" + css-tree "1.0.0-alpha.29" -debug-log@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f" - -debug@*: - version "2.6.8" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" - dependencies: - ms "2.0.0" - -debug@2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" - dependencies: - ms "0.7.1" - -debug@^2.1.1, debug@^2.2.0, debug@^2.6.8, debug@^2.6.9: +debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: ms "2.0.0" -debug@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" +debug@^4.0.1, debug@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== dependencies: - ms "2.0.0" + ms "^2.1.1" -decamelize@^1.1.1, decamelize@^1.1.2: +decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - -deep-extend@~0.4.0: - version "0.4.2" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= deep-is@~0.1.3: version "0.1.3" @@ -1348,16 +1273,12 @@ define-properties@^1.1.2: foreach "^2.0.5" object-keys "^1.0.8" -deglob@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/deglob/-/deglob-2.1.0.tgz#4d44abe16ef32c779b4972bd141a80325029a14a" +define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== dependencies: - find-root "^1.0.0" - glob "^7.0.5" - ignore "^3.0.9" - pkg-config "^1.1.0" - run-parallel "^1.1.2" - uniq "^1.0.1" + object-keys "^1.0.12" del@^2.0.2: version "2.2.2" @@ -1371,68 +1292,61 @@ del@^2.0.2: pinkie-promise "^2.0.0" rimraf "^2.2.8" -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - -delegates@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - -detect-indent@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" - dependencies: - repeating "^2.0.0" - -detect-libc@^1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - -diacritic@0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/diacritic/-/diacritic-0.0.2.tgz#fc2a887b5a5bc0a0a854fb614c7c2f209061ee04" - -doctrine@1.5.0, doctrine@^1.2.2: +doctrine@1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" dependencies: esutils "^2.0.2" isarray "^1.0.0" -doctrine@^2.0.0, doctrine@^2.0.2, doctrine@^2.1.0: +doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" dependencies: esutils "^2.0.2" -duplexer@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" - -ecc-jsbn@~0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" +dom-serializer@0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" + integrity sha1-BzxpdUbOB4DOI75KKOKT5AvDDII= dependencies: - jsbn "~0.1.0" + domelementtype "~1.1.1" + entities "~1.1.1" -electron-to-chromium@^1.2.7: - version "1.3.26" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.26.tgz#996427294861a74d9c7c82b9260ea301e8c02d66" +domelementtype@1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" + integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== -electron-to-chromium@^1.3.45: - version "1.3.47" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.47.tgz#764e887ca9104d01a0ac8eabee7dfc0e2ce14104" +domelementtype@~1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" + integrity sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs= -emoji-regex@^6.1.0: - version "6.5.1" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-6.5.1.tgz#9baea929b155565c11ea41c6626eaa65cef992c2" - -encoding@^0.1.11: - version "0.1.12" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" +domutils@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" + integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== dependencies: - iconv-lite "~0.4.13" + dom-serializer "0" + domelementtype "1" + +electron-to-chromium@^1.3.103: + version "1.3.113" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.113.tgz#b1ccf619df7295aea17bc6951dc689632629e4a9" + integrity sha512-De+lPAxEcpxvqPTyZAXELNpRZXABRxf+uL/rSykstQhzj/B0l1150G/ExIIxKc16lI89Hgz81J0BHAcbTqK49g== + +end-of-stream@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== + dependencies: + once "^1.4.0" + +entities@~1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" + integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.1" @@ -1440,7 +1354,19 @@ error-ex@^1.2.0, error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" -es-abstract@^1.4.3, es-abstract@^1.7.0: +es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.5.1: + version "1.13.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9" + integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg== + dependencies: + es-to-primitive "^1.2.0" + function-bind "^1.1.1" + has "^1.0.3" + is-callable "^1.1.4" + is-regex "^1.0.4" + object-keys "^1.0.12" + +es-abstract@^1.7.0: version "1.11.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.11.0.tgz#cce87d518f0496893b1a30cd8461835535480681" dependencies: @@ -1458,358 +1384,195 @@ es-to-primitive@^1.1.1: is-date-object "^1.0.1" is-symbol "^1.0.1" -es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: - version "0.10.42" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.42.tgz#8c07dd33af04d5dcd1310b5cef13bea63a89ba8d" +es-to-primitive@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377" + integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg== dependencies: - es6-iterator "~2.0.3" - es6-symbol "~3.1.1" - next-tick "1" + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" -es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" - dependencies: - d "1" - es5-ext "^0.10.35" - es6-symbol "^3.1.1" - -es6-map@^0.1.3: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-set "~0.1.5" - es6-symbol "~3.1.1" - event-emitter "~0.3.5" - -es6-set@~0.1.5: - version "0.1.5" - resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" - dependencies: - d "1" - es5-ext "~0.10.14" - es6-iterator "~2.0.1" - es6-symbol "3.1.1" - event-emitter "~0.3.5" - -es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" - dependencies: - d "1" - es5-ext "~0.10.14" - -es6-weak-map@^2.0.1: - version "2.0.2" - resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" - dependencies: - d "1" - es5-ext "^0.10.14" - es6-iterator "^2.0.1" - es6-symbol "^3.1.1" - -escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: +escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" -escope@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" +eslint-config-standard-jsx@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-6.0.2.tgz#90c9aa16ac2c4f8970c13fc7efc608bacd02da70" + integrity sha512-D+YWAoXw+2GIdbMBRAzWwr1ZtvnSf4n4yL0gKGg7ShUOGXkSOLerI17K4F6LdQMJPNMoWYqepzQD/fKY+tXNSg== + +eslint-config-standard-react@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/eslint-config-standard-react/-/eslint-config-standard-react-7.0.2.tgz#80b51a0e0c371ef987679ee134768457a5b6db92" + integrity sha512-Zv/vubIfrwx4IbRXAggRjaswLXKdfFeuGfN365cVTaRmfpAy/7dIxMvJRZkUT99zEx8FOjTXL0KC4psfDjK/+w== dependencies: - es6-map "^0.1.3" - es6-weak-map "^2.0.1" - esrecurse "^4.1.0" - estraverse "^4.1.1" + eslint-config-standard-jsx "^6.0.1" -eslint-config-airbnb-base@^12.1.0: - version "12.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-12.1.0.tgz#386441e54a12ccd957b0a92564a4bafebd747944" - dependencies: - eslint-restricted-globals "^0.1.1" +eslint-config-standard@^12.0.0: + version "12.0.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-12.0.0.tgz#638b4c65db0bd5a41319f96bba1f15ddad2107d9" + integrity sha512-COUz8FnXhqFitYj4DTqHzidjIL/t4mumGZto5c7DrBpvWoie+Sn3P4sLEzUGeYhRElWuFEf8K1S1EfvD1vixCQ== -eslint-config-airbnb@16.1.0: - version "16.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-airbnb/-/eslint-config-airbnb-16.1.0.tgz#2546bfb02cc9fe92284bf1723ccf2e87bc45ca46" - dependencies: - eslint-config-airbnb-base "^12.1.0" - -eslint-config-react-tools@^1.0.10: - version "1.2.5" - resolved "https://registry.yarnpkg.com/eslint-config-react-tools/-/eslint-config-react-tools-1.2.5.tgz#b5a6d80c18b8be7f5c1fcd50e0028428ea4247fe" - dependencies: - babel-eslint "^8.2.2" - eslint "^4.19.1" - eslint-config-airbnb "16.1.0" - eslint-plugin-babel "^4.1.2" - eslint-plugin-import "^2.9.0" - eslint-plugin-jsx-a11y "^6.0.3" - eslint-plugin-react "^7.7.0" - -eslint-config-standard-jsx@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/eslint-config-standard-jsx/-/eslint-config-standard-jsx-4.0.2.tgz#009e53c4ddb1e9ee70b4650ffe63a7f39f8836e1" - -eslint-config-standard@10.2.1: - version "10.2.1" - resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz#c061e4d066f379dc17cd562c64e819b4dd454591" - -eslint-import-resolver-node@^0.2.0: - version "0.2.3" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz#5add8106e8c928db2cba232bcd9efa846e3da16c" - dependencies: - debug "^2.2.0" - object-assign "^4.0.1" - resolve "^1.1.6" - -eslint-import-resolver-node@^0.3.1: +eslint-import-resolver-node@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" + integrity sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q== dependencies: debug "^2.6.9" resolve "^1.5.0" -eslint-module-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.0.0.tgz#a6f8c21d901358759cdc35dbac1982ae1ee58bce" - dependencies: - debug "2.2.0" - pkg-dir "^1.0.0" - -eslint-module-utils@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz#b270362cd88b1a48ad308976ce7fa54e98411746" +eslint-module-utils@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.3.0.tgz#546178dab5e046c8b562bbb50705e2456d7bda49" + integrity sha512-lmDJgeOOjk8hObTysjqH7wyMi+nsHwwvfBykwfhjR1LNdd7C2uFJBvx4OpWYpXOw4df1yE1cDEVd1yLHitk34w== dependencies: debug "^2.6.8" - pkg-dir "^1.0.0" + pkg-dir "^2.0.0" -eslint-plugin-babel@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-babel/-/eslint-plugin-babel-4.1.2.tgz#79202a0e35757dd92780919b2336f1fa2fe53c1e" - -eslint-plugin-class-property@^1.0.6: - version "1.1.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-class-property/-/eslint-plugin-class-property-1.1.0.tgz#355784133d4852b8870bd1cb429a1b0403cc7aef" +eslint-plugin-es@^1.3.1: + version "1.4.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-1.4.0.tgz#475f65bb20c993fc10e8c8fe77d1d60068072da6" + integrity sha512-XfFmgFdIUDgvaRAlaXUkxrRg5JSADoRC8IkKLc/cISeR3yHVMefFHQZpcyXXEUUPHfy5DwviBcrfqlyqEwlQVw== dependencies: - eslint "^3.19.0" + eslint-utils "^1.3.0" + regexpp "^2.0.1" -eslint-plugin-import@^2.7.0: - version "2.12.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.12.0.tgz#dad31781292d6664b25317fd049d2e2b2f02205d" +eslint-plugin-import@^2.13.0: + version "2.16.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.16.0.tgz#97ac3e75d0791c4fac0e15ef388510217be7f66f" + integrity sha512-z6oqWlf1x5GkHIFgrSvtmudnqM6Q60KM4KvpWi5ubonMjycLjndvd5+8VAZIsTlHC03djdgJuyKG6XO577px6A== dependencies: contains-path "^0.1.0" - debug "^2.6.8" + debug "^2.6.9" doctrine "1.5.0" - eslint-import-resolver-node "^0.3.1" - eslint-module-utils "^2.2.0" - has "^1.0.1" - lodash "^4.17.4" - minimatch "^3.0.3" + eslint-import-resolver-node "^0.3.2" + eslint-module-utils "^2.3.0" + has "^1.0.3" + lodash "^4.17.11" + minimatch "^3.0.4" read-pkg-up "^2.0.0" - resolve "^1.6.0" + resolve "^1.9.0" -eslint-plugin-import@^2.9.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.11.0.tgz#15aeea37a67499d848e8e981806d4627b5503816" +eslint-plugin-node@^8.0.0: + version "8.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-8.0.1.tgz#55ae3560022863d141fa7a11799532340a685964" + integrity sha512-ZjOjbjEi6jd82rIpFSgagv4CHWzG9xsQAVp1ZPlhRnnYxcTgENUVBvhYmkQ7GvT1QFijUSo69RaiOJKhMu6i8w== dependencies: - contains-path "^0.1.0" - debug "^2.6.8" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.1" - eslint-module-utils "^2.2.0" - has "^1.0.1" - lodash "^4.17.4" - minimatch "^3.0.3" - read-pkg-up "^2.0.0" - resolve "^1.6.0" + eslint-plugin-es "^1.3.1" + eslint-utils "^1.3.1" + ignore "^5.0.2" + minimatch "^3.0.4" + resolve "^1.8.1" + semver "^5.5.0" -eslint-plugin-import@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.2.0.tgz#72ba306fad305d67c4816348a4699a4229ac8b4e" - dependencies: - builtin-modules "^1.1.1" - contains-path "^0.1.0" - debug "^2.2.0" - doctrine "1.5.0" - eslint-import-resolver-node "^0.2.0" - eslint-module-utils "^2.0.0" - has "^1.0.1" - lodash.cond "^4.3.0" - minimatch "^3.0.3" - pkg-up "^1.0.0" +eslint-plugin-promise@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-4.0.1.tgz#2d074b653f35a23d1ba89d8e976a985117d1c6a2" + integrity sha512-Si16O0+Hqz1gDHsys6RtFRrW7cCTB6P7p3OJmKp3Y3dxpQE2qwOA7d3xnV+0mBmrPoi0RBnxlCKvqu70te6wjg== -eslint-plugin-jsx-a11y@^6.0.2, eslint-plugin-jsx-a11y@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.0.3.tgz#54583d1ae442483162e040e13cc31865465100e5" +eslint-plugin-react@^7.10.0: + version "7.12.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.12.4.tgz#b1ecf26479d61aee650da612e425c53a99f48c8c" + integrity sha512-1puHJkXJY+oS1t467MjbqjvX53uQ05HXwjqDgdbGBqf5j9eeydI54G3KwiJmWciQ0HTBacIKw2jgwSBSH3yfgQ== dependencies: - aria-query "^0.7.0" array-includes "^3.0.3" - ast-types-flow "0.0.7" - axobject-query "^0.1.0" - damerau-levenshtein "^1.0.0" - emoji-regex "^6.1.0" - jsx-ast-utils "^2.0.0" - -eslint-plugin-node@~4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-4.2.2.tgz#82959ca9aed79fcbd28bb1b188d05cac04fb3363" - dependencies: - ignore "^3.0.11" - minimatch "^3.0.2" - object-assign "^4.0.1" - resolve "^1.1.7" - semver "5.3.0" - -eslint-plugin-promise@~3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz#78fbb6ffe047201627569e85a6c5373af2a68fca" - -eslint-plugin-react@^7.4.0: - version "7.8.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.8.2.tgz#e95c9c47fece55d2303d1a67c9d01b930b88a51d" - dependencies: - doctrine "^2.0.2" - has "^1.0.1" + doctrine "^2.1.0" + has "^1.0.3" jsx-ast-utils "^2.0.1" - prop-types "^15.6.0" + object.fromentries "^2.0.0" + prop-types "^15.6.2" + resolve "^1.9.0" -eslint-plugin-react@^7.7.0: - version "7.7.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.7.0.tgz#f606c719dbd8a1a2b3d25c16299813878cca0160" - dependencies: - doctrine "^2.0.2" - has "^1.0.1" - jsx-ast-utils "^2.0.1" - prop-types "^15.6.0" +eslint-plugin-standard@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-4.0.0.tgz#f845b45109c99cd90e77796940a344546c8f6b5c" + integrity sha512-OwxJkR6TQiYMmt1EsNRMe5qG3GsbjlcOhbGUBY4LtavF9DsLaTcoR+j2Tdjqi23oUwKNUqX7qcn5fPStafMdlA== -eslint-plugin-react@~6.10.0: - version "6.10.3" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-6.10.3.tgz#c5435beb06774e12c7db2f6abaddcbf900cd3f78" - dependencies: - array.prototype.find "^2.0.1" - doctrine "^1.2.2" - has "^1.0.1" - jsx-ast-utils "^1.3.4" - object.assign "^4.0.4" - -eslint-plugin-standard@~3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-3.0.1.tgz#34d0c915b45edc6f010393c7eef3823b08565cf2" - -eslint-restricted-globals@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7" - -eslint-scope@^3.7.1, eslint-scope@~3.7.1: +eslint-scope@3.7.1: version "3.7.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" + integrity sha1-PWPD7f2gLgbgGkUq2IyqzHzctug= dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" +eslint-scope@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.0.tgz#50bf3071e9338bcdc43331794a0cb533f0136172" + integrity sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA== + dependencies: + esrecurse "^4.1.0" + estraverse "^4.1.1" + +eslint-utils@^1.3.0, eslint-utils@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.3.1.tgz#9a851ba89ee7c460346f97cf8939c7298827e512" + integrity sha512-Z7YjnIldX+2XMcjr7ZkgEsOj/bREONV60qYeB/bjMAqqqZ4zxKyWX+BOUkdmRmA9riiIPVvo5x86m5elviOk0Q== + eslint-visitor-keys@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" -eslint@^3.19.0, eslint@~3.19.0: - version "3.19.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.19.0.tgz#c8fc6201c7f40dd08941b87c085767386a679acc" +eslint@^5.10.0: + version "5.13.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.13.0.tgz#ce71cc529c450eed9504530939aa97527861ede9" + integrity sha512-nqD5WQMisciZC5EHZowejLKQjWGuFS5c70fxqSKlnDME+oz9zmE8KTlX+lHSg+/5wsC/kf9Q9eMkC8qS3oM2fg== dependencies: - babel-code-frame "^6.16.0" - chalk "^1.1.3" - concat-stream "^1.5.2" - debug "^2.1.1" - doctrine "^2.0.0" - escope "^3.6.0" - espree "^3.4.0" - esquery "^1.0.0" - estraverse "^4.2.0" - esutils "^2.0.2" - file-entry-cache "^2.0.0" - glob "^7.0.3" - globals "^9.14.0" - ignore "^3.2.0" - imurmurhash "^0.1.4" - inquirer "^0.12.0" - is-my-json-valid "^2.10.0" - is-resolvable "^1.0.0" - js-yaml "^3.5.1" - json-stable-stringify "^1.0.0" - levn "^0.3.0" - lodash "^4.0.0" - mkdirp "^0.5.0" - natural-compare "^1.4.0" - optionator "^0.8.2" - path-is-inside "^1.0.1" - pluralize "^1.2.1" - progress "^1.1.8" - require-uncached "^1.0.2" - shelljs "^0.7.5" - strip-bom "^3.0.0" - strip-json-comments "~2.0.1" - table "^3.7.8" - text-table "~0.2.0" - user-home "^2.0.0" - -eslint@^4.1.1, eslint@^4.19.1: - version "4.19.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.19.1.tgz#32d1d653e1d90408854bfb296f076ec7e186a300" - dependencies: - ajv "^5.3.0" - babel-code-frame "^6.22.0" + "@babel/code-frame" "^7.0.0" + ajv "^6.5.3" chalk "^2.1.0" - concat-stream "^1.6.0" - cross-spawn "^5.1.0" - debug "^3.1.0" + cross-spawn "^6.0.5" + debug "^4.0.1" doctrine "^2.1.0" - eslint-scope "^3.7.1" + eslint-scope "^4.0.0" + eslint-utils "^1.3.1" eslint-visitor-keys "^1.0.0" - espree "^3.5.4" - esquery "^1.0.0" + espree "^5.0.0" + esquery "^1.0.1" esutils "^2.0.2" file-entry-cache "^2.0.0" functional-red-black-tree "^1.0.1" glob "^7.1.2" - globals "^11.0.1" - ignore "^3.3.3" + globals "^11.7.0" + ignore "^4.0.6" + import-fresh "^3.0.0" imurmurhash "^0.1.4" - inquirer "^3.0.6" - is-resolvable "^1.0.0" - js-yaml "^3.9.1" + inquirer "^6.1.0" + js-yaml "^3.12.0" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.3.0" - lodash "^4.17.4" - minimatch "^3.0.2" + lodash "^4.17.5" + minimatch "^3.0.4" mkdirp "^0.5.1" natural-compare "^1.4.0" optionator "^0.8.2" path-is-inside "^1.0.2" - pluralize "^7.0.0" progress "^2.0.0" - regexpp "^1.0.1" - require-uncached "^1.0.3" - semver "^5.3.0" + regexpp "^2.0.1" + semver "^5.5.1" strip-ansi "^4.0.0" - strip-json-comments "~2.0.1" - table "4.0.2" - text-table "~0.2.0" + strip-json-comments "^2.0.1" + table "^5.0.2" + text-table "^0.2.0" -espree@^3.4.0, espree@^3.5.4: - version "3.5.4" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.4.tgz#b0f447187c8a8bed944b815a660bddf5deb5d1a7" +espree@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-5.0.0.tgz#fc7f984b62b36a0f543b13fb9cd7b9f4a7f5b65c" + integrity sha512-1MpUfwsdS9MMoN7ZXqAr9e9UKdVHDcvrJpyx7mm1WuQlx/ygErEQBzgi5Nh5qBHIoYweprhtMkTCb9GhcAIcsA== dependencies: - acorn "^5.5.0" - acorn-jsx "^3.0.0" + acorn "^6.0.2" + acorn-jsx "^5.0.0" + eslint-visitor-keys "^1.0.0" esprima@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" -esquery@^1.0.0: +esquery@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz#406c51658b1f5991a5f9b62b1dc25b00e3e5c708" + integrity sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA== dependencies: estraverse "^4.0.0" @@ -1819,48 +1582,31 @@ esrecurse@^4.1.0: dependencies: estraverse "^4.1.0" -estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: +estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" -estree-walker@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.2.1.tgz#bdafe8095383d8414d5dc2ecf4c9173b6db9412e" +estree-walker@^0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.5.2.tgz#d3850be7529c9580d815600b53126515e146dd39" + integrity sha512-XpCnW/AE10ws/kDAs37cngSkvgIR8aN3G0MS85m7dUpuK2EREo9VJ00uvw6Dg/hXEpfsE1I1TvJOJr+Z+TL+ig== -estree-walker@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.3.1.tgz#e6b1a51cf7292524e7237c312e5fe6660c1ce1aa" - -estree-walker@^0.5.0: - version "0.5.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.5.1.tgz#64fc375053abc6f57d73e9bd2f004644ad3c5854" - -esutils@^2.0.2: +esutils@^2.0.0, esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" -event-emitter@~0.3.5: - version "0.3.5" - resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== dependencies: - d "1" - es5-ext "~0.10.14" - -event-stream@~3.3.0: - version "3.3.4" - resolved "http://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571" - dependencies: - duplexer "~0.1.1" - from "~0" - map-stream "~0.1.0" - pause-stream "0.0.11" - split "0.3" - stream-combiner "~0.0.4" - through "~2.3.1" - -exit-hook@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" expand-brackets@^0.1.4: version "0.1.5" @@ -1874,16 +1620,18 @@ expand-range@^1.8.1: dependencies: fill-range "^2.1.0" -extend@~3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" +extend@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -external-editor@^2.0.4: - version "2.2.0" - resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" +external-editor@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.0.3.tgz#5866db29a97826dbe4bf3afd24070ead9ea43a27" + integrity sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA== dependencies: - chardet "^0.4.0" - iconv-lite "^0.4.17" + chardet "^0.7.0" + iconv-lite "^0.4.24" tmp "^0.0.33" extglob@^0.3.1: @@ -1892,17 +1640,10 @@ extglob@^0.3.1: dependencies: is-extglob "^1.0.0" -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - -fast-deep-equal@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz#c053477817c86b51daa853c81e059b733d023614" +fast-deep-equal@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" + integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= fast-json-stable-stringify@^2.0.0: version "2.0.0" @@ -1912,37 +1653,6 @@ fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" -fbjs@^0.8.16: - version "0.8.16" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.9" - -fbjs@^0.8.9: - version "0.8.12" - resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.12.tgz#10b5d92f76d45575fd63a217d4ea02bea2f8ed04" - dependencies: - core-js "^1.0.0" - isomorphic-fetch "^2.1.1" - loose-envify "^1.0.0" - object-assign "^4.1.0" - promise "^7.1.1" - setimmediate "^1.0.5" - ua-parser-js "^0.7.9" - -figures@^1.3.5: - version "1.7.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" - dependencies: - escape-string-regexp "^1.0.5" - object-assign "^4.1.0" - figures@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" @@ -1970,31 +1680,18 @@ fill-range@^2.1.0: repeat-element "^1.1.2" repeat-string "^1.5.2" -find-root@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.0.0.tgz#962ff211aab25c6520feeeb8d6287f8f6e95807a" - -find-up@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" - dependencies: - path-exists "^2.0.0" - pinkie-promise "^2.0.0" - -find-up@^2.0.0: +find-up@^2.0.0, find-up@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" dependencies: locate-path "^2.0.0" -find-versions@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-1.2.1.tgz#cbde9f12e38575a0af1be1b9a2c5d5fd8f186b62" +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== dependencies: - array-uniq "^1.0.0" - get-stdin "^4.0.1" - meow "^3.5.0" - semver-regex "^1.0.0" + locate-path "^3.0.0" flat-cache@^1.2.1: version "1.3.0" @@ -2005,11 +1702,16 @@ flat-cache@^1.2.1: graceful-fs "^4.1.2" write "^0.2.1" +for-in@^0.1.3: + version "0.1.8" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" + integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= + for-in@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" -for-own@^0.1.4: +for-own@^0.1.3, for-own@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" dependencies: @@ -2019,55 +1721,11 @@ foreach@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - -form-data@~2.1.1: - version "2.1.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - -from@~0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" - -fs-readdir-recursive@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-0.1.2.tgz#315b4fb8c1ca5b8c47defef319d073dad3568059" - fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" -fsevents@^1.0.0: - version "1.1.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8" - dependencies: - nan "^2.3.0" - node-pre-gyp "^0.6.39" - -fstream-ignore@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" - dependencies: - fstream "^1.0.0" - inherits "2" - minimatch "^3.0.0" - -fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: - version "1.0.11" - resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" - dependencies: - graceful-fs "^4.1.2" - inherits "~2.0.0" - mkdirp ">=0.5 0" - rimraf "2" - -function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1: +function-bind@^1.0.2, function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -2075,50 +1733,16 @@ functional-red-black-tree@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" -gather-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gather-stream/-/gather-stream-1.0.0.tgz#b33994af457a8115700d410f317733cbe7a0904b" - -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" - -generate-function@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" - -generate-object-property@^1.1.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" - dependencies: - is-property "^1.0.0" - get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" -get-stdin@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - -get-stdin@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== dependencies: - assert-plus "^1.0.0" + pump "^3.0.0" glob-base@^0.3.0: version "0.3.0" @@ -2133,38 +1757,7 @@ glob-parent@^2.0.0: dependencies: is-glob "^2.0.0" -glob@7.0.x: - version "7.0.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.2" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^5.0.5: - version "5.0.15" - resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^6.0.1: - version "6.0.4" - resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" - dependencies: - inflight "^1.0.4" - inherits "2" - minimatch "2 || 3" - once "^1.3.0" - path-is-absolute "^1.0.0" - -glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2: +glob@^7.0.3, glob@^7.0.5, glob@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" dependencies: @@ -2175,28 +1768,14 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.2: once "^1.3.0" path-is-absolute "^1.0.0" -global-object@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/global-object/-/global-object-1.0.0.tgz#2a1b45e901d55e4773154f12f0cec1ef9aba5f9f" - -globals@^11.0.1, globals@^11.1.0: +globals@^11.1.0: version "11.4.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.4.0.tgz#b85c793349561c16076a3c13549238a27945f1bc" -globals@^9.0.0, globals@^9.14.0, globals@^9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - -globby@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-4.1.0.tgz#080f54549ec1b82a6c60e631fc82e1211dbe95f8" - dependencies: - array-union "^1.0.1" - arrify "^1.0.0" - glob "^6.0.1" - object-assign "^4.0.1" - pify "^2.0.0" - pinkie-promise "^2.0.0" +globals@^11.7.0: + version "11.10.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.10.0.tgz#1e09776dffda5e01816b3bb4077c8b59c24eaa50" + integrity sha512-0GZF1RiPKU97IHUO5TORo9w1PwrH/NBPl+fS7oMLdaTRiYmYbwK4NWoZWrAdd0/abG9R2BU+OiwyQpTpE6pdfQ== globby@^5.0.0: version "5.0.0" @@ -2209,51 +1788,18 @@ globby@^5.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.4: +graceful-fs@^4.1.2: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" -"graceful-readlink@>= 1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" - -har-schema@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" - -har-validator@~2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" - dependencies: - chalk "^1.1.1" - commander "^2.9.0" - is-my-json-valid "^2.12.4" - pinkie-promise "^2.0.0" - -har-validator@~4.2.1: - version "4.2.1" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" - dependencies: - ajv "^4.9.1" - har-schema "^1.0.5" - -has-ansi@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - dependencies: - ansi-regex "^2.0.0" - -has-flag@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" -has-unicode@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" +has-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44" + integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q= has@^1.0.1: version "1.0.1" @@ -2261,62 +1807,80 @@ has@^1.0.1: dependencies: function-bind "^1.0.2" -hawk@3.1.3, hawk@~3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== dependencies: - boom "2.x.x" - cryptiles "2.x.x" - hoek "2.x.x" - sntp "1.x.x" + function-bind "^1.1.1" -hoek@2.x.x: - version "2.16.3" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" - -home-or-tmp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" +hast-util-from-parse5@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-5.0.0.tgz#a505a05766e0f96e389bfb0b1dd809eeefcef47b" + integrity sha512-A7ev5OseS/J15214cvDdcI62uwovJO2PB60Xhnq7kaxvvQRFDEccuqbkrFXU03GPBGopdPqlpQBRqIcDS/Fjbg== dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.1" + ccount "^1.0.3" + hastscript "^5.0.0" + property-information "^5.0.0" + web-namespaces "^1.1.2" + xtend "^4.0.1" + +hast-util-parse-selector@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.1.tgz#4ddbae1ae12c124e3eb91b581d2556441766f0ab" + integrity sha512-Xyh0v+nHmQvrOqop2Jqd8gOdyQtE8sIP9IQf7mlVDqp924W4w/8Liuguk2L2qei9hARnQSG2m+wAOCxM7npJVw== + +hastscript@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-5.0.0.tgz#fee10382c1bc4ba3f1be311521d368c047d2c43a" + integrity sha512-xJtuJ8D42Xtq5yJrnDg/KAIxl2cXBXKoiIJwmWX9XMf8113qHTGl/Bf7jEsxmENJ4w6q4Tfl8s/Y6mEZo8x8qw== + dependencies: + comma-separated-tokens "^1.0.0" + hast-util-parse-selector "^2.2.0" + property-information "^5.0.1" + space-separated-tokens "^1.0.0" hosted-git-info@^2.1.4: version "2.6.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222" -http-signature@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" +iconv-lite@^0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: - assert-plus "^0.2.0" - jsprim "^1.2.2" - sshpk "^1.7.0" + safer-buffer ">= 2.1.2 < 3" -iconv-lite@^0.4.17, iconv-lite@~0.4.13: - version "0.4.21" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.21.tgz#c47f8733d02171189ebc4a400f3218d348094798" +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.0.2: + version "5.0.5" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.0.5.tgz#c663c548d6ce186fb33616a8ccb5d46e56bdbbf9" + integrity sha512-kOC8IUb8HSDMVcYrDVezCxpJkzSQWTAzf3olpKM6o9rM5zpojx23O0Fl8Wr4+qJ6ZbPEHqf1fdwev/DS7v7pmA== + +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= dependencies: - safer-buffer "^2.1.0" + caller-path "^2.0.0" + resolve-from "^3.0.0" -ignore@^3.0.11, ignore@^3.0.9: - version "3.3.3" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d" - -ignore@^3.2.0, ignore@^3.3.3: - version "3.3.7" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" +import-fresh@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.0.0.tgz#a3d897f420cab0e671236897f75bc14b4885c390" + integrity sha512-pOnA9tfM3Uwics+SaBLCNyZZZbK+4PTu0OPZtLlMIrv17EdBoC15S9Kn8ckJ9TZTyKb3ywNE5y1yeDxxGA7nTQ== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" -indent-string@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" - dependencies: - repeating "^2.0.0" - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -2324,79 +1888,53 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.3: +inherits@2, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" -ini@~1.3.0: - version "1.3.5" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" - -inquirer@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e" +inquirer@^6.1.0: + version "6.2.2" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.2.2.tgz#46941176f65c9eb20804627149b743a218f25406" + integrity sha512-Z2rREiXA6cHRR9KBOarR3WuLlFzlIfAEIiB45ll5SSadMg7WqOh1MKEjjndfuH5ewXdixWCxqnVfGOQzPeiztA== dependencies: - ansi-escapes "^1.1.0" - ansi-regex "^2.0.0" - chalk "^1.0.0" - cli-cursor "^1.0.1" - cli-width "^2.0.0" - figures "^1.3.5" - lodash "^4.3.0" - readline2 "^1.0.1" - run-async "^0.1.0" - rx-lite "^3.1.2" - string-width "^1.0.1" - strip-ansi "^3.0.0" - through "^2.3.6" - -inquirer@^3.0.6: - version "3.3.0" - resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" - dependencies: - ansi-escapes "^3.0.0" - chalk "^2.0.0" + ansi-escapes "^3.2.0" + chalk "^2.4.2" cli-cursor "^2.1.0" cli-width "^2.0.0" - external-editor "^2.0.4" + external-editor "^3.0.3" figures "^2.0.0" - lodash "^4.3.0" + lodash "^4.17.11" mute-stream "0.0.7" run-async "^2.2.0" - rx-lite "^4.0.8" - rx-lite-aggregates "^4.0.8" + rxjs "^6.4.0" string-width "^2.1.0" - strip-ansi "^4.0.0" + strip-ansi "^5.0.0" through "^2.3.6" -interpret@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" - -invariant@^2.2.0, invariant@^2.2.2: +invariant@^2.2.2: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" dependencies: loose-envify "^1.0.0" -invert-kv@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" +invert-kv@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" + integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" -is-binary-path@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - dependencies: - binary-extensions "^1.0.0" - -is-buffer@^1.1.5: +is-buffer@^1.0.2, is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" +is-buffer@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz#4ecf3fcf749cbd1e472689e109ac66261a25e725" + integrity sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw== + is-builtin-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" @@ -2407,10 +1945,20 @@ is-callable@^1.1.1, is-callable@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" +is-callable@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75" + integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA== + is-date-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= + is-dotfile@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" @@ -2429,12 +1977,6 @@ is-extglob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" -is-finite@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" - dependencies: - number-is-nan "^1.0.0" - is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" @@ -2455,20 +1997,6 @@ is-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" -is-my-ip-valid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" - -is-my-json-valid@^2.10.0, is-my-json-valid@^2.12.4: - version "2.17.2" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz#6b2103a288e94ef3de5cf15d29dd85fc4b78d65c" - dependencies: - generate-function "^2.0.0" - generate-object-property "^1.1.0" - is-my-ip-valid "^1.0.0" - jsonpointer "^4.0.0" - xtend "^4.0.0" - is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" @@ -2497,6 +2025,18 @@ is-path-inside@^1.0.0: dependencies: path-is-inside "^1.0.1" +is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + +is-plain-object@^2.0.1: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + is-posix-bracket@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" @@ -2509,35 +2049,27 @@ is-promise@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" -is-property@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" - is-regex@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" dependencies: has "^1.0.1" -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - -is-stream@^1.0.1: +is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= is-symbol@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" -is-typedarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - -is-utf8@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" +is-symbol@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38" + integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw== + dependencies: + has-symbols "^1.0.0" is-windows@^1.0.0: version "1.0.2" @@ -2557,40 +2089,41 @@ isobject@^2.0.0: dependencies: isarray "1.0.0" -isomorphic-fetch@^2.1.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" +isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + +jest-worker@^24.0.0: + version "24.0.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.0.0.tgz#3d3483b077bf04f412f47654a27bba7e947f8b6d" + integrity sha512-s64/OThpfQvoCeHG963MiEZOAAxu8kHsaL/rCMF7lpdzo7vgF0CtPml9hfguOMgykgH/eOm4jFP4ibfHLruytg== dependencies: - node-fetch "^1.0.1" - whatwg-fetch ">=0.10.0" + merge-stream "^1.0.1" + supports-color "^6.1.0" -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" +js-levenshtein@^1.1.3: + version "1.1.6" + resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" + integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g== -js-base64@^2.1.9: - version "2.1.9" - resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" - -js-tokens@^3.0.0, js-tokens@^3.0.2: +js-tokens@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" -js-yaml@^3.5.1, js-yaml@^3.9.1: - version "3.11.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.11.0.tgz#597c1a8bd57152f26d622ce4117851a51f5ebaef" +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.12.0, js-yaml@^3.9.0: + version "3.12.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.1.tgz#295c8632a18a23e054cf5c9d3cecafe678167600" + integrity sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA== dependencies: argparse "^1.0.7" esprima "^4.0.0" -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - -jsesc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" - jsesc@^2.5.1: version "2.5.1" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" @@ -2603,59 +2136,35 @@ json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" -json-schema-traverse@^0.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" - -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" -json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" +json5@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.0.tgz#e7a0c62c48285c628d20a10b85c89bb807c32850" + integrity sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ== dependencies: - jsonify "~0.0.0" + minimist "^1.2.0" -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - -json5@^0.5.0: - version "0.5.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - -jsonify@~0.0.0: - version "0.0.0" - resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" - -jsonpointer@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" - -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -jsx-ast-utils@^1.3.4: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz#3867213e8dd79bf1e8f2300c0cfc1efb182c0df1" - -jsx-ast-utils@^2.0.0, jsx-ast-utils@^2.0.1: +jsx-ast-utils@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f" dependencies: array-includes "^3.0.3" +kind-of@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" + integrity sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU= + dependencies: + is-buffer "^1.0.2" + kind-of@^3.0.2: version "3.2.2" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" @@ -2668,11 +2177,22 @@ kind-of@^4.0.0: dependencies: is-buffer "^1.1.5" -lcid@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" +lazy-cache@^0.2.3: + version "0.2.7" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" + integrity sha1-f+3fLctu23fRHvHRF6tf/fCrG2U= + +lazy-cache@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" + integrity sha1-odePw6UEdMuAhF07O24dpJpEbo4= + +lcid@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" + integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== dependencies: - invert-kv "^1.0.0" + invert-kv "^2.0.0" levn@^0.3.0, levn@~0.3.0: version "0.3.0" @@ -2681,16 +2201,6 @@ levn@^0.3.0, levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -load-json-file@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - pinkie-promise "^2.0.0" - strip-bom "^2.0.0" - load-json-file@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" @@ -2700,15 +2210,6 @@ load-json-file@^2.0.0: pify "^2.0.0" strip-bom "^3.0.0" -load-json-file@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" - dependencies: - graceful-fs "^4.1.2" - parse-json "^4.0.0" - pify "^3.0.0" - strip-bom "^3.0.0" - locate-path@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" @@ -2716,53 +2217,25 @@ locate-path@^2.0.0: p-locate "^2.0.0" path-exists "^3.0.0" -lodash.assign@^4.0.0, lodash.assign@^4.0.3, lodash.assign@^4.0.6: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" - -lodash.cond@^4.3.0: - version "4.5.2" - resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5" - -lodash.curry@^4.0.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.curry/-/lodash.curry-4.1.1.tgz#248e36072ede906501d75966200a86dab8b23170" - -lodash.flow@^3.3.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/lodash.flow/-/lodash.flow-3.5.0.tgz#87bf40292b8cf83e4e8ce1a3ae4209e20071675a" - -lodash.pickby@^4.0.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.pickby/-/lodash.pickby-4.6.0.tgz#7dea21d8c18d7703a27c704c15d3b84a67e33aff" - -lodash@^4.0.0, lodash@^4.3.0: - version "4.17.5" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" - -lodash@^4.17.4, lodash@^4.2.0: - version "4.17.10" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.10.tgz#1b7793cf7259ea38fb3661d4d38b3260af8ae4e7" - -log-symbols@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== dependencies: - chalk "^1.0.0" + p-locate "^3.0.0" + path-exists "^3.0.0" -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: +lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.5: + version "4.17.11" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" + integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== + +loose-envify@^1.0.0, loose-envify@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" dependencies: js-tokens "^3.0.0" -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - lru-cache@^4.0.1: version "4.1.3" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.3.tgz#a1175cf3496dfc8436c156c334b4955992bce69c" @@ -2770,47 +2243,51 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" -magic-string@^0.22.4: - version "0.22.5" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.22.5.tgz#8e9cf5afddf44385c1da5bc2a6a0dbd10b03657e" +magic-string@^0.25.1: + version "0.25.2" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.2.tgz#139c3a729515ec55e96e69e82a11fe890a293ad9" + integrity sha512-iLs9mPjh9IuTtRsqqhNGYcZXGei0Nh/A4xirrsqW7c+QhKVFL2vm7U09ru6cHRD22azaP/wMDgI+HCqbETMTtg== dependencies: - vlq "^0.2.2" + sourcemap-codec "^1.4.4" -map-obj@^1.0.0, map-obj@^1.0.1: +map-age-cleaner@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +mdn-data@~1.1.0: + version "1.1.4" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-1.1.4.tgz#50b5d4ffc4575276573c4eedb8780812a8419f01" + integrity sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA== + +mem@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-4.1.0.tgz#aeb9be2d21f47e78af29e4ac5978e8afa2ca5b8a" + integrity sha512-I5u6Q1x7wxO0kdOpYBB28xueHADYps5uty/zg936CiG8NTe5sJL8EjrCuLneuDW3PlMdZBGDIn8BirEVdovZvg== + dependencies: + map-age-cleaner "^0.1.1" + mimic-fn "^1.0.0" + p-is-promise "^2.0.0" + +merge-deep@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/merge-deep/-/merge-deep-3.0.2.tgz#f39fa100a4f1bd34ff29f7d2bf4508fbb8d83ad2" + integrity sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA== + dependencies: + arr-union "^3.1.0" + clone-deep "^0.2.4" + kind-of "^3.0.2" + +merge-stream@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - -map-stream@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" - -match-sorter@^1.8.0: - version "1.8.1" - resolved "https://registry.yarnpkg.com/match-sorter/-/match-sorter-1.8.1.tgz#5b164e526c261dc8628db925430facbe0cd26614" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" + integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= dependencies: - diacritic "0.0.2" - global-object "1.0.0" + readable-stream "^2.0.1" -memorystream@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" - -meow@^3.5.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" - dependencies: - camelcase-keys "^2.0.0" - decamelize "^1.1.2" - loud-rejection "^1.0.0" - map-obj "^1.0.1" - minimist "^1.1.3" - normalize-package-data "^2.3.4" - object-assign "^4.0.1" - read-pkg-up "^1.0.1" - redent "^1.0.0" - trim-newlines "^1.0.0" - -micromatch@^2.1.5, micromatch@^2.3.11: +micromatch@^2.3.11: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" dependencies: @@ -2828,27 +2305,11 @@ micromatch@^2.1.5, micromatch@^2.3.11: parse-glob "^3.0.4" regex-cache "^0.4.2" -mime-db@~1.33.0: - version "1.33.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" - -mime-types@^2.1.12, mime-types@~2.1.7: - version "2.1.18" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" - dependencies: - mime-db "~1.33.0" - mimic-fn@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" -"minimatch@2 || 3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" - dependencies: - brace-expansion "^1.0.0" - -minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4: +minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" dependencies: @@ -2858,81 +2319,52 @@ minimist@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" -minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0, minimist@~1.2.0: +minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" -mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1: +mixin-object@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" + integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= + dependencies: + for-in "^0.1.3" + is-extendable "^0.1.1" + +mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" -ms@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" - ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" -mute-stream@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" +ms@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== mute-stream@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" -nan@^2.3.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.10.0.tgz#96d0cd610ebd58d4b4de9cc0c6828cda99c7548f" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" -neo-async@^1.0.0: - version "1.8.2" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-1.8.2.tgz#31795888b79dd04357a7c52113a65183e93b6735" - -next-tick@1: - version "1.0.0" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" - nice-try@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.4.tgz#d93962f6c52f2c1558c0fbda6d512819f1efe1c4" -node-fetch@^1.0.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" +node-releases@^1.1.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.7.tgz#b09a10394d0ed8f7778f72bb861dde68b146303b" + integrity sha512-bKdrwaqJUPHqlCzDD7so/R+Nk0jGv9a11ZhLrD9f6i947qGLrGAhU3OxRENa19QQmwzGy/g6zCDEuLGDO8HPvA== dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" - -node-pre-gyp@^0.6.39: - version "0.6.39" - resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" - dependencies: - detect-libc "^1.0.2" - hawk "3.1.3" - mkdirp "^0.5.1" - nopt "^4.0.1" - npmlog "^4.0.2" - rc "^1.1.7" - request "2.81.0" - rimraf "^2.6.1" semver "^5.3.0" - tar "^2.2.1" - tar-pack "^3.4.0" - -nopt@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" - dependencies: - abbrev "1" - osenv "^0.1.4" normalize-package-data@^2.3.2: version "2.4.0" @@ -2943,75 +2375,60 @@ normalize-package-data@^2.3.2: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^2.3.4: - version "2.3.5" - resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.5.tgz#8d924f142960e1777e7ffe170543631cc7cb02df" - dependencies: - hosted-git-info "^2.1.4" - is-builtin-module "^1.0.0" - semver "2 || 3 || 4 || 5" - validate-npm-package-license "^3.0.1" - -normalize-path@^2.0.0, normalize-path@^2.0.1: +normalize-path@^2.0.1: version "2.1.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" dependencies: remove-trailing-separator "^1.0.1" -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - -npm-run-all@^4.1.2: - version "4.1.3" - resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.3.tgz#49f15b55a66bb4101664ce270cb18e7103f8f185" +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= dependencies: - ansi-styles "^3.2.0" - chalk "^2.1.0" - cross-spawn "^6.0.4" - memorystream "^0.3.1" - minimatch "^3.0.4" - ps-tree "^1.1.0" - read-pkg "^3.0.0" - shell-quote "^1.6.1" - string.prototype.padend "^3.0.0" + path-key "^2.0.0" -npmlog@^4.0.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" +nth-check@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" + integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + boolbase "~1.0.0" number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" -oauth-sign@~0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" - object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" -object-keys@^1.0.10, object-keys@^1.0.8: +object-keys@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.12.tgz#09c53855377575310cca62f55bb334abff7b3ed2" + integrity sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag== + +object-keys@^1.0.8: version "1.0.11" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" -object.assign@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.0.4.tgz#b1c9cc044ef1b9fe63606fc141abbb32e14730cc" +object.fromentries@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab" + integrity sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA== dependencies: define-properties "^1.1.2" - function-bind "^1.1.0" - object-keys "^1.0.10" + es-abstract "^1.11.0" + function-bind "^1.1.1" + has "^1.0.1" + +object.getownpropertydescriptors@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" + integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY= + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.1" object.omit@^2.0.0: version "2.0.1" @@ -3020,26 +2437,23 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -once@^1.3.0, once@^1.3.3: +object.values@^1.0.4: + version "1.1.0" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz#bf6810ef5da3e5325790eaaa2be213ea84624da9" + integrity sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.12.0" + function-bind "^1.1.1" + has "^1.0.3" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= dependencies: wrappy "1" -onchange@^3.0.2: - version "3.3.0" - resolved "https://registry.yarnpkg.com/onchange/-/onchange-3.3.0.tgz#da9250b1623e019f0f71dc8afd56273406472b61" - dependencies: - arrify "~1.0.1" - chokidar "~1.7.0" - cross-spawn "~5.1.0" - minimist "~1.2.0" - tree-kill "~1.2.0" - -onetime@^1.0.0: - version "1.1.0" - resolved "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" - onetime@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" @@ -3057,34 +2471,33 @@ optionator@^0.8.2: type-check "~0.3.2" wordwrap "~1.0.0" -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - -os-locale@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" +os-locale@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" + integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== dependencies: - lcid "^1.0.0" + execa "^1.0.0" + lcid "^2.0.0" + mem "^4.0.0" -os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: +os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= -output-file-sync@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76" - dependencies: - graceful-fs "^4.1.4" - mkdirp "^0.5.1" - object-assign "^4.1.0" +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + +p-is-promise@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.0.0.tgz#7554e3d572109a87e1f3f53f6a7d85d1b194f4c5" + integrity sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg== p-limit@^1.1.0: version "1.2.0" @@ -3092,16 +2505,42 @@ p-limit@^1.1.0: dependencies: p-try "^1.0.0" +p-limit@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.1.0.tgz#1d5a0d20fb12707c758a655f6bbc4386b5930d68" + integrity sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g== + dependencies: + p-try "^2.0.0" + p-locate@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" dependencies: p-limit "^1.1.0" +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" +p-try@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.0.0.tgz#85080bb87c64688fa47996fe8f7dfbe8211760b1" + integrity sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ== + +parent-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.0.tgz#df250bdc5391f4a085fb589dad761f5ad6b865b5" + integrity sha512-8Mf5juOMmiE4FcmzYc4IaiS9L3+9paz2KOiXzkRviCP6aDmN49Hz6EMWz0lGNp9pX80GvvAuLADtyGfW/Em3TA== + dependencies: + callsites "^3.0.0" + parse-glob@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" @@ -3124,15 +2563,10 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -path-exists@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-1.0.0.tgz#d5a8998eb71ef37a74c34eb0d9eba6e878eea081" - -path-exists@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" - dependencies: - pinkie-promise "^2.0.0" +parse5@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" + integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== path-exists@^3.0.0: version "3.0.0" @@ -3146,7 +2580,7 @@ path-is-inside@^1.0.1, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" -path-key@^2.0.1: +path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -3154,13 +2588,10 @@ path-parse@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" -path-type@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" - dependencies: - graceful-fs "^4.1.2" - pify "^2.0.0" - pinkie-promise "^2.0.0" +path-parse@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" + integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== path-type@^2.0.0: version "2.0.0" @@ -3168,30 +2599,10 @@ path-type@^2.0.0: dependencies: pify "^2.0.0" -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - dependencies: - pify "^3.0.0" - -pause-stream@0.0.11: - version "0.0.11" - resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445" - dependencies: - through "~2.3" - -performance-now@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" - pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" @@ -3202,76 +2613,12 @@ pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" -pkg-conf@^2.0.0: +pkg-dir@^2.0.0: version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-2.0.0.tgz#071c87650403bccfb9c627f58751bfe47c067279" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= dependencies: - find-up "^2.0.0" - load-json-file "^2.0.0" - -pkg-config@^1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pkg-config/-/pkg-config-1.1.1.tgz#557ef22d73da3c8837107766c52eadabde298fe4" - dependencies: - debug-log "^1.0.0" - find-root "^1.0.0" - xtend "^4.0.1" - -pkg-dir@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" - dependencies: - find-up "^1.0.0" - -pkg-up@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-1.0.0.tgz#3e08fb461525c4421624a33b9f7e6d0af5b05a26" - dependencies: - find-up "^1.0.0" - -pluralize@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" - -pluralize@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" - -postcss-cli@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/postcss-cli/-/postcss-cli-2.6.0.tgz#f0de393caa026fcfc1b1479822989af508ed515d" - dependencies: - globby "^4.1.0" - mkdirp "^0.5.1" - neo-async "^1.0.0" - postcss "^5.0.0" - read-file-stdin "^0.2.0" - resolve "^1.1.6" - yargs "^4.7.1" - optionalDependencies: - chokidar "^1.5.1" - -postcss-value-parser@^3.2.3: - version "3.3.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" - -postcss@^5.0.0: - version "5.2.11" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.11.tgz#ff29bcd6d2efb98bfe08a022055ec599bbe7b761" - dependencies: - chalk "^1.1.3" - js-base64 "^2.1.9" - source-map "^0.5.6" - supports-color "^3.2.3" - -postcss@^5.2.16: - version "5.2.18" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5" - dependencies: - chalk "^1.1.3" - js-base64 "^2.1.9" - source-map "^0.5.6" - supports-color "^3.2.3" + find-up "^2.1.0" prelude-ls@~1.1.2: version "1.1.2" @@ -3288,61 +2635,48 @@ private@^0.1.6: process-nextick-args@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - -progress@^1.1.8: - version "1.1.8" - resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" + integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== progress@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.0.tgz#8a1be366bf8fc23db2bd23f10c6fe920b4389d1f" -promise@^7.1.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" +prop-types@^15.6.2: + version "15.6.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.2.tgz#05d5ca77b4453e985d60fc7ff8c859094a497102" + integrity sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ== dependencies: - asap "~2.0.3" - -prop-types@^15.5.8: - version "15.5.10" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.10.tgz#2797dfc3126182e3a95e3dfbb2e893ddd7456154" - dependencies: - fbjs "^0.8.9" - loose-envify "^1.3.1" - -prop-types@^15.6.0: - version "15.6.1" - resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.1.tgz#36644453564255ddda391191fb3a125cbdf654ca" - dependencies: - fbjs "^0.8.16" loose-envify "^1.3.1" object-assign "^4.1.1" -ps-tree@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.1.0.tgz#b421b24140d6203f1ed3c76996b4427b08e8c014" +property-information@^5.0.0, property-information@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-5.0.1.tgz#c3b09f4f5750b1634c0b24205adbf78f18bdf94f" + integrity sha512-nAtBDVeSwFM3Ot/YxT7s4NqZmqXI7lLzf46BThvotEtYf2uk2yH0ACYuWQkJ7gxKs49PPtKVY0UlDGkyN9aJlw== dependencies: - event-stream "~3.3.0" + xtend "^4.0.1" pseudomap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" -punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" -pure-color@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/pure-color/-/pure-color-1.2.0.tgz#702d2f2819dd545b1fde5116fca5f0c2dad2d18d" +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -qs@~6.3.0: - version "6.3.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" - -qs@~6.4.0: - version "6.4.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" +q@^1.1.2: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= randomatic@^1.1.3: version "1.1.7" @@ -3351,63 +2685,6 @@ randomatic@^1.1.3: is-number "^3.0.0" kind-of "^4.0.0" -rc@^1.1.7: - version "1.2.6" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.6.tgz#eb18989c6d4f4f162c399f79ddd29f3835568092" - dependencies: - deep-extend "~0.4.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -react-base16-styling@^0.5.1: - version "0.5.3" - resolved "https://registry.yarnpkg.com/react-base16-styling/-/react-base16-styling-0.5.3.tgz#3858f24e9c4dd8cbd3f702f3f74d581ca2917269" - dependencies: - base16 "^1.0.0" - lodash.curry "^4.0.1" - lodash.flow "^3.3.0" - pure-color "^1.2.0" - -react-dom@^16.3.2: - version "16.4.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.4.1.tgz#7f8b0223b3a5fbe205116c56deb85de32685dad6" - dependencies: - fbjs "^0.8.16" - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.0" - -react-json-tree@^0.10.9: - version "0.10.9" - resolved "https://registry.yarnpkg.com/react-json-tree/-/react-json-tree-0.10.9.tgz#7263173a2cc8bf05eac63b0419c3ce75b232e284" - dependencies: - babel-runtime "^6.6.1" - prop-types "^15.5.8" - react-base16-styling "^0.5.1" - -react@^16.3.2: - version "16.3.2" - resolved "https://registry.yarnpkg.com/react/-/react-16.3.2.tgz#fdc8420398533a1e58872f59091b272ce2f91ea9" - dependencies: - fbjs "^0.8.16" - loose-envify "^1.1.0" - object-assign "^4.1.1" - prop-types "^15.6.0" - -read-file-stdin@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/read-file-stdin/-/read-file-stdin-0.2.1.tgz#25eccff3a153b6809afacb23ee15387db9e0ee61" - dependencies: - gather-stream "^1.0.0" - -read-pkg-up@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" - dependencies: - find-up "^1.0.0" - read-pkg "^1.0.0" - read-pkg-up@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" @@ -3415,14 +2692,6 @@ read-pkg-up@^2.0.0: find-up "^2.0.0" read-pkg "^2.0.0" -read-pkg@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" - dependencies: - load-json-file "^1.0.0" - normalize-package-data "^2.3.2" - path-type "^1.0.0" - read-pkg@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" @@ -3431,17 +2700,10 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" -read-pkg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" - dependencies: - load-json-file "^4.0.0" - normalize-package-data "^2.3.2" - path-type "^3.0.0" - -readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.2.2: +readable-stream@^2.0.1: version "2.3.6" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" + integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -3451,54 +2713,28 @@ readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.4, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" -readdirp@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" +regenerate-unicode-properties@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c" + integrity sha512-s5NGghCE4itSlUS+0WUj88G6cfMVMmH8boTPNvABf8od+2dhT9WDlWu8n01raQAJZMOK8Ch6jSexaRO7swd6aw== dependencies: - graceful-fs "^4.1.2" - minimatch "^3.0.2" - readable-stream "^2.0.2" - set-immediate-shim "^1.0.1" + regenerate "^1.4.0" -readline2@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35" - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - mute-stream "0.0.5" - -rechoir@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" - dependencies: - resolve "^1.1.6" - -redent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" - dependencies: - indent-string "^2.1.0" - strip-indent "^1.0.1" - -regenerate@^1.2.1: +regenerate@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.0.tgz#4a856ec4b56e4077c557589cae85e7a4c8869a11" + integrity sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg== -regenerator-runtime@^0.10.0: - version "0.10.5" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" +regenerator-runtime@^0.12.0: + version "0.12.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de" + integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg== -regenerator-runtime@^0.11.0: - version "0.11.1" - resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - -regenerator-transform@^0.10.0: - version "0.10.1" - resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" +regenerator-transform@^0.13.3: + version "0.13.3" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb" + integrity sha512-5ipTrZFSq5vU2YoGoww4uaRVAK4wyYC4TSICibbfEPOruUu8FFP7ErV0BjmbIOEpn3O/k9na9UEdYR/3m7N6uA== dependencies: - babel-runtime "^6.18.0" - babel-types "^6.19.0" private "^0.1.6" regex-cache@^0.4.2: @@ -3507,28 +2743,53 @@ regex-cache@^0.4.2: dependencies: is-equal-shallow "^0.1.3" -regexpp@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-1.1.0.tgz#0e3516dd0b7904f413d2d4193dce4618c3a689ab" - -regexpu-core@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" +regexp-tree@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.1.tgz#27b455f9b138ca2e84c090e9aff1ffe2a04d97fa" + integrity sha512-HwRjOquc9QOwKTgbxvZTcddS5mlNlwePMQ3NFL8broajMLD5CXDAqas8Y5yxJH5QtZp5iRor3YCILd5pz71Cgw== dependencies: - regenerate "^1.2.1" - regjsgen "^0.2.0" - regjsparser "^0.1.4" + cli-table3 "^0.5.0" + colors "^1.1.2" + yargs "^12.0.5" -regjsgen@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" +regexpp@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-2.0.1.tgz#8d19d31cf632482b589049f8281f93dbcba4d07f" + integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== -regjsparser@^0.1.4: - version "0.1.5" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" +regexpu-core@^4.1.3, regexpu-core@^4.2.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.4.0.tgz#8d43e0d1266883969720345e70c275ee0aec0d32" + integrity sha512-eDDWElbwwI3K0Lo6CqbQbA6FwgtCz4kYTarrri1okfkRLZAqstU+B3voZBCjg8Fl6iq0gXrJG6MvRgLthfvgOA== + dependencies: + regenerate "^1.4.0" + regenerate-unicode-properties "^7.0.0" + regjsgen "^0.5.0" + regjsparser "^0.6.0" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.0.2" + +regjsgen@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz#a7634dc08f89209c2049adda3525711fb97265dd" + integrity sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA== + +regjsparser@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz#f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c" + integrity sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ== dependencies: jsesc "~0.5.0" +rehype-parse@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/rehype-parse/-/rehype-parse-6.0.0.tgz#f681555f2598165bee2c778b39f9073d17b16bca" + integrity sha512-V2OjMD0xcSt39G4uRdMTqDXXm6HwkUbLMDayYKA/d037j8/OtVSQ+tqKwYWOuyBeoCs/3clXRe30VUjeMDTBSA== + dependencies: + hast-util-from-parse5 "^5.0.0" + parse5 "^5.0.0" + xtend "^4.0.1" + remove-trailing-separator@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" @@ -3541,63 +2802,10 @@ repeat-string@^1.5.2: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" -repeating@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" - dependencies: - is-finite "^1.0.0" - -request@2.81.0: - version "2.81.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.1" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.4.0" - safe-buffer "^5.0.1" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "^0.6.0" - uuid "^3.0.0" - -request@^2.65.0: - version "2.79.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.11.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~2.0.6" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - qs "~6.3.0" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" - uuid "^3.0.0" +replace-ext@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" + integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= require-directory@^2.1.1: version "2.1.1" @@ -3607,34 +2815,29 @@ require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" -require-uncached@^1.0.2, require-uncached@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha1-six699nWiBvItuZTM17rywoYh0g= + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve@^1.3.2, resolve@^1.8.1, resolve@^1.9.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba" + integrity sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg== dependencies: - caller-path "^0.1.0" - resolve-from "^1.0.0" + path-parse "^1.0.6" -resolve-from@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" - -resolve@^1.1.6, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.6.0: +resolve@^1.5.0: version "1.7.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.7.1.tgz#aadd656374fd298aee895bc026b8297418677fd3" dependencies: path-parse "^1.0.5" -resolve@^1.1.7: - version "1.2.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.2.0.tgz#9589c3f2f6149d1417a40becc1663db6ec6bc26c" - -restore-cursor@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" - dependencies: - exit-hook "^1.0.0" - onetime "^1.0.0" - restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" @@ -3642,73 +2845,69 @@ restore-cursor@^2.0.0: onetime "^2.0.0" signal-exit "^3.0.2" -rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1: +rimraf@^2.2.8: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" dependencies: glob "^7.0.5" -rollup-plugin-babel@^3.0.3: - version "3.0.4" - resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-3.0.4.tgz#41b3e762fe64450dd61da3105a2cf7ad76be4edc" +rollup-plugin-babel@^4.1.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/rollup-plugin-babel/-/rollup-plugin-babel-4.3.2.tgz#8c0e1bd7aa9826e90769cf76895007098ffd1413" + integrity sha512-KfnizE258L/4enADKX61ozfwGHoqYauvoofghFJBhFnpH9Sb9dNPpWg8QHOaAfVASUYV8w0mCx430i9z0LJoJg== dependencies: - rollup-pluginutils "^1.5.0" + "@babel/helper-module-imports" "^7.0.0" + rollup-pluginutils "^2.3.0" -rollup-plugin-commonjs@^8.3.0: - version "8.4.1" - resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-8.4.1.tgz#5c9cea2b2c3de322f5fbccd147e07ed5e502d7a0" +rollup-plugin-commonjs@^9.1.3: + version "9.2.0" + resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-9.2.0.tgz#4604e25069e0c78a09e08faa95dc32dec27f7c89" + integrity sha512-0RM5U4Vd6iHjL6rLvr3lKBwnPsaVml+qxOGaaNUWN1lSq6S33KhITOfHmvxV3z2vy9Mk4t0g4rNlVaJJsNQPWA== dependencies: - acorn "^5.2.1" - estree-walker "^0.5.0" - magic-string "^0.22.4" - resolve "^1.4.0" - rollup-pluginutils "^2.0.1" + estree-walker "^0.5.2" + magic-string "^0.25.1" + resolve "^1.8.1" + rollup-pluginutils "^2.3.3" -rollup-plugin-node-resolve@^3.0.2: - version "3.3.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.3.0.tgz#c26d110a36812cbefa7ce117cadcd3439aa1c713" +rollup-plugin-node-resolve@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-4.0.0.tgz#9bc6b8205e9936cc0e26bba2415f1ecf1e64d9b2" + integrity sha512-7Ni+/M5RPSUBfUaP9alwYQiIKnKeXCOHiqBpKUl9kwp3jX5ZJtgXAait1cne6pGEVUUztPD6skIKH9Kq9sNtfw== dependencies: - builtin-modules "^2.0.0" + builtin-modules "^3.0.0" is-module "^1.0.0" - resolve "^1.1.6" + resolve "^1.8.1" -rollup-plugin-replace@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-replace/-/rollup-plugin-replace-2.0.0.tgz#19074089c8ed57184b8cc64e967a03d095119277" - dependencies: - magic-string "^0.22.4" - minimatch "^3.0.2" - rollup-pluginutils "^2.0.1" +rollup-plugin-peer-deps-external@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/rollup-plugin-peer-deps-external/-/rollup-plugin-peer-deps-external-2.2.0.tgz#99ef9231aa01736f3e9605b7c3084a0d627f665b" + integrity sha512-BmJMHUWQcvjS2dQMwJ7dzvdbwpRChnq4AYk2sTU/4aySt9Kumk8y8W3HhTHss31wxzKb0AC/wsiX1AqDcOBIEA== -rollup-plugin-uglify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-uglify/-/rollup-plugin-uglify-3.0.0.tgz#a34eca24617709c6bf1778e9653baafa06099b86" +rollup-plugin-uglify@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/rollup-plugin-uglify/-/rollup-plugin-uglify-6.0.2.tgz#681042cfdf7ea4e514971946344e1a95bc2772fe" + integrity sha512-qwz2Tryspn5QGtPUowq5oumKSxANKdrnfz7C0jm4lKxvRDsNe/hSGsB9FntUul7UeC4TsZEWKErVgE1qWSO0gw== dependencies: - uglify-es "^3.3.7" + "@babel/code-frame" "^7.0.0" + jest-worker "^24.0.0" + serialize-javascript "^1.6.1" + uglify-js "^3.4.9" -rollup-pluginutils@^1.5.0: - version "1.5.2" - resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz#1e156e778f94b7255bfa1b3d0178be8f5c552408" +rollup-pluginutils@^2.3.0, rollup-pluginutils@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.3.3.tgz#3aad9b1eb3e7fe8262820818840bf091e5ae6794" + integrity sha512-2XZwja7b6P5q4RZ5FhyX1+f46xi1Z3qBKigLRZ6VTZjwbN0K1IFGMlwm06Uu0Emcre2Z63l77nq/pzn+KxIEoA== dependencies: - estree-walker "^0.2.1" - minimatch "^3.0.2" - -rollup-pluginutils@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.0.1.tgz#7ec95b3573f6543a46a6461bd9a7c544525d0fc0" - dependencies: - estree-walker "^0.3.0" + estree-walker "^0.5.2" micromatch "^2.3.11" -rollup@^0.55.3: - version "0.55.5" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.55.5.tgz#2f88c300f7cf24b5ec2dca8a6aba73b04e087e93" - -run-async@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389" +rollup@^0.68.0: + version "0.68.2" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.68.2.tgz#c26afb5d981ca7a1a32f76087dbde9dad4fcc653" + integrity sha512-WgjNCXYv7ZbtStIap1+tz4pd2zwz0XYN//OILwEY6dINIFLVizK1iWdu+ZtUURL/OKnp8Lv2w8FBds8YihzX7Q== dependencies: - once "^1.3.0" + "@types/estree" "0.0.39" + "@types/node" "*" run-async@^2.2.0: version "2.3.0" @@ -3716,69 +2915,55 @@ run-async@^2.2.0: dependencies: is-promise "^2.1.0" -run-parallel@^1.1.2: - version "1.1.6" - resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.6.tgz#29003c9a2163e01e2d2dfc90575f2c6c1d61a039" - -rx-lite-aggregates@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" +rxjs@^6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.4.0.tgz#f3bb0fe7bda7fb69deac0c16f17b50b0b8790504" + integrity sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw== dependencies: - rx-lite "*" + tslib "^1.9.0" -rx-lite@*, rx-lite@^4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -rx-lite@^3.1.2: - version "3.1.2" - resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" - -safe-buffer@^5.0.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" - -safer-buffer@^2.1.0: +"safer-buffer@>= 2.1.2 < 3": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sax@0.5.x: - version "0.5.8" - resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1" - -semver-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-1.0.0.tgz#92a4969065f9c70c694753d55248fc68f8f652c9" - -semver-truncate@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/semver-truncate/-/semver-truncate-1.1.2.tgz#57f41de69707a62709a7e0104ba2117109ea47e8" - dependencies: - semver "^5.3.0" +sax@~1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" -semver@5.3.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" +semver@^5.4.1, semver@^5.5.1: + version "5.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004" + integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg== -semver@^4.0.3: - version "4.3.6" - resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" +serialize-javascript@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.6.1.tgz#4d1f697ec49429a847ca6f442a2a755126c4d879" + integrity sha512-A5MOagrPFga4YaKQSWHryl7AXvbQkEqpw4NNYMTNYUNV51bA8ABHgYFpqKx+YFFrw59xMV1qGH1R4AgoNIVgCw== -set-blocking@^2.0.0, set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" -set-immediate-shim@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" - -setimmediate@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" +shallow-clone@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" + integrity sha1-WQnodLp3EG1zrEFM/sH/yofZcGA= + dependencies: + is-extendable "^0.1.1" + kind-of "^2.0.1" + lazy-cache "^0.2.3" + mixin-object "^2.0.1" shebang-command@^1.2.0: version "1.2.0" @@ -3790,66 +2975,39 @@ shebang-regex@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" -shell-quote@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" - dependencies: - array-filter "~0.0.0" - array-map "~0.0.0" - array-reduce "~0.0.0" - jsonify "~0.0.0" - -shelljs@^0.7.5: - version "0.7.8" - resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.8.tgz#decbcf874b0d1e5fb72e14b164a9683048e9acb3" - dependencies: - glob "^7.0.0" - interpret "^1.0.0" - rechoir "^0.6.2" - signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" -slash@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" - -slice-ansi@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" - -slice-ansi@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-1.0.0.tgz#044f1a49d8842ff307aad6b505ed178bd950134d" +slice-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" + integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== dependencies: + ansi-styles "^3.2.0" + astral-regex "^1.0.0" is-fullwidth-code-point "^2.0.0" -sntp@1.x.x: - version "1.0.9" - resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" - dependencies: - hoek "2.x.x" - -source-map-support@^0.4.2: - version "0.4.10" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.10.tgz#d7b19038040a14c0837a18e630a196453952b378" - dependencies: - source-map "^0.5.3" - -source-map@0.1.x: - version "0.1.43" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" - dependencies: - amdefine ">=0.0.4" - -source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6: +source-map@^0.5.0, source-map@^0.5.3: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +sourcemap-codec@^1.4.4: + version "1.4.4" + resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.4.tgz#c63ea927c029dd6bd9a2b7fa03b3fec02ad56e9f" + integrity sha512-CYAPYdBu34781kLHkaW3m6b/uUSyMOC2R61gcYMWooeuaGtjof86ZA/8T+qVPPt7np1085CR9hmMGrySwEc8Xg== + +space-separated-tokens@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.2.tgz#e95ab9d19ae841e200808cd96bc7bd0adbbb3412" + integrity sha512-G3jprCEw+xFEs0ORweLmblJ3XLymGGr6hxZYTYZjIlvDti9vOBUjRQa1Rzjt012aRrocKstHwdNi+F7HguPsEA== + dependencies: + trim "0.0.1" spdx-correct@^3.0.0: version "3.0.0" @@ -3873,60 +3031,16 @@ spdx-license-ids@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87" -split@0.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" - dependencies: - through "2" - sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" -sshpk@^1.7.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.14.1.tgz#130f5975eddad963f1d56f92b9ac6c51fa9f83eb" - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - dashdash "^1.12.0" - getpass "^0.1.1" - optionalDependencies: - bcrypt-pbkdf "^1.0.0" - ecc-jsbn "~0.1.1" - jsbn "~0.1.0" - tweetnacl "~0.14.0" +stable@~0.1.6: + version "0.1.8" + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== -standard-engine@~7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/standard-engine/-/standard-engine-7.0.0.tgz#ebb77b9c8fc2c8165ffa353bd91ba0dff41af690" - dependencies: - deglob "^2.1.0" - get-stdin "^5.0.1" - minimist "^1.1.0" - pkg-conf "^2.0.0" - -standard@^10.0.2: - version "10.0.3" - resolved "https://registry.yarnpkg.com/standard/-/standard-10.0.3.tgz#7869bcbf422bdeeaab689a1ffb1fea9677dd50ea" - dependencies: - eslint "~3.19.0" - eslint-config-standard "10.2.1" - eslint-config-standard-jsx "4.0.2" - eslint-plugin-import "~2.2.0" - eslint-plugin-node "~4.2.2" - eslint-plugin-promise "~3.5.0" - eslint-plugin-react "~6.10.0" - eslint-plugin-standard "~3.0.1" - standard-engine "~7.0.0" - -stream-combiner@~0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14" - dependencies: - duplexer "~0.1.1" - -string-width@^1.0.1, string-width@^1.0.2: +string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" dependencies: @@ -3941,24 +3055,13 @@ string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: is-fullwidth-code-point "^2.0.0" strip-ansi "^4.0.0" -string.prototype.padend@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0" - dependencies: - define-properties "^1.1.2" - es-abstract "^1.4.3" - function-bind "^1.0.2" - string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" -stringstream@~0.0.4: - version "0.0.5" - resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" - strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -3971,46 +3074,26 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-bom@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" +strip-ansi@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.0.0.tgz#f78f68b5d0866c20b2c9b8c61b5298508dc8756f" + integrity sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow== dependencies: - is-utf8 "^0.2.0" + ansi-regex "^4.0.0" strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" -strip-indent@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" - dependencies: - get-stdin "^4.0.1" +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= -strip-json-comments@~2.0.1: +strip-json-comments@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - -stylus@^0.54.5: - version "0.54.5" - resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.5.tgz#42b9560931ca7090ce8515a798ba9e6aa3d6dc79" - dependencies: - css-parse "1.7.x" - debug "*" - glob "7.0.x" - mkdirp "0.5.x" - sax "0.5.x" - source-map "0.1.x" - -supports-color@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - -supports-color@^3.2.3: - version "3.2.3" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" - dependencies: - has-flag "^1.0.0" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= supports-color@^5.3.0: version "5.4.0" @@ -4018,54 +3101,49 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -table@4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36" +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== dependencies: - ajv "^5.2.3" - ajv-keywords "^2.1.0" - chalk "^2.1.0" - lodash "^4.17.4" - slice-ansi "1.0.0" + has-flag "^3.0.0" + +svgo@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.1.1.tgz#12384b03335bcecd85cfa5f4e3375fed671cb985" + integrity sha512-GBkJbnTuFpM4jFbiERHDWhZc/S/kpHToqmZag3aEBjPYK44JAN2QBjvrGIxLOoCyMZjuFQIfTO2eJd8uwLY/9g== + dependencies: + coa "~2.0.1" + colors "~1.1.2" + css-select "^2.0.0" + css-select-base-adapter "~0.1.0" + css-tree "1.0.0-alpha.28" + css-url-regex "^1.1.0" + csso "^3.5.0" + js-yaml "^3.12.0" + mkdirp "~0.5.1" + object.values "^1.0.4" + sax "~1.2.4" + stable "~0.1.6" + unquote "~1.1.1" + util.promisify "~1.0.0" + +table@^5.0.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/table/-/table-5.2.2.tgz#61d474c9e4d8f4f7062c98c7504acb3c08aa738f" + integrity sha512-f8mJmuu9beQEDkKHLzOv4VxVYlU68NpdzjbGPl69i4Hx0sTopJuNxuzJd17iV2h24dAfa93u794OnDA5jqXvfQ== + dependencies: + ajv "^6.6.1" + lodash "^4.17.11" + slice-ansi "^2.0.0" string-width "^2.1.1" -table@^3.7.8: - version "3.8.3" - resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f" - dependencies: - ajv "^4.7.0" - ajv-keywords "^1.0.0" - chalk "^1.1.1" - lodash "^4.0.0" - slice-ansi "0.0.4" - string-width "^2.0.0" - -tar-pack@^3.4.0: - version "3.4.1" - resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" - dependencies: - debug "^2.2.0" - fstream "^1.0.10" - fstream-ignore "^1.0.5" - once "^1.3.3" - readable-stream "^2.1.4" - rimraf "^2.5.1" - tar "^2.2.1" - uid-number "^0.0.6" - -tar@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" - dependencies: - block-stream "*" - fstream "^1.0.2" - inherits "2" - -text-table@~0.2.0: +text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -through@2, through@^2.3.6, through@~2.3, through@~2.3.1: +through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" @@ -4075,45 +3153,28 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" -to-fast-properties@^1.0.1, to-fast-properties@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - to-fast-properties@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" -tough-cookie@~2.3.0: - version "2.3.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" - dependencies: - punycode "^1.4.1" - -tree-kill@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.0.tgz#5846786237b4239014f05db156b643212d4c6f36" - -trim-newlines@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" - trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - dependencies: - safe-buffer "^5.0.1" +trim@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/trim/-/trim-0.0.1.tgz#5858547f6b290757ee95cccc666fb50084c460dd" + integrity sha1-WFhUf2spB1fulczMZm+1AITEYN0= -tunnel-agent@~0.4.1: - version "0.4.3" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" +trough@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.3.tgz#e29bd1614c6458d44869fc28b255ab7857ef7c24" + integrity sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw== -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" +tslib@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" + integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== type-check@~0.3.2: version "0.3.2" @@ -4121,52 +3182,80 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -typedarray@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - -ua-parser-js@^0.7.9: - version "0.7.17" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac" - -uglify-es@^3.3.7: - version "3.3.9" - resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" +uglify-js@^3.4.9: + version "3.4.9" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.9.tgz#af02f180c1207d76432e473ed24a28f4a782bae3" + integrity sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q== dependencies: - commander "~2.13.0" + commander "~2.17.1" source-map "~0.6.1" -uid-number@^0.0.6: - version "0.0.6" - resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - -user-home@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" - -user-home@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f" +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== dependencies: - os-homedir "^1.0.0" + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" + +unicode-match-property-value-ecmascript@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.0.2.tgz#9f1dc76926d6ccf452310564fd834ace059663d4" + integrity sha512-Rx7yODZC1L/T8XKo/2kNzVAQaRE88AaMvI1EF/Xnj3GW2wzN6fop9DDWuFAKUVFH7vozkz26DzP0qyWLKLIVPQ== + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.4.tgz#5a533f31b4317ea76f17d807fa0d116546111dd0" + integrity sha512-2WSLa6OdYd2ng8oqiGIWnJqyFArvhn+5vgx5GTxMbUYjCYKUcuKS62YLFF0R/BDGlB1yzXjQOLtPAfHsgirEpg== + +unified@^7.0.2: + version "7.1.0" + resolved "https://registry.yarnpkg.com/unified/-/unified-7.1.0.tgz#5032f1c1ee3364bd09da12e27fdd4a7553c7be13" + integrity sha512-lbk82UOIGuCEsZhPj8rNAkXSDXd6p0QLzIuSsCdxrqnqU56St4eyOB+AlXsVgVeRmetPTYydIuvFfpDIed8mqw== + dependencies: + "@types/unist" "^2.0.0" + "@types/vfile" "^3.0.0" + bail "^1.0.0" + extend "^3.0.0" + is-plain-obj "^1.1.0" + trough "^1.0.0" + vfile "^3.0.0" + x-is-string "^0.1.0" + +unist-util-stringify-position@^1.0.0, unist-util-stringify-position@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz#3f37fcf351279dcbca7480ab5889bb8a832ee1c6" + integrity sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ== + +unquote@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" + integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= + +uri-js@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" + integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== + dependencies: + punycode "^2.1.0" util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.0.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" - -v8flags@^2.0.10: - version "2.0.11" - resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.11.tgz#bca8f30f0d6d60612cc2c00641e6962d42ae6881" +util.promisify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== dependencies: - user-home "^1.1.1" + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" validate-npm-package-license@^3.0.1: version "3.0.3" @@ -4175,25 +3264,32 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" +vfile-message@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-1.1.1.tgz#5833ae078a1dfa2d96e9647886cd32993ab313e1" + integrity sha512-1WmsopSGhWt5laNir+633LszXvZ+Z/lxveBf6yhGsqnQIhlhzooZae7zV6YVM1Sdkw68dtAW3ow0pOdPANugvA== dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" + unist-util-stringify-position "^1.1.1" -vlq@^0.2.2: - version "0.2.3" - resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" +vfile@^3.0.0, vfile@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-3.0.1.tgz#47331d2abe3282424f4a4bb6acd20a44c4121803" + integrity sha512-y7Y3gH9BsUSdD4KzHsuMaCzRjglXN0W2EcMf0gpvu6+SbsGhMje7xDc8AEoeXy6mIwCKMI6BkjMsRjzQbhMEjQ== + dependencies: + is-buffer "^2.0.0" + replace-ext "1.0.0" + unist-util-stringify-position "^1.0.0" + vfile-message "^1.0.0" -whatwg-fetch@>=0.10.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" +web-namespaces@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.2.tgz#c8dc267ab639505276bae19e129dbd6ae72b22b4" + integrity sha512-II+n2ms4mPxK+RnIxRPOw3zwF2jRscdJIUE9BfkKHm4FYEg9+biIoTMnaZF5MpemE3T+VhMLrhbyD4ilkPCSbg== -which-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= which@^1.2.9: version "1.3.0" @@ -4201,16 +3297,6 @@ which@^1.2.9: dependencies: isexe "^2.0.0" -wide-align@^1.1.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" - dependencies: - string-width "^1.0.2" - -window-size@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" - wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" @@ -4232,40 +3318,46 @@ write@^0.2.1: dependencies: mkdirp "^0.5.1" -xtend@^4.0.0, xtend@^4.0.1: +x-is-string@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" + integrity sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI= + +xtend@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" -y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" +"y18n@^3.2.1 || ^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" -yargs-parser@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-2.4.1.tgz#85568de3cf150ff49fa51825f03a8c880ddcc5c4" +yargs-parser@^11.1.1: + version "11.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" + integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== dependencies: - camelcase "^3.0.0" - lodash.assign "^4.0.6" + camelcase "^5.0.0" + decamelize "^1.2.0" -yargs@^4.7.1: - version "4.8.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" +yargs@^12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" + integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== dependencies: - cliui "^3.2.0" - decamelize "^1.1.1" + cliui "^4.0.0" + decamelize "^1.2.0" + find-up "^3.0.0" get-caller-file "^1.0.1" - lodash.assign "^4.0.3" - os-locale "^1.4.0" - read-pkg-up "^1.0.1" + os-locale "^3.0.0" require-directory "^2.1.1" require-main-filename "^1.0.1" set-blocking "^2.0.0" - string-width "^1.0.1" - which-module "^1.0.0" - window-size "^0.2.0" - y18n "^3.2.1" - yargs-parser "^2.4.1" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1 || ^4.0.0" + yargs-parser "^11.1.1"