mirror of
https://github.com/honojs/hono.git
synced 2024-11-21 18:18:57 +01:00
chore(benchmarks/jsx): Update benchmark (#1768)
* chore(benchmarks/jsx): Update benchmark * chore: Delete files that have been added by mistake
This commit is contained in:
parent
99f5e132bc
commit
ae0b01e544
@ -1,72 +0,0 @@
|
||||
import Benchmark from 'benchmark'
|
||||
|
||||
import Nano, { Fragment as NanoFragment } from 'nano-jsx'
|
||||
import * as Preact from 'preact'
|
||||
import { render as renderByPreact } from 'preact-render-to-string'
|
||||
import React from 'react'
|
||||
import { renderToString as renderByReact } from 'react-dom/server'
|
||||
|
||||
import * as HonoJSX from '../../src/middleware/jsx'
|
||||
|
||||
const buildPage = ({ jsx, Fragment }: { jsx: any; Fragment: any }) => {
|
||||
const Content = () => (
|
||||
<>
|
||||
<p id='a' class='class-name'>
|
||||
1<br />a
|
||||
</p>
|
||||
<p id='b' class='class-name'>
|
||||
2<br />b
|
||||
</p>
|
||||
<div dangerouslySetInnerHTML={{ __html: '<p id="c" class="class-name">3<br/>c</p>' }} />
|
||||
{null}
|
||||
{undefined}
|
||||
</>
|
||||
)
|
||||
|
||||
const Form = () => (
|
||||
<form>
|
||||
<input type='text' value='1234567890 < 1234567891' readonly tabindex={1} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={2} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={3} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={4} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={5} />
|
||||
</form>
|
||||
)
|
||||
|
||||
return () => (
|
||||
<html>
|
||||
<body>
|
||||
<Content />
|
||||
<Form />
|
||||
</body>
|
||||
</html>
|
||||
)
|
||||
}
|
||||
|
||||
const PageByHonoJSX = buildPage(HonoJSX)
|
||||
const PageByReact = buildPage({ jsx: React.createElement, Fragment: React.Fragment })
|
||||
const PageByNano = buildPage({ jsx: Nano.h, Fragment: NanoFragment })
|
||||
const PageByPreact = buildPage({ jsx: Preact.h, Fragment: Preact.Fragment })
|
||||
|
||||
const suite = new Benchmark.Suite()
|
||||
|
||||
suite
|
||||
.add('Hono', () => {
|
||||
PageByHonoJSX().toString()
|
||||
})
|
||||
.add('React', () => {
|
||||
renderByReact(PageByReact())
|
||||
})
|
||||
.add('Preact', () => {
|
||||
renderByPreact(PageByPreact())
|
||||
})
|
||||
.add('Nano', () => {
|
||||
Nano.renderSSR(PageByNano)
|
||||
})
|
||||
.on('cycle', (ev: any) => {
|
||||
console.log(String(ev.target))
|
||||
})
|
||||
.on('complete', (ev: any) => {
|
||||
console.log(`Fastest is ${ev.currentTarget.filter('fastest').map('name')}`)
|
||||
})
|
||||
.run({ async: true })
|
@ -3,20 +3,27 @@
|
||||
"version": "1.0.0",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"start": "NODE_ENV=production ts-node index.tsx"
|
||||
"bench:node": "esbuild --bundle src/benchmark.ts | node",
|
||||
"bench:bun": "bun run src/benchmark.ts",
|
||||
"bench:react-jsx:node": "esbuild --bundle src/react-jsx/benchmark.ts | node",
|
||||
"compare-bundle-size": "esbuild --minify --minify-syntax --tree-shaking=true --bundle src/{hono,react,preact,nano}.ts --outdir=dist"
|
||||
},
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"esbuild": "^0.19.8",
|
||||
"node-html-parser": "^6.1.11"
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/benchmark": "^2.1.1",
|
||||
"@types/react": "^18.0.15",
|
||||
"@types/react-dom": "^18.0.6",
|
||||
"@types/benchmark": "^2.1.5",
|
||||
"@types/react": "^18.2.40",
|
||||
"@types/react-dom": "^18.2.17",
|
||||
"benchmark": "^2.1.4",
|
||||
"nano-jsx": "^0.0.32",
|
||||
"preact": "^10.10.0",
|
||||
"preact-render-to-string": "^5.2.1",
|
||||
"hono": "^3.10.4",
|
||||
"nano-jsx": "^0.1.0",
|
||||
"preact": "^10.19.2",
|
||||
"preact-render-to-string": "^6.3.1",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"ts-node": "^10.9.1",
|
||||
"typescript": "^4.7.4"
|
||||
"typescript": "^5.3.2"
|
||||
}
|
||||
}
|
||||
|
38
benchmarks/jsx/src/benchmark.ts
Normal file
38
benchmarks/jsx/src/benchmark.ts
Normal file
@ -0,0 +1,38 @@
|
||||
import { Suite } from 'benchmark'
|
||||
import { parse } from 'node-html-parser'
|
||||
|
||||
import { render as renderHono } from './hono'
|
||||
import { render as renderNano } from './nano'
|
||||
import { render as renderPreact } from './preact'
|
||||
import { render as renderReact } from './react'
|
||||
|
||||
const suite = new Suite()
|
||||
|
||||
;[renderHono, renderReact, renderPreact, renderNano].forEach((render) => {
|
||||
const html = render()
|
||||
const doc = parse(html)
|
||||
if (doc.querySelector('p#c').textContent !== '3\nc') {
|
||||
throw new Error('Invalid output')
|
||||
}
|
||||
})
|
||||
|
||||
suite
|
||||
.add('Hono', () => {
|
||||
renderHono()
|
||||
})
|
||||
.add('React', () => {
|
||||
renderReact()
|
||||
})
|
||||
.add('Preact', () => {
|
||||
renderPreact()
|
||||
})
|
||||
.add('Nano', () => {
|
||||
renderNano()
|
||||
})
|
||||
.on('cycle', (ev) => {
|
||||
console.log(String(ev.target))
|
||||
})
|
||||
.on('complete', (ev) => {
|
||||
console.log(`Fastest is ${ev.currentTarget.filter('fastest').map('name')}`)
|
||||
})
|
||||
.run({ async: true })
|
4
benchmarks/jsx/src/hono.ts
Normal file
4
benchmarks/jsx/src/hono.ts
Normal file
@ -0,0 +1,4 @@
|
||||
import { jsx, Fragment} from '../../../src/jsx'
|
||||
import { buildPage } from './page'
|
||||
|
||||
export const render = () => buildPage({ jsx, Fragment })().toString()
|
4
benchmarks/jsx/src/nano.ts
Normal file
4
benchmarks/jsx/src/nano.ts
Normal file
@ -0,0 +1,4 @@
|
||||
import { h, Fragment, renderSSR } from 'nano-jsx'
|
||||
import { buildPage } from './page'
|
||||
|
||||
export const render = () => renderSSR(buildPage({ jsx: h, Fragment }))
|
37
benchmarks/jsx/src/page-react.tsx
Normal file
37
benchmarks/jsx/src/page-react.tsx
Normal file
@ -0,0 +1,37 @@
|
||||
/** @jsx jsx */
|
||||
/** @jsxFrag Fragment */
|
||||
|
||||
export const buildPage = ({ jsx, Fragment }: { jsx: any; Fragment: any }) => {
|
||||
const Content = () => (
|
||||
<>
|
||||
<p id='a' className='class-name'>
|
||||
1<br />a
|
||||
</p>
|
||||
<p id='b' className='class-name'>
|
||||
2<br />b
|
||||
</p>
|
||||
<div dangerouslySetInnerHTML={{ __html: '<p id="c" class="class-name">3<br/>c</p>' }} />
|
||||
{null}
|
||||
{undefined}
|
||||
</>
|
||||
)
|
||||
|
||||
const Form = () => (
|
||||
<form>
|
||||
<input type='text' value='1234567890 < 1234567891' readOnly tabIndex={1} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={true} tabIndex={2} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={true} tabIndex={3} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={false} tabIndex={4} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={false} tabIndex={5} />
|
||||
</form>
|
||||
)
|
||||
|
||||
return () => (
|
||||
<html>
|
||||
<body>
|
||||
<Content />
|
||||
<Form />
|
||||
</body>
|
||||
</html>
|
||||
)
|
||||
}
|
37
benchmarks/jsx/src/page.tsx
Normal file
37
benchmarks/jsx/src/page.tsx
Normal file
@ -0,0 +1,37 @@
|
||||
/** @jsx jsx */
|
||||
/** @jsxFrag Fragment */
|
||||
|
||||
export const buildPage = ({ jsx, Fragment }: { jsx: any; Fragment: any }) => {
|
||||
const Content = () => (
|
||||
<>
|
||||
<p id='a' class='class-name'>
|
||||
1<br />a
|
||||
</p>
|
||||
<p id='b' class='class-name'>
|
||||
2<br />b
|
||||
</p>
|
||||
<div dangerouslySetInnerHTML={{ __html: '<p id="c" class="class-name">3<br/>c</p>' }} />
|
||||
{null}
|
||||
{undefined}
|
||||
</>
|
||||
)
|
||||
|
||||
const Form = () => (
|
||||
<form>
|
||||
<input type='text' value='1234567890 < 1234567891' readonly tabindex={1} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={2} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={3} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={4} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={5} />
|
||||
</form>
|
||||
)
|
||||
|
||||
return () => (
|
||||
<html>
|
||||
<body>
|
||||
<Content />
|
||||
<Form />
|
||||
</body>
|
||||
</html>
|
||||
)
|
||||
}
|
5
benchmarks/jsx/src/preact.ts
Normal file
5
benchmarks/jsx/src/preact.ts
Normal file
@ -0,0 +1,5 @@
|
||||
import { h, Fragment} from 'preact'
|
||||
import { renderToString } from 'preact-render-to-string'
|
||||
import { buildPage } from './page'
|
||||
|
||||
export const render = () => renderToString(buildPage({ jsx: h, Fragment })() as any)
|
38
benchmarks/jsx/src/react-jsx/benchmark.ts
Normal file
38
benchmarks/jsx/src/react-jsx/benchmark.ts
Normal file
@ -0,0 +1,38 @@
|
||||
import { Suite } from 'benchmark'
|
||||
import { parse } from 'node-html-parser'
|
||||
|
||||
import { render as renderHono } from './hono'
|
||||
import { render as renderNano } from './nano'
|
||||
import { render as renderPreact } from './preact'
|
||||
import { render as renderReact } from './react'
|
||||
|
||||
const suite = new Suite()
|
||||
|
||||
;[renderHono, renderReact, renderPreact, renderNano].forEach((render) => {
|
||||
const html = render()
|
||||
const doc = parse(html)
|
||||
if (doc.querySelector('p#c').textContent !== '3\nc') {
|
||||
throw new Error('Invalid output')
|
||||
}
|
||||
})
|
||||
|
||||
suite
|
||||
.add('Hono', () => {
|
||||
renderHono()
|
||||
})
|
||||
.add('React', () => {
|
||||
renderReact()
|
||||
})
|
||||
.add('Preact', () => {
|
||||
renderPreact()
|
||||
})
|
||||
.add('Nano', () => {
|
||||
renderNano()
|
||||
})
|
||||
.on('cycle', (ev) => {
|
||||
console.log(String(ev.target))
|
||||
})
|
||||
.on('complete', (ev) => {
|
||||
console.log(`Fastest is ${ev.currentTarget.filter('fastest').map('name')}`)
|
||||
})
|
||||
.run({ async: true })
|
3
benchmarks/jsx/src/react-jsx/hono.ts
Normal file
3
benchmarks/jsx/src/react-jsx/hono.ts
Normal file
@ -0,0 +1,3 @@
|
||||
import { buildPage } from './page-hono'
|
||||
|
||||
export const render = () => buildPage()().toString()
|
4
benchmarks/jsx/src/react-jsx/nano.ts
Normal file
4
benchmarks/jsx/src/react-jsx/nano.ts
Normal file
@ -0,0 +1,4 @@
|
||||
import { renderSSR } from 'nano-jsx'
|
||||
import { buildPage } from './page-nano.tsx'
|
||||
|
||||
export const render = () => renderSSR(buildPage())
|
36
benchmarks/jsx/src/react-jsx/page-hono.tsx
Normal file
36
benchmarks/jsx/src/react-jsx/page-hono.tsx
Normal file
@ -0,0 +1,36 @@
|
||||
/** @jsxImportSource ../../../../src/jsx **/
|
||||
|
||||
export const buildPage = () => {
|
||||
const Content = () => (
|
||||
<>
|
||||
<p id='a' class='class-name'>
|
||||
1<br />a
|
||||
</p>
|
||||
<p id='b' class='class-name'>
|
||||
2<br />b
|
||||
</p>
|
||||
<div dangerouslySetInnerHTML={{ __html: '<p id="c" class="class-name">3<br/>c</p>' }} />
|
||||
{null}
|
||||
{undefined}
|
||||
</>
|
||||
)
|
||||
|
||||
const Form = () => (
|
||||
<form>
|
||||
<input type='text' value='1234567890 < 1234567891' readonly tabindex={1} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={2} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={3} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={4} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={5} />
|
||||
</form>
|
||||
)
|
||||
|
||||
return () => (
|
||||
<html>
|
||||
<body>
|
||||
<Content />
|
||||
<Form />
|
||||
</body>
|
||||
</html>
|
||||
)
|
||||
}
|
36
benchmarks/jsx/src/react-jsx/page-nano.tsx
Normal file
36
benchmarks/jsx/src/react-jsx/page-nano.tsx
Normal file
@ -0,0 +1,36 @@
|
||||
/** @jsxImportSource nano-jsx/lib **/
|
||||
|
||||
export const buildPage = () => {
|
||||
const Content = () => (
|
||||
<>
|
||||
<p id='a' class='class-name'>
|
||||
1<br />a
|
||||
</p>
|
||||
<p id='b' class='class-name'>
|
||||
2<br />b
|
||||
</p>
|
||||
<div dangerouslySetInnerHTML={{ __html: '<p id="c" class="class-name">3<br/>c</p>' }} />
|
||||
{null}
|
||||
{undefined}
|
||||
</>
|
||||
)
|
||||
|
||||
const Form = () => (
|
||||
<form>
|
||||
<input type='text' value='1234567890 < 1234567891' readonly tabindex={1} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={2} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={3} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={4} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={5} />
|
||||
</form>
|
||||
)
|
||||
|
||||
return () => (
|
||||
<html>
|
||||
<body>
|
||||
<Content />
|
||||
<Form />
|
||||
</body>
|
||||
</html>
|
||||
)
|
||||
}
|
36
benchmarks/jsx/src/react-jsx/page-preact.tsx
Normal file
36
benchmarks/jsx/src/react-jsx/page-preact.tsx
Normal file
@ -0,0 +1,36 @@
|
||||
/** @jsxImportSource preact **/
|
||||
|
||||
export const buildPage = () => {
|
||||
const Content = () => (
|
||||
<>
|
||||
<p id='a' class='class-name'>
|
||||
1<br />a
|
||||
</p>
|
||||
<p id='b' class='class-name'>
|
||||
2<br />b
|
||||
</p>
|
||||
<div dangerouslySetInnerHTML={{ __html: '<p id="c" class="class-name">3<br/>c</p>' }} />
|
||||
{null}
|
||||
{undefined}
|
||||
</>
|
||||
)
|
||||
|
||||
const Form = () => (
|
||||
<form>
|
||||
<input type='text' value='1234567890 < 1234567891' readonly tabindex={1} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={2} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={true} tabindex={3} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={4} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' checked={false} tabindex={5} />
|
||||
</form>
|
||||
)
|
||||
|
||||
return () => (
|
||||
<html>
|
||||
<body>
|
||||
<Content />
|
||||
<Form />
|
||||
</body>
|
||||
</html>
|
||||
)
|
||||
}
|
36
benchmarks/jsx/src/react-jsx/page-react.tsx
Normal file
36
benchmarks/jsx/src/react-jsx/page-react.tsx
Normal file
@ -0,0 +1,36 @@
|
||||
/** @jsxImportSource react **/
|
||||
|
||||
export const buildPage = () => {
|
||||
const Content = () => (
|
||||
<>
|
||||
<p id='a' className='class-name'>
|
||||
1<br />a
|
||||
</p>
|
||||
<p id='b' className='class-name'>
|
||||
2<br />b
|
||||
</p>
|
||||
<div dangerouslySetInnerHTML={{ __html: '<p id="c" class="class-name">3<br/>c</p>' }} />
|
||||
{null}
|
||||
{undefined}
|
||||
</>
|
||||
)
|
||||
|
||||
const Form = () => (
|
||||
<form>
|
||||
<input type='text' value='1234567890 < 1234567891' readOnly tabIndex={1} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={true} tabIndex={2} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={true} tabIndex={3} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={false} tabIndex={4} />
|
||||
<input type='checkbox' value='1234567890 < 1234567891' defaultChecked={false} tabIndex={5} />
|
||||
</form>
|
||||
)
|
||||
|
||||
return () => (
|
||||
<html>
|
||||
<body>
|
||||
<Content />
|
||||
<Form />
|
||||
</body>
|
||||
</html>
|
||||
)
|
||||
}
|
4
benchmarks/jsx/src/react-jsx/preact.ts
Normal file
4
benchmarks/jsx/src/react-jsx/preact.ts
Normal file
@ -0,0 +1,4 @@
|
||||
import { renderToString } from 'preact-render-to-string'
|
||||
import { buildPage } from './page-preact'
|
||||
|
||||
export const render = () => renderToString(buildPage()() as any)
|
4
benchmarks/jsx/src/react-jsx/react.ts
Normal file
4
benchmarks/jsx/src/react-jsx/react.ts
Normal file
@ -0,0 +1,4 @@
|
||||
import { renderToString } from 'react-dom/server'
|
||||
import { buildPage } from './page-react.tsx'
|
||||
|
||||
export const render = () => renderToString(buildPage()() as any)
|
5
benchmarks/jsx/src/react-jsx/tsconfig.json
Normal file
5
benchmarks/jsx/src/react-jsx/tsconfig.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"jsx": "react-jsx",
|
||||
}
|
||||
}
|
5
benchmarks/jsx/src/react.ts
Normal file
5
benchmarks/jsx/src/react.ts
Normal file
@ -0,0 +1,5 @@
|
||||
import { createElement, Fragment } from 'react'
|
||||
import { renderToString } from 'react-dom/server'
|
||||
import { buildPage } from './page-react'
|
||||
|
||||
export const render = () => renderToString(buildPage({ jsx: createElement, Fragment })() as any)
|
@ -1,3 +1,5 @@
|
||||
{
|
||||
"extends": "../../tsconfig.json",
|
||||
}
|
||||
"compilerOptions": {
|
||||
"jsx": "react",
|
||||
}
|
||||
}
|
@ -2,69 +2,134 @@
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@cspotcode/source-map-support@^0.8.0":
|
||||
version "0.8.1"
|
||||
resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1"
|
||||
integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==
|
||||
dependencies:
|
||||
"@jridgewell/trace-mapping" "0.3.9"
|
||||
"@esbuild/android-arm64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.19.8.tgz#fb7130103835b6d43ea499c3f30cfb2b2ed58456"
|
||||
integrity sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==
|
||||
|
||||
"@jridgewell/resolve-uri@^3.0.3":
|
||||
version "3.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz#2203b118c157721addfe69d47b70465463066d78"
|
||||
integrity sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
|
||||
"@esbuild/android-arm@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.19.8.tgz#b46e4d9e984e6d6db6c4224d72c86b7757e35bcb"
|
||||
integrity sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==
|
||||
|
||||
"@jridgewell/sourcemap-codec@^1.4.10":
|
||||
version "1.4.14"
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"
|
||||
integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
|
||||
"@esbuild/android-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.19.8.tgz#a13db9441b5a4f4e4fec4a6f8ffacfea07888db7"
|
||||
integrity sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==
|
||||
|
||||
"@jridgewell/trace-mapping@0.3.9":
|
||||
version "0.3.9"
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"
|
||||
integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
|
||||
dependencies:
|
||||
"@jridgewell/resolve-uri" "^3.0.3"
|
||||
"@jridgewell/sourcemap-codec" "^1.4.10"
|
||||
"@esbuild/darwin-arm64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.19.8.tgz#49f5718d36541f40dd62bfdf84da9c65168a0fc2"
|
||||
integrity sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==
|
||||
|
||||
"@tsconfig/node10@^1.0.7":
|
||||
version "1.0.9"
|
||||
resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2"
|
||||
integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==
|
||||
"@esbuild/darwin-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.19.8.tgz#75c5c88371eea4bfc1f9ecfd0e75104c74a481ac"
|
||||
integrity sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==
|
||||
|
||||
"@tsconfig/node12@^1.0.7":
|
||||
version "1.0.11"
|
||||
resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d"
|
||||
integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==
|
||||
"@esbuild/freebsd-arm64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.8.tgz#9d7259fea4fd2b5f7437b52b542816e89d7c8575"
|
||||
integrity sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==
|
||||
|
||||
"@tsconfig/node14@^1.0.0":
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1"
|
||||
integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==
|
||||
"@esbuild/freebsd-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.19.8.tgz#abac03e1c4c7c75ee8add6d76ec592f46dbb39e3"
|
||||
integrity sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==
|
||||
|
||||
"@tsconfig/node16@^1.0.2":
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e"
|
||||
integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==
|
||||
"@esbuild/linux-arm64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.19.8.tgz#c577932cf4feeaa43cb9cec27b89cbe0df7d9098"
|
||||
integrity sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==
|
||||
|
||||
"@types/benchmark@^2.1.1":
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/benchmark/-/benchmark-2.1.1.tgz#d763df29717d93aa333eb11f421ef383a5df5673"
|
||||
integrity sha512-XmdNOarpSSxnb3DE2rRFOFsEyoqXLUL+7H8nSGS25vs+JS0018bd+cW5Ma9vdlkPmoTHSQ6e8EUFMFMxeE4l+g==
|
||||
"@esbuild/linux-arm@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.19.8.tgz#d6014d8b98b5cbc96b95dad3d14d75bb364fdc0f"
|
||||
integrity sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==
|
||||
|
||||
"@esbuild/linux-ia32@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.19.8.tgz#2379a0554307d19ac4a6cdc15b08f0ea28e7a40d"
|
||||
integrity sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==
|
||||
|
||||
"@esbuild/linux-loong64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.19.8.tgz#e2a5bbffe15748b49356a6cd7b2d5bf60c5a7123"
|
||||
integrity sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==
|
||||
|
||||
"@esbuild/linux-mips64el@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.19.8.tgz#1359331e6f6214f26f4b08db9b9df661c57cfa24"
|
||||
integrity sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==
|
||||
|
||||
"@esbuild/linux-ppc64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.19.8.tgz#9ba436addc1646dc89dae48c62d3e951ffe70951"
|
||||
integrity sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==
|
||||
|
||||
"@esbuild/linux-riscv64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.19.8.tgz#fbcf0c3a0b20f40b5fc31c3b7695f0769f9de66b"
|
||||
integrity sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==
|
||||
|
||||
"@esbuild/linux-s390x@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.19.8.tgz#989e8a05f7792d139d5564ffa7ff898ac6f20a4a"
|
||||
integrity sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==
|
||||
|
||||
"@esbuild/linux-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.19.8.tgz#b187295393a59323397fe5ff51e769ec4e72212b"
|
||||
integrity sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==
|
||||
|
||||
"@esbuild/netbsd-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.19.8.tgz#c1ec0e24ea82313cb1c7bae176bd5acd5bde7137"
|
||||
integrity sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==
|
||||
|
||||
"@esbuild/openbsd-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.19.8.tgz#0c5b696ac66c6d70cf9ee17073a581a28af9e18d"
|
||||
integrity sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==
|
||||
|
||||
"@esbuild/sunos-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.19.8.tgz#2a697e1f77926ff09fcc457d8f29916d6cd48fb1"
|
||||
integrity sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==
|
||||
|
||||
"@esbuild/win32-arm64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.19.8.tgz#ec029e62a2fca8c071842ecb1bc5c2dd20b066f1"
|
||||
integrity sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==
|
||||
|
||||
"@esbuild/win32-ia32@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.19.8.tgz#cbb9a3146bde64dc15543e48afe418c7a3214851"
|
||||
integrity sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==
|
||||
|
||||
"@esbuild/win32-x64@0.19.8":
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.19.8.tgz#c8285183dbdb17008578dbacb6e22748709b4822"
|
||||
integrity sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==
|
||||
|
||||
"@types/benchmark@^2.1.5":
|
||||
version "2.1.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/benchmark/-/benchmark-2.1.5.tgz#940c1850c18fdfdaee3fd6ed29cd92ae0d445b45"
|
||||
integrity sha512-cKio2eFB3v7qmKcvIHLUMw/dIx/8bhWPuzpzRT4unCPRTD8VdA9Zb0afxpcxOqR4PixRS7yT42FqGS8BYL8g1w==
|
||||
|
||||
"@types/prop-types@*":
|
||||
version "15.7.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf"
|
||||
integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
|
||||
|
||||
"@types/react-dom@^18.0.6":
|
||||
version "18.0.6"
|
||||
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.0.6.tgz#36652900024842b74607a17786b6662dd1e103a1"
|
||||
integrity sha512-/5OFZgfIPSwy+YuIBP/FgJnQnsxhZhjjrnxudMddeblOouIodEQ75X14Rr4wGSG/bknL+Omy9iWlLo1u/9GzAA==
|
||||
"@types/react-dom@^18.2.17":
|
||||
version "18.2.17"
|
||||
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.2.17.tgz#375c55fab4ae671bd98448dcfa153268d01d6f64"
|
||||
integrity sha512-rvrT/M7Df5eykWFxn6MYt5Pem/Dbyc1N8Y0S9Mrkw2WFCRiqUgw9P7ul2NpwsXCSM1DVdENzdG9J5SreqfAIWg==
|
||||
dependencies:
|
||||
"@types/react" "*"
|
||||
|
||||
"@types/react@*", "@types/react@^18.0.15":
|
||||
"@types/react@*":
|
||||
version "18.0.15"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.15.tgz#d355644c26832dc27f3e6cbf0c4f4603fc4ab7fe"
|
||||
integrity sha512-iz3BtLuIYH1uWdsv6wXYdhozhqj20oD4/Hk2DNXIn1kFsmp9x8d9QB6FnPhfkbhd2PgEONt9Q1x/ebkwjfFLow==
|
||||
@ -73,26 +138,20 @@
|
||||
"@types/scheduler" "*"
|
||||
csstype "^3.0.2"
|
||||
|
||||
"@types/react@^18.2.40":
|
||||
version "18.2.40"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.40.tgz#b1cc2bafdc81da3c9bb105cfe8b91211bbce2e0d"
|
||||
integrity sha512-H+BUhb9C1zBtogDLAk+KCNRKiHDrqSwQT/0z0PVTwMFBxqg3011ByLomADtgkgMkfwj4AMOiXBReyLTUBg681g==
|
||||
dependencies:
|
||||
"@types/prop-types" "*"
|
||||
"@types/scheduler" "*"
|
||||
csstype "^3.0.2"
|
||||
|
||||
"@types/scheduler@*":
|
||||
version "0.16.2"
|
||||
resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39"
|
||||
integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==
|
||||
|
||||
acorn-walk@^8.1.1:
|
||||
version "8.2.0"
|
||||
resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
|
||||
integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
|
||||
|
||||
acorn@^8.4.1:
|
||||
version "8.8.0"
|
||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8"
|
||||
integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==
|
||||
|
||||
arg@^4.1.0:
|
||||
version "4.1.3"
|
||||
resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
|
||||
integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==
|
||||
|
||||
benchmark@^2.1.4:
|
||||
version "2.1.4"
|
||||
resolved "https://registry.yarnpkg.com/benchmark/-/benchmark-2.1.4.tgz#09f3de31c916425d498cc2ee565a0ebf3c2a5629"
|
||||
@ -101,20 +160,128 @@ benchmark@^2.1.4:
|
||||
lodash "^4.17.4"
|
||||
platform "^1.3.3"
|
||||
|
||||
create-require@^1.1.0:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
|
||||
integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
|
||||
boolbase@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
|
||||
integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==
|
||||
|
||||
css-select@^5.1.0:
|
||||
version "5.1.0"
|
||||
resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6"
|
||||
integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==
|
||||
dependencies:
|
||||
boolbase "^1.0.0"
|
||||
css-what "^6.1.0"
|
||||
domhandler "^5.0.2"
|
||||
domutils "^3.0.1"
|
||||
nth-check "^2.0.1"
|
||||
|
||||
css-what@^6.1.0:
|
||||
version "6.1.0"
|
||||
resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4"
|
||||
integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==
|
||||
|
||||
css.escape@^1.5.1:
|
||||
version "1.5.1"
|
||||
resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb"
|
||||
integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==
|
||||
|
||||
csstype@^3.0.2:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.0.tgz#4ddcac3718d787cf9df0d1b7d15033925c8f29f2"
|
||||
integrity sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==
|
||||
|
||||
diff@^4.0.1:
|
||||
version "4.0.2"
|
||||
resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"
|
||||
integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==
|
||||
dom-serializer@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53"
|
||||
integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==
|
||||
dependencies:
|
||||
domelementtype "^2.3.0"
|
||||
domhandler "^5.0.2"
|
||||
entities "^4.2.0"
|
||||
|
||||
domelementtype@^2.3.0:
|
||||
version "2.3.0"
|
||||
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d"
|
||||
integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==
|
||||
|
||||
domhandler@^5.0.2, domhandler@^5.0.3:
|
||||
version "5.0.3"
|
||||
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31"
|
||||
integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==
|
||||
dependencies:
|
||||
domelementtype "^2.3.0"
|
||||
|
||||
domutils@^3.0.1:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e"
|
||||
integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==
|
||||
dependencies:
|
||||
dom-serializer "^2.0.0"
|
||||
domelementtype "^2.3.0"
|
||||
domhandler "^5.0.3"
|
||||
|
||||
entities@^4.2.0, entities@^4.5.0:
|
||||
version "4.5.0"
|
||||
resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48"
|
||||
integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
|
||||
|
||||
esbuild@^0.19.8:
|
||||
version "0.19.8"
|
||||
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.19.8.tgz#ad05b72281d84483fa6b5345bd246c27a207b8f1"
|
||||
integrity sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==
|
||||
optionalDependencies:
|
||||
"@esbuild/android-arm" "0.19.8"
|
||||
"@esbuild/android-arm64" "0.19.8"
|
||||
"@esbuild/android-x64" "0.19.8"
|
||||
"@esbuild/darwin-arm64" "0.19.8"
|
||||
"@esbuild/darwin-x64" "0.19.8"
|
||||
"@esbuild/freebsd-arm64" "0.19.8"
|
||||
"@esbuild/freebsd-x64" "0.19.8"
|
||||
"@esbuild/linux-arm" "0.19.8"
|
||||
"@esbuild/linux-arm64" "0.19.8"
|
||||
"@esbuild/linux-ia32" "0.19.8"
|
||||
"@esbuild/linux-loong64" "0.19.8"
|
||||
"@esbuild/linux-mips64el" "0.19.8"
|
||||
"@esbuild/linux-ppc64" "0.19.8"
|
||||
"@esbuild/linux-riscv64" "0.19.8"
|
||||
"@esbuild/linux-s390x" "0.19.8"
|
||||
"@esbuild/linux-x64" "0.19.8"
|
||||
"@esbuild/netbsd-x64" "0.19.8"
|
||||
"@esbuild/openbsd-x64" "0.19.8"
|
||||
"@esbuild/sunos-x64" "0.19.8"
|
||||
"@esbuild/win32-arm64" "0.19.8"
|
||||
"@esbuild/win32-ia32" "0.19.8"
|
||||
"@esbuild/win32-x64" "0.19.8"
|
||||
|
||||
happy-dom@^12.10.3:
|
||||
version "12.10.3"
|
||||
resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-12.10.3.tgz#e61985eff163b822c110458be7f81aa4f94ad588"
|
||||
integrity sha512-JzUXOh0wdNGY54oKng5hliuBkq/+aT1V3YpTM+lrN/GoLQTANZsMaIvmHiHe612rauHvPJnDZkZ+5GZR++1Abg==
|
||||
dependencies:
|
||||
css.escape "^1.5.1"
|
||||
entities "^4.5.0"
|
||||
iconv-lite "^0.6.3"
|
||||
webidl-conversions "^7.0.0"
|
||||
whatwg-encoding "^2.0.0"
|
||||
whatwg-mimetype "^3.0.0"
|
||||
|
||||
he@1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
|
||||
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
||||
|
||||
hono@^3.10.4:
|
||||
version "3.10.4"
|
||||
resolved "https://registry.yarnpkg.com/hono/-/hono-3.10.4.tgz#b34fe995ebbd35d24dfab6306cbd2e64e7a7f9e2"
|
||||
integrity sha512-2LJd+a3qyvSuyFlyJSRN1CeH5wg6/Rjua/5L5gdT1W+4U7EUZtnHph74klbyysGg69sfZNXsIrR7PJWSjf2Vww==
|
||||
|
||||
iconv-lite@0.6.3, iconv-lite@^0.6.3:
|
||||
version "0.6.3"
|
||||
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501"
|
||||
integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==
|
||||
dependencies:
|
||||
safer-buffer ">= 2.1.2 < 3.0.0"
|
||||
|
||||
"js-tokens@^3.0.0 || ^4.0.0":
|
||||
version "4.0.0"
|
||||
@ -133,32 +300,42 @@ loose-envify@^1.1.0:
|
||||
dependencies:
|
||||
js-tokens "^3.0.0 || ^4.0.0"
|
||||
|
||||
make-error@^1.1.1:
|
||||
version "1.3.6"
|
||||
resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
|
||||
integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==
|
||||
nano-jsx@^0.1.0:
|
||||
version "0.1.0"
|
||||
resolved "https://registry.yarnpkg.com/nano-jsx/-/nano-jsx-0.1.0.tgz#c3e04ed1e7f3d560f37c9c693ec1580f8a74e9fb"
|
||||
integrity sha512-S4qJM9ayruMdDnn3hiHNK6kq0ZvCaNrDL3RD5jc4AVhmsW1Ufk3xE64Q6xrjAzq1Gff+6VZ5+Au8For4FT/6LA==
|
||||
|
||||
nano-jsx@^0.0.32:
|
||||
version "0.0.32"
|
||||
resolved "https://registry.yarnpkg.com/nano-jsx/-/nano-jsx-0.0.32.tgz#241cefd0507513d3739e4e4302301aa149171aea"
|
||||
integrity sha512-3wLq0BCT/xMRu0UJG/bPd6j8KYi0MfubjOflCDBhHk0P0shE7KfHRJSfCKsvyCF23WshIy12SoMF05aOf7N2pQ==
|
||||
node-html-parser@^6.1.11:
|
||||
version "6.1.11"
|
||||
resolved "https://registry.yarnpkg.com/node-html-parser/-/node-html-parser-6.1.11.tgz#387378111348c001a5c5fbebb7f478fdf65610aa"
|
||||
integrity sha512-FAgwwZ6h0DSDWxfD0Iq1tsDcBCxdJB1nXpLPPxX8YyVWzbfCjKWEzaynF4gZZ/8hziUmp7ZSaKylcn0iKhufUQ==
|
||||
dependencies:
|
||||
css-select "^5.1.0"
|
||||
he "1.2.0"
|
||||
|
||||
nth-check@^2.0.1:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d"
|
||||
integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==
|
||||
dependencies:
|
||||
boolbase "^1.0.0"
|
||||
|
||||
platform@^1.3.3:
|
||||
version "1.3.6"
|
||||
resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.6.tgz#48b4ce983164b209c2d45a107adb31f473a6e7a7"
|
||||
integrity sha512-fnWVljUchTro6RiCFvCXBbNhJc2NijN7oIQxbwsyL0buWJPG85v81ehlHI9fXrJsMNgTofEoWIQeClKpgxFLrg==
|
||||
|
||||
preact-render-to-string@^5.2.1:
|
||||
version "5.2.1"
|
||||
resolved "https://registry.yarnpkg.com/preact-render-to-string/-/preact-render-to-string-5.2.1.tgz#71f3e8cda65f33dbc8ad8d904ff58e3f532e59f3"
|
||||
integrity sha512-Wp3ner1aIVBpKg02C4AoLdBiw4kNaiFSYHr4wUF+fR7FWKAQzNri+iPfPp31sEhAtBfWoJrSxiEFzd5wp5zCgQ==
|
||||
preact-render-to-string@^6.3.1:
|
||||
version "6.3.1"
|
||||
resolved "https://registry.yarnpkg.com/preact-render-to-string/-/preact-render-to-string-6.3.1.tgz#2479ebca8e6721cacfcecaa79bd861005a3d9b8f"
|
||||
integrity sha512-NQ28WrjLtWY6lKDlTxnFpKHZdpjfF+oE6V4tZ0rTrunHrtZp6Dm0oFrcJalt/5PNeqJz4j1DuZDS0Y6rCBoqDA==
|
||||
dependencies:
|
||||
pretty-format "^3.8.0"
|
||||
|
||||
preact@^10.10.0:
|
||||
version "10.10.0"
|
||||
resolved "https://registry.yarnpkg.com/preact/-/preact-10.10.0.tgz#7434750a24b59dae1957d95dc0aa47a4a8e9a180"
|
||||
integrity sha512-fszkg1iJJjq68I4lI8ZsmBiaoQiQHbxf1lNq+72EmC/mZOsFF5zn3k1yv9QGoFgIXzgsdSKtYymLJsrJPoamjQ==
|
||||
preact@^10.19.2:
|
||||
version "10.19.2"
|
||||
resolved "https://registry.yarnpkg.com/preact/-/preact-10.19.2.tgz#841797620dba649aaac1f8be42d37c3202dcea8b"
|
||||
integrity sha512-UA9DX/OJwv6YwP9Vn7Ti/vF80XL+YA5H2l7BpCtUr3ya8LWHFzpiO5R+N7dN16ujpIxhekRFuOOF82bXX7K/lg==
|
||||
|
||||
pretty-format@^3.8.0:
|
||||
version "3.8.0"
|
||||
@ -180,6 +357,11 @@ react@^18.2.0:
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
|
||||
"safer-buffer@>= 2.1.2 < 3.0.0":
|
||||
version "2.1.2"
|
||||
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
||||
integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
|
||||
|
||||
scheduler@^0.23.0:
|
||||
version "0.23.0"
|
||||
resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe"
|
||||
@ -187,36 +369,24 @@ scheduler@^0.23.0:
|
||||
dependencies:
|
||||
loose-envify "^1.1.0"
|
||||
|
||||
ts-node@^10.9.1:
|
||||
version "10.9.1"
|
||||
resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b"
|
||||
integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==
|
||||
typescript@^5.3.2:
|
||||
version "5.3.2"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.2.tgz#00d1c7c1c46928c5845c1ee8d0cc2791031d4c43"
|
||||
integrity sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==
|
||||
|
||||
webidl-conversions@^7.0.0:
|
||||
version "7.0.0"
|
||||
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a"
|
||||
integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==
|
||||
|
||||
whatwg-encoding@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53"
|
||||
integrity sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==
|
||||
dependencies:
|
||||
"@cspotcode/source-map-support" "^0.8.0"
|
||||
"@tsconfig/node10" "^1.0.7"
|
||||
"@tsconfig/node12" "^1.0.7"
|
||||
"@tsconfig/node14" "^1.0.0"
|
||||
"@tsconfig/node16" "^1.0.2"
|
||||
acorn "^8.4.1"
|
||||
acorn-walk "^8.1.1"
|
||||
arg "^4.1.0"
|
||||
create-require "^1.1.0"
|
||||
diff "^4.0.1"
|
||||
make-error "^1.1.1"
|
||||
v8-compile-cache-lib "^3.0.1"
|
||||
yn "3.1.1"
|
||||
iconv-lite "0.6.3"
|
||||
|
||||
typescript@^4.7.4:
|
||||
version "4.7.4"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.7.4.tgz#1a88596d1cf47d59507a1bcdfb5b9dfe4d488235"
|
||||
integrity sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==
|
||||
|
||||
v8-compile-cache-lib@^3.0.1:
|
||||
version "3.0.1"
|
||||
resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"
|
||||
integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==
|
||||
|
||||
yn@3.1.1:
|
||||
version "3.1.1"
|
||||
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
|
||||
integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
|
||||
whatwg-mimetype@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7"
|
||||
integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==
|
||||
|
Loading…
Reference in New Issue
Block a user