diff --git a/.editorconfig b/.editorconfig index 0f11b8c..f15441a 100644 --- a/.editorconfig +++ b/.editorconfig @@ -5,10 +5,6 @@ charset = utf-8 end_of_line = lf insert_final_newline = true trim_trailing_whitespace = true -indent_style = tab -indent_size = 4 - -[{.jshintrc,*.json,*.yml}] indent_style = space indent_size = 2 diff --git a/.eslintrc b/.eslintrc index 0f369b7..a6b3192 100644 --- a/.eslintrc +++ b/.eslintrc @@ -99,9 +99,9 @@ ], "indent": [ "error", - "tab", + 2, { - "MemberExpression": "off" + "SwitchCase": 1 } ], "space-before-function-paren": [ @@ -135,4 +135,4 @@ "sourceType": "module", "ecmaVersion": 2018 } -} \ No newline at end of file +} diff --git a/__tests__/functions.js b/__tests__/functions.js index 7339170..a8a544d 100644 --- a/__tests__/functions.js +++ b/__tests__/functions.js @@ -1,228 +1,228 @@ /* eslint-disable no-magic-numbers */ -import { reset, create, isStatic, getCss, refresh } from '../src/functions'; -import { INVIEW_EVENT, RESET_KEYS, ZERO_SEC } from '../src/constants'; +import {reset, create, isStatic, getCss, refresh} from '../src/functions'; +import {INVIEW_EVENT, RESET_KEYS, ZERO_SEC} from '../src/constants'; -const cssValue = Object.assign(...RESET_KEYS.map((key, index) => ({ [ key ]: index }))); +const cssValue = Object.assign(...RESET_KEYS.map((key, index) => ({[key]: index}))); describe('reset', () => { - it('should not reset', () => { - const attr = jest.fn(() => false); - const target = { - attr: attr, - }; - reset(target); - - expect(attr).toBeCalled(); - }); - - it('should reset', () => { - const attr = jest.fn((key, value) => { - expect(value === undefined || value === false).toBeTruthy(); - return true; - }); - const off = jest.fn(); - const target = { - attr: attr, - off: off, - 0: { - resetValues: false, - }, - }; - reset(target); - - expect(attr).toBeCalledTimes(2); - expect(off).toBeCalled(); - }); - - it('should reset', () => { - const css = jest.fn((key, value) => { - expect(cssValue).toHaveProperty(key); - expect(value).toBe(cssValue[ key ]); - }); - const target = { - attr: () => true, - off: () => true, - css: css, - 0: { - resetValues: cssValue, - }, - }; - reset(target); - - RESET_KEYS.forEach(key => { - expect(target[ 0 ]).not.toHaveProperty(key); - }); - expect(css).toBeCalled(); - }); + it('should not reset', () => { + const attr = jest.fn(() => false); + const target = { + attr: attr, + }; + reset(target); + + expect(attr).toBeCalled(); + }); + + it('should reset', () => { + const attr = jest.fn((key, value) => { + expect(value === undefined || value === false).toBeTruthy(); + return true; + }); + const off = jest.fn(); + const target = { + attr: attr, + off: off, + 0: { + resetValues: false, + }, + }; + reset(target); + + expect(attr).toBeCalledTimes(2); + expect(off).toBeCalled(); + }); + + it('should reset', () => { + const css = jest.fn((key, value) => { + expect(cssValue).toHaveProperty(key); + expect(value).toBe(cssValue[key]); + }); + const target = { + attr: () => true, + off: () => true, + css: css, + 0: { + resetValues: cssValue, + }, + }; + reset(target); + + RESET_KEYS.forEach(key => { + expect(target[0]).not.toHaveProperty(key); + }); + expect(css).toBeCalled(); + }); }); describe('create', () => { - const test = (options, check) => { - const off = jest.fn(); - const trigger = jest.fn(); - const on = jest.fn((event, callback) => { - expect(event).toBe(INVIEW_EVENT); - callback({}, true); - callback({}, false); - }); - const data = jest.fn(() => ({ - on: on, - })); - const stopCss = jest.fn(); - const stop = jest.fn(() => ({ - css: stopCss, - })); - const css = () => ({ - attr: () => { - }, - }); - - create({ - 0: {}, - css: css, - data: data, - stop: stop, - off: off, - trigger: trigger, - }, options); - - expect(data).toBeCalled(); - expect(on).toBeCalled(); - expect(stop).toBeCalled(); - expect(stopCss).toBeCalled(); - - check(off, trigger); - }; - - it('should create', () => { - test({ - stripe: false, - repeat: false, - cssFilter: () => ({}), - }, (off, trigger) => { - expect(off).toBeCalled(); - expect(trigger).not.toBeCalled(); - }); - }); - - it('should create', () => { - test({ - stripe: false, - repeat: true, - cssFilter: () => ({}), - }, (off, trigger) => { - expect(off).not.toBeCalled(); - expect(trigger).toBeCalled(); - }); - }); + const test = (options, check) => { + const off = jest.fn(); + const trigger = jest.fn(); + const on = jest.fn((event, callback) => { + expect(event).toBe(INVIEW_EVENT); + callback({}, true); + callback({}, false); + }); + const data = jest.fn(() => ({ + on: on, + })); + const stopCss = jest.fn(); + const stop = jest.fn(() => ({ + css: stopCss, + })); + const css = () => ({ + attr: () => { + }, + }); + + create({ + 0: {}, + css: css, + data: data, + stop: stop, + off: off, + trigger: trigger, + }, options); + + expect(data).toBeCalled(); + expect(on).toBeCalled(); + expect(stop).toBeCalled(); + expect(stopCss).toBeCalled(); + + check(off, trigger); + }; + + it('should create', () => { + test({ + stripe: false, + repeat: false, + cssFilter: () => ({}), + }, (off, trigger) => { + expect(off).toBeCalled(); + expect(trigger).not.toBeCalled(); + }); + }); + + it('should create', () => { + test({ + stripe: false, + repeat: true, + cssFilter: () => ({}), + }, (off, trigger) => { + expect(off).not.toBeCalled(); + expect(trigger).toBeCalled(); + }); + }); }); describe('isStatic', () => { - it('should true', () => { - expect(isStatic({ stripe: true })).toBeTruthy(); - expect(isStatic({ stripe: false, delay: ZERO_SEC, duration: ZERO_SEC })).toBeTruthy(); - }); - - it('should false', () => { - expect(isStatic({})).toBeFalsy(); - expect(isStatic({ stripe: false, delay: ZERO_SEC, duration: '.6s' })).toBeFalsy(); - }); + it('should true', () => { + expect(isStatic({stripe: true})).toBeTruthy(); + expect(isStatic({stripe: false, delay: ZERO_SEC, duration: ZERO_SEC})).toBeTruthy(); + }); + + it('should false', () => { + expect(isStatic({})).toBeFalsy(); + expect(isStatic({stripe: false, delay: ZERO_SEC, duration: '.6s'})).toBeFalsy(); + }); }); describe('getCss', () => { - it('should get marker css', () => { - const css = getCss({ - stripe: false, - 'padding_bottom': 'a', - 'font_weight': 'b', - thickness: 'c', - color: 'd', - cssFilter: css => css, - }); - expect(css).toHaveProperty('display'); - expect(css).toHaveProperty('background-position'); - expect(css).toHaveProperty('padding-bottom'); - expect(css).toHaveProperty('font-weight'); - expect(css).toHaveProperty('background-size'); - expect(css).toHaveProperty('background-repeat'); - expect(css).toHaveProperty('background-image'); - expect(css[ 'display' ]).toBe('inline'); - expect(css[ 'background-position' ]).toBe('left 0 center'); - expect(css[ 'padding-bottom' ]).toBe('a'); - expect(css[ 'font-weight' ]).toBe('b'); - expect(css[ 'background-size' ]).toBe('200% c'); - expect(css[ 'background-repeat' ]).toBe('repeat-x'); - expect(css[ 'background-image' ]).toBe('linear-gradient(to right, rgba(255,255,255,0) 50%, d 50%)'); - }); - - it('should get marker css', () => { - const css = getCss({ - stripe: false, - delay: ZERO_SEC, - duration: ZERO_SEC, - 'padding_bottom': 'a', - cssFilter: css => css, - }); - expect(css).toHaveProperty('background-position'); - expect(css[ 'background-position' ]).toBe('left -100% center'); - }); - - it('should get stripe css', () => { - const cssFilter = jest.fn(css => { - Object.keys(css).forEach(key => css[ key ] += '-test'); - return css; - }); - const css = getCss({ - stripe: true, - 'padding_bottom': 'a', - thickness: 'b', - color: 'c', - 'stripe_thickness': 3, - cssFilter: cssFilter, - }); - - expect(css).toHaveProperty('display'); - expect(css).toHaveProperty('background-position'); - expect(css).toHaveProperty('padding-bottom'); - expect(css).toHaveProperty('background-size'); - expect(css).toHaveProperty('background-repeat'); - expect(css).toHaveProperty('background-image'); - expect(css[ 'display' ]).toBe('inline-test'); - expect(css[ 'background-position' ]).toBe('left 0 center-test'); - expect(css[ 'padding-bottom' ]).toBe('a-test'); - expect(css[ 'background-size' ]).toBe('100% b-test'); - expect(css[ 'background-repeat' ]).toBe('no-repeat-test'); - expect(css[ 'background-image' ]).toBe('repeating-linear-gradient(-45deg, c, c 3px, transparent 3px, transparent 6px)-test'); - expect(cssFilter).toBeCalled(); - }); + it('should get marker css', () => { + const css = getCss({ + stripe: false, + 'padding_bottom': 'a', + 'font_weight': 'b', + thickness: 'c', + color: 'd', + cssFilter: css => css, + }); + expect(css).toHaveProperty('display'); + expect(css).toHaveProperty('background-position'); + expect(css).toHaveProperty('padding-bottom'); + expect(css).toHaveProperty('font-weight'); + expect(css).toHaveProperty('background-size'); + expect(css).toHaveProperty('background-repeat'); + expect(css).toHaveProperty('background-image'); + expect(css['display']).toBe('inline'); + expect(css['background-position']).toBe('left 0 center'); + expect(css['padding-bottom']).toBe('a'); + expect(css['font-weight']).toBe('b'); + expect(css['background-size']).toBe('200% c'); + expect(css['background-repeat']).toBe('repeat-x'); + expect(css['background-image']).toBe('linear-gradient(to right, rgba(255,255,255,0) 50%, d 50%)'); + }); + + it('should get marker css', () => { + const css = getCss({ + stripe: false, + delay: ZERO_SEC, + duration: ZERO_SEC, + 'padding_bottom': 'a', + cssFilter: css => css, + }); + expect(css).toHaveProperty('background-position'); + expect(css['background-position']).toBe('left -100% center'); + }); + + it('should get stripe css', () => { + const cssFilter = jest.fn(css => { + Object.keys(css).forEach(key => css[key] += '-test'); + return css; + }); + const css = getCss({ + stripe: true, + 'padding_bottom': 'a', + thickness: 'b', + color: 'c', + 'stripe_thickness': 3, + cssFilter: cssFilter, + }); + + expect(css).toHaveProperty('display'); + expect(css).toHaveProperty('background-position'); + expect(css).toHaveProperty('padding-bottom'); + expect(css).toHaveProperty('background-size'); + expect(css).toHaveProperty('background-repeat'); + expect(css).toHaveProperty('background-image'); + expect(css['display']).toBe('inline-test'); + expect(css['background-position']).toBe('left 0 center-test'); + expect(css['padding-bottom']).toBe('a-test'); + expect(css['background-size']).toBe('100% b-test'); + expect(css['background-repeat']).toBe('no-repeat-test'); + expect(css['background-image']).toBe('repeating-linear-gradient(-45deg, c, c 3px, transparent 3px, transparent 6px)-test'); + expect(cssFilter).toBeCalled(); + }); }); describe('refresh', () => { - it('should refresh', () => { - const off = jest.fn(); - const attr = jest.fn(); - const css = jest.fn(key => { - if (typeof key === 'object') { - return { attr: attr }; - } - return cssValue[ key ]; - }); - const target = { - off: off, - css: css, - attr: () => false, - 0: {}, - }; - refresh(target, { - stripe: true, - cssFilter: css => css, - }); - - expect(off).toBeCalled(); - expect(attr).toBeCalled(); - expect(target[ 0 ]).toHaveProperty('resetValues'); - RESET_KEYS.forEach((key, index) => { - expect(target[ 0 ].resetValues[ key ]).toBe(index); - }); - }); + it('should refresh', () => { + const off = jest.fn(); + const attr = jest.fn(); + const css = jest.fn(key => { + if (typeof key === 'object') { + return {attr: attr}; + } + return cssValue[key]; + }); + const target = { + off: off, + css: css, + attr: () => false, + 0: {}, + }; + refresh(target, { + stripe: true, + cssFilter: css => css, + }); + + expect(off).toBeCalled(); + expect(attr).toBeCalled(); + expect(target[0]).toHaveProperty('resetValues'); + RESET_KEYS.forEach((key, index) => { + expect(target[0].resetValues[key]).toBe(index); + }); + }); }); diff --git a/__tests__/utils.js b/__tests__/utils.js index c94ca30..daeab2a 100644 --- a/__tests__/utils.js +++ b/__tests__/utils.js @@ -1,90 +1,90 @@ /* eslint-disable no-magic-numbers */ -import { PREFIX, ZERO_SEC } from '../src/constants'; -import { SETTINGS_DEFAULTS } from '../src/defaults'; -import { parseTime, parseStripeThickness, getTargetOptions, toSnakeCase, toCamelCase } from '../src/utils'; +import {PREFIX, ZERO_SEC} from '../src/constants'; +import {SETTINGS_DEFAULTS} from '../src/defaults'; +import {parseTime, parseStripeThickness, getTargetOptions, toSnakeCase, toCamelCase} from '../src/utils'; describe('parseTime', () => { - it('should parse time', () => { - expect(parseTime('0.6s')).toBe('0.6s'); - expect(parseTime('-.6s')).toBe('-.6s'); - expect(parseTime('600ms')).toBe('600ms'); - }); + it('should parse time', () => { + expect(parseTime('0.6s')).toBe('0.6s'); + expect(parseTime('-.6s')).toBe('-.6s'); + expect(parseTime('600ms')).toBe('600ms'); + }); - it('should return default', () => { - expect(parseTime('')).toBe(ZERO_SEC); - expect(parseTime('abc')).toBe(ZERO_SEC); - expect(parseTime('10')).toBe(ZERO_SEC); - }); + it('should return default', () => { + expect(parseTime('')).toBe(ZERO_SEC); + expect(parseTime('abc')).toBe(ZERO_SEC); + expect(parseTime('10')).toBe(ZERO_SEC); + }); }); describe('parseStripeThickness', () => { - it('should parse stripe thickness', () => { - expect(parseStripeThickness(10)).toBe(10); - expect(parseStripeThickness('10')).toBe(10); - expect(parseStripeThickness('10em')).toBe(10); - }); + it('should parse stripe thickness', () => { + expect(parseStripeThickness(10)).toBe(10); + expect(parseStripeThickness('10')).toBe(10); + expect(parseStripeThickness('10em')).toBe(10); + }); - it('should return default', () => { - expect(parseStripeThickness('')).toBe(SETTINGS_DEFAULTS.stripe_thickness); - expect(parseStripeThickness('abc')).toBe(SETTINGS_DEFAULTS.stripe_thickness); - expect(parseStripeThickness('em10')).toBe(SETTINGS_DEFAULTS.stripe_thickness); - }); + it('should return default', () => { + expect(parseStripeThickness('')).toBe(SETTINGS_DEFAULTS.stripe_thickness); + expect(parseStripeThickness('abc')).toBe(SETTINGS_DEFAULTS.stripe_thickness); + expect(parseStripeThickness('em10')).toBe(SETTINGS_DEFAULTS.stripe_thickness); + }); }); describe('getTargetOptions', () => { - const target = data => ({ - data: jest.fn(key => { - const _key = key.replace(new RegExp('^' + PREFIX), ''); - return _key in data ? data[ _key ] : undefined; - }), - }); + const target = data => ({ + data: jest.fn(key => { + const _key = key.replace(new RegExp('^' + PREFIX), ''); + return _key in data ? data[_key] : undefined; + }), + }); - it('should get target options', () => { - const options = getTargetOptions(target({ - 'padding_bottom': '100em', - 'stripe_thickness': 1000, - delay: 10, - duration: '.5ms', - }), []); - expect(options).toHaveProperty('padding_bottom'); - expect(options).toHaveProperty('stripe_thickness'); - expect(options).toHaveProperty('delay'); - expect(options).toHaveProperty('duration'); - expect(options.padding_bottom).toBe('100em'); - expect(options.stripe_thickness).toBe(1000); - expect(options.delay).toBe(ZERO_SEC); - expect(options.duration).toBe('.5ms'); - }); + it('should get target options', () => { + const options = getTargetOptions(target({ + 'padding_bottom': '100em', + 'stripe_thickness': 1000, + delay: 10, + duration: '.5ms', + }), []); + expect(options).toHaveProperty('padding_bottom'); + expect(options).toHaveProperty('stripe_thickness'); + expect(options).toHaveProperty('delay'); + expect(options).toHaveProperty('duration'); + expect(options.padding_bottom).toBe('100em'); + expect(options.stripe_thickness).toBe(1000); + expect(options.delay).toBe(ZERO_SEC); + expect(options.duration).toBe('.5ms'); + }); - it('should get target options', () => { - const options = getTargetOptions(target({ - 'stripe_thickness': '', - delay: '0.0ms', - }), [{ color: 'red' }]); - expect(options).toHaveProperty('stripe_thickness'); - expect(options).toHaveProperty('delay'); - expect(options).toHaveProperty('font_weight'); - expect(options).toHaveProperty('cssFilter'); - expect(options.stripe_thickness).toBe(SETTINGS_DEFAULTS.stripe_thickness); - expect(options.delay).toBe(ZERO_SEC); - expect(options.color).toBe('red'); - expect(options.font_weight).toBe(SETTINGS_DEFAULTS.font_weight); - expect(typeof options.cssFilter).toBe('function'); - expect(options.cssFilter('a')).toBe('a'); - }); + it('should get target options', () => { + const options = getTargetOptions(target({ + 'stripe_thickness': '', + delay: '0.0ms', + }), [{color: 'red'}]); + expect(options).toHaveProperty('stripe_thickness'); + expect(options).toHaveProperty('delay'); + expect(options).toHaveProperty('font_weight'); + expect(options).toHaveProperty('cssFilter'); + expect(options.stripe_thickness).toBe(SETTINGS_DEFAULTS.stripe_thickness); + expect(options.delay).toBe(ZERO_SEC); + expect(options.color).toBe('red'); + expect(options.font_weight).toBe(SETTINGS_DEFAULTS.font_weight); + expect(typeof options.cssFilter).toBe('function'); + expect(options.cssFilter('a')).toBe('a'); + }); }); describe('toSnakeCase', () => { - it('should convert to snake case', () => { - expect(toSnakeCase('camelCase')).toBe('camel_case'); - expect(toSnakeCase('test')).toBe('test'); - }); + it('should convert to snake case', () => { + expect(toSnakeCase('camelCase')).toBe('camel_case'); + expect(toSnakeCase('test')).toBe('test'); + }); }); describe('toCamelCase', () => { - it('should convert to camel case', () => { - expect(toCamelCase('snake_case')).toBe('snakeCase'); - expect(toCamelCase('kebab-case')).toBe('kebabCase'); - expect(toCamelCase('test')).toBe('test'); - }); + it('should convert to camel case', () => { + expect(toCamelCase('snake_case')).toBe('snakeCase'); + expect(toCamelCase('kebab-case')).toBe('kebabCase'); + expect(toCamelCase('test')).toBe('test'); + }); }); diff --git a/bin/gh-pages/plugin.js b/bin/gh-pages/plugin.js index 06009f0..7e57af9 100644 --- a/bin/gh-pages/plugin.js +++ b/bin/gh-pages/plugin.js @@ -3,7 +3,7 @@ import './index'; import './plugin.scss'; $(() => { - $('#app').html(` + $('#app').html(`
This page is demonstration of jQuery Marker Animation. @@ -82,8 +82,8 @@ $(() => {
`); - $('#app .marker-animation').markerAnimation(); - $('#app .reset-animation').on('click', () => { - $('#app .marker-animation').markerAnimation('refresh'); - }); + $('#app .marker-animation').markerAnimation(); + $('#app .reset-animation').on('click', () => { + $('#app .marker-animation').markerAnimation('refresh'); + }); }); diff --git a/bin/gh-pages/plugin.scss b/bin/gh-pages/plugin.scss index 8bac0b5..c5c12fc 100644 --- a/bin/gh-pages/plugin.scss +++ b/bin/gh-pages/plugin.scss @@ -1,27 +1,27 @@ #app { - max-width: 600px; - margin: 0 auto; + max-width: 600px; + margin: 0 auto; } .blank-box { - border: 3px solid #949495; - padding: 1.2em 1em; - margin: 1em 2%; - border-radius: 4px; + border: 3px solid #949495; + padding: 1.2em 1em; + margin: 1em 2%; + border-radius: 4px; } .reset-animation { - color: #fff; - font-weight: bold; - border-radius: 4px; - display: inline-block; - cursor: pointer; - line-height: normal; - padding: 10px 16px; - text-decoration: none; - text-align: center; - font-size: 14px; - border: 2px solid transparent; - position: relative; - background-color: #2ca9e1; + color: #fff; + font-weight: bold; + border-radius: 4px; + display: inline-block; + cursor: pointer; + line-height: normal; + padding: 10px 16px; + text-decoration: none; + text-align: center; + font-size: 14px; + border: 2px solid transparent; + position: relative; + background-color: #2ca9e1; } diff --git a/jest.config.js b/jest.config.js index 9b55f79..200df09 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,8 +1,8 @@ -module.exports = { - verbose: true, - transform: { - '^.+\\.js$': '/node_modules/babel-jest', - }, - moduleFileExtensions: [ 'js' ], - coverageDirectory: 'coverage', -}; \ No newline at end of file +module.exports = { + verbose: true, + transform: { + '^.+\\.js$': '/node_modules/babel-jest', + }, + moduleFileExtensions: ['js'], + coverageDirectory: 'coverage', +}; diff --git a/package.json b/package.json index 9d48f24..290691e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jquery.marker-animation", - "version": "1.4.23", + "version": "1.4.24", "description": "Marker animation jQuery plugin", "author": { "name": "Technote", @@ -32,13 +32,13 @@ "@babel/plugin-transform-runtime": "^7.10.3", "@babel/preset-env": "^7.10.3", "@babel/register": "^7.10.3", - "babel-jest": "^26.0.1", + "babel-jest": "^26.1.0", "babel-loader": "^8.1.0", "duplicate-package-checker-webpack-plugin": "^3.0.0", "enzyme": "^3.11.0", "enzyme-to-json": "^3.5.0", - "eslint": "^7.3.0", - "jest": "^26.0.1", + "eslint": "^7.3.1", + "jest": "^26.1.0", "jquery-inview": "^1.1.2", "speed-measure-webpack-plugin": "^1.3.3", "webpack": "^4.43.0", diff --git a/src/constants.js b/src/constants.js index 36d1408..741e6d2 100644 --- a/src/constants.js +++ b/src/constants.js @@ -1,10 +1,10 @@ export const NAMESPACE = 'markerAnimation'; export const PREFIX = 'ma_'; export const RESET_KEYS = [ - 'background', - 'padding-bottom', - 'font-weight', - 'transition', + 'background', + 'padding-bottom', + 'font-weight', + 'transition', ]; export const MARKER_DATA = 'data-marker_animation'; export const ZERO_SEC = '0s'; diff --git a/src/defaults.js b/src/defaults.js index 1b26526..b9b0257 100644 --- a/src/defaults.js +++ b/src/defaults.js @@ -1,15 +1,15 @@ export const SETTINGS_DEFAULTS = { - color: '#fe9', - 'padding_bottom': '.6em', - thickness: '.6em', - delay: '.1s', - duration: '2s', - function: 'ease', - 'font_weight': 'bold', - repeat: false, - stripe: false, - 'stripe_thickness': 2, - cssFilter: function(css) { - return css; - }, + color: '#fe9', + 'padding_bottom': '.6em', + thickness: '.6em', + delay: '.1s', + duration: '2s', + function: 'ease', + 'font_weight': 'bold', + repeat: false, + stripe: false, + 'stripe_thickness': 2, + cssFilter: function(css) { + return css; + }, }; diff --git a/src/functions.js b/src/functions.js index 807a45e..cbd9728 100644 --- a/src/functions.js +++ b/src/functions.js @@ -1,15 +1,15 @@ -import { RESET_KEYS, MARKER_DATA, ZERO_SEC, NAMESPACE, INVIEW_EVENT, REFRESH_EVENT } from './constants'; +import {RESET_KEYS, MARKER_DATA, ZERO_SEC, NAMESPACE, INVIEW_EVENT, REFRESH_EVENT} from './constants'; /** * @param {object} target target * @returns {object} target */ export const reset = target => { - if (target.attr(MARKER_DATA)) { - destroy(target); - removeEvent(target); - } - return target; + if (target.attr(MARKER_DATA)) { + destroy(target); + removeEvent(target); + } + return target; }; /** @@ -17,14 +17,14 @@ export const reset = target => { * @returns {object} target */ export const destroy = target => { - if (target[ 0 ].resetValues) { - RESET_KEYS.forEach(key => { - target.css(key, target[ 0 ].resetValues[ key ]); - }); - delete target[ 0 ].resetValues; - } - target.attr(MARKER_DATA, false); - return target; + if (target[0].resetValues) { + RESET_KEYS.forEach(key => { + target.css(key, target[0].resetValues[key]); + }); + delete target[0].resetValues; + } + target.attr(MARKER_DATA, false); + return target; }; /** @@ -33,20 +33,20 @@ export const destroy = target => { * @returns {object} target */ export const create = (target, options) => { - target[ 0 ].resetValues = {}; - RESET_KEYS.forEach(key => target[ 0 ].resetValues[ key ] = target.css(key)); + target[0].resetValues = {}; + RESET_KEYS.forEach(key => target[0].resetValues[key] = target.css(key)); - if (!isStatic(options)) { - target.data('inview', false).on(INVIEW_EVENT, (event, isInView) => { - if (isInView) { - onInView(target, options); - } else { - offInView(target, options); - } - }); - } - target.css(getCss(options)).attr(MARKER_DATA, true); - return target; + if (!isStatic(options)) { + target.data('inview', false).on(INVIEW_EVENT, (event, isInView) => { + if (isInView) { + onInView(target, options); + } else { + offInView(target, options); + } + }); + } + target.css(getCss(options)).attr(MARKER_DATA, true); + return target; }; /** @@ -66,11 +66,11 @@ export const getCss = options => options.cssFilter(options.stripe ? getStripeCss * @returns {object} css */ const getCommonCss = options => Object.assign({ - 'display': 'inline', - 'background-position': 'left 0 center', - 'padding-bottom': options.padding_bottom, + 'display': 'inline', + 'background-position': 'left 0 center', + 'padding-bottom': options.padding_bottom, }, options.font_weight ? { - 'font-weight': options.font_weight, + 'font-weight': options.font_weight, } : {}); /** @@ -78,11 +78,11 @@ const getCommonCss = options => Object.assign({ * @returns {object} css */ const getMarkerCss = options => Object.assign({}, getCommonCss(options), { - 'background-size': `200% ${options.thickness}`, - 'background-repeat': 'repeat-x', - 'background-image': `linear-gradient(to right, rgba(255,255,255,0) 50%, ${options.color} 50%)`, + 'background-size': `200% ${options.thickness}`, + 'background-repeat': 'repeat-x', + 'background-image': `linear-gradient(to right, rgba(255,255,255,0) 50%, ${options.color} 50%)`, }, isStatic(options) ? { - 'background-position': 'left -100% center', + 'background-position': 'left -100% center', } : {}); /** @@ -90,10 +90,10 @@ const getMarkerCss = options => Object.assign({}, getCommonCss(options), { * @returns {object} css */ const getStripeCss = options => Object.assign({}, getCommonCss(options), { - 'background-size': `100% ${options.thickness}`, - 'background-repeat': 'no-repeat', - // eslint-disable-next-line no-magic-numbers - 'background-image': `repeating-linear-gradient(-45deg, ${options.color}, ${options.color} ${options.stripe_thickness}px, transparent ${options.stripe_thickness}px, transparent ${options.stripe_thickness * 2}px)`, + 'background-size': `100% ${options.thickness}`, + 'background-repeat': 'no-repeat', + // eslint-disable-next-line no-magic-numbers + 'background-image': `repeating-linear-gradient(-45deg, ${options.color}, ${options.color} ${options.stripe_thickness}px, transparent ${options.stripe_thickness}px, transparent ${options.stripe_thickness * 2}px)`, }); /** @@ -102,9 +102,9 @@ const getStripeCss = options => Object.assign({}, getCommonCss(options), { * @returns {object} target */ export const refresh = (target, options) => { - destroy(target); - stop(target); - return create(target, options); + destroy(target); + stop(target); + return create(target, options); }; /** @@ -112,8 +112,8 @@ export const refresh = (target, options) => { * @returns {object} target */ export const removeEvent = target => { - target.off(`.${NAMESPACE}`); - return target; + target.off(`.${NAMESPACE}`); + return target; }; /** @@ -121,8 +121,8 @@ export const removeEvent = target => { * @returns {object} target */ export const stop = target => { - target.off(INVIEW_EVENT); - return target; + target.off(INVIEW_EVENT); + return target; }; /** @@ -131,14 +131,14 @@ export const stop = target => { * @returns {object} target */ export const onInView = (target, options) => { - target.stop(true, true).css({ - transition: `background-position ${options.duration} ${options.function} ${options.delay}`, - 'background-position': 'left -100% center', - }); - if (!options.repeat) { - stop(target); - } - return target; + target.stop(true, true).css({ + transition: `background-position ${options.duration} ${options.function} ${options.delay}`, + 'background-position': 'left -100% center', + }); + if (!options.repeat) { + stop(target); + } + return target; }; /** @@ -147,8 +147,8 @@ export const onInView = (target, options) => { * @returns {object} target */ export const offInView = (target, options) => { - if (options.repeat) { - target.trigger(REFRESH_EVENT); - } - return target; + if (options.repeat) { + target.trigger(REFRESH_EVENT); + } + return target; }; diff --git a/src/index.js b/src/index.js index 3c3a181..dc56f13 100644 --- a/src/index.js +++ b/src/index.js @@ -1,9 +1,9 @@ require('jquery-inview'); import $ from 'jquery'; -import { setup } from './setup'; +import {setup} from './setup'; $.fn.markerAnimation = function(...args) { - return this.each(function() { - setup($(this), args); - }); + return this.each(function() { + setup($(this), args); + }); }; diff --git a/src/setup.js b/src/setup.js index 6edfe65..80ebb71 100644 --- a/src/setup.js +++ b/src/setup.js @@ -1,6 +1,6 @@ -import { DESTROY_EVENT, REFRESH_EVENT } from './constants'; -import { reset, create, destroy, removeEvent, refresh } from './functions'; -import { getTargetOptions } from './utils'; +import {DESTROY_EVENT, REFRESH_EVENT} from './constants'; +import {reset, create, destroy, removeEvent, refresh} from './functions'; +import {getTargetOptions} from './utils'; /** * @param {object} target target @@ -8,23 +8,23 @@ import { getTargetOptions } from './utils'; * @returns {object} target */ export const setup = (target, args) => { - if (args.length && typeof args[ 0 ] === 'string') { - if ('destroy' === args[ 0 ]) { - triggerDestroy(target); - return target; - } - if ('refresh' === args[ 0 ]) { - triggerRefresh(target); - return target; - } - } + if (args.length && typeof args[0] === 'string') { + if ('destroy' === args[0]) { + triggerDestroy(target); + return target; + } + if ('refresh' === args[0]) { + triggerRefresh(target); + return target; + } + } - reset(target); + reset(target); - const options = getTargetOptions(target, args); - create(target, options); - setupEvents(target, options); - return target; + const options = getTargetOptions(target, args); + create(target, options); + setupEvents(target, options); + return target; }; /** @@ -44,10 +44,10 @@ const triggerRefresh = target => target.trigger(REFRESH_EVENT); * @param {object} options options */ const setupEvents = (target, options) => { - target.on(DESTROY_EVENT, () => { - destroy(target); - removeEvent(target); - }).on(REFRESH_EVENT, () => { - refresh(target, options); - }); + target.on(DESTROY_EVENT, () => { + destroy(target); + removeEvent(target); + }).on(REFRESH_EVENT, () => { + refresh(target, options); + }); }; diff --git a/src/utils.js b/src/utils.js index 84711ac..0cbef59 100644 --- a/src/utils.js +++ b/src/utils.js @@ -1,5 +1,5 @@ -import { PREFIX, ZERO_SEC } from './constants'; -import { SETTINGS_DEFAULTS } from './defaults'; +import {PREFIX, ZERO_SEC} from './constants'; +import {SETTINGS_DEFAULTS} from './defaults'; /** * @param {string} value value @@ -19,21 +19,21 @@ export const parseStripeThickness = value => isNaN(parseInt(value, 10)) ? SETTIN * @returns {object} options */ export const getTargetOptions = (target, args) => { - const options = Object.assign({}, args.length && typeof args[ 0 ] === 'object' ? args[ 0 ] : {}); - const filters = { - 'delay': parseTime, - 'duration': parseTime, - 'stripe_thickness': parseStripeThickness, - }; - Object.keys(SETTINGS_DEFAULTS).forEach(key => { - const data = target.data(PREFIX + key); - if (isScalar(data) && key in filters) { - options[ key ] = filters[ key ](data); - } else if (undefined !== data) { - options[ key ] = data; - } - }); - return Object.assign({}, SETTINGS_DEFAULTS, options); + const options = Object.assign({}, args.length && typeof args[0] === 'object' ? args[0] : {}); + const filters = { + 'delay': parseTime, + 'duration': parseTime, + 'stripe_thickness': parseStripeThickness, + }; + Object.keys(SETTINGS_DEFAULTS).forEach(key => { + const data = target.data(PREFIX + key); + if (isScalar(data) && key in filters) { + options[key] = filters[key](data); + } else if (undefined !== data) { + options[key] = data; + } + }); + return Object.assign({}, SETTINGS_DEFAULTS, options); }; /** @@ -41,18 +41,18 @@ export const getTargetOptions = (target, args) => { * @returns {boolean} is scalar? */ export const isScalar = value => { - const type = typeof value; - return 'string' === type || 'number' === type || 'boolean' === type; + const type = typeof value; + return 'string' === type || 'number' === type || 'boolean' === type; }; /** * @param {string} string target string * @returns {string} snake case */ -export const toSnakeCase = string => string.replace(/[\w]([A-Z])/g, matches => `${matches[ 0 ]}_${matches[ 1 ]}`).toLowerCase(); +export const toSnakeCase = string => string.replace(/[\w]([A-Z])/g, matches => `${matches[0]}_${matches[1]}`).toLowerCase(); /** * @param {string} string target string * @returns {string} camel case */ -export const toCamelCase = string => string.replace('-', '_').replace(/(_\w)/g, matches => matches[ 1 ].toUpperCase()); +export const toCamelCase = string => string.replace('-', '_').replace(/(_\w)/g, matches => matches[1].toUpperCase()); diff --git a/webpack.config.js b/webpack.config.js index 4334b21..5d947f5 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,41 +1,41 @@ -const SpeedMeasurePlugin = require('speed-measure-webpack-plugin'); +const SpeedMeasurePlugin = require('speed-measure-webpack-plugin'); const DuplicatePackageCheckerPlugin = require('duplicate-package-checker-webpack-plugin'); -const webpack = require('webpack'); -const pkg = require('./package'); -const path = require('path'); +const webpack = require('webpack'); +const pkg = require('./package'); +const path = require('path'); const banner = `${pkg.name} ${pkg.version} - ${pkg.description}\nCopyright (c) ${new Date().getFullYear()} ${pkg.author} - ${pkg.homepage}\nLicense: ${pkg.license}`; const webpackConfig = { - context: path.resolve(__dirname, 'src'), - entry: './index.js', - output: { - path: path.resolve(__dirname, 'build'), - filename: 'index.js', - library: 'MarkerAnimation', - libraryTarget: 'umd', - }, - module: { - rules: [ - { - test: /\.js$/, - exclude: /node_modules/, - loader: 'babel-loader', - }, - ], - }, - externals: { - jquery: { - root: 'jQuery', - commonjs2: 'jquery', - commonjs: 'jquery', - amd: 'jquery', - }, - }, - plugins: [ - new webpack.BannerPlugin(banner), - new DuplicatePackageCheckerPlugin(), - ], + context: path.resolve(__dirname, 'src'), + entry: './index.js', + output: { + path: path.resolve(__dirname, 'build'), + filename: 'index.js', + library: 'MarkerAnimation', + libraryTarget: 'umd', + }, + module: { + rules: [ + { + test: /\.js$/, + exclude: /node_modules/, + loader: 'babel-loader', + }, + ], + }, + externals: { + jquery: { + root: 'jQuery', + commonjs2: 'jquery', + commonjs: 'jquery', + amd: 'jquery', + }, + }, + plugins: [ + new webpack.BannerPlugin(banner), + new DuplicatePackageCheckerPlugin(), + ], }; module.exports = (new SpeedMeasurePlugin()).wrap(webpackConfig); diff --git a/yarn.lock b/yarn.lock index 24032f6..e4ea482 100644 --- a/yarn.lock +++ b/yarn.lock @@ -894,103 +894,103 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== -"@jest/console@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.0.1.tgz#62b3b2fa8990f3cbffbef695c42ae9ddbc8f4b39" - integrity sha512-9t1KUe/93coV1rBSxMmBAOIK3/HVpwxArCA1CxskKyRiv6o8J70V8C/V3OJminVCTa2M0hQI9AWRd5wxu2dAHw== +"@jest/console@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.1.0.tgz#f67c89e4f4d04dbcf7b052aed5ab9c74f915b954" + integrity sha512-+0lpTHMd/8pJp+Nd4lyip+/Iyf2dZJvcCqrlkeZQoQid+JlThA4M9vxHtheyrQ99jJTMQam+es4BcvZ5W5cC3A== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" - jest-message-util "^26.0.1" - jest-util "^26.0.1" + jest-message-util "^26.1.0" + jest-util "^26.1.0" slash "^3.0.0" -"@jest/core@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.0.1.tgz#aa538d52497dfab56735efb00e506be83d841fae" - integrity sha512-Xq3eqYnxsG9SjDC+WLeIgf7/8KU6rddBxH+SCt18gEpOhAGYC/Mq+YbtlNcIdwjnnT+wDseXSbU0e5X84Y4jTQ== +"@jest/core@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.1.0.tgz#4580555b522de412a7998b3938c851e4f9da1c18" + integrity sha512-zyizYmDJOOVke4OO/De//aiv8b07OwZzL2cfsvWF3q9YssfpcKfcnZAwDY8f+A76xXSMMYe8i/f/LPocLlByfw== dependencies: - "@jest/console" "^26.0.1" - "@jest/reporters" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/reporters" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" ansi-escapes "^4.2.1" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^26.0.1" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" + jest-changed-files "^26.1.0" + jest-config "^26.1.0" + jest-haste-map "^26.1.0" + jest-message-util "^26.1.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-resolve-dependencies "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" - jest-watcher "^26.0.1" + jest-resolve "^26.1.0" + jest-resolve-dependencies "^26.1.0" + jest-runner "^26.1.0" + jest-runtime "^26.1.0" + jest-snapshot "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" + jest-watcher "^26.1.0" micromatch "^4.0.2" p-each-series "^2.1.0" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.0.1.tgz#82f519bba71959be9b483675ee89de8c8f72a5c8" - integrity sha512-xBDxPe8/nx251u0VJ2dFAFz2H23Y98qdIaNwnMK6dFQr05jc+Ne/2np73lOAx+5mSBO/yuQldRrQOf6hP1h92g== +"@jest/environment@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.1.0.tgz#378853bcdd1c2443b4555ab908cfbabb851e96da" + integrity sha512-86+DNcGongbX7ai/KE/S3/NcUVZfrwvFzOOWX/W+OOTvTds7j07LtC+MgGydH5c8Ri3uIrvdmVgd1xFD5zt/xA== dependencies: - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" + "@jest/fake-timers" "^26.1.0" + "@jest/types" "^26.1.0" + jest-mock "^26.1.0" -"@jest/fake-timers@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.0.1.tgz#f7aeff13b9f387e9d0cac9a8de3bba538d19d796" - integrity sha512-Oj/kCBnTKhm7CR+OJSjZty6N1bRDr9pgiYQr4wY221azLz5PHi08x/U+9+QpceAYOWheauLP8MhtSVFrqXQfhg== +"@jest/fake-timers@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.1.0.tgz#9a76b7a94c351cdbc0ad53e5a748789f819a65fe" + integrity sha512-Y5F3kBVWxhau3TJ825iuWy++BAuQzK/xEa+wD9vDH3RytW9f2DbMVodfUQC54rZDX3POqdxCgcKdgcOL0rYUpA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@sinonjs/fake-timers" "^6.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + jest-message-util "^26.1.0" + jest-mock "^26.1.0" + jest-util "^26.1.0" -"@jest/globals@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.0.1.tgz#3f67b508a7ce62b6e6efc536f3d18ec9deb19a9c" - integrity sha512-iuucxOYB7BRCvT+TYBzUqUNuxFX1hqaR6G6IcGgEqkJ5x4htNKo1r7jk1ji9Zj8ZMiMw0oB5NaA7k5Tx6MVssA== +"@jest/globals@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.1.0.tgz#6cc5d7cbb79b76b120f2403d7d755693cf063ab1" + integrity sha512-MKiHPNaT+ZoG85oMaYUmGHEqu98y3WO2yeIDJrs2sJqHhYOy3Z6F7F/luzFomRQ8SQ1wEkmahFAz2291Iv8EAw== dependencies: - "@jest/environment" "^26.0.1" - "@jest/types" "^26.0.1" - expect "^26.0.1" + "@jest/environment" "^26.1.0" + "@jest/types" "^26.1.0" + expect "^26.1.0" -"@jest/reporters@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.0.1.tgz#14ae00e7a93e498cec35b0c00ab21c375d9b078f" - integrity sha512-NWWy9KwRtE1iyG/m7huiFVF9YsYv/e+mbflKRV84WDoJfBqUrNRyDbL/vFxQcYLl8IRqI4P3MgPn386x76Gf2g== +"@jest/reporters@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.1.0.tgz#08952e90c90282e14ff49e927bdf1873617dae78" + integrity sha512-SVAysur9FOIojJbF4wLP0TybmqwDkdnFxHSPzHMMIYyBtldCW9gG+Q5xWjpMFyErDiwlRuPyMSJSU64A67Pazg== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.2" graceful-fs "^4.2.4" istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.0" + istanbul-lib-instrument "^4.0.3" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^26.0.1" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-haste-map "^26.1.0" + jest-resolve "^26.1.0" + jest-util "^26.1.0" + jest-worker "^26.1.0" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" @@ -999,61 +999,61 @@ optionalDependencies: node-notifier "^7.0.0" -"@jest/source-map@^26.0.0": - version "26.0.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.0.0.tgz#fd7706484a7d3faf7792ae29783933bbf48a4749" - integrity sha512-S2Z+Aj/7KOSU2TfW0dyzBze7xr95bkm5YXNUqqCek+HE0VbNNSNzrRwfIi5lf7wvzDTSS0/ib8XQ1krFNyYgbQ== +"@jest/source-map@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.1.0.tgz#a6a020d00e7d9478f4b690167c5e8b77e63adb26" + integrity sha512-XYRPYx4eEVX15cMT9mstnO7hkHP3krNtKfxUYd8L7gbtia8JvZZ6bMzSwa6IQJENbudTwKMw5R1BePRD+bkEmA== dependencies: callsites "^3.0.0" graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.0.1.tgz#1ffdc1ba4bc289919e54b9414b74c9c2f7b2b718" - integrity sha512-oKwHvOI73ICSYRPe8WwyYPTtiuOAkLSbY8/MfWF3qDEd/sa8EDyZzin3BaXTqufir/O/Gzea4E8Zl14XU4Mlyg== +"@jest/test-result@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.1.0.tgz#a93fa15b21ad3c7ceb21c2b4c35be2e407d8e971" + integrity sha512-Xz44mhXph93EYMA8aYDz+75mFbarTV/d/x0yMdI3tfSRs/vh4CqSxgzVmCps1fPkHDCtn0tU8IH9iCKgGeGpfw== dependencies: - "@jest/console" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/types" "^26.1.0" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.0.1.tgz#b0563424728f3fe9e75d1442b9ae4c11da73f090" - integrity sha512-ssga8XlwfP8YjbDcmVhwNlrmblddMfgUeAkWIXts1V22equp2GMIHxm7cyeD5Q/B0ZgKPK/tngt45sH99yLLGg== +"@jest/test-sequencer@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.1.0.tgz#41a6fc8b850c3f33f48288ea9ea517c047e7f14e" + integrity sha512-Z/hcK+rTq56E6sBwMoQhSRDVjqrGtj1y14e2bIgcowARaIE1SgOanwx6gvY4Q9gTKMoZQXbXvptji+q5GYxa6Q== dependencies: - "@jest/test-result" "^26.0.1" + "@jest/test-result" "^26.1.0" graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" - jest-runner "^26.0.1" - jest-runtime "^26.0.1" + jest-haste-map "^26.1.0" + jest-runner "^26.1.0" + jest-runtime "^26.1.0" -"@jest/transform@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.0.1.tgz#0e3ecbb34a11cd4b2080ed0a9c4856cf0ceb0639" - integrity sha512-pPRkVkAQ91drKGbzCfDOoHN838+FSbYaEAvBXvKuWeeRRUD8FjwXkqfUNUZL6Ke48aA/1cqq/Ni7kVMCoqagWA== +"@jest/transform@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.1.0.tgz#697f48898c2a2787c9b4cb71d09d7e617464e509" + integrity sha512-ICPm6sUXmZJieq45ix28k0s+d/z2E8CHDsq+WwtWI6kW8m7I8kPqarSEcUN86entHQ570ZBRci5OWaKL0wlAWw== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^26.0.1" + jest-haste-map "^26.1.0" jest-regex-util "^26.0.0" - jest-util "^26.0.1" + jest-util "^26.1.0" micromatch "^4.0.2" pirates "^4.0.1" slash "^3.0.0" source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/types@^26.0.1": - version "26.0.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.0.1.tgz#b78333fbd113fa7aec8d39de24f88de8686dac67" - integrity sha512-IbtjvqI9+eS1qFnOIEL7ggWmT+iK/U+Vde9cGWtYb/b6XgKb3X44ZAe/z9YZzoAAZ/E92m0DqrilF934IGNnQA== +"@jest/types@^26.1.0": + version "26.1.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.1.0.tgz#f8afaaaeeb23b5cad49dd1f7779689941dcb6057" + integrity sha512-GXigDDsp6ZlNMhXQDeuy/iYCDsRIHJabWtDzvnn36+aqFfG14JmFV0e/iXxY4SP9vbXSiPNOWdehU5MeqrYHBQ== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^1.1.1" @@ -1074,10 +1074,10 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@types/babel__core@^7.1.7": - version "7.1.8" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.8.tgz#057f725aca3641f49fc11c7a87a9de5ec588a5d7" - integrity sha512-KXBiQG2OXvaPWFPDS1rD8yV9vO0OuWIqAEqLsbfX0oU2REN5KuoMnZ1gClWcBhO5I3n6oTVAmrMufOvRqdmFTQ== +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": + version "7.1.9" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" + integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -1145,9 +1145,9 @@ integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== "@types/node@*": - version "14.0.13" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.13.tgz#ee1128e881b874c371374c1f72201893616417c9" - integrity sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA== + version "14.0.14" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.14.tgz#24a0b5959f16ac141aeb0c5b3cd7a15b7c64cbce" + integrity sha512-syUgf67ZQpaJj01/tRTknkMNoBBLWJOBODF0Zm4NrXmiSuxjymFrxnTu1QVYRubhVkRcZLYZG8STTwJRdVm/WQ== "@types/normalize-package-data@^2.4.0": version "2.4.0" @@ -1546,16 +1546,16 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA== -babel-jest@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.0.1.tgz#450139ce4b6c17174b136425bda91885c397bc46" - integrity sha512-Z4GGmSNQ8pX3WS1O+6v3fo41YItJJZsVxG5gIQ+HuB/iuAQBJxMTHTwz292vuYws1LnHfwSRgoqI+nxdy/pcvw== +babel-jest@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.1.0.tgz#b20751185fc7569a0f135730584044d1cb934328" + integrity sha512-Nkqgtfe7j6PxLO6TnCQQlkMm8wdTdnIF8xrdpooHCuD5hXRzVEPbPneTJKknH5Dsv3L8ip9unHDAp48YQ54Dkg== dependencies: - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" "@types/babel__core" "^7.1.7" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.0.0" + babel-preset-jest "^26.1.0" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -1589,13 +1589,14 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^4.0.0" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.0.0.tgz#fd1d35f95cf8849fc65cb01b5e58aedd710b34a8" - integrity sha512-+AuoehOrjt9irZL7DOt2+4ZaTM6dlu1s5TTS46JBa0/qem4dy7VNW3tMb96qeEqcIh20LD73TVNtmVEeymTG7w== +babel-plugin-jest-hoist@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.1.0.tgz#c6a774da08247a28285620a64dfadbd05dd5233a" + integrity sha512-qhqLVkkSlqmC83bdMhM8WW4Z9tB+JkjqAqlbbohS9sJLT5Ha2vfzuKqg5yenXrAjOPG2YC0WiXdH3a9PvB+YYw== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" babel-preset-current-node-syntax@^0.1.2: @@ -1615,12 +1616,12 @@ babel-preset-current-node-syntax@^0.1.2: "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -babel-preset-jest@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.0.0.tgz#1eac82f513ad36c4db2e9263d7c485c825b1faa6" - integrity sha512-9ce+DatAa31DpR4Uir8g4Ahxs5K4W4L8refzt+qHWQANb6LhGcAEfIFgLUwk67oya2cCUd6t4eUMtO/z64ocNw== +babel-preset-jest@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.1.0.tgz#612f714e5b457394acfd863793c564cbcdb7d1c1" + integrity sha512-na9qCqFksknlEj5iSdw1ehMVR06LCCTkZLGKeEtxDDdhg8xpUF09m29Kvh1pRbZ07h7AQ5ttLYUwpXL4tO6w7w== dependencies: - babel-plugin-jest-hoist "^26.0.0" + babel-plugin-jest-hoist "^26.1.0" babel-preset-current-node-syntax "^0.1.2" balanced-match@^1.0.0: @@ -1664,9 +1665,9 @@ binary-extensions@^1.0.0: integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== binary-extensions@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.0.0.tgz#23c0df14f6a88077f5f986c0d167ec03c3d5537c" - integrity sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow== + version "2.1.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" + integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ== bindings@^1.5.0: version "1.5.0" @@ -1798,14 +1799,14 @@ browserify-zlib@^0.2.0: pako "~1.0.5" browserslist@^4.12.0, browserslist@^4.8.5: - version "4.12.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.12.0.tgz#06c6d5715a1ede6c51fc39ff67fd647f740b656d" - integrity sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg== + version "4.12.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.12.2.tgz#76653d7e4c57caa8a1a28513e2f4e197dc11a711" + integrity sha512-MfZaeYqR8StRZdstAK9hCKDd2StvePCYp5rHzQCPicUjfFliDgmuaBNPHYUTpAywBN8+Wc/d7NYVFkO0aqaBUw== dependencies: - caniuse-lite "^1.0.30001043" - electron-to-chromium "^1.3.413" - node-releases "^1.1.53" - pkg-up "^2.0.0" + caniuse-lite "^1.0.30001088" + electron-to-chromium "^1.3.483" + escalade "^3.0.1" + node-releases "^1.1.58" bser@2.1.1: version "2.1.1" @@ -1889,10 +1890,10 @@ camelcase@^6.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.0.0.tgz#5259f7c30e35e278f1bdc2a4d91230b37cad981e" integrity sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== -caniuse-lite@^1.0.30001043: - version "1.0.30001084" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001084.tgz#00e471931eaefbeef54f46aa2203914d3c165669" - integrity sha512-ftdc5oGmhEbLUuMZ/Qp3mOpzfZLCxPYKcvGv6v2dJJ+8EdqcvZRbAGOiLmkM/PV1QGta/uwBs8/nCl6sokDW6w== +caniuse-lite@^1.0.30001088: + version "1.0.30001090" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001090.tgz#ff7766332f60e80fea4903f30d360622e5551850" + integrity sha512-QzPRKDCyp7RhjczTPZaqK3CjPA5Ht2UnXhZhCI4f7QiB5JK6KEuZBxIzyWnB3wO4hgAj4GMRxAhuiacfw0Psjg== capture-exit@^2.0.0: version "2.0.0" @@ -2480,10 +2481,10 @@ ecc-jsbn@~0.1.1: jsbn "~0.1.0" safer-buffer "^2.1.0" -electron-to-chromium@^1.3.413: - version "1.3.478" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.478.tgz#cfa0f2f0d3012463438a3bc81f50f2d109aca450" - integrity sha512-pt9GUDD52uEO9ZXWcG4UuW/HwE8T+a8iFP7K2qqWrHB5wUxbbvCIXGBVpQDDQwSR766Nn4AkmLYxOUNd4Ji5Dw== +electron-to-chromium@^1.3.483: + version "1.3.483" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.483.tgz#9269e7cfc1c8e72709824da171cbe47ca5e3ca9e" + integrity sha512-+05RF8S9rk8S0G8eBCqBRBaRq7+UN3lDs2DAvnG8SBSgQO3hjy0+qt4CmRk5eiuGbTcaicgXfPmBi31a+BD3lg== elliptic@^6.0.0, elliptic@^6.5.2: version "6.5.3" @@ -2630,6 +2631,11 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" +escalade@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.0.1.tgz#52568a77443f6927cd0ab9c73129137533c965ed" + integrity sha512-DR6NO3h9niOT+MZs7bjxlj2a1k+POu5RN8CLTPX2+i78bRi9eLe7+0zXgUHMnGXWybYcL61E9hGhPKqedy8tQA== + 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" @@ -2641,9 +2647,9 @@ escape-string-regexp@^2.0.0: integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== escodegen@^1.14.1: - version "1.14.2" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.2.tgz#14ab71bf5026c2aa08173afba22c6f3173284a84" - integrity sha512-InuOIiKk8wwuOFg6x9BQXbzjrQhtyXh46K9bqVTPzSo2FnyMBaYGBMC6PhQy7yxxil9vIedFBweQBMK74/7o8A== + version "1.14.3" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" + integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw== dependencies: esprima "^4.0.1" estraverse "^4.2.0" @@ -2680,10 +2686,10 @@ eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.2.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== -eslint@^7.3.0: - version "7.3.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.3.0.tgz#f9f1fc3dc1227985d0db88769f2bbac7b4b875d7" - integrity sha512-dJMVXwfU5PT1cj2Nv2VPPrKahKTGdX+5Dh0Q3YuKt+Y2UhdL2YbzsVaBMyG9HC0tBismlv/r1+eZqs6SMIV38Q== +eslint@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.3.1.tgz#76392bd7e44468d046149ba128d1566c59acbe19" + integrity sha512-cQC/xj9bhWUcyi/RuMbRtC3I0eW8MH0jhRELSvpKYkWep3C6YZ2OkvcvJVUeO6gcunABmzptbXBuDoXsjHmfTA== dependencies: "@babel/code-frame" "^7.0.0" ajv "^6.10.0" @@ -2836,16 +2842,16 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2: dependencies: homedir-polyfill "^1.0.1" -expect@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.0.1.tgz#18697b9611a7e2725e20ba3ceadda49bc9865421" - integrity sha512-QcCy4nygHeqmbw564YxNbHTJlXh47dVID2BUP52cZFpLU9zHViMFK6h07cC1wf7GYCTIigTdAXhVua8Yl1FkKg== +expect@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.1.0.tgz#8c62e31d0f8d5a8ebb186ee81473d15dd2fbf7c8" + integrity sha512-QbH4LZXDsno9AACrN9eM0zfnby9G+OsdNgZUohjg/P0mLy1O+/bzTAJGT6VSIjVCe8yKM6SzEl/ckEOFBT7Vnw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" ansi-styles "^4.0.0" jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" + jest-matcher-utils "^26.1.0" + jest-message-util "^26.1.0" jest-regex-util "^26.0.0" extend-shallow@^2.0.1: @@ -2962,13 +2968,6 @@ find-root@^1.0.0: resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== -find-up@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - find-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -3743,7 +3742,7 @@ istanbul-lib-coverage@^3.0.0: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== -istanbul-lib-instrument@^4.0.0: +istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== @@ -3779,67 +3778,67 @@ istanbul-reports@^3.0.2: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jest-changed-files@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.0.1.tgz#1334630c6a1ad75784120f39c3aa9278e59f349f" - integrity sha512-q8LP9Sint17HaE2LjxQXL+oYWW/WeeXMPE2+Op9X3mY8IEGFVc14xRxFjUuXUbcPAlDLhtWdIEt59GdQbn76Hw== +jest-changed-files@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.1.0.tgz#de66b0f30453bca2aff98e9400f75905da495305" + integrity sha512-HS5MIJp3B8t0NRKGMCZkcDUZo36mVRvrDETl81aqljT1S9tqiHRSpyoOvWg9ZilzZG9TDisDNaN1IXm54fLRZw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" execa "^4.0.0" throat "^5.0.0" -jest-cli@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.0.1.tgz#3a42399a4cbc96a519b99ad069a117d955570cac" - integrity sha512-pFLfSOBcbG9iOZWaMK4Een+tTxi/Wcm34geqZEqrst9cZDkTQ1LZ2CnBrTlHWuYAiTMFr0EQeK52ScyFU8wK+w== +jest-cli@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.1.0.tgz#eb9ec8a18cf3b6aa556d9deaa9e24be12b43ad87" + integrity sha512-Imumvjgi3rU7stq6SJ1JUEMaV5aAgJYXIs0jPqdUnF47N/Tk83EXfmtvNKQ+SnFVI6t6mDOvfM3aA9Sg6kQPSw== dependencies: - "@jest/core" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/core" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" is-ci "^2.0.0" - jest-config "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-config "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" prompts "^2.0.1" yargs "^15.3.1" -jest-config@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.0.1.tgz#096a3d4150afadf719d1fab00e9a6fb2d6d67507" - integrity sha512-9mWKx2L1LFgOXlDsC4YSeavnblN6A4CPfXFiobq+YYLaBMymA/SczN7xYTSmLaEYHZOcB98UdoN4m5uNt6tztg== +jest-config@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.1.0.tgz#9074f7539acc185e0113ad6d22ed589c16a37a73" + integrity sha512-ONTGeoMbAwGCdq4WuKkMcdMoyfs5CLzHEkzFOlVvcDXufZSaIWh/OXMLa2fwKXiOaFcqEw8qFr4VOKJQfn4CVw== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.0.1" - "@jest/types" "^26.0.1" - babel-jest "^26.0.1" + "@jest/test-sequencer" "^26.1.0" + "@jest/types" "^26.1.0" + babel-jest "^26.1.0" chalk "^4.0.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - jest-environment-jsdom "^26.0.1" - jest-environment-node "^26.0.1" + jest-environment-jsdom "^26.1.0" + jest-environment-node "^26.1.0" jest-get-type "^26.0.0" - jest-jasmine2 "^26.0.1" + jest-jasmine2 "^26.1.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-resolve "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" micromatch "^4.0.2" - pretty-format "^26.0.1" + pretty-format "^26.1.0" -jest-diff@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.0.1.tgz#c44ab3cdd5977d466de69c46929e0e57f89aa1de" - integrity sha512-odTcHyl5X+U+QsczJmOjWw5tPvww+y9Yim5xzqxVl/R1j4z71+fHW4g8qu1ugMmKdFdxw+AtQgs5mupPnzcIBQ== +jest-diff@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.1.0.tgz#00a549bdc936c9691eb4dc25d1fbd78bf456abb2" + integrity sha512-GZpIcom339y0OXznsEKjtkfKxNdg7bVbEofK8Q6MnevTIiR1jNhDWKhRX6X0SDXJlwn3dy59nZ1z55fLkAqPWg== dependencies: chalk "^4.0.0" diff-sequences "^26.0.0" jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" jest-docblock@^26.0.0: version "26.0.0" @@ -3848,58 +3847,58 @@ jest-docblock@^26.0.0: dependencies: detect-newline "^3.0.0" -jest-each@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.0.1.tgz#633083061619302fc90dd8f58350f9d77d67be04" - integrity sha512-OTgJlwXCAR8NIWaXFL5DBbeS4QIYPuNASkzSwMCJO+ywo9BEa6TqkaSWsfR7VdbMLdgYJqSfQcIyjJCNwl5n4Q== +jest-each@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.1.0.tgz#e35449875009a22d74d1bda183b306db20f286f7" + integrity sha512-lYiSo4Igr81q6QRsVQq9LIkJW0hZcKxkIkHzNeTMPENYYDw/W/Raq28iJ0sLlNFYz2qxxeLnc5K2gQoFYlu2bA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" jest-get-type "^26.0.0" - jest-util "^26.0.1" - pretty-format "^26.0.1" - -jest-environment-jsdom@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.0.1.tgz#217690852e5bdd7c846a4e3b50c8ffd441dfd249" - integrity sha512-u88NJa3aptz2Xix2pFhihRBAatwZHWwSiRLBDBQE1cdJvDjPvv7ZGA0NQBxWwDDn7D0g1uHqxM8aGgfA9Bx49g== - dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + jest-util "^26.1.0" + pretty-format "^26.1.0" + +jest-environment-jsdom@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.1.0.tgz#9dc7313ffe1b59761dad1fedb76e2503e5d37c5b" + integrity sha512-dWfiJ+spunVAwzXbdVqPH1LbuJW/kDL+FyqgA5YzquisHqTi0g9hquKif9xKm7c1bKBj6wbmJuDkeMCnxZEpUw== + dependencies: + "@jest/environment" "^26.1.0" + "@jest/fake-timers" "^26.1.0" + "@jest/types" "^26.1.0" + jest-mock "^26.1.0" + jest-util "^26.1.0" jsdom "^16.2.2" -jest-environment-node@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.0.1.tgz#584a9ff623124ff6eeb49e0131b5f7612b310b13" - integrity sha512-4FRBWcSn5yVo0KtNav7+5NH5Z/tEgDLp7VRQVS5tCouWORxj+nI+1tOLutM07Zb2Qi7ja+HEDoOUkjBSWZg/IQ== +jest-environment-node@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.1.0.tgz#8bb387b3eefb132eab7826f9a808e4e05618960b" + integrity sha512-DNm5x1aQH0iRAe9UYAkZenuzuJ69VKzDCAYISFHQ5i9e+2Tbeu2ONGY7YStubCLH8a1wdKBgqScYw85+ySxqxg== dependencies: - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/types" "^26.0.1" - jest-mock "^26.0.1" - jest-util "^26.0.1" + "@jest/environment" "^26.1.0" + "@jest/fake-timers" "^26.1.0" + "@jest/types" "^26.1.0" + jest-mock "^26.1.0" + jest-util "^26.1.0" jest-get-type@^26.0.0: version "26.0.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.0.0.tgz#381e986a718998dbfafcd5ec05934be538db4039" integrity sha512-zRc1OAPnnws1EVfykXOj19zo2EMw5Hi6HLbFCSjpuJiXtOWAYIjNsHVSbpQ8bDX7L5BGYGI8m+HmKdjHYFF0kg== -jest-haste-map@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.0.1.tgz#40dcc03c43ac94d25b8618075804d09cd5d49de7" - integrity sha512-J9kBl/EdjmDsvyv7CiyKY5+DsTvVOScenprz/fGqfLg/pm1gdjbwwQ98nW0t+OIt+f+5nAVaElvn/6wP5KO7KA== +jest-haste-map@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.1.0.tgz#ef31209be73f09b0d9445e7d213e1b53d0d1476a" + integrity sha512-WeBS54xCIz9twzkEdm6+vJBXgRBQfdbbXD0dk8lJh7gLihopABlJmIQFdWSDDtuDe4PRiObsjZSUjbJ1uhWEpA== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@types/graceful-fs" "^4.1.2" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.4" - jest-serializer "^26.0.0" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-serializer "^26.1.0" + jest-util "^26.1.0" + jest-worker "^26.1.0" micromatch "^4.0.2" sane "^4.0.3" walker "^1.0.7" @@ -3907,54 +3906,54 @@ jest-haste-map@^26.0.1: optionalDependencies: fsevents "^2.1.2" -jest-jasmine2@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.0.1.tgz#947c40ee816636ba23112af3206d6fa7b23c1c1c" - integrity sha512-ILaRyiWxiXOJ+RWTKupzQWwnPaeXPIoLS5uW41h18varJzd9/7I0QJGqg69fhTT1ev9JpSSo9QtalriUN0oqOg== +jest-jasmine2@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.1.0.tgz#4dfe349b2b2d3c6b3a27c024fd4cb57ac0ed4b6f" + integrity sha512-1IPtoDKOAG+MeBrKvvuxxGPJb35MTTRSDglNdWWCndCB3TIVzbLThRBkwH9P081vXLgiJHZY8Bz3yzFS803xqQ== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/environment" "^26.1.0" + "@jest/source-map" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" co "^4.6.0" - expect "^26.0.1" + expect "^26.1.0" is-generator-fn "^2.0.0" - jest-each "^26.0.1" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-runtime "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - pretty-format "^26.0.1" + jest-each "^26.1.0" + jest-matcher-utils "^26.1.0" + jest-message-util "^26.1.0" + jest-runtime "^26.1.0" + jest-snapshot "^26.1.0" + jest-util "^26.1.0" + pretty-format "^26.1.0" throat "^5.0.0" -jest-leak-detector@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.0.1.tgz#79b19ab3f41170e0a78eb8fa754a116d3447fb8c" - integrity sha512-93FR8tJhaYIWrWsbmVN1pQ9ZNlbgRpfvrnw5LmgLRX0ckOJ8ut/I35CL7awi2ecq6Ca4lL59bEK9hr7nqoHWPA== +jest-leak-detector@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.1.0.tgz#039c3a07ebcd8adfa984b6ac015752c35792e0a6" + integrity sha512-dsMnKF+4BVOZwvQDlgn3MG+Ns4JuLv8jNvXH56bgqrrboyCbI1rQg6EI5rs+8IYagVcfVP2yZFKfWNZy0rK0Hw== dependencies: jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" -jest-matcher-utils@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.0.1.tgz#12e1fc386fe4f14678f4cc8dbd5ba75a58092911" - integrity sha512-PUMlsLth0Azen8Q2WFTwnSkGh2JZ8FYuwijC8NR47vXKpsrKmA1wWvgcj1CquuVfcYiDEdj985u5Wmg7COEARw== +jest-matcher-utils@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.1.0.tgz#cf75a41bd413dda784f022de5a65a2a5c73a5c92" + integrity sha512-PW9JtItbYvES/xLn5mYxjMd+Rk+/kIt88EfH3N7w9KeOrHWaHrdYPnVHndGbsFGRJ2d5gKtwggCvkqbFDoouQA== dependencies: chalk "^4.0.0" - jest-diff "^26.0.1" + jest-diff "^26.1.0" jest-get-type "^26.0.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" -jest-message-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.0.1.tgz#07af1b42fc450b4cc8e90e4c9cef11b33ce9b0ac" - integrity sha512-CbK8uQREZ8umUfo8+zgIfEt+W7HAHjQCoRaNs4WxKGhAYBGwEyvxuK81FXa7VeB9pwDEXeeKOB2qcsNVCAvB7Q== +jest-message-util@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.1.0.tgz#52573fbb8f5cea443c4d1747804d7a238a3e233c" + integrity sha512-dY0+UlldiAJwNDJ08SF0HdF32g9PkbF2NRK/+2iMPU40O6q+iSn1lgog/u0UH8ksWoPv0+gNq8cjhYO2MFtT0g== dependencies: "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@types/stack-utils" "^1.0.1" chalk "^4.0.0" graceful-fs "^4.2.4" @@ -3962,182 +3961,182 @@ jest-message-util@^26.0.1: slash "^3.0.0" stack-utils "^2.0.2" -jest-mock@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.0.1.tgz#7fd1517ed4955397cf1620a771dc2d61fad8fd40" - integrity sha512-MpYTBqycuPYSY6xKJognV7Ja46/TeRbAZept987Zp+tuJvMN0YBWyyhG9mXyYQaU3SBI0TUlSaO5L3p49agw7Q== +jest-mock@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.1.0.tgz#80d8286da1f05a345fbad1bfd6fa49a899465d3d" + integrity sha512-1Rm8EIJ3ZFA8yCIie92UbxZWj9SuVmUGcyhLHyAhY6WI3NIct38nVcfOPWhJteqSn8V8e3xOMha9Ojfazfpovw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" jest-pnp-resolver@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a" - integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ== + version "1.2.2" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== jest-regex-util@^26.0.0: version "26.0.0" resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== -jest-resolve-dependencies@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.0.1.tgz#607ba7ccc32151d185a477cff45bf33bce417f0b" - integrity sha512-9d5/RS/ft0vB/qy7jct/qAhzJsr6fRQJyGAFigK3XD4hf9kIbEH5gks4t4Z7kyMRhowU6HWm/o8ILqhaHdSqLw== +jest-resolve-dependencies@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.1.0.tgz#1ce36472f864a5dadf7dc82fa158e1c77955691b" + integrity sha512-fQVEPHHQ1JjHRDxzlLU/buuQ9om+hqW6Vo928aa4b4yvq4ZHBtRSDsLdKQLuCqn5CkTVpYZ7ARh2fbA8WkRE6g== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" jest-regex-util "^26.0.0" - jest-snapshot "^26.0.1" + jest-snapshot "^26.1.0" -jest-resolve@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.0.1.tgz#21d1ee06f9ea270a343a8893051aeed940cde736" - integrity sha512-6jWxk0IKZkPIVTvq6s72RH735P8f9eCJW3IM5CX/SJFeKq1p2cZx0U49wf/SdMlhaB/anann5J2nCJj6HrbezQ== +jest-resolve@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.1.0.tgz#a530eaa302b1f6fa0479079d1561dd69abc00e68" + integrity sha512-KsY1JV9FeVgEmwIISbZZN83RNGJ1CC+XUCikf/ZWJBX/tO4a4NvA21YixokhdR9UnmPKKAC4LafVixJBrwlmfg== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" graceful-fs "^4.2.4" jest-pnp-resolver "^1.2.1" - jest-util "^26.0.1" + jest-util "^26.1.0" read-pkg-up "^7.0.1" resolve "^1.17.0" slash "^3.0.0" -jest-runner@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.0.1.tgz#ea03584b7ae4bacfb7e533d680a575a49ae35d50" - integrity sha512-CApm0g81b49Znm4cZekYQK67zY7kkB4umOlI2Dx5CwKAzdgw75EN+ozBHRvxBzwo1ZLYZ07TFxkaPm+1t4d8jA== +jest-runner@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.1.0.tgz#457f7fc522afe46ca6db1dccf19f87f500b3288d" + integrity sha512-elvP7y0fVDREnfqit0zAxiXkDRSw6dgCkzPCf1XvIMnSDZ8yogmSKJf192dpOgnUVykmQXwYYJnCx641uLTgcw== dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/console" "^26.1.0" + "@jest/environment" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" - jest-config "^26.0.1" + jest-config "^26.1.0" jest-docblock "^26.0.0" - jest-haste-map "^26.0.1" - jest-jasmine2 "^26.0.1" - jest-leak-detector "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - jest-runtime "^26.0.1" - jest-util "^26.0.1" - jest-worker "^26.0.0" + jest-haste-map "^26.1.0" + jest-jasmine2 "^26.1.0" + jest-leak-detector "^26.1.0" + jest-message-util "^26.1.0" + jest-resolve "^26.1.0" + jest-runtime "^26.1.0" + jest-util "^26.1.0" + jest-worker "^26.1.0" source-map-support "^0.5.6" throat "^5.0.0" -jest-runtime@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.0.1.tgz#a121a6321235987d294168e282d52b364d7d3f89" - integrity sha512-Ci2QhYFmANg5qaXWf78T2Pfo6GtmIBn2rRaLnklRyEucmPccmCKvS9JPljcmtVamsdMmkyNkVFb9pBTD6si9Lw== - dependencies: - "@jest/console" "^26.0.1" - "@jest/environment" "^26.0.1" - "@jest/fake-timers" "^26.0.1" - "@jest/globals" "^26.0.1" - "@jest/source-map" "^26.0.0" - "@jest/test-result" "^26.0.1" - "@jest/transform" "^26.0.1" - "@jest/types" "^26.0.1" +jest-runtime@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.1.0.tgz#45a37af42115f123ed5c51f126c05502da2469cb" + integrity sha512-1qiYN+EZLmG1QV2wdEBRf+Ci8i3VSfIYLF02U18PiUDrMbhfpN/EAMMkJtT02jgJUoaEOpHAIXG6zS3QRMzRmA== + dependencies: + "@jest/console" "^26.1.0" + "@jest/environment" "^26.1.0" + "@jest/fake-timers" "^26.1.0" + "@jest/globals" "^26.1.0" + "@jest/source-map" "^26.1.0" + "@jest/test-result" "^26.1.0" + "@jest/transform" "^26.1.0" + "@jest/types" "^26.1.0" "@types/yargs" "^15.0.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-config "^26.0.1" - jest-haste-map "^26.0.1" - jest-message-util "^26.0.1" - jest-mock "^26.0.1" + jest-config "^26.1.0" + jest-haste-map "^26.1.0" + jest-message-util "^26.1.0" + jest-mock "^26.1.0" jest-regex-util "^26.0.0" - jest-resolve "^26.0.1" - jest-snapshot "^26.0.1" - jest-util "^26.0.1" - jest-validate "^26.0.1" + jest-resolve "^26.1.0" + jest-snapshot "^26.1.0" + jest-util "^26.1.0" + jest-validate "^26.1.0" slash "^3.0.0" strip-bom "^4.0.0" yargs "^15.3.1" -jest-serializer@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.0.0.tgz#f6c521ddb976943b93e662c0d4d79245abec72a3" - integrity sha512-sQGXLdEGWFAE4wIJ2ZaIDb+ikETlUirEOBsLXdoBbeLhTHkZUJwgk3+M8eyFizhM6le43PDCCKPA1hzkSDo4cQ== +jest-serializer@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.1.0.tgz#72a394531fc9b08e173dc7d297440ac610d95022" + integrity sha512-eqZOQG/0+MHmr25b2Z86g7+Kzd5dG9dhCiUoyUNJPgiqi38DqbDEOlHcNijyfZoj74soGBohKBZuJFS18YTJ5w== dependencies: graceful-fs "^4.2.4" -jest-snapshot@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.0.1.tgz#1baa942bd83d47b837a84af7fcf5fd4a236da399" - integrity sha512-jxd+cF7+LL+a80qh6TAnTLUZHyQoWwEHSUFJjkw35u3Gx+BZUNuXhYvDqHXr62UQPnWo2P6fvQlLjsU93UKyxA== +jest-snapshot@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.1.0.tgz#c36ed1e0334bd7bd2fe5ad07e93a364ead7e1349" + integrity sha512-YhSbU7eMTVQO/iRbNs8j0mKRxGp4plo7sJ3GzOQ0IYjvsBiwg0T1o0zGQAYepza7lYHuPTrG5J2yDd0CE2YxSw== dependencies: "@babel/types" "^7.0.0" - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" "@types/prettier" "^2.0.0" chalk "^4.0.0" - expect "^26.0.1" + expect "^26.1.0" graceful-fs "^4.2.4" - jest-diff "^26.0.1" + jest-diff "^26.1.0" jest-get-type "^26.0.0" - jest-matcher-utils "^26.0.1" - jest-message-util "^26.0.1" - jest-resolve "^26.0.1" - make-dir "^3.0.0" + jest-haste-map "^26.1.0" + jest-matcher-utils "^26.1.0" + jest-message-util "^26.1.0" + jest-resolve "^26.1.0" natural-compare "^1.4.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" semver "^7.3.2" -jest-util@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.0.1.tgz#72c4c51177b695fdd795ca072a6f94e3d7cef00a" - integrity sha512-byQ3n7ad1BO/WyFkYvlWQHTsomB6GIewBh8tlGtusiylAlaxQ1UpS0XYH0ngOyhZuHVLN79Qvl6/pMiDMSSG1g== +jest-util@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.1.0.tgz#80e85d4ba820decacf41a691c2042d5276e5d8d8" + integrity sha512-rNMOwFQevljfNGvbzNQAxdmXQ+NawW/J72dmddsK0E8vgxXCMtwQ/EH0BiWEIxh0hhMcTsxwAxINt7Lh46Uzbg== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" chalk "^4.0.0" graceful-fs "^4.2.4" is-ci "^2.0.0" - make-dir "^3.0.0" + micromatch "^4.0.2" -jest-validate@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.0.1.tgz#a62987e1da5b7f724130f904725e22f4e5b2e23c" - integrity sha512-u0xRc+rbmov/VqXnX3DlkxD74rHI/CfS5xaV2VpeaVySjbb1JioNVOyly5b56q2l9ZKe7bVG5qWmjfctkQb0bA== +jest-validate@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.1.0.tgz#942c85ad3d60f78250c488a7f85d8f11a29788e7" + integrity sha512-WPApOOnXsiwhZtmkDsxnpye+XLb/tUISP+H6cHjfUIXvlG+eKwP+isnivsxlHCPaO9Q5wvbhloIBkdF3qUn+Nw== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" camelcase "^6.0.0" chalk "^4.0.0" jest-get-type "^26.0.0" leven "^3.1.0" - pretty-format "^26.0.1" + pretty-format "^26.1.0" -jest-watcher@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.0.1.tgz#5b5e3ebbdf10c240e22a98af66d645631afda770" - integrity sha512-pdZPydsS8475f89kGswaNsN3rhP6lnC3/QDCppP7bg1L9JQz7oU9Mb/5xPETk1RHDCWeqmVC47M4K5RR7ejxFw== +jest-watcher@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.1.0.tgz#99812a0cd931f0cb3d153180426135ab83e4d8f2" + integrity sha512-ffEOhJl2EvAIki613oPsSG11usqnGUzIiK7MMX6hE4422aXOcVEG3ySCTDFLn1+LZNXGPE8tuJxhp8OBJ1pgzQ== dependencies: - "@jest/test-result" "^26.0.1" - "@jest/types" "^26.0.1" + "@jest/test-result" "^26.1.0" + "@jest/types" "^26.1.0" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^26.0.1" + jest-util "^26.1.0" string-length "^4.0.1" -jest-worker@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.0.0.tgz#4920c7714f0a96c6412464718d0c58a3df3fb066" - integrity sha512-pPaYa2+JnwmiZjK9x7p9BoZht+47ecFCDFA/CJxspHzeDvQcfVBLWzCiWyo+EGrSiQMWZtCFo9iSvMZnAAo8vw== +jest-worker@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.1.0.tgz#65d5641af74e08ccd561c240e7db61284f82f33d" + integrity sha512-Z9P5pZ6UC+kakMbNJn+tA2RdVdNX5WH1x+5UCBZ9MxIK24pjYtFt96fK+UwBTrjLYm232g1xz0L3eTh51OW+yQ== dependencies: merge-stream "^2.0.0" supports-color "^7.0.0" -jest@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.0.1.tgz#5c51a2e58dff7525b65f169721767173bf832694" - integrity sha512-29Q54kn5Bm7ZGKIuH2JRmnKl85YRigp0o0asTc6Sb6l2ch1DCXIeZTLLFy9ultJvhkTqbswF5DEx4+RlkmCxWg== +jest@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.1.0.tgz#2f3aa7bcffb9bfd025473f83bbbf46a3af026263" + integrity sha512-LIti8jppw5BcQvmNJe4w2g1N/3V68HUfAv9zDVm7v+VAtQulGhH0LnmmiVkbNE4M4I43Bj2fXPiBGKt26k9tHw== dependencies: - "@jest/core" "^26.0.1" + "@jest/core" "^26.1.0" import-local "^3.0.2" - jest-cli "^26.0.1" + jest-cli "^26.1.0" jquery-inview@^1.1.2: version "1.1.2" @@ -4329,14 +4328,6 @@ loader-utils@^1.2.3, loader-utils@^1.4.0: emojis-list "^3.0.0" json5 "^1.0.1" -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" - locate-path@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" @@ -4686,7 +4677,7 @@ node-notifier@^7.0.0: uuid "^7.0.3" which "^2.0.2" -node-releases@^1.1.53: +node-releases@^1.1.58: version "1.1.58" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.58.tgz#8ee20eef30fa60e52755fcc0942def5a734fe935" integrity sha512-NxBudgVKiRh/2aPWMgPR7bPTX0VPmGx5QBwCtdHitnqFE5/O8DeBXuIMH1nwNnw/aMo6AjOrpsHzfY3UbUJ7yg== @@ -4872,13 +4863,6 @@ p-finally@^1.0.0: resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" @@ -4886,13 +4870,6 @@ p-limit@^2.0.0, p-limit@^2.2.0: 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" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= - 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" @@ -4907,11 +4884,6 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -5069,13 +5041,6 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" - integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= - dependencies: - find-up "^2.1.0" - posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" @@ -5091,12 +5056,12 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -pretty-format@^26.0.1: - version "26.0.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.0.1.tgz#a4fe54fe428ad2fd3413ca6bbd1ec8c2e277e197" - integrity sha512-SWxz6MbupT3ZSlL0Po4WF/KujhQaVehijR2blyRDCzk9e45EaYMVhMBn49fnRuHxtkSpXTes1GxNpVmH86Bxfw== +pretty-format@^26.1.0: + version "26.1.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.1.0.tgz#272b9cd1f1a924ab5d443dc224899d7a65cb96ec" + integrity sha512-GmeO1PEYdM+non4BKCj+XsPJjFOJIPnsLewqhDVoqY1xo0yNmDas7tC2XwpMrRAHR3MaE2hPo37deX5OisJ2Wg== dependencies: - "@jest/types" "^26.0.1" + "@jest/types" "^26.1.0" ansi-regex "^5.0.0" ansi-styles "^4.0.0" react-is "^16.12.0"