diff --git a/package.json b/package.json
index 23438425..e20742e1 100644
--- a/package.json
+++ b/package.json
@@ -47,11 +47,11 @@
"@babel/plugin-transform-runtime": "^7.8.3",
"@babel/preset-env": "^7.8.7",
"@gplane/tsconfig": "^1.0.0",
- "@testing-library/jest-dom": "^5.0.2",
- "@testing-library/react": "^9.4.0",
+ "@testing-library/jest-dom": "^5.3.0",
+ "@testing-library/react": "^10.0.1",
"@types/bootstrap": "^4.3.1",
"@types/echarts": "^4.4.2",
- "@types/jest": "^24.0.25",
+ "@types/jest": "^25.1.4",
"@types/jquery": "^3.3.29",
"@types/js-yaml": "^3.12.2",
"@types/lodash.debounce": "^4.0.6",
@@ -64,7 +64,7 @@
"@typescript-eslint/parser": "^2.8.0",
"@vue/test-utils": "^1.0.0-beta.29",
"autoprefixer": "^9.7.3",
- "babel-jest": "^24.9.0",
+ "babel-jest": "^25.2.3",
"babel-loader": "^8.0.6",
"babel-plugin-dynamic-import-node": "^2.3.0",
"cache-loader": "^4.1.0",
@@ -74,8 +74,8 @@
"eslint-formatter-beauty": "^3.0.0",
"eslint-plugin-vue": "^6.1.2",
"file-loader": "^5.0.2",
- "jest": "^24.9.0",
- "jest-extended": "^0.11.2",
+ "jest": "^25.2.3",
+ "jest-extended": "^0.11.5",
"js-yaml": "^3.13.1",
"mini-css-extract-plugin": "^0.9.0",
"optimize-css-assets-webpack-plugin": "^5.0.3",
@@ -86,7 +86,7 @@
"style-loader": "^1.1.2",
"stylus": "^0.54.7",
"stylus-loader": "^3.0.2",
- "ts-jest": "^24.3.0",
+ "ts-jest": "^25.2.1",
"ts-loader": "^6.2.1",
"typescript": "^3.8.3",
"url-loader": "^3.0.0",
@@ -99,7 +99,8 @@
"webpack-manifest-plugin": "^2.2.0"
},
"resolutions": {
- "caniuse-lite": "*"
+ "caniuse-lite": "*",
+ "@types/testing-library__dom": "^7.0.0"
},
"browserslist": [
"> 1%",
diff --git a/resources/assets/tests/views/admin/PluginsManagement.test.tsx b/resources/assets/tests/views/admin/PluginsManagement.test.tsx
index 95bd6c4c..182b7307 100644
--- a/resources/assets/tests/views/admin/PluginsManagement.test.tsx
+++ b/resources/assets/tests/views/admin/PluginsManagement.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, wait, fireEvent } from '@testing-library/react'
+import { render, waitFor, fireEvent } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import PluginsManagement from '@/views/admin/PluginsManagement'
@@ -37,7 +37,7 @@ test('plugin info box', async () => {
])
const { queryByTitle, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByTitle(t('admin.configurePlugin'))).not.toBeNull()
expect(queryByTitle(t('admin.pluginReadme'))).not.toBeNull()
@@ -68,15 +68,15 @@ describe('enable plugin', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'success' })
const { getByTitle, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('admin.enablePlugin')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
- action: 'enable',
- name: 'a',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
+ action: 'enable',
+ name: 'a',
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(getByTitle(t('admin.disablePlugin'))).toBeChecked()
@@ -90,11 +90,15 @@ describe('enable plugin', () => {
})
const { getByTitle, getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('admin.enablePlugin')))
- await wait()
-
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
+ action: 'enable',
+ name: 'a',
+ }),
+ )
expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
action: 'enable',
name: 'a',
@@ -121,15 +125,15 @@ describe('disable plugin', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'success' })
const { getByTitle, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('admin.disablePlugin')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
- action: 'disable',
- name: 'a',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
+ action: 'disable',
+ name: 'a',
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(getByTitle(t('admin.enablePlugin'))).not.toBeChecked()
@@ -139,11 +143,15 @@ describe('disable plugin', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByTitle, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('admin.disablePlugin')))
- await wait()
-
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
+ action: 'disable',
+ name: 'a',
+ }),
+ )
expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
action: 'disable',
name: 'a',
@@ -167,13 +175,11 @@ describe('delete plugin', () => {
it('rejected by user', async () => {
const { getByTitle, getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('admin.deletePlugin')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
})
it('succeeded', async () => {
@@ -182,16 +188,16 @@ describe('delete plugin', () => {
const { getByTitle, getByText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('admin.deletePlugin')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
- action: 'delete',
- name: 'a',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
+ action: 'delete',
+ name: 'a',
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText('My Plugin')).toBeNull()
@@ -203,12 +209,16 @@ describe('delete plugin', () => {
const { getByTitle, getByText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('admin.deletePlugin')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
+ action: 'delete',
+ name: 'a',
+ }),
+ )
expect(fetch.post).toBeCalledWith('/admin/plugins/manage', {
action: 'delete',
name: 'a',
@@ -224,7 +234,7 @@ describe('upload plugin archive', () => {
fetch.get.mockResolvedValue([])
const { getAllByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getAllByText(t('general.submit'))[0])
expect(fetch.post).not.toBeCalled()
@@ -237,20 +247,20 @@ describe('upload plugin archive', () => {
const { getByTitle, getAllByText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
const file = new File([], 'plugin.zip')
fireEvent.change(getByTitle(t('skinlib.upload.select-file')), {
target: { files: [file] },
})
fireEvent.click(getAllByText(t('general.submit'))[0])
- await wait()
-
- expect(fetch.get).toBeCalledTimes(2)
- expect(fetch.post).toBeCalledWith(
- '/admin/plugins/upload',
- expect.any(FormData),
- )
+ await waitFor(() => {
+ expect(fetch.get).toBeCalledTimes(2)
+ expect(fetch.post).toBeCalledWith(
+ '/admin/plugins/upload',
+ expect.any(FormData),
+ )
+ })
const formData: FormData = fetch.post.mock.calls[0][1]
expect(formData.get('file')).toStrictEqual(file)
expect(queryByText('plugin.zip')).not.toBeInTheDocument()
@@ -265,20 +275,20 @@ describe('upload plugin archive', () => {
const { getByTitle, getAllByText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
const file = new File([], 'plugin.zip')
fireEvent.change(getByTitle(t('skinlib.upload.select-file')), {
target: { files: [file] },
})
fireEvent.click(getAllByText(t('general.submit'))[0])
- await wait()
-
- expect(fetch.get).toBeCalledTimes(1)
- expect(fetch.post).toBeCalledWith(
- '/admin/plugins/upload',
- expect.any(FormData),
- )
+ await waitFor(() => {
+ expect(fetch.get).toBeCalledTimes(1)
+ expect(fetch.post).toBeCalledWith(
+ '/admin/plugins/upload',
+ expect.any(FormData),
+ )
+ })
expect(queryByText('plugin.zip')).toBeInTheDocument()
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
@@ -297,17 +307,17 @@ describe('submit remote URL', () => {
queryByText,
queryByDisplayValue,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.input(getByLabelText('URL'), {
target: { value: 'https://example.com/a.zip' },
})
fireEvent.click(getAllByText(t('general.submit'))[1])
- await wait()
-
- expect(fetch.get).toBeCalledTimes(2)
- expect(fetch.post).toBeCalledWith('/admin/plugins/wget', {
- url: 'https://example.com/a.zip',
+ await waitFor(() => {
+ expect(fetch.get).toBeCalledTimes(2)
+ expect(fetch.post).toBeCalledWith('/admin/plugins/wget', {
+ url: 'https://example.com/a.zip',
+ })
})
expect(
queryByDisplayValue('https://example.com/a.zip'),
@@ -327,17 +337,17 @@ describe('submit remote URL', () => {
queryByText,
queryByDisplayValue,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.input(getByLabelText('URL'), {
target: { value: 'https://example.com/a.zip' },
})
fireEvent.click(getAllByText(t('general.submit'))[1])
- await wait()
-
- expect(fetch.get).toBeCalledTimes(1)
- expect(fetch.post).toBeCalledWith('/admin/plugins/wget', {
- url: 'https://example.com/a.zip',
+ await waitFor(() => {
+ expect(fetch.get).toBeCalledTimes(1)
+ expect(fetch.post).toBeCalledWith('/admin/plugins/wget', {
+ url: 'https://example.com/a.zip',
+ })
})
expect(queryByDisplayValue('https://example.com/a.zip')).toBeInTheDocument()
expect(queryByText('failed')).toBeInTheDocument()
diff --git a/resources/assets/tests/views/auth/Forgot.test.tsx b/resources/assets/tests/views/auth/Forgot.test.tsx
index d50832a6..1bf9a3d3 100644
--- a/resources/assets/tests/views/auth/Forgot.test.tsx
+++ b/resources/assets/tests/views/auth/Forgot.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, wait, fireEvent } from '@testing-library/react'
+import { render, waitFor, fireEvent } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import Forgot from '@/views/auth/Forgot'
@@ -19,12 +19,12 @@ describe('submit', () => {
target: { value: 'abc' },
})
fireEvent.click(getByText(t('auth.forgot.button')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/forgot', {
- email: 'a@b.c',
- captcha: 'abc',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/forgot', {
+ email: 'a@b.c',
+ captcha: 'abc',
+ }),
+ )
expect(queryByText('ok')).toBeInTheDocument()
})
@@ -40,12 +40,12 @@ describe('submit', () => {
target: { value: 'abc' },
})
fireEvent.click(getByText(t('auth.forgot.button')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/forgot', {
- email: 'a@b.c',
- captcha: 'abc',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/forgot', {
+ email: 'a@b.c',
+ captcha: 'abc',
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
})
})
diff --git a/resources/assets/tests/views/auth/Login.test.tsx b/resources/assets/tests/views/auth/Login.test.tsx
index a1db267a..b3e9bf3f 100644
--- a/resources/assets/tests/views/auth/Login.test.tsx
+++ b/resources/assets/tests/views/auth/Login.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, wait, fireEvent } from '@testing-library/react'
+import { render, waitFor, fireEvent } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import Login from '@/views/auth/Login'
@@ -32,13 +32,13 @@ describe('submit form', () => {
target: { value: 'password' },
})
fireEvent.click(getByText(t('auth.login')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/login', {
- identification: 'a@b.c',
- password: 'password',
- keep: false,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/login', {
+ identification: 'a@b.c',
+ password: 'password',
+ keep: false,
+ }),
+ )
})
it('remember me', async () => {
@@ -59,13 +59,13 @@ describe('submit form', () => {
})
fireEvent.click(getByLabelText(t('auth.keep')))
fireEvent.click(getByText(t('auth.login')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/login', {
- identification: 'a@b.c',
- password: 'password',
- keep: true,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/login', {
+ identification: 'a@b.c',
+ password: 'password',
+ keep: true,
+ }),
+ )
})
it('failed', async () => {
@@ -83,13 +83,13 @@ describe('submit form', () => {
target: { value: 'password' },
})
fireEvent.click(getByText(t('auth.login')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/login', {
- identification: 'a@b.c',
- password: 'password',
- keep: false,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/login', {
+ identification: 'a@b.c',
+ password: 'password',
+ keep: false,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
})
@@ -113,13 +113,13 @@ describe('submit form', () => {
target: { value: 'password' },
})
fireEvent.click(getByText(t('auth.login')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/login', {
- identification: 'a@b.c',
- password: 'password',
- keep: false,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/login', {
+ identification: 'a@b.c',
+ password: 'password',
+ keep: false,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(queryByText(t('auth.tooManyFails.captcha'))).toBeInTheDocument()
expect(queryByAltText(t('auth.captcha'))).toBeInTheDocument()
@@ -129,14 +129,14 @@ describe('submit form', () => {
target: { value: 'captcha' },
})
fireEvent.click(getByText(t('auth.login')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/login', {
- identification: 'a@b.c',
- password: 'password',
- keep: false,
- captcha: 'captcha',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/login', {
+ identification: 'a@b.c',
+ password: 'password',
+ keep: false,
+ captcha: 'captcha',
+ }),
+ )
})
it('too many fails with normal recaptcha', async () => {
@@ -155,13 +155,13 @@ describe('submit form', () => {
target: { value: 'password' },
})
fireEvent.click(getByText(t('auth.login')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/login', {
- identification: 'a@b.c',
- password: 'password',
- keep: false,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/login', {
+ identification: 'a@b.c',
+ password: 'password',
+ keep: false,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
})
@@ -182,13 +182,13 @@ describe('submit form', () => {
target: { value: 'password' },
})
fireEvent.click(getByText(t('auth.login')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/auth/login', {
- identification: 'a@b.c',
- password: 'password',
- keep: false,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/auth/login', {
+ identification: 'a@b.c',
+ password: 'password',
+ keep: false,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(queryByText(t('auth.tooManyFails.recaptcha'))).toBeInTheDocument()
diff --git a/resources/assets/tests/views/skinlib/Show.test.tsx b/resources/assets/tests/views/skinlib/Show.test.tsx
index cb6f05a4..1b28bbea 100644
--- a/resources/assets/tests/views/skinlib/Show.test.tsx
+++ b/resources/assets/tests/views/skinlib/Show.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import { Texture } from '@/scripts/types'
@@ -55,7 +55,7 @@ test('without authenticated', async () => {
fetch.get.mockResolvedValue({ data: fixtureSkin })
const { queryByText, queryByTitle } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText(fixtureSkin.name)).toBeInTheDocument()
expect(queryByText('steve')).toBeInTheDocument()
@@ -73,7 +73,7 @@ test('authenticated but not uploader', async () => {
fetch.get.mockResolvedValue({ data: fixtureCape })
const { queryByText, queryByTitle } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText(fixtureCape.name)).toBeInTheDocument()
expect(queryByText(t('general.cape'))).toBeInTheDocument()
@@ -92,8 +92,7 @@ test('uploader is not existed', async () => {
fetch.get.mockResolvedValue({ data: fixtureSkin })
const { queryByText } = render()
- await wait()
-
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText(t('general.unexistent-user'))).toBeInTheDocument()
})
@@ -104,8 +103,7 @@ test('badges', async () => {
fetch.get.mockResolvedValue({ data: fixtureSkin })
const { queryByText } = render()
- await wait()
-
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText('STAFF')).toBeInTheDocument()
})
@@ -117,7 +115,7 @@ test('apply to player', async () => {
.mockResolvedValueOnce({ data: [] })
const { getByText, getByLabelText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.apply')))
fireEvent.click(getByLabelText('Close'))
@@ -131,11 +129,11 @@ test('set as avatar', async () => {
fetch.post.mockResolvedValue({ code: 0, message: 'ok' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.setAsAvatar')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
+ await waitFor(() => expect(fetch.post).toBeCalledTimes(1))
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
@@ -149,7 +147,7 @@ describe('download texture', () => {
it('allowed', async () => {
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.show.download')))
})
@@ -157,7 +155,7 @@ describe('download texture', () => {
it('not allowed', async () => {
window.blessing.extra.download = false
const { queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText(t('skinlib.show.download'))).not.toBeInTheDocument()
})
@@ -172,7 +170,7 @@ describe('operation panel', () => {
window.blessing.extra.currentUid = fixtureSkin.uploader
const { queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText(t('skinlib.show.manage-notice'))).toBeInTheDocument()
})
@@ -182,7 +180,7 @@ describe('operation panel', () => {
window.blessing.extra.admin = true
const { queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText(t('skinlib.show.manage-notice'))).toBeInTheDocument()
})
@@ -198,7 +196,7 @@ describe('edit texture name', () => {
const { getByText, getAllByTitle, getByDisplayValue, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getAllByTitle(t('skinlib.show.edit'))[0])
fireEvent.input(getByDisplayValue(fixtureSkin.name), {
@@ -208,9 +206,7 @@ describe('edit texture name', () => {
expect(queryByText(t('skinlib.emptyNewTextureName'))).toBeInTheDocument()
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(fixtureSkin.name)).toBeInTheDocument()
})
@@ -224,19 +220,19 @@ describe('edit texture name', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getAllByTitle(t('skinlib.show.edit'))[0])
fireEvent.input(getByDisplayValue(fixtureSkin.name), {
target: { value: 't' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/rename', {
- tid: fixtureSkin.tid,
- new_name: 't',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/rename', {
+ tid: fixtureSkin.tid,
+ new_name: 't',
+ }),
+ )
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText('t')).toBeInTheDocument()
@@ -252,19 +248,19 @@ describe('edit texture name', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getAllByTitle(t('skinlib.show.edit'))[0])
fireEvent.input(getByDisplayValue(fixtureSkin.name), {
target: { value: 't' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/rename', {
- tid: fixtureSkin.tid,
- new_name: 't',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/rename', {
+ tid: fixtureSkin.tid,
+ new_name: 't',
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText(fixtureSkin.name)).toBeInTheDocument()
@@ -281,14 +277,12 @@ describe('edit texture type', () => {
const { getByText, getAllByTitle, getByLabelText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getAllByTitle(t('skinlib.show.edit'))[1])
fireEvent.click(getByLabelText('Alex'))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText('steve')).toBeInTheDocument()
})
@@ -302,17 +296,17 @@ describe('edit texture type', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getAllByTitle(t('skinlib.show.edit'))[1])
fireEvent.click(getByLabelText('Alex'))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/model', {
- tid: fixtureSkin.tid,
- model: 'alex',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/model', {
+ tid: fixtureSkin.tid,
+ model: 'alex',
+ }),
+ )
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText('alex')).toBeInTheDocument()
@@ -328,17 +322,17 @@ describe('edit texture type', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getAllByTitle(t('skinlib.show.edit'))[1])
fireEvent.click(getByLabelText('Alex'))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/model', {
- tid: fixtureSkin.tid,
- model: 'alex',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/model', {
+ tid: fixtureSkin.tid,
+ model: 'alex',
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText('steve')).toBeInTheDocument()
@@ -353,7 +347,7 @@ describe('add to closet', () => {
it('cancelled', async () => {
const { getByText, getByDisplayValue, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.addToCloset')))
fireEvent.input(getByDisplayValue(fixtureSkin.name), {
@@ -363,9 +357,7 @@ describe('add to closet', () => {
expect(queryByText(t('skinlib.emptyItemName'))).toBeInTheDocument()
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
})
it('succeeded', async () => {
@@ -374,19 +366,19 @@ describe('add to closet', () => {
const { getByText, getByDisplayValue, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.addToCloset')))
fireEvent.input(getByDisplayValue(fixtureSkin.name), {
target: { value: 't' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/closet/add', {
- tid: fixtureSkin.tid,
- name: 't',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/closet/add', {
+ tid: fixtureSkin.tid,
+ name: 't',
+ }),
+ )
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText('2')).toBeInTheDocument()
@@ -398,19 +390,19 @@ describe('add to closet', () => {
const { getByText, getByDisplayValue, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.addToCloset')))
fireEvent.input(getByDisplayValue(fixtureSkin.name), {
target: { value: 't' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/closet/add', {
- tid: fixtureSkin.tid,
- name: 't',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/closet/add', {
+ tid: fixtureSkin.tid,
+ name: 't',
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText('1')).toBeInTheDocument()
@@ -428,13 +420,15 @@ describe('remove from closet', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'ok' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.removeFromCloset')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/closet/remove/${fixtureSkin.tid}`)
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/closet/remove/${fixtureSkin.tid}`,
+ ),
+ )
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText('0')).toBeInTheDocument()
@@ -444,13 +438,15 @@ describe('remove from closet', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.removeFromCloset')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/closet/remove/${fixtureSkin.tid}`)
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/closet/remove/${fixtureSkin.tid}`,
+ ),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText('1')).toBeInTheDocument()
@@ -467,7 +463,7 @@ describe('report texture', () => {
window.blessing.extra.report = 5
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.report.title')))
expect(queryByText(t('skinlib.report.positive', { score: 5 })))
@@ -480,7 +476,7 @@ describe('report texture', () => {
window.blessing.extra.report = -5
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.report.title')))
expect(queryByText(t('skinlib.report.negative', { score: 5 })))
@@ -495,19 +491,19 @@ describe('report texture', () => {
const { getByText, getByPlaceholderText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.report.title')))
fireEvent.input(getByPlaceholderText(t('skinlib.report.reason')), {
target: { value: 'illegal' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/report', {
- tid: fixtureSkin.tid,
- reason: 'illegal',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/report', {
+ tid: fixtureSkin.tid,
+ reason: 'illegal',
+ }),
+ )
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
})
@@ -518,19 +514,19 @@ describe('report texture', () => {
const { getByText, getByPlaceholderText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.report.title')))
fireEvent.input(getByPlaceholderText(t('skinlib.report.reason')), {
target: { value: 'illegal' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/report', {
- tid: fixtureSkin.tid,
- reason: 'illegal',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/report', {
+ tid: fixtureSkin.tid,
+ reason: 'illegal',
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
})
@@ -545,13 +541,11 @@ describe('change privacy', () => {
fetch.get.mockResolvedValue({ data: fixtureSkin })
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.setAsPrivate')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(t('skinlib.setAsPrivate'))).toBeInTheDocument()
})
@@ -560,15 +554,15 @@ describe('change privacy', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'ok' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.setAsPrivate')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/privacy', {
- tid: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/privacy', {
+ tid: fixtureSkin.tid,
+ }),
+ )
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText(t('skinlib.setAsPublic'))).toBeInTheDocument()
@@ -579,15 +573,15 @@ describe('change privacy', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.setAsPublic')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/privacy', {
- tid: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/privacy', {
+ tid: fixtureSkin.tid,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText(t('skinlib.setAsPublic'))).toBeInTheDocument()
@@ -602,28 +596,26 @@ describe('delete texture', () => {
it('cancelled', async () => {
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.show.delete-texture')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
})
it('succeeded', async () => {
fetch.post.mockResolvedValue({ code: 0, message: 'ok' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.show.delete-texture')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/delete', {
- tid: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/delete', {
+ tid: fixtureSkin.tid,
+ }),
+ )
expect(queryByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
@@ -634,15 +626,15 @@ describe('delete texture', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('skinlib.show.delete-texture')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/skinlib/delete', {
- tid: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/skinlib/delete', {
+ tid: fixtureSkin.tid,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
})
diff --git a/resources/assets/tests/views/skinlib/SkinLibrary.test.tsx b/resources/assets/tests/views/skinlib/SkinLibrary.test.tsx
index 2d6dd6c7..437475a0 100644
--- a/resources/assets/tests/views/skinlib/SkinLibrary.test.tsx
+++ b/resources/assets/tests/views/skinlib/SkinLibrary.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import { Paginator } from '@/scripts/types'
@@ -37,7 +37,7 @@ test('without authenticated', async () => {
fetch.get.mockResolvedValue(createPaginator([]))
const { queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
expect(fetch.get).toBeCalledWith(
'/skinlib/list',
@@ -56,20 +56,20 @@ test('search by keyword', async () => {
fetch.get.mockResolvedValue(createPaginator([]))
const { getByText, getByPlaceholderText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.input(getByPlaceholderText(t('vendor.datatable.search')), {
target: { value: 'k' },
})
fireEvent.click(getByText(t('general.submit')))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('keyword')).toBe('k')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('keyword')).toBe('k')
+ return true
+ }),
+ ),
)
})
@@ -78,17 +78,17 @@ test('select uploaded by self', async () => {
fetch.get.mockResolvedValue(createPaginator([]))
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('skinlib.seeMyUpload')))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('uploader')).toBe('1')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('uploader')).toBe('1')
+ return true
+ }),
+ ),
)
expect(queryByText(t('skinlib.filter.uploader', { uid: 1 })))
})
@@ -100,32 +100,32 @@ test('reset query', async () => {
const { getByText, getByPlaceholderText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText('Steve'))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.input(getByPlaceholderText(t('vendor.datatable.search')), {
target: { value: 'k' },
})
fireEvent.click(getByText(t('general.submit')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('skinlib.seeMyUpload')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('skinlib.sort.likes')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('skinlib.reset')))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('filter')).toBe('skin')
- expect(search.get('keyword')).toBeNull()
- expect(search.get('uploader')).toBeNull()
- expect(search.get('sort')).toBe('time')
- expect(search.get('page')).toBe('1')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('filter')).toBe('skin')
+ expect(search.get('keyword')).toBeNull()
+ expect(search.get('uploader')).toBeNull()
+ expect(search.get('sort')).toBe('time')
+ expect(search.get('page')).toBe('1')
+ return true
+ }),
+ ),
)
expect(queryByText(t('skinlib.filter.uploader', { uid: 1 })))
})
@@ -134,24 +134,24 @@ test('browser goes back', async () => {
fetch.get.mockResolvedValue(createPaginator([]))
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText('Steve'))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
const state: string = window.history.state
const event = new PopStateEvent('popstate', {
state: state.replace('steve', 'skin'),
})
window.dispatchEvent(event)
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('filter')).toBe('skin')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('filter')).toBe('skin')
+ return true
+ }),
+ ),
)
})
@@ -160,7 +160,7 @@ test('pagination', async () => {
fetch.get.mockResolvedValue(response)
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText('2'))
@@ -179,7 +179,7 @@ test('library item', async () => {
const { getByText, queryByText, queryAllByText, queryByAltText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
expect(queryAllByText('Steve')).toHaveLength(2)
expect(queryByText(fixtureItem.name)).toBeInTheDocument()
@@ -190,14 +190,14 @@ test('library item', async () => {
expect(queryByText(fixtureItem.nickname)).toBeInTheDocument()
fireEvent.click(getByText(fixtureItem.nickname))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('uploader')).toBe(fixtureItem.uploader.toString())
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('uploader')).toBe(fixtureItem.uploader.toString())
+ return true
+ }),
+ ),
)
const search = new URLSearchParams(location.search)
expect(search.get('uploader')).toBe(fixtureItem.uploader.toString())
@@ -208,7 +208,7 @@ test('private texture', async () => {
fetch.get.mockResolvedValue(createPaginator([item]))
const { queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
expect(queryByText(t('skinlib.private'))).toBeInTheDocument()
})
@@ -220,19 +220,19 @@ describe('by filter', () => {
it('skin', async () => {
const { getByText, queryAllByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText('Steve'))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('general.skin')))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('filter')).toBe('skin')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('filter')).toBe('skin')
+ return true
+ }),
+ ),
)
expect(queryAllByText(t('general.skin'))).toHaveLength(2)
const search = new URLSearchParams(location.search)
@@ -241,17 +241,17 @@ describe('by filter', () => {
it('steve', async () => {
const { getByText, queryAllByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText('Steve'))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('filter')).toBe('steve')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('filter')).toBe('steve')
+ return true
+ }),
+ ),
)
expect(queryAllByText('Steve')).toHaveLength(2)
const search = new URLSearchParams(location.search)
@@ -260,17 +260,17 @@ describe('by filter', () => {
it('alex', async () => {
const { getByText, queryAllByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText('Alex'))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('filter')).toBe('alex')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('filter')).toBe('alex')
+ return true
+ }),
+ ),
)
expect(queryAllByText('Alex')).toHaveLength(2)
const search = new URLSearchParams(location.search)
@@ -279,17 +279,17 @@ describe('by filter', () => {
it('cape', async () => {
const { getByText, queryAllByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('general.cape')))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('filter')).toBe('cape')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('filter')).toBe('cape')
+ return true
+ }),
+ ),
)
expect(queryAllByText(t('general.cape'))).toHaveLength(2)
const search = new URLSearchParams(location.search)
@@ -304,19 +304,19 @@ describe('sorting', () => {
it('by time', async () => {
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('skinlib.sort.likes')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('skinlib.sort.time')))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('sort')).toBe('time')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('sort')).toBe('time')
+ return true
+ }),
+ ),
)
const search = new URLSearchParams(location.search)
expect(search.get('sort')).toBe('time')
@@ -324,17 +324,17 @@ describe('sorting', () => {
it('by likes', async () => {
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('skinlib.sort.likes')))
- await wait()
-
- expect(fetch.get).toHaveBeenLastCalledWith(
- '/skinlib/list',
- expect.toSatisfy((search: URLSearchParams) => {
- expect(search.get('sort')).toBe('likes')
- return true
- }),
+ await waitFor(() =>
+ expect(fetch.get).toHaveBeenLastCalledWith(
+ '/skinlib/list',
+ expect.toSatisfy((search: URLSearchParams) => {
+ expect(search.get('sort')).toBe('likes')
+ return true
+ }),
+ ),
)
const search = new URLSearchParams(location.search)
expect(search.get('sort')).toBe('likes')
@@ -354,7 +354,7 @@ describe('add to closet', () => {
it('without authenticated', async () => {
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(fixtureItem.likes.toString()))
expect(queryByText(t('skinlib.anonymous'))).toBeInTheDocument()
@@ -366,13 +366,11 @@ describe('add to closet', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'ok' })
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(fixtureItem.likes.toString()))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalled()
+ await waitFor(() => expect(fetch.post).toBeCalled())
expect(queryByText((fixtureItem.likes + 1).toString())).toBeInTheDocument()
})
@@ -381,13 +379,11 @@ describe('add to closet', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(fixtureItem.likes.toString()))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalled()
+ await waitFor(() => expect(fetch.post).toBeCalled())
expect(queryByText(fixtureItem.likes.toString())).toBeInTheDocument()
})
})
@@ -408,13 +404,11 @@ describe('remove from closet', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'ok' })
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(fixtureItem.likes.toString()))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalled()
+ await waitFor(() => expect(fetch.post).toBeCalled())
expect(queryByText((fixtureItem.likes - 1).toString())).toBeInTheDocument()
})
@@ -422,13 +416,11 @@ describe('remove from closet', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(fixtureItem.likes.toString()))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalled()
+ await waitFor(() => expect(fetch.post).toBeCalled())
expect(queryByText(fixtureItem.likes.toString())).toBeInTheDocument()
})
})
diff --git a/resources/assets/tests/views/skinlib/Upload.test.tsx b/resources/assets/tests/views/skinlib/Upload.test.tsx
index 07a9c4d5..90f8c27d 100644
--- a/resources/assets/tests/views/skinlib/Upload.test.tsx
+++ b/resources/assets/tests/views/skinlib/Upload.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import { isAlex } from '@/scripts/textureUtils'
@@ -103,30 +103,28 @@ describe('input file', () => {
it('select skin type automatically', async () => {
isAlex.mockResolvedValue(true)
- const { getByTitle, getByLabelText } = render()
+ const { getByTitle, findByLabelText } = render()
const file = new File([], 't.png')
fireEvent.change(getByTitle(t('skinlib.upload.select-file')), {
target: { files: [file] },
})
- await wait()
- expect(getByLabelText('Alex')).toBeChecked()
+ expect(await findByLabelText('Alex')).toBeChecked()
})
it('do not overwrite "cape" type', async () => {
- const { getByTitle, getByLabelText } = render()
+ const { getByTitle, getByLabelText, findByLabelText } = render()
fireEvent.click(getByLabelText(t('general.cape')))
- await wait()
+ await waitFor(() => {})
const file = new File([], 't.png')
fireEvent.change(getByTitle(t('skinlib.upload.select-file')), {
target: { files: [file] },
})
- await wait()
- expect(getByLabelText(t('general.cape'))).toBeChecked()
+ expect(await findByLabelText(t('general.cape'))).toBeChecked()
})
})
@@ -234,7 +232,7 @@ describe('upload texture', () => {
})
fireEvent.click(getByText(t('skinlib.upload.button')))
- await wait()
+ await waitFor(() => expect(fetch.post).toBeCalled())
})
it('duplicated texture detected', async () => {
@@ -248,7 +246,7 @@ describe('upload texture', () => {
})
fireEvent.click(getByText(t('skinlib.upload.button')))
- await wait()
+ await waitFor(() => expect(fetch.post).toBeCalled())
expect(queryByText('dup')).toBeInTheDocument()
fireEvent.click(getByText(t('user.viewInSkinlib')))
@@ -265,7 +263,7 @@ describe('upload texture', () => {
})
fireEvent.click(getByText(t('skinlib.upload.button')))
- await wait()
+ await waitFor(() => expect(fetch.post).toBeCalled())
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
})
diff --git a/resources/assets/tests/views/user/BindPlayers.test.tsx b/resources/assets/tests/views/user/BindPlayers.test.tsx
index e2184a3f..6897a06c 100644
--- a/resources/assets/tests/views/user/BindPlayers.test.tsx
+++ b/resources/assets/tests/views/user/BindPlayers.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import BindPlayers from '@/views/user/BindPlayers'
@@ -20,13 +20,15 @@ describe('submit', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'success' })
const { getByText, getByLabelText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByLabelText('reina'))
fireEvent.click(getByText(t('general.submit')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/player/bind', { player: 'reina' })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/player/bind', {
+ player: 'reina',
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
fireEvent.click(getByText(t('general.confirm')))
@@ -39,15 +41,17 @@ describe('submit', () => {
const { getByText, getByPlaceholderText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.input(getByPlaceholderText(t('general.player.player-name')), {
target: { value: 'kumiko' },
})
fireEvent.click(getByText(t('general.submit')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/player/bind', { player: 'kumiko' })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/player/bind', {
+ player: 'kumiko',
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
fireEvent.click(getByText(t('general.confirm')))
@@ -60,15 +64,17 @@ describe('submit', () => {
const { getByText, getByPlaceholderText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.input(getByPlaceholderText(t('general.player.player-name')), {
target: { value: 'kumiko' },
})
fireEvent.click(getByText(t('general.submit')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/player/bind', { player: 'kumiko' })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/player/bind', {
+ player: 'kumiko',
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
fireEvent.click(getByText(t('general.confirm')))
diff --git a/resources/assets/tests/views/user/Closet.test.tsx b/resources/assets/tests/views/user/Closet.test.tsx
index cd3b27e6..30942421 100644
--- a/resources/assets/tests/views/user/Closet.test.tsx
+++ b/resources/assets/tests/views/user/Closet.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import $ from 'jquery'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
@@ -80,7 +80,7 @@ test('empty closet', async () => {
fetch.get.mockResolvedValue(createPaginator([]))
const { queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(queryByText(/skin library/i)).toBeInTheDocument()
})
@@ -91,17 +91,17 @@ test('categories', async () => {
.mockResolvedValueOnce(createPaginator([fixtureSkin]))
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
expect(queryByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
expect(queryByText(fixtureCape.pivot.item_name)).not.toBeInTheDocument()
fireEvent.click(getByText(t('general.cape')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
expect(queryByText(fixtureSkin.pivot.item_name)).not.toBeInTheDocument()
expect(queryByText(fixtureCape.pivot.item_name)).toBeInTheDocument()
fireEvent.click(getByText(t('general.skin')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
expect(queryByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
expect(queryByText(fixtureCape.pivot.item_name)).not.toBeInTheDocument()
})
@@ -111,15 +111,13 @@ test('search textures', async () => {
.mockResolvedValueOnce(createPaginator([fixtureSkin]))
.mockResolvedValueOnce(createPaginator([]))
- const { getByPlaceholderText, queryByText } = render()
- await wait()
+ const { getByPlaceholderText, findByText } = render()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.input(getByPlaceholderText(t('user.typeToSearch')), {
target: { value: 'abc' },
})
- await wait()
-
- expect(queryByText(/no result/i)).toBeInTheDocument()
+ expect(await findByText(/no result/i)).toBeInTheDocument()
})
test('switch page', async () => {
@@ -127,12 +125,10 @@ test('switch page', async () => {
.mockResolvedValueOnce({ ...createPaginator([]), last_page: 2 })
.mockResolvedValueOnce({ ...createPaginator([fixtureSkin]), last_page: 2 })
- const { getByText, queryByText } = render()
- await wait()
+ const { getByText, findByText } = render()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText('2'))
- await wait()
-
- expect(queryByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
+ expect(await findByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
})
describe('rename item', () => {
@@ -146,18 +142,20 @@ describe('rename item', () => {
const { getByText, getByDisplayValue, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.renameItem')))
fireEvent.input(getByDisplayValue(fixtureSkin.pivot.item_name), {
target: { value: 'my skin' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(
- `/user/closet/rename/${fixtureSkin.tid}`,
- { name: 'my skin' },
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/closet/rename/${fixtureSkin.tid}`,
+ {
+ name: 'my skin',
+ },
+ ),
)
expect(queryByText('my skin')).toBeInTheDocument()
expect(queryByText('success')).toBeInTheDocument()
@@ -168,16 +166,14 @@ describe('rename item', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'success' })
const { getByText, getByDisplayValue, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.renameItem')))
fireEvent.input(getByDisplayValue(fixtureSkin.pivot.item_name), {
target: { value: '' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(t('skinlib.emptyNewTextureName'))).toBeInTheDocument()
fireEvent.click(getByText(t('general.cancel')))
@@ -189,18 +185,20 @@ describe('rename item', () => {
const { getByText, getByDisplayValue, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.renameItem')))
fireEvent.input(getByDisplayValue(fixtureSkin.pivot.item_name), {
target: { value: 'my skin' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(
- `/user/closet/rename/${fixtureSkin.tid}`,
- { name: 'my skin' },
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/closet/rename/${fixtureSkin.tid}`,
+ {
+ name: 'my skin',
+ },
+ ),
)
expect(queryByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
expect(queryByText('failed')).toBeInTheDocument()
@@ -209,16 +207,14 @@ describe('rename item', () => {
it('cancelled', async () => {
const { getByText, getByDisplayValue, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.renameItem')))
fireEvent.input(getByDisplayValue(fixtureSkin.pivot.item_name), {
target: { value: 'my skin' },
})
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
})
})
@@ -232,13 +228,15 @@ describe('remove item', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'success' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.removeItem')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/closet/remove/${fixtureSkin.tid}`)
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/closet/remove/${fixtureSkin.tid}`,
+ ),
+ )
expect(queryByText(/skin library/i)).toBeInTheDocument()
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
@@ -248,13 +246,15 @@ describe('remove item', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.removeItem')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/closet/remove/${fixtureSkin.tid}`)
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/closet/remove/${fixtureSkin.tid}`,
+ ),
+ )
expect(queryByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
@@ -262,13 +262,11 @@ describe('remove item', () => {
it('cancelled', async () => {
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.removeItem')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(fixtureSkin.pivot.item_name)).toBeInTheDocument()
})
})
@@ -282,7 +280,7 @@ describe('select textures', () => {
it('select skin', async () => {
const { getByAltText, queryAllByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByAltText(fixtureSkin.pivot.item_name))
expect(queryAllByText(t('general.skin'))).toHaveLength(2)
@@ -290,10 +288,10 @@ describe('select textures', () => {
it('select cape', async () => {
const { getByText, getByAltText, queryAllByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByText(t('general.cape')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByAltText(fixtureCape.pivot.item_name))
expect(queryAllByText(t('general.cape'))).toHaveLength(2)
@@ -301,11 +299,11 @@ describe('select textures', () => {
it('reset selected', async () => {
const { getByText, getByAltText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByAltText(fixtureSkin.pivot.item_name))
fireEvent.click(getByText(t('general.cape')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByAltText(fixtureCape.pivot.item_name))
expect(
@@ -336,15 +334,15 @@ describe('set avatar', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'success' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.setAsAvatar')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/profile/avatar', {
- tid: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/profile/avatar', {
+ tid: fixtureSkin.tid,
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(document.querySelector('[alt="User Image"]')).toHaveAttribute('src')
@@ -354,28 +352,26 @@ describe('set avatar', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.setAsAvatar')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/profile/avatar', {
- tid: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/profile/avatar', {
+ tid: fixtureSkin.tid,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
})
it('cancelled', async () => {
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.setAsAvatar')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
})
})
@@ -384,7 +380,7 @@ describe('apply textures to player', () => {
fetch.get.mockResolvedValue(createPaginator([]))
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.useAs')))
@@ -402,14 +398,14 @@ describe('apply textures to player', () => {
getByAltText,
getAllByPlaceholderText,
queryByText,
+ findByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByAltText(fixtureSkin.pivot.item_name))
fireEvent.click(getByText(t('user.useAs')))
- await wait()
- expect(queryByText(fixturePlayer.name)).toBeInTheDocument()
+ expect(await findByText(fixturePlayer.name)).toBeInTheDocument()
fireEvent.input(getAllByPlaceholderText(t('user.typeToSearch'))[1], {
target: { value: 'reina' },
@@ -430,17 +426,20 @@ describe('apply textures to player', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByAltText(fixtureSkin.pivot.item_name))
fireEvent.click(getByText(t('user.useAs')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByTitle(fixturePlayer.name))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/player/set/${fixturePlayer.pid}`, {
- skin: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/player/set/${fixturePlayer.pid}`,
+ {
+ skin: fixtureSkin.tid,
+ },
+ ),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
})
@@ -458,17 +457,20 @@ describe('apply textures to player', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByAltText(fixtureSkin.pivot.item_name))
fireEvent.click(getByText(t('user.useAs')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByTitle(fixturePlayer.name))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/player/set/${fixturePlayer.pid}`, {
- skin: fixtureSkin.tid,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/player/set/${fixturePlayer.pid}`,
+ {
+ skin: fixtureSkin.tid,
+ },
+ ),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
})
@@ -479,15 +481,13 @@ describe('apply textures to player', () => {
.mockResolvedValueOnce({ data: [fixturePlayer] })
const { getByText, getByAltText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
fireEvent.click(getByAltText(fixtureSkin.pivot.item_name))
fireEvent.click(getByText(t('user.useAs')))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
- $('#modal-apply')
- .modal('hide')
- .trigger('hidden.bs.modal')
+ $('#modal-apply').modal('hide').trigger('hidden.bs.modal')
expect(fetch.post).not.toBeCalled()
})
diff --git a/resources/assets/tests/views/user/Dashboard.test.tsx b/resources/assets/tests/views/user/Dashboard.test.tsx
index a39824db..bc92c6a2 100644
--- a/resources/assets/tests/views/user/Dashboard.test.tsx
+++ b/resources/assets/tests/views/user/Dashboard.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import * as fetch from '@/scripts/net'
import { trans } from '@/scripts/i18n'
import Dashboard from '@/views/user/Dashboard'
@@ -29,7 +29,7 @@ describe('info box', () => {
)
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(getByText('13')).toBeInTheDocument()
expect(getByText(/21/)).toBeInTheDocument()
})
@@ -41,7 +41,7 @@ describe('info box', () => {
)
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(getByText('700')).toBeInTheDocument()
expect(getByText(/800/)).toBeInTheDocument()
expect(getByText(/KB/)).toBeInTheDocument()
@@ -53,7 +53,7 @@ describe('info box', () => {
)
const { getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(getByText('7')).toBeInTheDocument()
expect(getByText(/10/)).toBeInTheDocument()
expect(getByText(/MB/)).toBeInTheDocument()
@@ -74,13 +74,11 @@ describe('sign', () => {
})
const { getByRole, getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
const button = getByRole('button')
fireEvent.click(button)
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/sign')
+ await waitFor(() => expect(fetch.post).toBeCalledWith('/user/sign'))
expect(getByText('ok')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(button).toBeDisabled()
@@ -91,12 +89,10 @@ describe('sign', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'f', data: {} })
const { getByRole, getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByRole('button'))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/sign')
+ await waitFor(() => expect(fetch.post).toBeCalledWith('/user/sign'))
expect(getByText('f')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-warning')
})
@@ -112,7 +108,7 @@ describe('sign button', () => {
it('sign is allowed', async () => {
fetch.get.mockResolvedValue(scoreInfo())
const { getByRole } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
const button = getByRole('button')
expect(button).toBeEnabled()
@@ -122,7 +118,7 @@ describe('sign button', () => {
it('sign is allowed if last sign is yesterday', async () => {
fetch.get.mockResolvedValue(scoreInfo({ signAfterZero: true }))
const { getByRole } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(getByRole('button')).toBeEnabled()
})
@@ -131,7 +127,7 @@ describe('sign button', () => {
scoreInfo({ signAfterZero: true }, { lastSignAt: Date.now() }),
)
const { getByRole } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(getByRole('button')).toBeDisabled()
})
@@ -139,7 +135,7 @@ describe('sign button', () => {
fetch.get.mockResolvedValue(scoreInfo({}, { lastSignAt: Date.now() }))
const { getByRole } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
const button = getByRole('button')
expect(button).toBeDisabled()
@@ -152,7 +148,7 @@ describe('sign button', () => {
)
const { getByRole } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
const button = getByRole('button')
expect(button).toBeDisabled()
diff --git a/resources/assets/tests/views/user/OAuth.test.tsx b/resources/assets/tests/views/user/OAuth.test.tsx
index 055c7ad0..6bda0e72 100644
--- a/resources/assets/tests/views/user/OAuth.test.tsx
+++ b/resources/assets/tests/views/user/OAuth.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import * as fetch from '@/scripts/net'
import { t } from '@/scripts/i18n'
import OAuth from '@/views/user/OAuth'
@@ -28,7 +28,7 @@ describe('create app', () => {
it('succeeded', async () => {
fetch.post.mockResolvedValue(fixture)
const { getByLabelText, getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.oauth.create')))
fireEvent.input(getByLabelText(t('user.oauth.name')), {
@@ -38,12 +38,12 @@ describe('create app', () => {
target: { value: 'http://url.test/' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/oauth/clients', {
- name: 'My App',
- redirect: 'http://url.test/',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/oauth/clients', {
+ name: 'My App',
+ redirect: 'http://url.test/',
+ }),
+ )
expect(queryByText(fixture.id.toString())).toBeInTheDocument()
expect(queryByText(fixture.name)).toBeInTheDocument()
expect(queryByText(fixture.redirect)).toBeInTheDocument()
@@ -55,7 +55,7 @@ describe('create app', () => {
const { getByLabelText, getByText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.oauth.create')))
fireEvent.input(getByLabelText(t('user.oauth.name')), {
@@ -65,12 +65,12 @@ describe('create app', () => {
target: { value: 'http://url.test/' },
})
fireEvent.click(getByText(t('general.confirm')))
-
- await wait()
- expect(fetch.post).toBeCalledWith('/oauth/clients', {
- name: 'My App',
- redirect: 'http://url.test/',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/oauth/clients', {
+ name: 'My App',
+ redirect: 'http://url.test/',
+ }),
+ )
expect(queryByText(fixture.name)).not.toBeInTheDocument()
expect(queryByText(fixture.redirect)).not.toBeInTheDocument()
expect(queryByText('exception')).toBeInTheDocument()
@@ -79,7 +79,7 @@ describe('create app', () => {
it('cancel dialog', async () => {
const { getByLabelText, getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.oauth.create')))
fireEvent.input(getByLabelText(t('user.oauth.name')), {
@@ -90,8 +90,7 @@ describe('create app', () => {
})
fireEvent.click(getByText(t('general.cancel')))
- await wait()
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
fireEvent.click(getByText(t('user.oauth.create')))
expect(getByLabelText(t('user.oauth.name'))).toHaveValue('')
@@ -111,19 +110,19 @@ describe('edit app', () => {
const { getByTitle, getByText, getByDisplayValue, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.oauth.modifyName')))
fireEvent.input(getByDisplayValue(fixture.name), {
target: { value: 'new name' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
- ...fixture,
- name: 'new name',
- })
+ await waitFor(() =>
+ expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
+ ...fixture,
+ name: 'new name',
+ }),
+ )
expect(queryByText('new name')).toBeInTheDocument()
})
@@ -137,19 +136,19 @@ describe('edit app', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.oauth.modifyName')))
fireEvent.input(getByDisplayValue(fixture.name), {
target: { value: 'new name' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
- ...fixture,
- name: 'new name',
- })
+ await waitFor(() =>
+ expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
+ ...fixture,
+ name: 'new name',
+ }),
+ )
expect(queryByText(fixture.name)).toBeInTheDocument()
expect(queryByText('exception')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
@@ -157,13 +156,11 @@ describe('edit app', () => {
it('cancel dialog', async () => {
const { getByTitle, getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.oauth.modifyName')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.put).not.toBeCalled()
+ await waitFor(() => expect(fetch.put).not.toBeCalled())
expect(queryByText(fixture.name)).toBeInTheDocument()
})
})
@@ -175,19 +172,19 @@ describe('edit app', () => {
const { getByTitle, getByDisplayValue, getByText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.oauth.modifyUrl')))
fireEvent.input(getByDisplayValue(fixture.redirect), {
target: { value: 'http://new.test/' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
- ...fixture,
- redirect: 'http://new.test/',
- })
+ await waitFor(() =>
+ expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
+ ...fixture,
+ redirect: 'http://new.test/',
+ }),
+ )
expect(queryByText('http://new.test/')).toBeInTheDocument()
})
@@ -201,19 +198,19 @@ describe('edit app', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.oauth.modifyUrl')))
fireEvent.input(getByDisplayValue(fixture.redirect), {
target: { value: 'http://new.test/' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
- ...fixture,
- redirect: 'http://new.test/',
- })
+ await waitFor(() =>
+ expect(fetch.put).toBeCalledWith(`/oauth/clients/${fixture.id}`, {
+ ...fixture,
+ redirect: 'http://new.test/',
+ }),
+ )
expect(queryByText(fixture.redirect)).toBeInTheDocument()
expect(queryByText('exception')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
@@ -221,13 +218,11 @@ describe('edit app', () => {
it('cancel dialog', async () => {
const { getByTitle, getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.oauth.modifyUrl')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.put).not.toBeCalled()
+ await waitFor(() => expect(fetch.put).not.toBeCalled())
expect(queryByText(fixture.redirect)).toBeInTheDocument()
})
})
@@ -240,26 +235,24 @@ describe('delete app', () => {
it('succeeded', async () => {
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('report.delete')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.del).toBeCalledWith(`/oauth/clients/${fixture.id}`)
+ await waitFor(() =>
+ expect(fetch.del).toBeCalledWith(`/oauth/clients/${fixture.id}`),
+ )
expect(queryByText(fixture.name)).not.toBeInTheDocument()
expect(queryByText(fixture.redirect)).not.toBeInTheDocument()
})
it('cancel dialog', async () => {
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('report.delete')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.del).not.toBeCalled())
expect(queryByText(fixture.name)).toBeInTheDocument()
expect(queryByText(fixture.redirect)).toBeInTheDocument()
})
diff --git a/resources/assets/tests/views/user/Players.test.tsx b/resources/assets/tests/views/user/Players.test.tsx
index e7f0627d..a4811a16 100644
--- a/resources/assets/tests/views/user/Players.test.tsx
+++ b/resources/assets/tests/views/user/Players.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import { Player } from '@/scripts/types'
@@ -42,7 +42,7 @@ test('search players', async () => {
fetch.get.mockResolvedValue({ data: [fixture, fixture2] })
const { getByPlaceholderText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.input(getByPlaceholderText(t('user.typeToSearch')), {
target: { value: 'k' },
@@ -56,7 +56,7 @@ describe('select player automatically', () => {
it('only one player', async () => {
fetch.get.mockResolvedValue({ data: [fixture] })
render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(fetch.get).toBeCalledWith(`/skinlib/info/${fixture.tid_skin}`)
expect(fetch.get).toBeCalledWith(`/skinlib/info/${fixture.tid_cape}`)
@@ -66,7 +66,7 @@ describe('select player automatically', () => {
const fixture2: Player = { pid: 2, name: 'reina', tid_skin: 3, tid_cape: 4 }
fetch.get.mockResolvedValue({ data: [fixture, fixture2] })
render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
expect(fetch.get).not.toBeCalledWith(`/skinlib/info/${fixture.tid_skin}`)
expect(fetch.get).not.toBeCalledWith(`/skinlib/info/${fixture.tid_cape}`)
@@ -81,7 +81,7 @@ describe('2d preview', () => {
.mockResolvedValueOnce({ data: { hash: 'b', type: 'cape' } })
const { getByAltText, getByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.switch2dPreview')))
@@ -103,7 +103,7 @@ describe('2d preview', () => {
const { getByAltText, queryByAltText, getByText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.switch2dPreview')))
@@ -123,7 +123,7 @@ describe('2d preview', () => {
const { getByAltText, queryByAltText, getByText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.switch2dPreview')))
@@ -143,7 +143,7 @@ describe('create player', () => {
it('alert if score is enough', async () => {
const { getByRole, getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.add-player')))
@@ -156,7 +156,7 @@ describe('create player', () => {
it('alert if lack of score', async () => {
blessing.extra.score = 0
const { getByRole, getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.add-player')))
@@ -172,18 +172,18 @@ describe('create player', () => {
const { getByText, getByLabelText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.add-player')))
fireEvent.input(getByLabelText(t('general.player.player-name')), {
target: { value: fixture.name },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/player/add', {
- name: fixture.name,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/player/add', {
+ name: fixture.name,
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText(fixture.pid.toString())).toBeInTheDocument()
@@ -196,18 +196,18 @@ describe('create player', () => {
const { getByText, getByLabelText, getByRole, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.add-player')))
fireEvent.input(getByLabelText(t('general.player.player-name')), {
target: { value: fixture.name },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/player/add', {
- name: fixture.name,
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/player/add', {
+ name: fixture.name,
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText(fixture.name)).not.toBeInTheDocument()
@@ -215,22 +215,20 @@ describe('create player', () => {
it('cancelled', async () => {
const { getByText, getByLabelText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.add-player')))
fireEvent.input(getByLabelText(t('general.player.player-name')), {
target: { value: fixture.name },
})
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(fixture.name)).not.toBeInTheDocument()
})
it('clear form on close', async () => {
const { getByText, getByLabelText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.add-player')))
fireEvent.input(getByLabelText(t('general.player.player-name')), {
@@ -258,18 +256,18 @@ describe('edit player name', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.player.edit-pname')))
fireEvent.input(getByDisplayValue(fixture.name), {
target: { value: 'reina' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/player/rename/${fixture.pid}`, {
- name: 'reina',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(`/user/player/rename/${fixture.pid}`, {
+ name: 'reina',
+ }),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText('reina')).toBeInTheDocument()
@@ -279,16 +277,14 @@ describe('edit player name', () => {
const { getByText, getByTitle, getByDisplayValue, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.player.edit-pname')))
fireEvent.input(getByDisplayValue(fixture.name), {
target: { value: '' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(t('user.emptyPlayerName'))).toBeInTheDocument()
fireEvent.click(getByText(t('general.cancel')))
@@ -304,18 +300,18 @@ describe('edit player name', () => {
getByRole,
queryByText,
} = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.player.edit-pname')))
fireEvent.input(getByDisplayValue(fixture.name), {
target: { value: 'reina' },
})
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/player/rename/${fixture.pid}`, {
- name: 'reina',
- })
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(`/user/player/rename/${fixture.pid}`, {
+ name: 'reina',
+ }),
+ )
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText(fixture.name)).toBeInTheDocument()
@@ -325,16 +321,14 @@ describe('edit player name', () => {
const { getByText, getByTitle, getByDisplayValue, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByTitle(t('user.player.edit-pname')))
fireEvent.input(getByDisplayValue(fixture.name), {
target: { value: 'reina' },
})
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(fixture.name)).toBeInTheDocument()
})
})
@@ -350,19 +344,19 @@ describe('reset texture', () => {
const { getByText, getByRole, getByLabelText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-texture')))
fireEvent.click(getByLabelText(t('general.skin')))
fireEvent.click(getByLabelText(t('general.cape')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(
- `/user/player/texture/clear/${fixture.pid}`,
- {
- type: ['skin', 'cape'],
- },
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/player/texture/clear/${fixture.pid}`,
+ {
+ type: ['skin', 'cape'],
+ },
+ ),
)
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
@@ -374,18 +368,18 @@ describe('reset texture', () => {
const { getByText, getByRole, getByLabelText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-texture')))
fireEvent.click(getByLabelText(t('general.skin')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(
- `/user/player/texture/clear/${fixture.pid}`,
- {
- type: ['skin'],
- },
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/player/texture/clear/${fixture.pid}`,
+ {
+ type: ['skin'],
+ },
+ ),
)
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
@@ -397,18 +391,18 @@ describe('reset texture', () => {
const { getByText, getByRole, getByLabelText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-texture')))
fireEvent.click(getByLabelText(t('general.cape')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(
- `/user/player/texture/clear/${fixture.pid}`,
- {
- type: ['cape'],
- },
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/player/texture/clear/${fixture.pid}`,
+ {
+ type: ['cape'],
+ },
+ ),
)
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
@@ -416,13 +410,11 @@ describe('reset texture', () => {
it('select nothing', async () => {
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-texture')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(t('user.noClearChoice'))).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-warning')
})
@@ -433,18 +425,18 @@ describe('reset texture', () => {
const { getByText, getByRole, getByLabelText, queryByText } = render(
,
)
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-texture')))
fireEvent.click(getByLabelText(t('general.skin')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(
- `/user/player/texture/clear/${fixture.pid}`,
- {
- type: ['skin'],
- },
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(
+ `/user/player/texture/clear/${fixture.pid}`,
+ {
+ type: ['skin'],
+ },
+ ),
)
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
@@ -452,14 +444,12 @@ describe('reset texture', () => {
it('cancelled', async () => {
const { getByText, getByLabelText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-texture')))
fireEvent.click(getByLabelText(t('general.skin')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
})
})
@@ -472,13 +462,13 @@ describe('delete player', () => {
fetch.post.mockResolvedValue({ code: 0, message: 'success' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-player')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/player/delete/${fixture.pid}`)
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(`/user/player/delete/${fixture.pid}`),
+ )
expect(getByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
expect(queryByText(fixture.name)).not.toBeInTheDocument()
@@ -488,13 +478,13 @@ describe('delete player', () => {
fetch.post.mockResolvedValue({ code: 1, message: 'failed' })
const { getByText, getByRole, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-player')))
fireEvent.click(getByText(t('general.confirm')))
- await wait()
-
- expect(fetch.post).toBeCalledWith(`/user/player/delete/${fixture.pid}`)
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith(`/user/player/delete/${fixture.pid}`),
+ )
expect(getByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
expect(queryByText(fixture.name)).toBeInTheDocument()
@@ -502,13 +492,11 @@ describe('delete player', () => {
it('cancelled', async () => {
const { getByText, queryByText } = render()
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalledTimes(1))
fireEvent.click(getByText(t('user.player.delete-player')))
fireEvent.click(getByText(t('general.cancel')))
- await wait()
-
- expect(fetch.post).not.toBeCalled()
+ await waitFor(() => expect(fetch.post).not.toBeCalled())
expect(queryByText(fixture.name)).toBeInTheDocument()
})
})
diff --git a/resources/assets/tests/views/widgets/EmailVerification.test.tsx b/resources/assets/tests/views/widgets/EmailVerification.test.tsx
index cf8273c8..5e9eacc9 100644
--- a/resources/assets/tests/views/widgets/EmailVerification.test.tsx
+++ b/resources/assets/tests/views/widgets/EmailVerification.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import EmailVerification from '@/views/widgets/EmailVerification'
@@ -13,9 +13,9 @@ describe('send email', () => {
const { getByText, getByRole, queryByText } = render()
fireEvent.click(getByText(t('user.verification.resend')))
- await wait()
-
- expect(fetch.post).toBeCalledWith('/user/email-verification')
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/email-verification'),
+ )
expect(queryByText('success')).toBeInTheDocument()
expect(getByRole('status')).toHaveClass('alert-success')
})
@@ -26,8 +26,9 @@ describe('send email', () => {
const { getByText, getByRole, queryByText } = render()
fireEvent.click(getByText(t('user.verification.resend')))
- await wait()
-
+ await waitFor(() =>
+ expect(fetch.post).toBeCalledWith('/user/email-verification'),
+ )
expect(fetch.post).toBeCalledWith('/user/email-verification')
expect(queryByText('failed')).toBeInTheDocument()
expect(getByRole('alert')).toHaveClass('alert-danger')
diff --git a/resources/assets/tests/views/widgets/NotificationsList.test.tsx b/resources/assets/tests/views/widgets/NotificationsList.test.tsx
index 62c50afd..9523abe1 100644
--- a/resources/assets/tests/views/widgets/NotificationsList.test.tsx
+++ b/resources/assets/tests/views/widgets/NotificationsList.test.tsx
@@ -1,5 +1,5 @@
import React from 'react'
-import { render, fireEvent, wait } from '@testing-library/react'
+import { render, fireEvent, waitFor } from '@testing-library/react'
import { t } from '@/scripts/i18n'
import * as fetch from '@/scripts/net'
import NotificationsList, {
@@ -54,7 +54,7 @@ test('read notification', async () => {
const { getByText, queryByText } = render()
fireEvent.click(getByText('hi'))
- await wait()
+ await waitFor(() => expect(fetch.get).toBeCalled())
expect(queryByText(fixture.title)).toBeInTheDocument()
expect(queryByText(fixture.content)).toBeInTheDocument()
diff --git a/yarn.lock b/yarn.lock
index 834261a3..01d68710 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -45,6 +45,28 @@
semver "^5.4.1"
source-map "^0.5.0"
+"@babel/core@^7.7.5":
+ version "7.9.0"
+ resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.0.tgz#ac977b538b77e132ff706f3b8a4dbad09c03c56e"
+ integrity sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==
+ dependencies:
+ "@babel/code-frame" "^7.8.3"
+ "@babel/generator" "^7.9.0"
+ "@babel/helper-module-transforms" "^7.9.0"
+ "@babel/helpers" "^7.9.0"
+ "@babel/parser" "^7.9.0"
+ "@babel/template" "^7.8.6"
+ "@babel/traverse" "^7.9.0"
+ "@babel/types" "^7.9.0"
+ convert-source-map "^1.7.0"
+ debug "^4.1.0"
+ gensync "^1.0.0-beta.1"
+ json5 "^2.1.2"
+ lodash "^4.17.13"
+ resolve "^1.3.2"
+ semver "^5.4.1"
+ source-map "^0.5.0"
+
"@babel/core@^7.8.7":
version "7.8.7"
resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.8.7.tgz#b69017d221ccdeb203145ae9da269d72cf102f3b"
@@ -66,7 +88,7 @@
semver "^5.4.1"
source-map "^0.5.0"
-"@babel/generator@^7.4.0", "@babel/generator@^7.4.4":
+"@babel/generator@^7.4.4":
version "7.4.4"
resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.4.4.tgz#174a215eb843fc392c7edcaabeaa873de6e8f041"
integrity sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ==
@@ -87,6 +109,16 @@
lodash "^4.17.13"
source-map "^0.5.0"
+"@babel/generator@^7.9.0":
+ version "7.9.4"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.4.tgz#12441e90c3b3c4159cdecf312075bf1a8ce2dbce"
+ integrity sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==
+ dependencies:
+ "@babel/types" "^7.9.0"
+ jsesc "^2.5.1"
+ lodash "^4.17.13"
+ source-map "^0.5.0"
+
"@babel/helper-annotate-as-pure@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz#60bc0bc657f63a0924ff9a4b4a0b24a13cf4deee"
@@ -233,6 +265,19 @@
"@babel/types" "^7.8.6"
lodash "^4.17.13"
+"@babel/helper-module-transforms@^7.9.0":
+ version "7.9.0"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz#43b34dfe15961918707d247327431388e9fe96e5"
+ integrity sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==
+ dependencies:
+ "@babel/helper-module-imports" "^7.8.3"
+ "@babel/helper-replace-supers" "^7.8.6"
+ "@babel/helper-simple-access" "^7.8.3"
+ "@babel/helper-split-export-declaration" "^7.8.3"
+ "@babel/template" "^7.8.6"
+ "@babel/types" "^7.9.0"
+ lodash "^4.17.13"
+
"@babel/helper-optimise-call-expression@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz#7ed071813d09c75298ef4f208956006b6111ecb9"
@@ -313,6 +358,11 @@
dependencies:
"@babel/types" "^7.8.3"
+"@babel/helper-validator-identifier@^7.9.0":
+ version "7.9.0"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz#ad53562a7fc29b3b9a91bbf7d10397fd146346ed"
+ integrity sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==
+
"@babel/helper-wrap-function@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz#9dbdb2bb55ef14aaa01fe8c99b629bd5352d8610"
@@ -341,6 +391,15 @@
"@babel/traverse" "^7.8.4"
"@babel/types" "^7.8.3"
+"@babel/helpers@^7.9.0":
+ version "7.9.2"
+ resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.9.2.tgz#b42a81a811f1e7313b88cba8adc66b3d9ae6c09f"
+ integrity sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==
+ dependencies:
+ "@babel/template" "^7.8.3"
+ "@babel/traverse" "^7.9.0"
+ "@babel/types" "^7.9.0"
+
"@babel/highlight@^7.0.0", "@babel/highlight@^7.0.0-beta.44":
version "7.0.0"
resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4"
@@ -359,11 +418,16 @@
esutils "^2.0.2"
js-tokens "^4.0.0"
-"@babel/parser@^7.1.0", "@babel/parser@^7.4.3", "@babel/parser@^7.4.4", "@babel/parser@^7.4.5":
+"@babel/parser@^7.1.0", "@babel/parser@^7.4.4", "@babel/parser@^7.4.5":
version "7.4.5"
resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.4.5.tgz#04af8d5d5a2b044a2a1bffacc1e5e6673544e872"
integrity sha512-9mUqkL1FF5T7f0WDFfAoDdiMVPWsdD1gZYzSnaXsxUCUqzuch/8of9G3VUSNiZmMBoRxT3neyVsqeiL/ZPcjew==
+"@babel/parser@^7.7.5", "@babel/parser@^7.9.0":
+ version "7.9.4"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.4.tgz#68a35e6b0319bbc014465be43828300113f2f2e8"
+ integrity sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==
+
"@babel/parser@^7.8.6", "@babel/parser@^7.8.7":
version "7.8.8"
resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.8.8.tgz#4c3b7ce36db37e0629be1f0d50a571d2f86f6cd4"
@@ -441,6 +505,13 @@
dependencies:
"@babel/helper-plugin-utils" "^7.8.0"
+"@babel/plugin-syntax-bigint@^7.0.0":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea"
+ integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.8.0"
+
"@babel/plugin-syntax-dynamic-import@^7.8.0":
version "7.8.0"
resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.0.tgz#3a6c1cd36af923db602df83c5aa72e08bb14353a"
@@ -823,12 +894,20 @@
levenary "^1.1.1"
semver "^5.5.0"
-"@babel/runtime@^7.5.1", "@babel/runtime@^7.6.2", "@babel/runtime@^7.7.6":
- version "7.8.3"
- resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.8.3.tgz#0811944f73a6c926bb2ad35e918dcc1bfab279f1"
- integrity sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==
+"@babel/runtime-corejs3@^7.7.4":
+ version "7.9.2"
+ resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.9.2.tgz#26fe4aa77e9f1ecef9b776559bbb8e84d34284b7"
+ integrity sha512-HHxmgxbIzOfFlZ+tdeRKtaxWOMUoCG5Mu3wKeUmOxjYrwb3AAHgnmtCUbPPK11/raIWLIBK250t8E2BPO0p7jA==
dependencies:
- regenerator-runtime "^0.13.2"
+ core-js-pure "^3.0.0"
+ regenerator-runtime "^0.13.4"
+
+"@babel/runtime@^7.7.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2":
+ version "7.9.2"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.9.2.tgz#d90df0583a3a252f09aaa619665367bae518db06"
+ integrity sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==
+ dependencies:
+ regenerator-runtime "^0.13.4"
"@babel/runtime@^7.8.0":
version "7.8.0"
@@ -844,7 +923,7 @@
dependencies:
regenerator-runtime "^0.13.4"
-"@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.4.4":
+"@babel/template@^7.1.0", "@babel/template@^7.4.4":
version "7.4.4"
resolved "https://registry.npmjs.org/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237"
integrity sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw==
@@ -853,7 +932,7 @@
"@babel/parser" "^7.4.4"
"@babel/types" "^7.4.4"
-"@babel/template@^7.8.3", "@babel/template@^7.8.6":
+"@babel/template@^7.7.4", "@babel/template@^7.8.3", "@babel/template@^7.8.6":
version "7.8.6"
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b"
integrity sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==
@@ -862,7 +941,7 @@
"@babel/parser" "^7.8.6"
"@babel/types" "^7.8.6"
-"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.4.4", "@babel/traverse@^7.4.5":
+"@babel/traverse@^7.1.0", "@babel/traverse@^7.4.4", "@babel/traverse@^7.4.5":
version "7.4.5"
resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.5.tgz#4e92d1728fd2f1897dafdd321efbff92156c3216"
integrity sha512-Vc+qjynwkjRmIFGxy0KYoPj4FdVDxLej89kMHFsWScq999uX+pwcX4v9mWRjW0KcAYTPAuVQl2LKP1wEVLsp+A==
@@ -877,6 +956,21 @@
globals "^11.1.0"
lodash "^4.17.11"
+"@babel/traverse@^7.7.4", "@babel/traverse@^7.9.0":
+ version "7.9.0"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.9.0.tgz#d3882c2830e513f4fe4cec9fe76ea1cc78747892"
+ integrity sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==
+ dependencies:
+ "@babel/code-frame" "^7.8.3"
+ "@babel/generator" "^7.9.0"
+ "@babel/helper-function-name" "^7.8.3"
+ "@babel/helper-split-export-declaration" "^7.8.3"
+ "@babel/parser" "^7.9.0"
+ "@babel/types" "^7.9.0"
+ debug "^4.1.0"
+ globals "^11.1.0"
+ lodash "^4.17.13"
+
"@babel/traverse@^7.8.3", "@babel/traverse@^7.8.4", "@babel/traverse@^7.8.6":
version "7.8.6"
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.8.6.tgz#acfe0c64e1cd991b3e32eae813a6eb564954b5ff"
@@ -892,7 +986,7 @@
globals "^11.1.0"
lodash "^4.17.13"
-"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4":
+"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.4.4":
version "7.4.4"
resolved "https://registry.npmjs.org/@babel/types/-/types-7.4.4.tgz#8db9e9a629bb7c29370009b4b779ed93fe57d5f0"
integrity sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ==
@@ -919,6 +1013,20 @@
lodash "^4.17.13"
to-fast-properties "^2.0.0"
+"@babel/types@^7.9.0":
+ version "7.9.0"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.0.tgz#00b064c3df83ad32b2dbf5ff07312b15c7f1efb5"
+ integrity sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==
+ dependencies:
+ "@babel/helper-validator-identifier" "^7.9.0"
+ lodash "^4.17.13"
+ to-fast-properties "^2.0.0"
+
+"@bcoe/v8-coverage@^0.2.3":
+ version "0.2.3"
+ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
+ integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
+
"@cnakazawa/watch@^1.0.3":
version "1.0.3"
resolved "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz#099139eaec7ebf07a27c1786a3ff64f39464d2ef"
@@ -979,14 +1087,20 @@
prop-types "^15.6.2"
scheduler "^0.17.0"
-"@jest/console@^24.7.1":
- version "24.7.1"
- resolved "https://registry.npmjs.org/@jest/console/-/console-24.7.1.tgz#32a9e42535a97aedfe037e725bd67e954b459545"
- integrity sha512-iNhtIy2M8bXlAOULWVTUxmnelTLFneTNEkHCgPmgd+zNwy9zVddJ6oS5rZ9iwoscNdT5mMwUd0C51v/fSlzItg==
+"@istanbuljs/load-nyc-config@^1.0.0":
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz#10602de5570baea82f8afbfa2630b24e7a8cfe5b"
+ integrity sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg==
dependencies:
- "@jest/source-map" "^24.3.0"
- chalk "^2.0.1"
- slash "^2.0.0"
+ camelcase "^5.3.1"
+ find-up "^4.1.0"
+ js-yaml "^3.13.1"
+ resolve-from "^5.0.0"
+
+"@istanbuljs/schema@^0.1.2":
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd"
+ integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==
"@jest/console@^24.9.0":
version "24.9.0"
@@ -997,94 +1111,100 @@
chalk "^2.0.1"
slash "^2.0.0"
-"@jest/core@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/core/-/core-24.9.0.tgz#2ceccd0b93181f9c4850e74f2a9ad43d351369c4"
- integrity sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A==
+"@jest/console@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/console/-/console-25.2.3.tgz#38ac19b916ff61457173799239472659e1a67c39"
+ integrity sha512-k+37B1aSvOt9tKHWbZZSOy1jdgzesB0bj96igCVUG1nAH1W5EoUfgc5EXbBVU08KSLvkVdWopLXaO3xfVGlxtQ==
dependencies:
- "@jest/console" "^24.7.1"
- "@jest/reporters" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
- ansi-escapes "^3.0.0"
- chalk "^2.0.1"
+ "@jest/source-map" "^25.2.1"
+ chalk "^3.0.0"
+ jest-util "^25.2.3"
+ slash "^3.0.0"
+
+"@jest/core@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/core/-/core-25.2.3.tgz#2fd37ce0e6ad845e058dcd8245f2745490df1bc0"
+ integrity sha512-Ifz3aEkGvZhwijLMmWa7sloZVEMdxpzjFv3CKHv3eRYRShTN8no6DmyvvxaZBjLalOlRalJ7HDgc733J48tSuw==
+ dependencies:
+ "@jest/console" "^25.2.3"
+ "@jest/reporters" "^25.2.3"
+ "@jest/test-result" "^25.2.3"
+ "@jest/transform" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ ansi-escapes "^4.2.1"
+ chalk "^3.0.0"
exit "^0.1.2"
- graceful-fs "^4.1.15"
- jest-changed-files "^24.9.0"
- jest-config "^24.9.0"
- jest-haste-map "^24.9.0"
- jest-message-util "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-resolve "^24.9.0"
- jest-resolve-dependencies "^24.9.0"
- jest-runner "^24.9.0"
- jest-runtime "^24.9.0"
- jest-snapshot "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
- jest-watcher "^24.9.0"
- micromatch "^3.1.10"
- p-each-series "^1.0.0"
- realpath-native "^1.1.0"
- rimraf "^2.5.4"
- slash "^2.0.0"
- strip-ansi "^5.0.0"
+ graceful-fs "^4.2.3"
+ jest-changed-files "^25.2.3"
+ jest-config "^25.2.3"
+ jest-haste-map "^25.2.3"
+ jest-message-util "^25.2.3"
+ jest-regex-util "^25.2.1"
+ jest-resolve "^25.2.3"
+ jest-resolve-dependencies "^25.2.3"
+ jest-runner "^25.2.3"
+ jest-runtime "^25.2.3"
+ jest-snapshot "^25.2.3"
+ jest-util "^25.2.3"
+ jest-validate "^25.2.3"
+ jest-watcher "^25.2.3"
+ micromatch "^4.0.2"
+ p-each-series "^2.1.0"
+ realpath-native "^2.0.0"
+ rimraf "^3.0.0"
+ slash "^3.0.0"
+ strip-ansi "^6.0.0"
-"@jest/environment@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-24.9.0.tgz#21e3afa2d65c0586cbd6cbefe208bafade44ab18"
- integrity sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ==
+"@jest/environment@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-25.2.3.tgz#32b3f216355b03e9449b93b62584c18934a2cc4a"
+ integrity sha512-zRypAMQnNo8rD0rCbI9+5xf+Lu+uvunKZNBcIWjb3lTATSomKbgYO+GYewGDYn7pf+30XCNBc6SH1rnBUN1ioA==
dependencies:
- "@jest/fake-timers" "^24.9.0"
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
- jest-mock "^24.9.0"
+ "@jest/fake-timers" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ jest-mock "^25.2.3"
-"@jest/fake-timers@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-24.9.0.tgz#ba3e6bf0eecd09a636049896434d306636540c93"
- integrity sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==
+"@jest/fake-timers@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-25.2.3.tgz#808a8a761be3baac719311f8bde1362bd1861e65"
+ integrity sha512-B6Qxm86fl613MV8egfvh1mRTMu23hMNdOUjzPhKl/4Nm5cceHz6nwLn0nP0sJXI/ue1vu71aLbtkgVBCgc2hYA==
dependencies:
- "@jest/types" "^24.9.0"
- jest-message-util "^24.9.0"
- jest-mock "^24.9.0"
+ "@jest/types" "^25.2.3"
+ jest-message-util "^25.2.3"
+ jest-mock "^25.2.3"
+ jest-util "^25.2.3"
+ lolex "^5.0.0"
-"@jest/reporters@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-24.9.0.tgz#86660eff8e2b9661d042a8e98a028b8d631a5b43"
- integrity sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw==
+"@jest/reporters@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-25.2.3.tgz#824e922ea56686d0243c910559c36adacdd2081c"
+ integrity sha512-S0Zca5e7tTfGgxGRvBh6hktNdOBzqc6HthPzYHPRFYVW81SyzCqHTaNZydtDIVehb9s6NlyYZpcF/I2vco+lNw==
dependencies:
- "@jest/environment" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
+ "@bcoe/v8-coverage" "^0.2.3"
+ "@jest/console" "^25.2.3"
+ "@jest/test-result" "^25.2.3"
+ "@jest/transform" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ chalk "^3.0.0"
+ collect-v8-coverage "^1.0.0"
exit "^0.1.2"
glob "^7.1.2"
- istanbul-lib-coverage "^2.0.2"
- istanbul-lib-instrument "^3.0.1"
- istanbul-lib-report "^2.0.4"
- istanbul-lib-source-maps "^3.0.1"
- istanbul-reports "^2.2.6"
- jest-haste-map "^24.9.0"
- jest-resolve "^24.9.0"
- jest-runtime "^24.9.0"
- jest-util "^24.9.0"
- jest-worker "^24.6.0"
- node-notifier "^5.4.2"
- slash "^2.0.0"
- source-map "^0.6.0"
- string-length "^2.0.0"
-
-"@jest/source-map@^24.3.0":
- version "24.3.0"
- resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-24.3.0.tgz#563be3aa4d224caf65ff77edc95cd1ca4da67f28"
- integrity sha512-zALZt1t2ou8le/crCeeiRYzvdnTzaIlpOWaet45lNSqNJUnXbppUUFR4ZUAlzgDmKee4Q5P/tKXypI1RiHwgag==
- dependencies:
- callsites "^3.0.0"
- graceful-fs "^4.1.15"
+ istanbul-lib-coverage "^3.0.0"
+ istanbul-lib-instrument "^4.0.0"
+ istanbul-lib-report "^3.0.0"
+ istanbul-lib-source-maps "^4.0.0"
+ istanbul-reports "^3.0.0"
+ jest-haste-map "^25.2.3"
+ jest-resolve "^25.2.3"
+ jest-util "^25.2.3"
+ jest-worker "^25.2.1"
+ slash "^3.0.0"
source-map "^0.6.0"
+ string-length "^3.1.0"
+ terminal-link "^2.0.0"
+ v8-to-istanbul "^4.0.1"
+ optionalDependencies:
+ node-notifier "^6.0.0"
"@jest/source-map@^24.9.0":
version "24.9.0"
@@ -1095,6 +1215,15 @@
graceful-fs "^4.1.15"
source-map "^0.6.0"
+"@jest/source-map@^25.2.1":
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-25.2.1.tgz#b62ecf8ae76170b08eff8859b56eb7576df34ab8"
+ integrity sha512-PgScGJm1U27+9Te/cxP4oUFqJ2PX6NhBL2a6unQ7yafCgs8k02c0LSyjSIx/ao0AwcAdCczfAPDf5lJ7zoB/7A==
+ dependencies:
+ callsites "^3.0.0"
+ graceful-fs "^4.2.3"
+ source-map "^0.6.0"
+
"@jest/test-result@^24.9.0":
version "24.9.0"
resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca"
@@ -1104,37 +1233,48 @@
"@jest/types" "^24.9.0"
"@types/istanbul-lib-coverage" "^2.0.0"
-"@jest/test-sequencer@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz#f8f334f35b625a4f2f355f2fe7e6036dad2e6b31"
- integrity sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A==
+"@jest/test-result@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-25.2.3.tgz#db6028427514702c739dda66528dfbcc7fb8cdf4"
+ integrity sha512-cNYidqERTcT+xqZZ5FPSvji7Bd2YYq9M/VJCEUmgTVRFZRPOPSu65crEzQJ4czcDChEJ9ovzZ65r3UBlajnh3w==
dependencies:
- "@jest/test-result" "^24.9.0"
- jest-haste-map "^24.9.0"
- jest-runner "^24.9.0"
- jest-runtime "^24.9.0"
+ "@jest/console" "^25.2.3"
+ "@jest/transform" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ "@types/istanbul-lib-coverage" "^2.0.0"
+ collect-v8-coverage "^1.0.0"
-"@jest/transform@^24.9.0":
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-24.9.0.tgz#4ae2768b296553fadab09e9ec119543c90b16c56"
- integrity sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ==
+"@jest/test-sequencer@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-25.2.3.tgz#1400e0e994904844567e6e33c87062cbdf1f3e99"
+ integrity sha512-trHwV/wCrxWyZyNyNBUQExsaHyBVQxJwH3butpEcR+KBJPfaTUxtpXaxfs38IXXAhH68J4kPZgAaRRfkFTLunA==
+ dependencies:
+ "@jest/test-result" "^25.2.3"
+ jest-haste-map "^25.2.3"
+ jest-runner "^25.2.3"
+ jest-runtime "^25.2.3"
+
+"@jest/transform@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-25.2.3.tgz#f090bdd91f54b867631a76959f2b2fc566534ffe"
+ integrity sha512-w1nfAuYP4OAiEDprFkE/2iwU86jL/hK3j1ylMcYOA3my5VOHqX0oeBcBxS2fUKWse2V4izuO2jqes0yNTDMlzw==
dependencies:
"@babel/core" "^7.1.0"
- "@jest/types" "^24.9.0"
- babel-plugin-istanbul "^5.1.0"
- chalk "^2.0.1"
+ "@jest/types" "^25.2.3"
+ babel-plugin-istanbul "^6.0.0"
+ chalk "^3.0.0"
convert-source-map "^1.4.0"
fast-json-stable-stringify "^2.0.0"
- graceful-fs "^4.1.15"
- jest-haste-map "^24.9.0"
- jest-regex-util "^24.9.0"
- jest-util "^24.9.0"
- micromatch "^3.1.10"
+ graceful-fs "^4.2.3"
+ jest-haste-map "^25.2.3"
+ jest-regex-util "^25.2.1"
+ jest-util "^25.2.3"
+ micromatch "^4.0.2"
pirates "^4.0.1"
- realpath-native "^1.1.0"
- slash "^2.0.0"
+ realpath-native "^2.0.0"
+ slash "^3.0.0"
source-map "^0.6.1"
- write-file-atomic "2.4.1"
+ write-file-atomic "^3.0.0"
"@jest/types@^24.9.0":
version "24.9.0"
@@ -1145,57 +1285,67 @@
"@types/istanbul-reports" "^1.1.1"
"@types/yargs" "^13.0.0"
+"@jest/types@^25.2.3":
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.2.3.tgz#035c4fb94e2da472f359ff9a211915d59987f6b6"
+ integrity sha512-6oLQwO9mKif3Uph3RX5J1i3S7X7xtDHWBaaaoeKw8hOzV6YUd0qDcYcHZ6QXMHDIzSr7zzrEa51o2Ovlj6AtKQ==
+ dependencies:
+ "@types/istanbul-lib-coverage" "^2.0.0"
+ "@types/istanbul-reports" "^1.1.1"
+ "@types/yargs" "^15.0.0"
+ chalk "^3.0.0"
+
"@lgaitan/pace-progress@^1.0.7":
version "1.0.7"
resolved "https://registry.yarnpkg.com/@lgaitan/pace-progress/-/pace-progress-1.0.7.tgz#c96fbbd9fd4cf528feed34ea0c8f9d8b3e98f0dd"
integrity sha1-yW+72f1M9Sj+7TTqDI+diz6Y8N0=
-"@sheerun/mutationobserver-shim@^0.3.2":
- version "0.3.2"
- resolved "https://registry.yarnpkg.com/@sheerun/mutationobserver-shim/-/mutationobserver-shim-0.3.2.tgz#8013f2af54a2b7d735f71560ff360d3a8176a87b"
- integrity sha512-vTCdPp/T/Q3oSqwHmZ5Kpa9oI7iLtGl3RQaA/NyLHikvcrPxACkkKVr/XzkSPJWXHRhKGzVvb0urJsbMlRxi1Q==
+"@sinonjs/commons@^1.7.0":
+ version "1.7.1"
+ resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.7.1.tgz#da5fd19a5f71177a53778073978873964f49acf1"
+ integrity sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ==
+ dependencies:
+ type-detect "4.0.8"
"@sweetalert2/theme-bootstrap-4@^2.2.1":
version "2.2.1"
resolved "https://registry.yarnpkg.com/@sweetalert2/theme-bootstrap-4/-/theme-bootstrap-4-2.2.1.tgz#a0e3496f2d5aa2993f8fe1c59dcec0673941cddb"
integrity sha512-EzAc/HFO16wuZCmawdv0mxRknXtQ5XYmms8gHCcRBqVJsolwl0xKanH8wC2tf4O6dFLou6ZndNqii8ArQO66pA==
-"@testing-library/dom@^6.11.0":
- version "6.11.0"
- resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-6.11.0.tgz#962a38f1a721fdb7c9e35e7579e33ff13a00eda4"
- integrity sha512-Pkx9LMIGshyNbfmecjt18rrAp/ayMqGH674jYER0SXj0iG9xZc+zWRjk2Pg9JgPBDvwI//xGrI/oOQkAi4YEew==
+"@testing-library/dom@^7.0.2":
+ version "7.1.3"
+ resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-7.1.3.tgz#422073afb5ae9bdb910651ac4d51c9ed4382a2f9"
+ integrity sha512-wFMQdKrTwTTlTe6n0KN+KjOtgOV0viIyfr+f+7Csq+1pD0o+ho7FrjCjkNpx6NEsx8jHDtZ4WU3cGOuLc9LvQg==
dependencies:
- "@babel/runtime" "^7.6.2"
- "@sheerun/mutationobserver-shim" "^0.3.2"
- "@types/testing-library__dom" "^6.0.0"
- aria-query "3.0.0"
- pretty-format "^24.9.0"
- wait-for-expect "^3.0.0"
+ "@babel/runtime" "^7.9.2"
+ "@types/testing-library__dom" "^7.0.0"
+ aria-query "^4.0.2"
+ dom-accessibility-api "^0.4.2"
+ pretty-format "^25.1.0"
-"@testing-library/jest-dom@^5.0.2":
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.0.2.tgz#dbd06cc9a392347327597dfd633b9d7623da5c80"
- integrity sha512-Pl3si4eH88+5wlVz6NjecLfeO7PjTbbgWKwVZXUtBfrGuJLjGdUUo+O92XRu/59wft8HAmwvXHeMWpqWTg2Uwg==
+"@testing-library/jest-dom@^5.3.0":
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.3.0.tgz#2ae813b8b0eb69e8808f75d3af8efa3f0dc4d7ec"
+ integrity sha512-Cdhpc3BHL888X55qBNyra9eM0UG63LCm/FqCWTa1Ou/0MpsUbQTM9vW1NU6/jBQFoSLgkFfDG5XVpm2V0dOm/A==
dependencies:
- "@babel/runtime" "^7.5.1"
- "@types/testing-library__jest-dom" "^5.0.0"
- chalk "^2.4.1"
- css "^2.2.3"
+ "@babel/runtime" "^7.9.2"
+ "@types/testing-library__jest-dom" "^5.0.2"
+ chalk "^3.0.0"
+ css "^2.2.4"
css.escape "^1.5.1"
- jest-diff "^24.0.0"
- jest-matcher-utils "^24.0.0"
- lodash "^4.17.11"
- pretty-format "^24.0.0"
+ jest-diff "^25.1.0"
+ jest-matcher-utils "^25.1.0"
+ lodash "^4.17.15"
redent "^3.0.0"
-"@testing-library/react@^9.4.0":
- version "9.4.0"
- resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-9.4.0.tgz#b021ac8cb987c8dc54c6841875f745bf9b2e88e5"
- integrity sha512-XdhDWkI4GktUPsz0AYyeQ8M9qS/JFie06kcSnUVcpgOwFjAu9vhwR83qBl+lw9yZWkbECjL8Hd+n5hH6C0oWqg==
+"@testing-library/react@^10.0.1":
+ version "10.0.1"
+ resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-10.0.1.tgz#4f5e2a8836257c5bd3df640b21d7bea5a0d83ead"
+ integrity sha512-sMHWud2dcymOzq2AhEniICSijEwKeTiBX+K0y36FYNY7wH2t0SIP1o732Bf5dDY0jYoMC2hj2UJSVpZC/rDsWg==
dependencies:
- "@babel/runtime" "^7.7.6"
- "@testing-library/dom" "^6.11.0"
- "@types/testing-library__react" "^9.1.2"
+ "@babel/runtime" "^7.8.7"
+ "@testing-library/dom" "^7.0.2"
+ "@types/testing-library__react" "^9.1.3"
"@ttskch/select2-bootstrap4-theme@^1.3.2":
version "1.3.2"
@@ -1253,6 +1403,11 @@
"@types/jquery" "*"
popper.js "^1.14.1"
+"@types/color-name@^1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
+ integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
+
"@types/echarts@^4.4.2":
version "4.4.2"
resolved "https://registry.yarnpkg.com/@types/echarts/-/echarts-4.4.2.tgz#88be60b9b87bc65414f22d4150834538d62ac602"
@@ -1279,7 +1434,7 @@
"@types/minimatch" "*"
"@types/node" "*"
-"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0":
+"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1":
version "2.0.1"
resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff"
integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==
@@ -1306,12 +1461,13 @@
dependencies:
jest-diff "^24.3.0"
-"@types/jest@^24.0.25":
- version "24.0.25"
- resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.25.tgz#2aba377824ce040114aa906ad2cac2c85351360f"
- integrity sha512-hnP1WpjN4KbGEK4dLayul6lgtys6FPz0UfxMeMQCv0M+sTnzN3ConfiO72jHgLxl119guHgI8gLqDOrRLsyp2g==
+"@types/jest@^25.1.4":
+ version "25.1.4"
+ resolved "https://registry.yarnpkg.com/@types/jest/-/jest-25.1.4.tgz#9e9f1e59dda86d3fd56afce71d1ea1b331f6f760"
+ integrity sha512-QDDY2uNAhCV7TMCITrxz+MRk1EizcsevzfeS6LykIlq2V1E5oO4wXG8V2ZEd9w7Snxeeagk46YbMgZ8ESHx3sw==
dependencies:
- jest-diff "^24.3.0"
+ jest-diff "^25.1.0"
+ pretty-format "^25.1.0"
"@types/jquery@*":
version "3.3.31"
@@ -1366,6 +1522,11 @@
resolved "https://registry.npmjs.org/@types/node/-/node-12.7.5.tgz#e19436e7f8e9b4601005d73673b6dc4784ffcc2f"
integrity sha512-9fq4jZVhPNW8r+UYKnxF1e2HkDWOWKM5bC2/7c9wPV835I0aOrVbS/Hw/pWPk2uKrNXQqg9Z959Kz+IYDd5p3w==
+"@types/prettier@^1.19.0":
+ version "1.19.1"
+ resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-1.19.1.tgz#33509849f8e679e4add158959fdb086440e9553f"
+ integrity sha512-5qOlnZscTn4xxM5MeGXAMOsIOIKIbh9e85zJWfBRVPlRMEVawzoPhINYbRGkBZCI8LxvBe7tJCdWiarA99OZfQ==
+
"@types/prop-types@*":
version "15.7.3"
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7"
@@ -1411,27 +1572,28 @@
resolved "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.4.tgz#b4ffc7dc97b498c969b360a41eee247f82616370"
integrity sha512-78AdXtlhpCHT0K3EytMpn4JNxaf5tbqbLcbIRoQIHzpTIyjpxLQKRoxU55ujBXAtg3Nl2h/XWvfDa9dsMOd0pQ==
-"@types/testing-library__dom@*", "@types/testing-library__dom@^6.0.0":
- version "6.11.1"
- resolved "https://registry.yarnpkg.com/@types/testing-library__dom/-/testing-library__dom-6.11.1.tgz#6058a6ac391db679f7c60dbb27b81f0620de2dd9"
- integrity sha512-ImChHtQqmjwraRLqBC2sgSQFtczeFvBmBcfhTYZn/3KwXbyD07LQykEQ0xJo7QHc1GbVvf7pRyGaIe6PkCdxEw==
+"@types/testing-library__dom@*", "@types/testing-library__dom@^7.0.0":
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/@types/testing-library__dom/-/testing-library__dom-7.0.0.tgz#c0fb7d1c2495a3d26f19342102142d47500f0319"
+ integrity sha512-1TEPWyqQ6IQ7R1hCegZmFSA3KrBQjdzJW7yC9ybpRcFst5XuPOqBGNr0mTAKbxwI/TrTyc1skeyLJrpcvAf93w==
dependencies:
- pretty-format "^24.3.0"
+ pretty-format "^25.1.0"
-"@types/testing-library__jest-dom@^5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.0.0.tgz#db048883864126ae73ec043587238a06c3aaf837"
- integrity sha512-Pm+2mvqs9sND247oMVJbu3QmPUqMzBuJbY5uHHYQdl9MXq5hwWkTbesw1sPIky52Y0sHksWAZnVvGLbdyFSyrA==
+"@types/testing-library__jest-dom@^5.0.2":
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.0.2.tgz#89b782e0f187fe1e80d6375133da74182ba02065"
+ integrity sha512-dZP+/WHndgCSmdaImITy0KhjGAa9c0hlGGkzefbtrPFpnGEPZECDA0zyvfSp8RKhHECJJSKHFExjOwzo0rHyIA==
dependencies:
"@types/jest" "*"
-"@types/testing-library__react@^9.1.2":
- version "9.1.2"
- resolved "https://registry.yarnpkg.com/@types/testing-library__react/-/testing-library__react-9.1.2.tgz#e33af9124c60a010fc03a34eff8f8a34a75c4351"
- integrity sha512-CYaMqrswQ+cJACy268jsLAw355DZtPZGt3Jwmmotlcu8O/tkoXBI6AeZ84oZBJsIsesozPKzWzmv/0TIU+1E9Q==
+"@types/testing-library__react@^9.1.3":
+ version "9.1.3"
+ resolved "https://registry.yarnpkg.com/@types/testing-library__react/-/testing-library__react-9.1.3.tgz#35eca61cc6ea923543796f16034882a1603d7302"
+ integrity sha512-iCdNPKU3IsYwRK9JieSYAiX0+aYDXOGAmrC/3/M7AqqSDKnWWVv07X+Zk1uFSL7cMTUYzv4lQRfohucEocn5/w==
dependencies:
"@types/react-dom" "*"
"@types/testing-library__dom" "*"
+ pretty-format "^25.1.0"
"@types/tween.js@^17.2.0":
version "17.2.0"
@@ -1478,6 +1640,13 @@
dependencies:
"@types/yargs-parser" "*"
+"@types/yargs@^15.0.0":
+ version "15.0.4"
+ resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.4.tgz#7e5d0f8ca25e9d5849f2ea443cf7c402decd8299"
+ integrity sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==
+ dependencies:
+ "@types/yargs-parser" "*"
+
"@types/zrender@*":
version "4.0.0"
resolved "https://registry.npmjs.org/@types/zrender/-/zrender-4.0.0.tgz#a6806f12ec4eccaaebd9b0d816f049aca6188fbd"
@@ -1742,10 +1911,10 @@ acorn-dynamic-import@^4.0.0:
resolved "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948"
integrity sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==
-acorn-globals@^4.1.0:
- version "4.3.2"
- resolved "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.2.tgz#4e2c2313a597fd589720395f6354b41cd5ec8006"
- integrity sha512-BbzvZhVtZP+Bs1J1HcwrQe8ycfO0wStkSGxuul3He3GkHOIZ6eTqOkPuw9IP1X3+IkOo4wiJmwkobzXYz4wewQ==
+acorn-globals@^4.3.2:
+ version "4.3.4"
+ resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.4.tgz#9fa1926addc11c97308c4e66d7add0d40c3272e7"
+ integrity sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==
dependencies:
acorn "^6.0.1"
acorn-walk "^6.0.1"
@@ -1770,7 +1939,7 @@ acorn-walk@^6.0.1, acorn-walk@^6.1.1:
resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.1.1.tgz#d363b66f5fac5f018ff9c3a1e7b6f8e310cc3913"
integrity sha512-OtUw6JUTgxA2QoqqmrmQ7F2NYqiBPi/L2jqHyFtllhOUvXYQXf0Z1CYUinIfyT4bTCGmrA7gX9FvHA81uzCoVw==
-acorn@^5.0.0, acorn@^5.5.3:
+acorn@^5.0.0:
version "5.7.3"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.3.tgz#67aa231bf8812974b85235a96771eb6bd07ea279"
integrity sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==
@@ -1908,10 +2077,6 @@ ansi-colors@^3.0.0:
resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf"
integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==
-ansi-escapes@^3.0.0:
- version "3.2.0"
- resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
-
ansi-escapes@^4.2.1:
version "4.2.1"
resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.2.1.tgz#4dccdb846c3eee10f6d64dea66273eab90c37228"
@@ -1939,6 +2104,11 @@ ansi-regex@^4.0.0, ansi-regex@^4.1.0:
resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997"
integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==
+ansi-regex@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75"
+ integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==
+
ansi-styles@^3.2.0, ansi-styles@^3.2.1:
version "3.2.1"
resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d"
@@ -1946,6 +2116,14 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1:
dependencies:
color-convert "^1.9.0"
+ansi-styles@^4.0.0, ansi-styles@^4.1.0:
+ version "4.2.1"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359"
+ integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==
+ dependencies:
+ "@types/color-name" "^1.1.1"
+ color-convert "^2.0.1"
+
anymatch@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb"
@@ -1954,7 +2132,7 @@ anymatch@^2.0.0:
micromatch "^3.1.4"
normalize-path "^2.1.1"
-anymatch@~3.1.1:
+anymatch@^3.0.3, anymatch@~3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142"
integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==
@@ -1982,13 +2160,13 @@ argparse@^1.0.7:
dependencies:
sprintf-js "~1.0.2"
-aria-query@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-3.0.0.tgz#65b3fcc1ca1155a8c9ae64d6eee297f15d5133cc"
- integrity sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=
+aria-query@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-4.0.2.tgz#250687b4ccde1ab86d127da0432ae3552fc7b145"
+ integrity sha512-S1G1V790fTaigUSM/Gd0NngzEfiMy9uTUfMyHhKhVyy4cH5O/eTuR01ydhGL0z4Za1PXFTRGH3qL8VhUQuEO5w==
dependencies:
- ast-types-flow "0.0.7"
- commander "^2.11.0"
+ "@babel/runtime" "^7.7.4"
+ "@babel/runtime-corejs3" "^7.7.4"
arr-diff@^4.0.0:
version "4.0.0"
@@ -2085,11 +2263,6 @@ ast-transform@0.0.0:
esprima "~1.0.4"
through "~2.3.4"
-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"
- integrity sha1-9wtzXGvKGlycItmCw+Oef+ujva0=
-
ast-types@^0.7.0:
version "0.7.8"
resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.7.8.tgz#902d2e0d60d071bdcd46dc115e1809ed11c138a9"
@@ -2150,18 +2323,18 @@ aws4@^1.8.0:
resolved "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f"
integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==
-babel-jest@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-24.9.0.tgz#3fc327cb8467b89d14d7bc70e315104a783ccd54"
- integrity sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw==
+babel-jest@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-25.2.3.tgz#8f1c088b1954963e8a5384be2e219dae00d053f4"
+ integrity sha512-03JjvEwuDrEz/A45K8oggAv+Vqay0xcOdNTJxYFxiuZvB5vlHKo1iZg9Pi5vQTHhNCKpGLb7L/jvUUafyh9j7g==
dependencies:
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
+ "@jest/transform" "^25.2.3"
+ "@jest/types" "^25.2.3"
"@types/babel__core" "^7.1.0"
- babel-plugin-istanbul "^5.1.0"
- babel-preset-jest "^24.9.0"
- chalk "^2.4.2"
- slash "^2.0.0"
+ babel-plugin-istanbul "^6.0.0"
+ babel-preset-jest "^25.2.1"
+ chalk "^3.0.0"
+ slash "^3.0.0"
babel-loader@^8.0.6:
version "8.0.6"
@@ -2180,29 +2353,32 @@ babel-plugin-dynamic-import-node@^2.3.0:
dependencies:
object.assign "^4.1.0"
-babel-plugin-istanbul@^5.1.0:
- version "5.1.4"
- resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.1.4.tgz#841d16b9a58eeb407a0ddce622ba02fe87a752ba"
- integrity sha512-dySz4VJMH+dpndj0wjJ8JPs/7i1TdSPb1nRrn56/92pKOF9VKC1FMFJmMXjzlGGusnCAqujP6PBCiKq0sVA+YQ==
+babel-plugin-istanbul@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765"
+ integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==
dependencies:
- find-up "^3.0.0"
- istanbul-lib-instrument "^3.3.0"
- test-exclude "^5.2.3"
+ "@babel/helper-plugin-utils" "^7.0.0"
+ "@istanbuljs/load-nyc-config" "^1.0.0"
+ "@istanbuljs/schema" "^0.1.2"
+ istanbul-lib-instrument "^4.0.0"
+ test-exclude "^6.0.0"
-babel-plugin-jest-hoist@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz#4f837091eb407e01447c8843cbec546d0002d756"
- integrity sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw==
+babel-plugin-jest-hoist@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.2.1.tgz#d0003a1f3d5caa281e1107fe03bbf16b799f9955"
+ integrity sha512-HysbCQfJhxLlyxDbKcB2ucGYV0LjqK4h6dBoI3RtFuOxTiTWK6XGZMsHb0tGh8iJdV4hC6Z2GCHzVvDeh9i0lQ==
dependencies:
"@types/babel__traverse" "^7.0.6"
-babel-preset-jest@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz#192b521e2217fb1d1f67cf73f70c336650ad3cdc"
- integrity sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg==
+babel-preset-jest@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-25.2.1.tgz#4ccd0e577f69aa11b71806edfe8b25a5c3ac93a2"
+ integrity sha512-zXHJBM5iR8oEO4cvdF83AQqqJf3tJrXy3x8nfu2Nlqvn4cneg4Ca8M7cQvC5S9BzDDy1O0tZ9iXru9J6E3ym+A==
dependencies:
+ "@babel/plugin-syntax-bigint" "^7.0.0"
"@babel/plugin-syntax-object-rest-spread" "^7.0.0"
- babel-plugin-jest-hoist "^24.9.0"
+ babel-plugin-jest-hoist "^25.2.1"
babel-runtime@^6.11.6:
version "6.26.0"
@@ -2707,6 +2883,14 @@ chalk@^2.1.0, chalk@^2.3.2:
escape-string-regexp "^1.0.5"
supports-color "^5.3.0"
+chalk@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4"
+ integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==
+ dependencies:
+ ansi-styles "^4.1.0"
+ supports-color "^7.1.0"
+
chardet@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
@@ -2837,6 +3021,15 @@ cliui@^5.0.0:
strip-ansi "^5.2.0"
wrap-ansi "^5.1.0"
+cliui@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1"
+ integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==
+ dependencies:
+ string-width "^4.2.0"
+ strip-ansi "^6.0.0"
+ wrap-ansi "^6.2.0"
+
clone-deep@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"
@@ -2876,6 +3069,11 @@ code-point-at@^1.0.0:
resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
+collect-v8-coverage@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz#150ee634ac3650b71d9c985eb7f608942334feb1"
+ integrity sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ==
+
collection-visit@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0"
@@ -2891,12 +3089,19 @@ color-convert@^1.9.0, color-convert@^1.9.1, color-convert@^1.9.3:
dependencies:
color-name "1.1.3"
+color-convert@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
+ integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
+ dependencies:
+ color-name "~1.1.4"
+
color-name@1.1.3:
version "1.1.3"
resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25"
integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=
-color-name@^1.0.0:
+color-name@^1.0.0, color-name@~1.1.4:
version "1.1.4"
resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
@@ -2924,12 +3129,7 @@ combined-stream@^1.0.6, combined-stream@~1.0.6:
dependencies:
delayed-stream "~1.0.0"
-commander@^2.11.0:
- version "2.20.3"
- resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
- integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
-
-commander@^2.20.0, commander@~2.20.0:
+commander@^2.20.0:
version "2.20.0"
resolved "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422"
integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==
@@ -3032,7 +3232,7 @@ convert-source-map@^1.1.0, convert-source-map@^1.4.0:
dependencies:
safe-buffer "~5.1.1"
-convert-source-map@^1.5.1, convert-source-map@^1.7.0:
+convert-source-map@^1.5.1, convert-source-map@^1.6.0, convert-source-map@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442"
integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==
@@ -3078,6 +3278,11 @@ core-js-compat@^3.6.2:
browserslist "^4.8.3"
semver "7.0.0"
+core-js-pure@^3.0.0:
+ version "3.6.4"
+ resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.6.4.tgz#4bf1ba866e25814f149d4e9aaa08c36173506e3a"
+ integrity sha512-epIhRLkXdgv32xIUFaaAry2wdxZYBi6bgM7cB136dzzXXa+dFyRLTZeLUJxnd8ShrmyVXBub63n2NHo2JAt8Cw==
+
core-js@^2.4.0:
version "2.6.9"
resolved "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2"
@@ -3149,6 +3354,15 @@ cross-spawn@6.0.5, cross-spawn@^6.0.0, cross-spawn@^6.0.5:
shebang-command "^1.2.0"
which "^1.2.9"
+cross-spawn@^7.0.0:
+ version "7.0.1"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14"
+ integrity sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==
+ dependencies:
+ path-key "^3.1.0"
+ shebang-command "^2.0.0"
+ which "^2.0.1"
+
crypto-browserify@^3.11.0:
version "3.12.0"
resolved "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec"
@@ -3255,7 +3469,7 @@ css.escape@^1.5.1:
resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb"
integrity sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=
-css@^2.0.0, css@^2.2.3:
+css@^2.0.0, css@^2.2.4:
version "2.2.4"
resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929"
integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==
@@ -3359,17 +3573,22 @@ csso@^3.5.1:
dependencies:
css-tree "1.0.0-alpha.29"
-cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0":
- version "0.3.6"
- resolved "https://registry.npmjs.org/cssom/-/cssom-0.3.6.tgz#f85206cee04efa841f3c5982a74ba96ab20d65ad"
- integrity sha512-DtUeseGk9/GBW0hl0vVPpU22iHL6YB5BUX7ml1hB+GMpo0NX5G4voX3kdWiMSEguFtcW3Vh3djqNF4aIe6ne0A==
+cssom@^0.4.1:
+ version "0.4.4"
+ resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10"
+ integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==
-cssstyle@^1.0.0:
- version "1.2.2"
- resolved "https://registry.npmjs.org/cssstyle/-/cssstyle-1.2.2.tgz#427ea4d585b18624f6fdbf9de7a2a1a3ba713077"
- integrity sha512-43wY3kl1CVQSvL7wUY1qXkxVGkStjpkDmVjiIKX8R97uhajy8Bybay78uOtqvh7Q5GK75dNPfW0geWjE6qQQow==
+cssom@~0.3.6:
+ version "0.3.8"
+ resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a"
+ integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==
+
+cssstyle@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.2.0.tgz#e4c44debccd6b7911ed617a4395e5754bba59992"
+ integrity sha512-sEb3XFPx3jNnCAMtqrXPDeSgQr+jojtCeNf8cvMNMh1cG970+lljssvQDzPq6lmmJu2Vhqood/gtEomBiHOGnA==
dependencies:
- cssom "0.3.x"
+ cssom "~0.3.6"
csstype@^2.2.0:
version "2.6.8"
@@ -3396,9 +3615,9 @@ dashdash@^1.12.0:
dependencies:
assert-plus "^1.0.0"
-data-urls@^1.0.0:
+data-urls@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe"
+ resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe"
integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==
dependencies:
abab "^2.0.0"
@@ -3701,6 +3920,11 @@ deep-is@~0.1.3:
resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
+deepmerge@^4.2.2:
+ version "4.2.2"
+ resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955"
+ integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==
+
default-gateway@^4.2.0:
version "4.2.0"
resolved "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz#167104c7500c2115f6dd69b0a536bb8ed720552b"
@@ -3789,10 +4013,10 @@ detect-libc@^1.0.2:
resolved "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=
-detect-newline@^2.1.0:
- version "2.1.0"
- resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"
- integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=
+detect-newline@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651"
+ integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==
detect-node@^2.0.4:
version "2.0.4"
@@ -3814,6 +4038,11 @@ diff-sequences@^24.9.0:
resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5"
integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew==
+diff-sequences@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.1.tgz#fcfe8aa07dd9b0c648396a478dabca8e76c6ab27"
+ integrity sha512-foe7dXnGlSh3jR1ovJmdv+77VQj98eKCHHwJPbZ2eEf0fHwKbkZicpPxEch9smZ+n2dnF6QFwkOQdLq9hpeJUg==
+
diffie-hellman@^5.0.0:
version "5.0.3"
resolved "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875"
@@ -3849,6 +4078,11 @@ doctrine@^3.0.0:
dependencies:
esutils "^2.0.2"
+dom-accessibility-api@^0.4.2:
+ version "0.4.3"
+ resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.4.3.tgz#93ca9002eb222fd5a343b6e5e6b9cf5929411c4c"
+ integrity sha512-JZ8iPuEHDQzq6q0k7PKMGbrIdsgBB7TRrtVOUm4nSMCExlg5qQG4KXWTH2k90yggjM4tTumRGwTKJSldMzKyLA==
+
dom-event-types@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/dom-event-types/-/dom-event-types-1.0.0.tgz#5830a0a29e1bf837fe50a70cd80a597232813cae"
@@ -4154,18 +4388,6 @@ escodegen@^1.11.1:
optionalDependencies:
source-map "~0.6.1"
-escodegen@^1.9.1:
- version "1.11.1"
- resolved "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz#c485ff8d6b4cdb89e27f4a856e91f118401ca510"
- integrity sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==
- dependencies:
- esprima "^3.1.3"
- estraverse "^4.2.0"
- esutils "^2.0.2"
- optionator "^0.8.1"
- optionalDependencies:
- source-map "~0.6.1"
-
escodegen@~1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.2.0.tgz#09de7967791cc958b7f89a2ddb6d23451af327e1"
@@ -4415,6 +4637,22 @@ execa@^1.0.0:
signal-exit "^3.0.0"
strip-eof "^1.0.0"
+execa@^3.2.0:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-3.4.0.tgz#c08ed4550ef65d858fac269ffc8572446f37eb89"
+ integrity sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==
+ dependencies:
+ cross-spawn "^7.0.0"
+ get-stream "^5.0.0"
+ human-signals "^1.1.1"
+ is-stream "^2.0.0"
+ merge-stream "^2.0.0"
+ npm-run-path "^4.0.0"
+ onetime "^5.1.0"
+ p-finally "^2.0.0"
+ signal-exit "^3.0.2"
+ strip-final-newline "^2.0.0"
+
exit@^0.1.2:
version "0.1.2"
resolved "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
@@ -4440,7 +4678,7 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2:
dependencies:
homedir-polyfill "^1.0.1"
-expect@^24.1.0, expect@^24.9.0:
+expect@^24.1.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca"
integrity sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q==
@@ -4452,6 +4690,18 @@ expect@^24.1.0, expect@^24.9.0:
jest-message-util "^24.9.0"
jest-regex-util "^24.9.0"
+expect@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-25.2.3.tgz#ee714f82bf33c43466fcef139ace0a57b3d0aa48"
+ integrity sha512-kil4jFRFAK2ySyCyXPqYrphc3EiiKKFd9BthrkKAyHcqr1B84xFTuj5kO8zL+eHRRjT2jQsOPExO0+1Q/fuUXg==
+ dependencies:
+ "@jest/types" "^25.2.3"
+ ansi-styles "^4.0.0"
+ jest-get-type "^25.2.1"
+ jest-matcher-utils "^25.2.3"
+ jest-message-util "^25.2.3"
+ jest-regex-util "^25.2.1"
+
express@^4.17.1:
version "4.17.1"
resolved "https://registry.npmjs.org/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134"
@@ -4698,9 +4948,9 @@ find-up@^3.0.0:
dependencies:
locate-path "^3.0.0"
-find-up@^4.0.0:
+find-up@^4.0.0, find-up@^4.1.0:
version "4.1.0"
- resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==
dependencies:
locate-path "^5.0.0"
@@ -4869,7 +5119,7 @@ fsevents@^1.2.7:
nan "^2.12.1"
node-pre-gyp "^0.12.0"
-fsevents@~2.1.2:
+fsevents@^2.1.2, fsevents@~2.1.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805"
integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==
@@ -4923,6 +5173,13 @@ get-stream@^4.0.0:
dependencies:
pump "^3.0.0"
+get-stream@^5.0.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9"
+ integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==
+ dependencies:
+ pump "^3.0.0"
+
get-value@^2.0.3, get-value@^2.0.6:
version "2.0.6"
resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28"
@@ -5057,6 +5314,11 @@ graceful-fs@^4.1.6:
version "4.1.15"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00"
+graceful-fs@^4.2.3:
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423"
+ integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==
+
growly@^1.3.0:
version "1.3.0"
resolved "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081"
@@ -5067,25 +5329,14 @@ handle-thing@^2.0.0:
resolved "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz#0e039695ff50c93fc288557d696f3c1dc6776754"
integrity sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==
-handlebars@^4.1.2:
- version "4.1.2"
- resolved "https://registry.npmjs.org/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67"
- integrity sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw==
- dependencies:
- neo-async "^2.6.0"
- optimist "^0.6.1"
- source-map "^0.6.1"
- optionalDependencies:
- uglify-js "^3.1.4"
-
har-schema@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
-har-validator@~5.1.0:
+har-validator@~5.1.3:
version "5.1.3"
- resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
+ resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==
dependencies:
ajv "^6.5.5"
@@ -5096,6 +5347,11 @@ has-flag@^3.0.0:
resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
+has-flag@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
+ integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
+
has-symbols@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
@@ -5196,11 +5452,6 @@ homedir-polyfill@^1.0.1:
dependencies:
parse-passwd "^1.0.0"
-hosted-git-info@^2.1.4:
- version "2.7.1"
- resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
- integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==
-
hpack.js@^2.1.6:
version "2.1.6"
resolved "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2"
@@ -5238,6 +5489,11 @@ html-entities@^1.2.1:
resolved "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f"
integrity sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=
+html-escaper@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
+ integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
+
http-deceiver@^1.2.7:
version "1.2.7"
resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87"
@@ -5313,6 +5569,11 @@ https-browserify@^1.0.0:
resolved "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
+human-signals@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"
+ integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==
+
icheck-bootstrap@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/icheck-bootstrap/-/icheck-bootstrap-3.0.1.tgz#60c9c9a71524e1d9dd5bd05167a62fef05cc3a1b"
@@ -5407,6 +5668,14 @@ import-local@2.0.0, import-local@^2.0.0:
pkg-dir "^3.0.0"
resolve-cwd "^2.0.0"
+import-local@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6"
+ integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==
+ dependencies:
+ pkg-dir "^4.2.0"
+ resolve-cwd "^3.0.0"
+
imurmurhash@^0.1.4:
version "0.1.4"
resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
@@ -5775,6 +6044,11 @@ is-stream@^1.1.0:
version "1.1.0"
resolved "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
+is-stream@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3"
+ integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==
+
is-svg@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75"
@@ -5789,9 +6063,9 @@ is-symbol@^1.0.2:
dependencies:
has-symbols "^1.0.0"
-is-typedarray@~1.0.0:
+is-typedarray@^1.0.0, is-typedarray@~1.0.0:
version "1.0.0"
- resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+ resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
is-windows@^1.0.1, is-windows@^1.0.2:
@@ -5804,6 +6078,11 @@ is-wsl@^1.1.0:
resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d"
integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=
+is-wsl@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.1.1.tgz#4a1c152d429df3d441669498e2486d3596ebaf1d"
+ integrity sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==
+
isarray@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
@@ -5836,103 +6115,103 @@ isstream@~0.1.2:
resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
-istanbul-lib-coverage@^2.0.2, istanbul-lib-coverage@^2.0.5:
- version "2.0.5"
- resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49"
- integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==
+istanbul-lib-coverage@^3.0.0:
+ version "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@^3.0.1, istanbul-lib-instrument@^3.3.0:
- version "3.3.0"
- resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630"
- integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==
+istanbul-lib-instrument@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz#61f13ac2c96cfefb076fe7131156cc05907874e6"
+ integrity sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==
dependencies:
- "@babel/generator" "^7.4.0"
- "@babel/parser" "^7.4.3"
- "@babel/template" "^7.4.0"
- "@babel/traverse" "^7.4.3"
- "@babel/types" "^7.4.0"
- istanbul-lib-coverage "^2.0.5"
- semver "^6.0.0"
+ "@babel/core" "^7.7.5"
+ "@babel/parser" "^7.7.5"
+ "@babel/template" "^7.7.4"
+ "@babel/traverse" "^7.7.4"
+ "@istanbuljs/schema" "^0.1.2"
+ istanbul-lib-coverage "^3.0.0"
+ semver "^6.3.0"
-istanbul-lib-report@^2.0.4:
- version "2.0.8"
- resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33"
- integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==
+istanbul-lib-report@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6"
+ integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==
dependencies:
- istanbul-lib-coverage "^2.0.5"
- make-dir "^2.1.0"
- supports-color "^6.1.0"
+ istanbul-lib-coverage "^3.0.0"
+ make-dir "^3.0.0"
+ supports-color "^7.1.0"
-istanbul-lib-source-maps@^3.0.1:
- version "3.0.6"
- resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8"
- integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==
+istanbul-lib-source-maps@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9"
+ integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==
dependencies:
debug "^4.1.1"
- istanbul-lib-coverage "^2.0.5"
- make-dir "^2.1.0"
- rimraf "^2.6.3"
+ istanbul-lib-coverage "^3.0.0"
source-map "^0.6.1"
-istanbul-reports@^2.2.6:
- version "2.2.6"
- resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz#7b4f2660d82b29303a8fe6091f8ca4bf058da1af"
- integrity sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==
+istanbul-reports@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.1.tgz#1343217244ad637e0c3b18e7f6b746941a9b5e9a"
+ integrity sha512-Vm9xwCiQ8t2cNNnckyeAV0UdxKpcQUz4nMxsBvIu8n2kmPSiyb5uaF/8LpmKr+yqL/MdOXaX2Nmdo4Qyxium9Q==
dependencies:
- handlebars "^4.1.2"
+ html-escaper "^2.0.0"
+ istanbul-lib-report "^3.0.0"
-jest-changed-files@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-24.9.0.tgz#08d8c15eb79a7fa3fc98269bc14b451ee82f8039"
- integrity sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg==
+jest-changed-files@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-25.2.3.tgz#ad19deef9e47ba37efb432d2c9a67dfd97cc78af"
+ integrity sha512-EFxy94dvvbqRB36ezIPLKJ4fDIC+jAdNs8i8uTwFpaXd6H3LVc3ova1lNS4ZPWk09OCR2vq5kSdSQgar7zMORg==
dependencies:
- "@jest/types" "^24.9.0"
- execa "^1.0.0"
- throat "^4.0.0"
+ "@jest/types" "^25.2.3"
+ execa "^3.2.0"
+ throat "^5.0.0"
-jest-cli@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-24.9.0.tgz#ad2de62d07472d419c6abc301fc432b98b10d2af"
- integrity sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg==
+jest-cli@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-25.2.3.tgz#47e17240ce6d8ce824ca1a01468ea8824ec6b139"
+ integrity sha512-T7G0TOkFj0wr33ki5xoq3bxkKC+liwJfjV9SmYIKBozwh91W4YjL1o1dgVCUTB1+sKJa/DiAY0p+eXYE6v2RGw==
dependencies:
- "@jest/core" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
+ "@jest/core" "^25.2.3"
+ "@jest/test-result" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ chalk "^3.0.0"
exit "^0.1.2"
- import-local "^2.0.0"
+ import-local "^3.0.2"
is-ci "^2.0.0"
- jest-config "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
+ jest-config "^25.2.3"
+ jest-util "^25.2.3"
+ jest-validate "^25.2.3"
prompts "^2.0.1"
- realpath-native "^1.1.0"
- yargs "^13.3.0"
+ realpath-native "^2.0.0"
+ yargs "^15.3.1"
-jest-config@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-24.9.0.tgz#fb1bbc60c73a46af03590719efa4825e6e4dd1b5"
- integrity sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ==
+jest-config@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-25.2.3.tgz#c304e91e2ba3763c04b38eafc26d30e5c41b48e8"
+ integrity sha512-UpTNxN8DgmLLCXFizGuvwIw+ZAPB0T3jbKaFEkzJdGqhSsQrVrk1lxhZNamaVIpWirM2ptYmqwUzvoobGCEkiQ==
dependencies:
"@babel/core" "^7.1.0"
- "@jest/test-sequencer" "^24.9.0"
- "@jest/types" "^24.9.0"
- babel-jest "^24.9.0"
- chalk "^2.0.1"
+ "@jest/test-sequencer" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ babel-jest "^25.2.3"
+ chalk "^3.0.0"
+ deepmerge "^4.2.2"
glob "^7.1.1"
- jest-environment-jsdom "^24.9.0"
- jest-environment-node "^24.9.0"
- jest-get-type "^24.9.0"
- jest-jasmine2 "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-resolve "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
- micromatch "^3.1.10"
- pretty-format "^24.9.0"
- realpath-native "^1.1.0"
+ jest-environment-jsdom "^25.2.3"
+ jest-environment-node "^25.2.3"
+ jest-get-type "^25.2.1"
+ jest-jasmine2 "^25.2.3"
+ jest-regex-util "^25.2.1"
+ jest-resolve "^25.2.3"
+ jest-util "^25.2.3"
+ jest-validate "^25.2.3"
+ micromatch "^4.0.2"
+ pretty-format "^25.2.3"
+ realpath-native "^2.0.0"
-jest-diff@^24.0.0, jest-diff@^24.3.0, jest-diff@^24.9.0:
+jest-diff@^24.3.0, jest-diff@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da"
integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==
@@ -5942,51 +6221,62 @@ jest-diff@^24.0.0, jest-diff@^24.3.0, jest-diff@^24.9.0:
jest-get-type "^24.9.0"
pretty-format "^24.9.0"
-jest-docblock@^24.3.0:
- version "24.3.0"
- resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.3.0.tgz#b9c32dac70f72e4464520d2ba4aec02ab14db5dd"
- integrity sha512-nlANmF9Yq1dufhFlKG9rasfQlrY7wINJbo3q01tu56Jv5eBU5jirylhF2O5ZBnLxzOVBGRDz/9NAwNyBtG4Nyg==
+jest-diff@^25.1.0, jest-diff@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.2.3.tgz#54d601a0a754ef26e808a8c8dbadd278c215aa3f"
+ integrity sha512-VtZ6LAQtaQpFsmEzps15dQc5ELbJxy4L2DOSo2Ev411TUEtnJPkAMD7JneVypeMJQ1y3hgxN9Ao13n15FAnavg==
dependencies:
- detect-newline "^2.1.0"
+ chalk "^3.0.0"
+ diff-sequences "^25.2.1"
+ jest-get-type "^25.2.1"
+ pretty-format "^25.2.3"
-jest-each@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-24.9.0.tgz#eb2da602e2a610898dbc5f1f6df3ba86b55f8b05"
- integrity sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog==
+jest-docblock@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-25.2.3.tgz#ac45280c43d59e7139f9fbe5896c6e0320c01ebb"
+ integrity sha512-d3/tmjLLrH5fpRGmIm3oFa3vOaD/IjPxtXVOrfujpfJ9y1tCDB1x/tvunmdOVAyF03/xeMwburl6ITbiQT1mVA==
dependencies:
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
- jest-get-type "^24.9.0"
- jest-util "^24.9.0"
- pretty-format "^24.9.0"
+ detect-newline "^3.0.0"
-jest-environment-jsdom@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz#4b0806c7fc94f95edb369a69cc2778eec2b7375b"
- integrity sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA==
+jest-each@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-25.2.3.tgz#64067ba1508ebbd07e9b126c173ab371e8e6309d"
+ integrity sha512-RTlmCjsBDK2c9T5oO4MqccA3/5Y8BUtiEy7OOQik1iyCgdnNdHbI0pNEpyapZPBG0nlvZ4mIu7aY6zNUvLraAQ==
dependencies:
- "@jest/environment" "^24.9.0"
- "@jest/fake-timers" "^24.9.0"
- "@jest/types" "^24.9.0"
- jest-mock "^24.9.0"
- jest-util "^24.9.0"
- jsdom "^11.5.1"
+ "@jest/types" "^25.2.3"
+ chalk "^3.0.0"
+ jest-get-type "^25.2.1"
+ jest-util "^25.2.3"
+ pretty-format "^25.2.3"
-jest-environment-node@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-24.9.0.tgz#333d2d2796f9687f2aeebf0742b519f33c1cbfd3"
- integrity sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA==
+jest-environment-jsdom@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-25.2.3.tgz#f790f87c24878b219d1745f68343380c2d79ab01"
+ integrity sha512-TLg7nizxIYJafz6tOBAVSmO5Ekswf6Cf3Soseov+mgonXfdYi1I0OZlHlZMJb2fGyXem2ndYFCLrMkwcWPKAnQ==
dependencies:
- "@jest/environment" "^24.9.0"
- "@jest/fake-timers" "^24.9.0"
- "@jest/types" "^24.9.0"
- jest-mock "^24.9.0"
- jest-util "^24.9.0"
+ "@jest/environment" "^25.2.3"
+ "@jest/fake-timers" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ jest-mock "^25.2.3"
+ jest-util "^25.2.3"
+ jsdom "^15.2.1"
-jest-extended@^0.11.2:
- version "0.11.2"
- resolved "https://registry.yarnpkg.com/jest-extended/-/jest-extended-0.11.2.tgz#924f4a6b4c946133faf9ec8fba865de9790f4116"
- integrity sha512-gwNMXrAPN0IY5L7VXWfSlC2aGo0KHIsGGcW+lTHYpedt5SJksEvBgMxs29iNikiNOz+cqAZY1s/+kYK0jlj4Jw==
+jest-environment-node@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-25.2.3.tgz#e50a7e84bf7c7555216aa41aea1e48f53773318f"
+ integrity sha512-Tu/wlGXfoLtBR4Ym+isz58z3TJkMYX4VnFTkrsxaTGYAxNLN7ArCwL51Ki0WrMd89v+pbCLDj/hDjrb4a2sOrw==
+ dependencies:
+ "@jest/environment" "^25.2.3"
+ "@jest/fake-timers" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ jest-mock "^25.2.3"
+ jest-util "^25.2.3"
+ semver "^6.3.0"
+
+jest-extended@^0.11.5:
+ version "0.11.5"
+ resolved "https://registry.yarnpkg.com/jest-extended/-/jest-extended-0.11.5.tgz#f063b3f1eaadad8d7c13a01f0dfe0f538d498ccf"
+ integrity sha512-3RsdFpLWKScpsLD6hJuyr/tV5iFOrw7v6YjA3tPdda9sJwoHwcMROws5gwiIZfcwhHlJRwFJB2OUvGmF3evV/Q==
dependencies:
expect "^24.1.0"
jest-get-type "^22.4.3"
@@ -6001,54 +6291,60 @@ jest-get-type@^24.9.0:
resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e"
integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==
-jest-haste-map@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-24.9.0.tgz#b38a5d64274934e21fa417ae9a9fbeb77ceaac7d"
- integrity sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==
+jest-get-type@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.1.tgz#6c83de603c41b1627e6964da2f5454e6aa3c13a6"
+ integrity sha512-EYjTiqcDTCRJDcSNKbLTwn/LcDPEE7ITk8yRMNAOjEsN6yp+Uu+V1gx4djwnuj/DvWg0YGmqaBqPVGsPxlvE7w==
+
+jest-haste-map@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-25.2.3.tgz#2649392b5af191f0167a27bfb62e5d96d7eaaade"
+ integrity sha512-pAP22OHtPr4qgZlJJFks2LLgoQUr4XtM1a+F5UaPIZNiCRnePA0hM3L7aiJ0gzwiNIYwMTfKRwG/S1L28J3A3A==
dependencies:
- "@jest/types" "^24.9.0"
- anymatch "^2.0.0"
+ "@jest/types" "^25.2.3"
+ anymatch "^3.0.3"
fb-watchman "^2.0.0"
- graceful-fs "^4.1.15"
- invariant "^2.2.4"
- jest-serializer "^24.9.0"
- jest-util "^24.9.0"
- jest-worker "^24.9.0"
- micromatch "^3.1.10"
+ graceful-fs "^4.2.3"
+ jest-serializer "^25.2.1"
+ jest-util "^25.2.3"
+ jest-worker "^25.2.1"
+ micromatch "^4.0.2"
sane "^4.0.3"
walker "^1.0.7"
+ which "^2.0.2"
optionalDependencies:
- fsevents "^1.2.7"
+ fsevents "^2.1.2"
-jest-jasmine2@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz#1f7b1bd3242c1774e62acabb3646d96afc3be6a0"
- integrity sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw==
+jest-jasmine2@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-25.2.3.tgz#a824c5dbe383c63d243aab5e64cc85ab65f87598"
+ integrity sha512-x9PEGPFdnkSwJj1UG4QxG9JxFdyP8fuJ/UfKXd/eSpK8w9x7MP3VaQDuPQF0UQhCT0YeOITEPkQyqS+ptt0suA==
dependencies:
"@babel/traverse" "^7.1.0"
- "@jest/environment" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
+ "@jest/environment" "^25.2.3"
+ "@jest/source-map" "^25.2.1"
+ "@jest/test-result" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ chalk "^3.0.0"
co "^4.6.0"
- expect "^24.9.0"
+ expect "^25.2.3"
is-generator-fn "^2.0.0"
- jest-each "^24.9.0"
- jest-matcher-utils "^24.9.0"
- jest-message-util "^24.9.0"
- jest-runtime "^24.9.0"
- jest-snapshot "^24.9.0"
- jest-util "^24.9.0"
- pretty-format "^24.9.0"
- throat "^4.0.0"
+ jest-each "^25.2.3"
+ jest-matcher-utils "^25.2.3"
+ jest-message-util "^25.2.3"
+ jest-runtime "^25.2.3"
+ jest-snapshot "^25.2.3"
+ jest-util "^25.2.3"
+ pretty-format "^25.2.3"
+ throat "^5.0.0"
-jest-leak-detector@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz#b665dea7c77100c5c4f7dfcb153b65cf07dcf96a"
- integrity sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA==
+jest-leak-detector@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-25.2.3.tgz#4cf39f137925e0061c04c24ca65cae36465f0238"
+ integrity sha512-yblCMPE7NJKl7778Cf/73yyFWAas5St0iiEBwq7RDyaz6Xd4WPFnPz2j7yDb/Qce71A1IbDoLADlcwD8zT74Aw==
dependencies:
- jest-get-type "^24.9.0"
- pretty-format "^24.9.0"
+ jest-get-type "^25.2.1"
+ pretty-format "^25.2.3"
jest-matcher-utils@^22.0.0:
version "22.4.3"
@@ -6058,7 +6354,7 @@ jest-matcher-utils@^22.0.0:
jest-get-type "^22.4.3"
pretty-format "^22.4.3"
-jest-matcher-utils@^24.0.0, jest-matcher-utils@^24.9.0:
+jest-matcher-utils@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073"
integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA==
@@ -6068,6 +6364,16 @@ jest-matcher-utils@^24.0.0, jest-matcher-utils@^24.9.0:
jest-get-type "^24.9.0"
pretty-format "^24.9.0"
+jest-matcher-utils@^25.1.0, jest-matcher-utils@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-25.2.3.tgz#59285bd6d6c810debc9caa585ed985e46a3f28fd"
+ integrity sha512-ZmiXiwQRVM9MoKjGMP5YsGGk2Th5ncyRxfXKz5AKsmU8m43kgNZirckVzaP61MlSa9LKmXbevdYqVp1ZKAw2Rw==
+ dependencies:
+ chalk "^3.0.0"
+ jest-diff "^25.2.3"
+ jest-get-type "^25.2.1"
+ pretty-format "^25.2.3"
+
jest-message-util@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3"
@@ -6082,192 +6388,194 @@ jest-message-util@^24.9.0:
slash "^2.0.0"
stack-utils "^1.0.1"
-jest-mock@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-24.9.0.tgz#c22835541ee379b908673ad51087a2185c13f1c6"
- integrity sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==
+jest-message-util@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-25.2.3.tgz#a911c4e3af06df851cc6065d9a3119fd2a3aa240"
+ integrity sha512-DcyDmdO5LVIeS0ngRvd7rk701XL60dAakUeQJ1tQRby27fyLYXD+V0nqVaC194W7fIlohjVQOZPHmKXIjn+Byw==
dependencies:
- "@jest/types" "^24.9.0"
+ "@babel/code-frame" "^7.0.0"
+ "@jest/test-result" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ "@types/stack-utils" "^1.0.1"
+ chalk "^3.0.0"
+ micromatch "^4.0.2"
+ slash "^3.0.0"
+ stack-utils "^1.0.1"
+
+jest-mock@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-25.2.3.tgz#b37a581f59d61bd91db27a99bf7eb8b3e5e993d5"
+ integrity sha512-xlf+pyY0j47zoCs8zGGOGfWyxxLximE8YFOfEK8s4FruR8DtM/UjNj61um+iDuMAFEBDe1bhCXkqiKoCmWjJzg==
+ dependencies:
+ "@jest/types" "^25.2.3"
jest-pnp-resolver@^1.2.1:
version "1.2.1"
resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz#ecdae604c077a7fbc70defb6d517c3c1c898923a"
integrity sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==
-jest-regex-util@^24.3.0:
- version "24.3.0"
- resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.3.0.tgz#d5a65f60be1ae3e310d5214a0307581995227b36"
- integrity sha512-tXQR1NEOyGlfylyEjg1ImtScwMq8Oh3iJbGTjN7p0J23EuVX1MA8rwU69K4sLbCmwzgCUbVkm0FkSF9TdzOhtg==
-
jest-regex-util@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636"
integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==
-jest-resolve-dependencies@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz#ad055198959c4cfba8a4f066c673a3f0786507ab"
- integrity sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g==
- dependencies:
- "@jest/types" "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-snapshot "^24.9.0"
+jest-regex-util@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-25.2.1.tgz#db64b0d15cd3642c93b7b9627801d7c518600584"
+ integrity sha512-wroFVJw62LdqTdkL508ZLV82FrJJWVJMIuYG7q4Uunl1WAPTf4ftPKrqqfec4SvOIlvRZUdEX2TFpWR356YG/w==
-jest-resolve@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-24.9.0.tgz#dff04c7687af34c4dd7e524892d9cf77e5d17321"
- integrity sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ==
+jest-resolve-dependencies@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-25.2.3.tgz#cd4d9d068d5238dfbdfa45690f6e902b6413c2da"
+ integrity sha512-mcWlvjXLlNzgdE9EQxHuaeWICNxozanim87EfyvPwTY0ryWusFZbgF6F8u3E0syJ4FFSooEm0lQ6fgYcnPGAFw==
dependencies:
- "@jest/types" "^24.9.0"
+ "@jest/types" "^25.2.3"
+ jest-regex-util "^25.2.1"
+ jest-snapshot "^25.2.3"
+
+jest-resolve@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-25.2.3.tgz#ababeaf2bb948cb6d2dea8453759116da0fb7842"
+ integrity sha512-1vZMsvM/DBH258PnpUNSXIgtzpYz+vCVCj9+fcy4akZl4oKbD+9hZSlfe9RIDpU0Fc28ozHQrmwX3EqFRRIHGg==
+ dependencies:
+ "@jest/types" "^25.2.3"
browser-resolve "^1.11.3"
- chalk "^2.0.1"
+ chalk "^3.0.0"
jest-pnp-resolver "^1.2.1"
- realpath-native "^1.1.0"
+ realpath-native "^2.0.0"
+ resolve "^1.15.1"
-jest-runner@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-24.9.0.tgz#574fafdbd54455c2b34b4bdf4365a23857fcdf42"
- integrity sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg==
+jest-runner@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-25.2.3.tgz#88fb448a46cf4ee9194a3e3cf0adbc122e195adb"
+ integrity sha512-E+u2Zm2TmtTOFEbKs5jllLiV2fwiX77cYc08RdyYZNe/s06wQT3P47aV6a8Rv61L7E2Is7OmozLd0KI/DITRpg==
dependencies:
- "@jest/console" "^24.7.1"
- "@jest/environment" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- chalk "^2.4.2"
+ "@jest/console" "^25.2.3"
+ "@jest/environment" "^25.2.3"
+ "@jest/test-result" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ chalk "^3.0.0"
exit "^0.1.2"
- graceful-fs "^4.1.15"
- jest-config "^24.9.0"
- jest-docblock "^24.3.0"
- jest-haste-map "^24.9.0"
- jest-jasmine2 "^24.9.0"
- jest-leak-detector "^24.9.0"
- jest-message-util "^24.9.0"
- jest-resolve "^24.9.0"
- jest-runtime "^24.9.0"
- jest-util "^24.9.0"
- jest-worker "^24.6.0"
+ graceful-fs "^4.2.3"
+ jest-config "^25.2.3"
+ jest-docblock "^25.2.3"
+ jest-haste-map "^25.2.3"
+ jest-jasmine2 "^25.2.3"
+ jest-leak-detector "^25.2.3"
+ jest-message-util "^25.2.3"
+ jest-resolve "^25.2.3"
+ jest-runtime "^25.2.3"
+ jest-util "^25.2.3"
+ jest-worker "^25.2.1"
source-map-support "^0.5.6"
- throat "^4.0.0"
+ throat "^5.0.0"
-jest-runtime@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-24.9.0.tgz#9f14583af6a4f7314a6a9d9f0226e1a781c8e4ac"
- integrity sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw==
+jest-runtime@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-25.2.3.tgz#1f0e9ba878a66538c3e9d58be97a6a12c877ed13"
+ integrity sha512-PZRFeUVF08N24v2G73SDF0b0VpLG7cRNOJ3ggj5TnArBVHkkrWzM3z7txB9OupWu7OO8bH/jFogk6sSjnHLFXQ==
dependencies:
- "@jest/console" "^24.7.1"
- "@jest/environment" "^24.9.0"
- "@jest/source-map" "^24.3.0"
- "@jest/transform" "^24.9.0"
- "@jest/types" "^24.9.0"
- "@types/yargs" "^13.0.0"
- chalk "^2.0.1"
+ "@jest/console" "^25.2.3"
+ "@jest/environment" "^25.2.3"
+ "@jest/source-map" "^25.2.1"
+ "@jest/test-result" "^25.2.3"
+ "@jest/transform" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ "@types/yargs" "^15.0.0"
+ chalk "^3.0.0"
+ collect-v8-coverage "^1.0.0"
exit "^0.1.2"
glob "^7.1.3"
- graceful-fs "^4.1.15"
- jest-config "^24.9.0"
- jest-haste-map "^24.9.0"
- jest-message-util "^24.9.0"
- jest-mock "^24.9.0"
- jest-regex-util "^24.3.0"
- jest-resolve "^24.9.0"
- jest-snapshot "^24.9.0"
- jest-util "^24.9.0"
- jest-validate "^24.9.0"
- realpath-native "^1.1.0"
- slash "^2.0.0"
- strip-bom "^3.0.0"
- yargs "^13.3.0"
+ graceful-fs "^4.2.3"
+ jest-config "^25.2.3"
+ jest-haste-map "^25.2.3"
+ jest-message-util "^25.2.3"
+ jest-mock "^25.2.3"
+ jest-regex-util "^25.2.1"
+ jest-resolve "^25.2.3"
+ jest-snapshot "^25.2.3"
+ jest-util "^25.2.3"
+ jest-validate "^25.2.3"
+ realpath-native "^2.0.0"
+ slash "^3.0.0"
+ strip-bom "^4.0.0"
+ yargs "^15.3.1"
-jest-serializer@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-24.9.0.tgz#e6d7d7ef96d31e8b9079a714754c5d5c58288e73"
- integrity sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==
+jest-serializer@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-25.2.1.tgz#51727a5fc04256f461abe0fa024a022ba165877a"
+ integrity sha512-fibDi7M5ffx6c/P66IkvR4FKkjG5ldePAK1WlbNoaU4GZmIAkS9Le/frAwRUFEX0KdnisSPWf+b1RC5jU7EYJQ==
-jest-snapshot@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-24.9.0.tgz#ec8e9ca4f2ec0c5c87ae8f925cf97497b0e951ba"
- integrity sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew==
+jest-snapshot@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-25.2.3.tgz#2d432fcf9e7f1f7eb3e5012ffcce8035794b76ae"
+ integrity sha512-HlFVbE6vOZ541mtkwjuAe0rfx9EWhB+QXXneLNOP/s3LlHxGQtX7WFXY5OiH4CkAnCc6BpzLNYS9nfINNRb4Zg==
dependencies:
"@babel/types" "^7.0.0"
- "@jest/types" "^24.9.0"
- chalk "^2.0.1"
- expect "^24.9.0"
- jest-diff "^24.9.0"
- jest-get-type "^24.9.0"
- jest-matcher-utils "^24.9.0"
- jest-message-util "^24.9.0"
- jest-resolve "^24.9.0"
- mkdirp "^0.5.1"
+ "@jest/types" "^25.2.3"
+ "@types/prettier" "^1.19.0"
+ chalk "^3.0.0"
+ expect "^25.2.3"
+ jest-diff "^25.2.3"
+ jest-get-type "^25.2.1"
+ jest-matcher-utils "^25.2.3"
+ jest-message-util "^25.2.3"
+ jest-resolve "^25.2.3"
+ make-dir "^3.0.0"
natural-compare "^1.4.0"
- pretty-format "^24.9.0"
- semver "^6.2.0"
+ pretty-format "^25.2.3"
+ semver "^6.3.0"
-jest-util@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-24.9.0.tgz#7396814e48536d2e85a37de3e4c431d7cb140162"
- integrity sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==
+jest-util@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-25.2.3.tgz#0abf95a1d6b96f2de5a3ecd61b36c40a182dc256"
+ integrity sha512-7tWiMICVSo9lNoObFtqLt9Ezt5exdFlWs5fLe1G4XLY2lEbZc814cw9t4YHScqBkWMfzth8ASHKlYBxiX2rdCw==
dependencies:
- "@jest/console" "^24.9.0"
- "@jest/fake-timers" "^24.9.0"
- "@jest/source-map" "^24.9.0"
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- callsites "^3.0.0"
- chalk "^2.0.1"
- graceful-fs "^4.1.15"
+ "@jest/types" "^25.2.3"
+ chalk "^3.0.0"
is-ci "^2.0.0"
- mkdirp "^0.5.1"
- slash "^2.0.0"
- source-map "^0.6.0"
+ make-dir "^3.0.0"
-jest-validate@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-24.9.0.tgz#0775c55360d173cd854e40180756d4ff52def8ab"
- integrity sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==
+jest-validate@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-25.2.3.tgz#ecb0f093cf8ae71d15075fb48439b6f78f1fcb5a"
+ integrity sha512-GObn91jzU0B0Bv4cusAwjP6vnWy78hJUM8MOSz7keRfnac/ZhQWIsUjvk01IfeXNTemCwgR57EtdjQMzFZGREg==
dependencies:
- "@jest/types" "^24.9.0"
+ "@jest/types" "^25.2.3"
camelcase "^5.3.1"
- chalk "^2.0.1"
- jest-get-type "^24.9.0"
+ chalk "^3.0.0"
+ jest-get-type "^25.2.1"
leven "^3.1.0"
- pretty-format "^24.9.0"
+ pretty-format "^25.2.3"
-jest-watcher@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-24.9.0.tgz#4b56e5d1ceff005f5b88e528dc9afc8dd4ed2b3b"
- integrity sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw==
+jest-watcher@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-25.2.3.tgz#a494fe3ddb62da62b0e697abfea457de8f388f1f"
+ integrity sha512-F6ERbdvJk8nbaRon9lLQVl4kp+vToCCHmy+uWW5QQ8/8/g2jkrZKJQnlQINrYQp0ewg31Bztkhs4nxsZMx6wDg==
dependencies:
- "@jest/test-result" "^24.9.0"
- "@jest/types" "^24.9.0"
- "@types/yargs" "^13.0.0"
- ansi-escapes "^3.0.0"
- chalk "^2.0.1"
- jest-util "^24.9.0"
- string-length "^2.0.0"
+ "@jest/test-result" "^25.2.3"
+ "@jest/types" "^25.2.3"
+ ansi-escapes "^4.2.1"
+ chalk "^3.0.0"
+ jest-util "^25.2.3"
+ string-length "^3.1.0"
-jest-worker@^24.6.0:
- version "24.6.0"
- resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-24.6.0.tgz#7f81ceae34b7cde0c9827a6980c35b7cdc0161b3"
- integrity sha512-jDwgW5W9qGNvpI1tNnvajh0a5IE/PuGLFmHk6aR/BZFz8tSgGw17GsDPXAJ6p91IvYDjOw8GpFbvvZGAK+DPQQ==
- dependencies:
- merge-stream "^1.0.1"
- supports-color "^6.1.0"
-
-jest-worker@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5"
- integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==
+jest-worker@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.2.1.tgz#209617015c768652646aa33a7828cc2ab472a18a"
+ integrity sha512-IHnpekk8H/hCUbBlfeaPZzU6v75bqwJp3n4dUrQuQOAgOneI4tx3jV2o8pvlXnDfcRsfkFIUD//HWXpCmR+evQ==
dependencies:
merge-stream "^2.0.0"
- supports-color "^6.1.0"
+ supports-color "^7.0.0"
-jest@^24.9.0:
- version "24.9.0"
- resolved "https://registry.yarnpkg.com/jest/-/jest-24.9.0.tgz#987d290c05a08b52c56188c1002e368edb007171"
- integrity sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw==
+jest@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/jest/-/jest-25.2.3.tgz#0cc9b35192f236fe1d5e76ed8eb3a54e7e0ee2e0"
+ integrity sha512-UbUmyGeZt0/sCIj/zsWOY0qFfQsx2qEFIZp0iEj8yVH6qASfR22fJOf12gFuSPsdSufam+llZBB0MdXWCg6EEQ==
dependencies:
- import-local "^2.0.0"
- jest-cli "^24.9.0"
+ "@jest/core" "^25.2.3"
+ import-local "^3.0.2"
+ jest-cli "^25.2.3"
jquery-knob-chif@^1.2.13:
version "1.2.13"
@@ -6329,36 +6637,36 @@ jsbn@~0.1.0:
resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM=
-jsdom@^11.5.1:
- version "11.12.0"
- resolved "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8"
- integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==
+jsdom@^15.2.1:
+ version "15.2.1"
+ resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-15.2.1.tgz#d2feb1aef7183f86be521b8c6833ff5296d07ec5"
+ integrity sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==
dependencies:
abab "^2.0.0"
- acorn "^5.5.3"
- acorn-globals "^4.1.0"
+ acorn "^7.1.0"
+ acorn-globals "^4.3.2"
array-equal "^1.0.0"
- cssom ">= 0.3.2 < 0.4.0"
- cssstyle "^1.0.0"
- data-urls "^1.0.0"
+ cssom "^0.4.1"
+ cssstyle "^2.0.0"
+ data-urls "^1.1.0"
domexception "^1.0.1"
- escodegen "^1.9.1"
+ escodegen "^1.11.1"
html-encoding-sniffer "^1.0.2"
- left-pad "^1.3.0"
- nwsapi "^2.0.7"
- parse5 "4.0.0"
+ nwsapi "^2.2.0"
+ parse5 "5.1.0"
pn "^1.1.0"
- request "^2.87.0"
- request-promise-native "^1.0.5"
- sax "^1.2.4"
+ request "^2.88.0"
+ request-promise-native "^1.0.7"
+ saxes "^3.1.9"
symbol-tree "^3.2.2"
- tough-cookie "^2.3.4"
+ tough-cookie "^3.0.1"
w3c-hr-time "^1.0.1"
+ w3c-xmlserializer "^1.1.2"
webidl-conversions "^4.0.2"
- whatwg-encoding "^1.0.3"
- whatwg-mimetype "^2.1.0"
- whatwg-url "^6.4.1"
- ws "^5.2.0"
+ whatwg-encoding "^1.0.5"
+ whatwg-mimetype "^2.3.0"
+ whatwg-url "^7.0.0"
+ ws "^7.0.0"
xml-name-validator "^3.0.0"
jsesc@^2.5.1:
@@ -6418,6 +6726,13 @@ json5@^1.0.1:
dependencies:
minimist "^1.2.0"
+json5@^2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.2.tgz#43ef1f0af9835dd624751a6b7fa48874fb2d608e"
+ integrity sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==
+ dependencies:
+ minimist "^1.2.5"
+
jsonfile@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb"
@@ -6494,11 +6809,6 @@ lcid@^2.0.0:
dependencies:
invert-kv "^2.0.0"
-left-pad@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e"
- integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==
-
leven@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
@@ -6543,16 +6853,6 @@ linebreak@^1.0.2:
brfs "^2.0.2"
unicode-trie "^1.0.0"
-load-json-file@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b"
- integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs=
- dependencies:
- graceful-fs "^4.1.2"
- parse-json "^4.0.0"
- pify "^3.0.0"
- strip-bom "^3.0.0"
-
loader-runner@^2.4.0:
version "2.4.0"
resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357"
@@ -6653,6 +6953,13 @@ loglevel@^1.6.6:
resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.6.tgz#0ee6300cc058db6b3551fa1c4bf73b83bb771312"
integrity sha512-Sgr5lbboAUBo3eXCSPL4/KoVz3ROKquOjcctxmHIt+vol2DrqTQe3SwkKKuYhEiWB5kYa13YyopJ69deJ1irzQ==
+lolex@^5.0.0:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/lolex/-/lolex-5.1.2.tgz#953694d098ce7c07bc5ed6d0e42bc6c0c6d5a367"
+ integrity sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==
+ dependencies:
+ "@sinonjs/commons" "^1.7.0"
+
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0:
version "1.4.0"
resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
@@ -6682,7 +6989,7 @@ magic-string@^0.22.4:
dependencies:
vlq "^0.2.2"
-make-dir@^2.0.0, make-dir@^2.1.0:
+make-dir@^2.0.0:
version "2.1.0"
resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==
@@ -6801,13 +7108,6 @@ merge-source-map@^1.1.0:
dependencies:
source-map "^0.6.1"
-merge-stream@^1.0.1:
- version "1.0.1"
- resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1"
- integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=
- dependencies:
- readable-stream "^2.0.1"
-
merge-stream@^2.0.0:
version "2.0.0"
resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
@@ -6837,7 +7137,7 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4:
snapdragon "^0.8.1"
to-regex "^3.0.2"
-micromatch@^4.0.0:
+micromatch@^4.0.0, micromatch@^4.0.2:
version "4.0.2"
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259"
integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==
@@ -6934,10 +7234,10 @@ minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0:
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=
-minimist@~0.0.1:
- version "0.0.10"
- resolved "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
- integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=
+minimist@^1.2.5:
+ version "1.2.5"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
+ integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
minipass@^2.2.1, minipass@^2.6.0, minipass@^2.6.4:
version "2.6.5"
@@ -7093,10 +7393,6 @@ neo-async@^2.5.0, neo-async@^2.6.1:
resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c"
integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==
-neo-async@^2.6.0:
- version "2.6.0"
- resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.0.tgz#b9d15e4d71c6762908654b5183ed38b753340835"
-
next-tick@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c"
@@ -7151,16 +7447,16 @@ node-modules-regexp@^1.0.0:
resolved "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40"
integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=
-node-notifier@^5.4.2:
- version "5.4.3"
- resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.3.tgz#cb72daf94c93904098e28b9c590fd866e464bd50"
- integrity sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==
+node-notifier@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-6.0.0.tgz#cea319e06baa16deec8ce5cd7f133c4a46b68e12"
+ integrity sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==
dependencies:
growly "^1.3.0"
- is-wsl "^1.1.0"
- semver "^5.5.0"
+ is-wsl "^2.1.1"
+ semver "^6.3.0"
shellwords "^0.1.1"
- which "^1.3.0"
+ which "^1.3.1"
node-pre-gyp@^0.12.0:
version "0.12.0"
@@ -7207,16 +7503,6 @@ nopt@^4.0.1:
abbrev "1"
osenv "^0.1.4"
-normalize-package-data@^2.3.2:
- version "2.5.0"
- resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8"
- integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==
- dependencies:
- hosted-git-info "^2.1.4"
- resolve "^1.10.0"
- semver "2 || 3 || 4 || 5"
- validate-npm-package-license "^3.0.1"
-
normalize-path@^2.1.1:
version "2.1.1"
resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9"
@@ -7268,6 +7554,13 @@ npm-run-path@^2.0.0:
dependencies:
path-key "^2.0.0"
+npm-run-path@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
+ integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
+ dependencies:
+ path-key "^3.0.0"
+
npmlog@^4.0.2:
version "4.1.2"
resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
@@ -7295,10 +7588,10 @@ number-is-nan@^1.0.0:
resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=
-nwsapi@^2.0.7:
- version "2.1.4"
- resolved "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz#e006a878db23636f8e8a67d33ca0e4edf61a842f"
- integrity sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw==
+nwsapi@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7"
+ integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==
oauth-sign@~0.9.0:
version "0.9.0"
@@ -7437,14 +7730,6 @@ opn@^5.5.0:
dependencies:
is-wsl "^1.1.0"
-optimist@^0.6.1:
- version "0.6.1"
- resolved "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
- integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY=
- dependencies:
- minimist "~0.0.1"
- wordwrap "~0.0.2"
-
optimize-css-assets-webpack-plugin@^5.0.3:
version "5.0.3"
resolved "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz#e2f1d4d94ad8c0af8967ebd7cf138dcb1ef14572"
@@ -7525,17 +7810,20 @@ p-defer@^1.0.0:
resolved "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c"
integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=
-p-each-series@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz#930f3d12dd1f50e7434457a22cd6f04ac6ad7f71"
- integrity sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=
- dependencies:
- p-reduce "^1.0.0"
+p-each-series@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.1.0.tgz#961c8dd3f195ea96c747e636b262b800a6b1af48"
+ integrity sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ==
p-finally@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
+p-finally@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-2.0.1.tgz#bd6fcaa9c559a096b680806f4d657b3f0f240561"
+ integrity sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==
+
p-is-promise@^2.0.0:
version "2.1.0"
resolved "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e"
@@ -7574,11 +7862,6 @@ p-map@^2.0.0:
resolved "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175"
integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==
-p-reduce@^1.0.0:
- version "1.0.0"
- resolved "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa"
- integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=
-
p-retry@^3.0.1:
version "3.0.1"
resolved "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz#316b4c8893e2c8dc1cfa891f406c4b422bebf328"
@@ -7641,10 +7924,10 @@ parse-passwd@^1.0.0:
resolved "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
-parse5@4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608"
- integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==
+parse5@5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2"
+ integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==
parseurl@~1.3.2, parseurl@~1.3.3:
version "1.3.3"
@@ -7691,6 +7974,11 @@ path-key@^2.0.0, path-key@^2.0.1:
resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=
+path-key@^3.0.0, path-key@^3.1.0:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
+ integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
+
path-parse@^1.0.6:
version "1.0.6"
resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
@@ -7701,13 +7989,6 @@ path-to-regexp@0.1.7:
resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=
-path-type@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f"
- integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==
- dependencies:
- pify "^3.0.0"
-
pbkdf2@^3.0.3:
version "3.0.17"
resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz#976c206530617b14ebb32114239f7b09336e93a6"
@@ -7754,11 +8035,6 @@ pify@^2.0.0:
resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
-pify@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
- integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
-
pify@^4.0.1:
version "4.0.1"
resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"
@@ -7790,7 +8066,7 @@ pkg-dir@^3.0.0:
dependencies:
find-up "^3.0.0"
-pkg-dir@^4.1.0:
+pkg-dir@^4.1.0, pkg-dir@^4.2.0:
version "4.2.0"
resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3"
integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==
@@ -8233,7 +8509,7 @@ pretty-format@^22.4.3:
ansi-regex "^3.0.0"
ansi-styles "^3.2.0"
-pretty-format@^24.0.0, pretty-format@^24.3.0, pretty-format@^24.9.0:
+pretty-format@^24.9.0:
version "24.9.0"
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9"
integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==
@@ -8243,6 +8519,16 @@ pretty-format@^24.0.0, pretty-format@^24.3.0, pretty-format@^24.9.0:
ansi-styles "^3.2.0"
react-is "^16.8.4"
+pretty-format@^25.1.0, pretty-format@^25.2.3:
+ version "25.2.3"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.2.3.tgz#ba6e9603a0d80fa2e470b1fed55de1f9bfd81421"
+ integrity sha512-IP4+5UOAVGoyqC/DiomOeHBUKN6q00gfyT2qpAsRH64tgOKB2yF7FHJXC18OCiU0/YFierACup/zdCOWw0F/0w==
+ dependencies:
+ "@jest/types" "^25.2.3"
+ ansi-regex "^5.0.0"
+ ansi-styles "^4.0.0"
+ react-is "^16.12.0"
+
private@^0.1.8:
version "0.1.8"
resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
@@ -8302,7 +8588,7 @@ pseudomap@^1.0.2:
resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM=
-psl@^1.1.24, psl@^1.1.28:
+psl@^1.1.28:
version "1.1.32"
resolved "https://registry.npmjs.org/psl/-/psl-1.1.32.tgz#3f132717cf2f9c169724b2b6caf373cf694198db"
integrity sha512-MHACAkHpihU/REGGPLj4sEfc/XKW2bheigvHO1dUqjaKigMp1C8+WLQYRGgeKFMsw5PMfegZcaN8IDXK/cD0+g==
@@ -8349,7 +8635,7 @@ punycode@1.3.2:
resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d"
integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=
-punycode@^1.2.4, punycode@^1.4.1:
+punycode@^1.2.4:
version "1.4.1"
resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
@@ -8485,6 +8771,11 @@ react-hot-loader@^4.12.18:
shallowequal "^1.1.0"
source-map "^0.7.3"
+react-is@^16.12.0:
+ version "16.13.1"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
+ integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
+
react-is@^16.7.0, react-is@^16.8.1:
version "16.12.0"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c"
@@ -8509,23 +8800,6 @@ react@^16.12.0:
object-assign "^4.1.1"
prop-types "^15.6.2"
-read-pkg-up@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978"
- integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==
- dependencies:
- find-up "^3.0.0"
- read-pkg "^3.0.0"
-
-read-pkg@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
- integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=
- dependencies:
- load-json-file "^4.0.0"
- normalize-package-data "^2.3.2"
- path-type "^3.0.0"
-
"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.3, readable-stream@~2.3.6:
version "2.3.6"
resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
@@ -8564,12 +8838,10 @@ readdirp@~3.3.0:
dependencies:
picomatch "^2.0.7"
-realpath-native@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz#2003294fea23fb0672f2476ebe22fcf498a2d65c"
- integrity sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==
- dependencies:
- util.promisify "^1.0.0"
+realpath-native@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-2.0.0.tgz#7377ac429b6e1fd599dc38d08ed942d0d7beb866"
+ integrity sha512-v1SEYUOXXdbBZK8ZuNgO4TBjamPsiSgcFr0aP+tEKpQZK8vooEUqV6nm6Cv502mX4NF2EfsnVqtNAHG+/6Ur1Q==
reaptcha@^1.7.2:
version "1.7.2"
@@ -8683,25 +8955,26 @@ repeat-string@^1.6.1:
resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc=
-request-promise-core@1.1.2:
- version "1.1.2"
- resolved "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz#339f6aababcafdb31c799ff158700336301d3346"
- integrity sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==
+request-promise-core@1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9"
+ integrity sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==
dependencies:
- lodash "^4.17.11"
+ lodash "^4.17.15"
-request-promise-native@^1.0.5:
- version "1.0.7"
- resolved "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz#a49868a624bdea5069f1251d0a836e0d89aa2c59"
- integrity sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==
+request-promise-native@^1.0.7:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.8.tgz#a455b960b826e44e2bf8999af64dff2bfe58cb36"
+ integrity sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==
dependencies:
- request-promise-core "1.1.2"
+ request-promise-core "1.1.3"
stealthy-require "^1.1.1"
tough-cookie "^2.3.3"
-request@^2.87.0:
- version "2.88.0"
- resolved "https://registry.npmjs.org/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef"
+request@^2.88.0:
+ version "2.88.2"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
+ integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
dependencies:
aws-sign2 "~0.7.0"
aws4 "^1.8.0"
@@ -8710,7 +8983,7 @@ request@^2.87.0:
extend "~3.0.2"
forever-agent "~0.6.1"
form-data "~2.3.2"
- har-validator "~5.1.0"
+ har-validator "~5.1.3"
http-signature "~1.2.0"
is-typedarray "~1.0.0"
isstream "~0.1.2"
@@ -8720,7 +8993,7 @@ request@^2.87.0:
performance-now "^2.1.0"
qs "~6.5.2"
safe-buffer "^5.1.2"
- tough-cookie "~2.4.3"
+ tough-cookie "~2.5.0"
tunnel-agent "^0.6.0"
uuid "^3.3.2"
@@ -8755,6 +9028,13 @@ resolve-cwd@^2.0.0:
dependencies:
resolve-from "^3.0.0"
+resolve-cwd@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
+ integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==
+ dependencies:
+ resolve-from "^5.0.0"
+
resolve-dir@^1.0.0, resolve-dir@^1.0.1:
version "1.0.1"
resolved "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43"
@@ -8772,6 +9052,11 @@ resolve-from@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
+resolve-from@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69"
+ integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
+
resolve-url@^0.2.1:
version "0.2.1"
resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
@@ -8782,7 +9067,7 @@ resolve@1.1.7:
resolved "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
-resolve@1.x, resolve@^1.10.0:
+resolve@1.x:
version "1.10.0"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.0.tgz#3bdaaeaf45cc07f375656dfd2e54ed0810b101ba"
integrity sha512-3sUr9aq5OfSg2S9pNtPA9hL1FVEAjvfOC4leW0SNf/mpnaakz2a9femSd6LqAww2RaFctwyf1lCqnTHuF1rxDg==
@@ -8796,6 +9081,13 @@ resolve@^1.1.5:
dependencies:
path-parse "^1.0.6"
+resolve@^1.15.1:
+ version "1.15.1"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8"
+ integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==
+ dependencies:
+ path-parse "^1.0.6"
+
resolve@^1.3.2:
version "1.11.0"
resolved "https://registry.npmjs.org/resolve/-/resolve-1.11.0.tgz#4014870ba296176b86343d50b60f3b50609ce232"
@@ -8859,6 +9151,13 @@ rimraf@^2.5.4, rimraf@^2.6.1:
dependencies:
glob "^7.1.3"
+rimraf@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
+ integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
+ dependencies:
+ glob "^7.1.3"
+
ripemd160@^2.0.0, ripemd160@^2.0.1:
version "2.0.2"
resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c"
@@ -8958,6 +9257,13 @@ sax@^1.2.4, sax@~1.2.4:
resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
+saxes@^3.1.9:
+ version "3.1.11"
+ resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.11.tgz#d59d1fd332ec92ad98a2e0b2ee644702384b1c5b"
+ integrity sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==
+ dependencies:
+ xmlchars "^2.1.1"
+
scheduler@^0.17.0:
version "0.17.0"
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz#7c9c673e4ec781fac853927916d1c426b6f3ddfe"
@@ -9036,11 +9342,6 @@ selfsigned@^1.10.7:
dependencies:
node-forge "0.9.0"
-"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0:
- version "5.7.0"
- resolved "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b"
- integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==
-
semver@7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e"
@@ -9051,6 +9352,11 @@ semver@^5.3.0, semver@^5.5.1, semver@^5.6.0:
resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
+semver@^5.4.1, semver@^5.5.0:
+ version "5.7.0"
+ resolved "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b"
+ integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==
+
semver@^5.5:
version "5.6.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004"
@@ -9061,7 +9367,7 @@ semver@^6.0.0:
resolved "https://registry.npmjs.org/semver/-/semver-6.1.1.tgz#53f53da9b30b2103cd4f15eab3a18ecbcb210c9b"
integrity sha512-rWYq2e5iYW+fFe/oPPtYJxYgjBm8sC4rmoGdUOgBB7VnwKt6HrL793l2voH1UlsyYZpJ4g0wfjnTEO1s1NP2eQ==
-semver@^6.1.2, semver@^6.2.0, semver@^6.3.0:
+semver@^6.1.2, semver@^6.3.0:
version "6.3.0"
resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==
@@ -9180,11 +9486,23 @@ shebang-command@^1.2.0:
dependencies:
shebang-regex "^1.0.0"
+shebang-command@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
+ integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
+ dependencies:
+ shebang-regex "^3.0.0"
+
shebang-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=
+shebang-regex@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
+ integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
+
shellwords@^0.1.1:
version "0.1.1"
resolved "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b"
@@ -9224,6 +9542,11 @@ slash@^2.0.0:
resolved "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
+slash@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
+ integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
+
slice-ansi@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636"
@@ -9364,32 +9687,6 @@ sparklines@^1.2.0:
resolved "https://registry.yarnpkg.com/sparklines/-/sparklines-1.2.0.tgz#bbbf2dede9bc337749e430baf67c2b37f88f6fa0"
integrity sha512-6OFlZzdFXyfFGJ8R5wrc9GdjoeQpjFuwkMKF1yVehLATHVrf4dSyZ4veGOFQ0mQ3xdJ0bCQSbd0idsm1gd2qWg==
-spdx-correct@^3.0.0:
- version "3.1.0"
- resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4"
- integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==
- dependencies:
- spdx-expression-parse "^3.0.0"
- spdx-license-ids "^3.0.0"
-
-spdx-exceptions@^2.1.0:
- version "2.2.0"
- resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977"
- integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==
-
-spdx-expression-parse@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0"
- integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==
- dependencies:
- spdx-exceptions "^2.1.0"
- spdx-license-ids "^3.0.0"
-
-spdx-license-ids@^3.0.0:
- version "3.0.4"
- resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1"
- integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==
-
spdy-transport@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31"
@@ -9564,13 +9861,13 @@ strict-uri-encode@^1.0.0:
resolved "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=
-string-length@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed"
- integrity sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=
+string-length@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/string-length/-/string-length-3.1.0.tgz#107ef8c23456e187a8abd4a61162ff4ac6e25837"
+ integrity sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==
dependencies:
astral-regex "^1.0.0"
- strip-ansi "^4.0.0"
+ strip-ansi "^5.2.0"
string-width@^1.0.1:
version "1.0.2"
@@ -9607,6 +9904,15 @@ string-width@^4.1.0:
is-fullwidth-code-point "^3.0.0"
strip-ansi "^5.2.0"
+string-width@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5"
+ integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==
+ dependencies:
+ emoji-regex "^8.0.0"
+ is-fullwidth-code-point "^3.0.0"
+ strip-ansi "^6.0.0"
+
string.prototype.trimleft@^2.0.0:
version "2.1.0"
resolved "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
@@ -9658,15 +9964,27 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0:
dependencies:
ansi-regex "^4.1.0"
-strip-bom@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
- integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
+strip-ansi@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532"
+ integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==
+ dependencies:
+ ansi-regex "^5.0.0"
+
+strip-bom@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878"
+ integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==
strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
+strip-final-newline@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
+ integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
+
strip-indent@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001"
@@ -9742,6 +10060,21 @@ supports-color@^5.3.0, supports-color@^5.4.0:
dependencies:
has-flag "^3.0.0"
+supports-color@^7.0.0, supports-color@^7.1.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1"
+ integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==
+ dependencies:
+ has-flag "^4.0.0"
+
+supports-hyperlinks@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47"
+ integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==
+ dependencies:
+ has-flag "^4.0.0"
+ supports-color "^7.0.0"
+
svg-to-pdfkit@^0.1.7:
version "0.1.7"
resolved "https://registry.yarnpkg.com/svg-to-pdfkit/-/svg-to-pdfkit-0.1.7.tgz#7db6d47e47b3888dce18060751a8de2417f85775"
@@ -9816,6 +10149,14 @@ tempusdominus-bootstrap-4@^5.1.2:
moment-timezone "^0.5.11"
popper.js "^1.14.3"
+terminal-link@^2.0.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994"
+ integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==
+ dependencies:
+ ansi-escapes "^4.2.1"
+ supports-hyperlinks "^2.0.0"
+
terser-webpack-plugin@^1.4.1:
version "1.4.1"
resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz#61b18e40eaee5be97e771cdbb10ed1280888c2b4"
@@ -9840,15 +10181,14 @@ terser@^4.1.2:
source-map "~0.6.1"
source-map-support "~0.5.12"
-test-exclude@^5.2.3:
- version "5.2.3"
- resolved "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0"
- integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==
+test-exclude@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e"
+ integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==
dependencies:
- glob "^7.1.3"
+ "@istanbuljs/schema" "^0.1.2"
+ glob "^7.1.4"
minimatch "^3.0.4"
- read-pkg-up "^4.0.0"
- require-main-filename "^2.0.0"
text-table@^0.2.0:
version "0.2.0"
@@ -9860,10 +10200,10 @@ three@^0.112.1:
resolved "https://registry.yarnpkg.com/three/-/three-0.112.1.tgz#f8d8f4d0f8e5f753dac6260491b8209457fdc131"
integrity sha512-8I0O74hiYtKl3LgDNcPJbBGOlpekbcJ6fJnImmW3mFdeUFJ2H9Y3/UuUSW2sBdjrIlCM0gvOkaTEFlofO900TQ==
-throat@^4.0.0:
- version "4.1.0"
- resolved "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a"
- integrity sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=
+throat@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b"
+ integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==
through2@^2.0.0, through2@~2.0.3:
version "2.0.5"
@@ -9965,7 +10305,7 @@ toidentifier@1.0.0:
resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553"
integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==
-tough-cookie@^2.3.3, tough-cookie@^2.3.4:
+tough-cookie@^2.3.3, tough-cookie@~2.5.0:
version "2.5.0"
resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
@@ -9973,13 +10313,14 @@ tough-cookie@^2.3.3, tough-cookie@^2.3.4:
psl "^1.1.28"
punycode "^2.1.1"
-tough-cookie@~2.4.3:
- version "2.4.3"
- resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781"
- integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==
+tough-cookie@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2"
+ integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==
dependencies:
- psl "^1.1.24"
- punycode "^1.4.1"
+ ip-regex "^2.1.0"
+ psl "^1.1.28"
+ punycode "^2.1.1"
tr46@^1.0.1:
version "1.0.1"
@@ -10008,10 +10349,10 @@ ts-jest@^23.10.5:
semver "^5.5"
yargs-parser "10.x"
-ts-jest@^24.3.0:
- version "24.3.0"
- resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-24.3.0.tgz#b97814e3eab359ea840a1ac112deae68aa440869"
- integrity sha512-Hb94C/+QRIgjVZlJyiWwouYUF+siNJHJHknyspaOcZ+OQAIdFG/UrdQVXw/0B8Z3No34xkUXZJpOTy9alOWdVQ==
+ts-jest@^25.2.1:
+ version "25.2.1"
+ resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-25.2.1.tgz#49bf05da26a8b7fbfbc36b4ae2fcdc2fef35c85d"
+ integrity sha512-TnntkEEjuXq/Gxpw7xToarmHbAafgCaAzOpnajnFC6jI7oo1trMzAHA04eWpc3MhV6+yvhE8uUBAmN+teRJh0A==
dependencies:
bs-logger "0.x"
buffer-from "1.x"
@@ -10022,7 +10363,7 @@ ts-jest@^24.3.0:
mkdirp "0.x"
resolve "1.x"
semver "^5.5"
- yargs-parser "10.x"
+ yargs-parser "^16.1.0"
ts-loader@^6.2.1:
version "6.2.1"
@@ -10071,6 +10412,11 @@ type-check@~0.3.2:
dependencies:
prelude-ls "~1.1.2"
+type-detect@4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
+ integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
+
type-fest@^0.5.2:
version "0.5.2"
resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.5.2.tgz#d6ef42a0356c6cd45f49485c3b6281fc148e48a2"
@@ -10099,6 +10445,13 @@ type@^2.0.0:
resolved "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz#5f16ff6ef2eb44f260494dae271033b29c09a9c3"
integrity sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==
+typedarray-to-buffer@^3.1.5:
+ version "3.1.5"
+ resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
+ integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
+ dependencies:
+ is-typedarray "^1.0.0"
+
typedarray@^0.0.6:
version "0.0.6"
resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
@@ -10109,14 +10462,6 @@ typescript@^3.8.3:
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.8.3.tgz#409eb8544ea0335711205869ec458ab109ee1061"
integrity sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==
-uglify-js@^3.1.4:
- version "3.6.0"
- resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz#704681345c53a8b2079fb6cec294b05ead242ff5"
- integrity sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==
- dependencies:
- commander "~2.20.0"
- source-map "~0.6.1"
-
unicode-canonical-property-names-ecmascript@^1.0.4:
version "1.0.4"
resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818"
@@ -10281,7 +10626,7 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1:
resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
-util.promisify@^1.0.0, util.promisify@~1.0.0:
+util.promisify@~1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030"
dependencies:
@@ -10322,13 +10667,14 @@ v8-compile-cache@^2.0.3:
resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e"
integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==
-validate-npm-package-license@^3.0.1:
- version "3.0.4"
- resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
- integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==
+v8-to-istanbul@^4.0.1:
+ version "4.1.3"
+ resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-4.1.3.tgz#22fe35709a64955f49a08a7c7c959f6520ad6f20"
+ integrity sha512-sAjOC+Kki6aJVbUOXJbcR0MnbfjvBzwKZazEJymA2IX49uoOdEdk+4fBq5cXgYgiyKtAyrrJNtBZdOeDIF+Fng==
dependencies:
- spdx-correct "^3.0.0"
- spdx-expression-parse "^3.0.0"
+ "@types/istanbul-lib-coverage" "^2.0.1"
+ convert-source-map "^1.6.0"
+ source-map "^0.7.3"
vary@~1.1.2:
version "1.1.2"
@@ -10450,10 +10796,14 @@ w3c-hr-time@^1.0.1:
dependencies:
browser-process-hrtime "^0.1.2"
-wait-for-expect@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/wait-for-expect/-/wait-for-expect-3.0.1.tgz#ec204a76b0038f17711e575720aaf28505ac7185"
- integrity sha512-3Ha7lu+zshEG/CeHdcpmQsZnnZpPj/UsG3DuKO8FskjuDbkx3jE3845H+CuwZjA2YWYDfKMU2KhnCaXMLd3wVw==
+w3c-xmlserializer@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz#30485ca7d70a6fd052420a3d12fd90e6339ce794"
+ integrity sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==
+ dependencies:
+ domexception "^1.0.1"
+ webidl-conversions "^4.0.2"
+ xml-name-validator "^3.0.0"
walker@^1.0.7, walker@~1.0.5:
version "1.0.7"
@@ -10627,27 +10977,18 @@ websocket-extensions@>=0.1.1:
resolved "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29"
integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==
-whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3:
+whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.5:
version "1.0.5"
resolved "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"
integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==
dependencies:
iconv-lite "0.4.24"
-whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0:
+whatwg-mimetype@^2.2.0, whatwg-mimetype@^2.3.0:
version "2.3.0"
resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf"
integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==
-whatwg-url@^6.4.1:
- version "6.5.0"
- resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8"
- integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==
- dependencies:
- lodash.sortby "^4.7.0"
- tr46 "^1.0.1"
- webidl-conversions "^4.0.2"
-
whatwg-url@^7.0.0:
version "7.0.0"
resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz#fde926fa54a599f3adf82dff25a9f7be02dc6edd"
@@ -10666,13 +11007,20 @@ which-module@^2.0.0:
resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
-which@^1.2.14, which@^1.2.9, which@^1.3.0, which@^1.3.1:
+which@^1.2.14, which@^1.2.9, which@^1.3.1:
version "1.3.1"
resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
dependencies:
isexe "^2.0.0"
+which@^2.0.1, which@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
+ integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
+ dependencies:
+ isexe "^2.0.0"
+
wide-align@^1.1.0:
version "1.1.3"
resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
@@ -10685,11 +11033,6 @@ word-wrap@~1.2.3:
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
-wordwrap@~0.0.2:
- version "0.0.3"
- resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
- integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc=
-
wordwrap@~1.0.0:
version "1.0.0"
resolved "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
@@ -10719,19 +11062,29 @@ wrap-ansi@^5.1.0:
string-width "^3.0.0"
strip-ansi "^5.0.0"
+wrap-ansi@^6.2.0:
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53"
+ integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
+ dependencies:
+ ansi-styles "^4.0.0"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+
wrappy@1:
version "1.0.2"
resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
-write-file-atomic@2.4.1:
- version "2.4.1"
- resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz#d0b05463c188ae804396fd5ab2a370062af87529"
- integrity sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==
+write-file-atomic@^3.0.0:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
+ integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==
dependencies:
- graceful-fs "^4.1.11"
imurmurhash "^0.1.4"
+ is-typedarray "^1.0.0"
signal-exit "^3.0.2"
+ typedarray-to-buffer "^3.1.5"
write@1.0.3:
version "1.0.3"
@@ -10739,13 +11092,6 @@ write@1.0.3:
dependencies:
mkdirp "^0.5.1"
-ws@^5.2.0:
- version "5.2.2"
- resolved "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f"
- integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==
- dependencies:
- async-limiter "~1.0.0"
-
ws@^6.2.1:
version "6.2.1"
resolved "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb"
@@ -10753,11 +11099,21 @@ ws@^6.2.1:
dependencies:
async-limiter "~1.0.0"
+ws@^7.0.0:
+ version "7.2.3"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-7.2.3.tgz#a5411e1fb04d5ed0efee76d26d5c46d830c39b46"
+ integrity sha512-HTDl9G9hbkNDk98naoR/cHDws7+EyYMOdL1BmjsZXRUjf7d+MficC4B7HLUPlSiho0vg+CWKrGIt/VJBd1xunQ==
+
xml-name-validator@^3.0.0:
version "3.0.0"
resolved "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a"
integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==
+xmlchars@^2.1.1:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb"
+ integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==
+
xtend@^4.0.0, xtend@~4.0.1:
version "4.0.2"
resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
@@ -10807,7 +11163,7 @@ yargs-parser@^11.1.1:
camelcase "^5.0.0"
decamelize "^1.2.0"
-yargs-parser@^13.1.0, yargs-parser@^13.1.1:
+yargs-parser@^13.1.0:
version "13.1.1"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0"
integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==
@@ -10815,6 +11171,22 @@ yargs-parser@^13.1.0, yargs-parser@^13.1.1:
camelcase "^5.0.0"
decamelize "^1.2.0"
+yargs-parser@^16.1.0:
+ version "16.1.0"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-16.1.0.tgz#73747d53ae187e7b8dbe333f95714c76ea00ecf1"
+ integrity sha512-H/V41UNZQPkUMIT5h5hiwg4QKIY1RPvoBV4XcjUbRM8Bk2oKqqyZ0DIEbTFZB0XjbtSPG8SAa/0DxCQmiRgzKg==
+ dependencies:
+ camelcase "^5.0.0"
+ decamelize "^1.2.0"
+
+yargs-parser@^18.1.1:
+ version "18.1.2"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.2.tgz#2f482bea2136dbde0861683abea7756d30b504f1"
+ integrity sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==
+ dependencies:
+ camelcase "^5.0.0"
+ decamelize "^1.2.0"
+
yargs@12.0.5:
version "12.0.5"
resolved "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13"
@@ -10850,21 +11222,22 @@ yargs@13.2.4:
y18n "^4.0.0"
yargs-parser "^13.1.0"
-yargs@^13.3.0:
- version "13.3.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.0.tgz#4c657a55e07e5f2cf947f8a366567c04a0dedc83"
- integrity sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==
+yargs@^15.3.1:
+ version "15.3.1"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz#9505b472763963e54afe60148ad27a330818e98b"
+ integrity sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==
dependencies:
- cliui "^5.0.0"
- find-up "^3.0.0"
+ cliui "^6.0.0"
+ decamelize "^1.2.0"
+ find-up "^4.1.0"
get-caller-file "^2.0.1"
require-directory "^2.1.1"
require-main-filename "^2.0.0"
set-blocking "^2.0.0"
- string-width "^3.0.0"
+ string-width "^4.2.0"
which-module "^2.0.0"
y18n "^4.0.0"
- yargs-parser "^13.1.1"
+ yargs-parser "^18.1.1"
zrender@4.2.0:
version "4.2.0"