Skip to content

Commit fcf14bc

Browse files
author
k.golikov
committed
Optimize bundle size
1 parent 9a55879 commit fcf14bc

File tree

7 files changed

+177
-61
lines changed

7 files changed

+177
-61
lines changed

package.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@
5757
"eject": "react-scripts eject",
5858
"predeploy": "npm run build",
5959
"deploy": "gh-pages -d build",
60-
"app-scripts": "npm run app-scripts --prefix=./_scripts"
60+
"app-scripts": "npm run app-scripts --prefix=./_scripts",
61+
"analyze": "source-map-explorer 'build/static/js/*.js'"
6162
},
6263
"eslintConfig": {
6364
"extends": [
@@ -111,6 +112,7 @@
111112
"pretty-quick": "^3.1.3",
112113
"raw-loader": "^4.0.2",
113114
"sass": "^1.49.9",
115+
"source-map-explorer": "^2.5.2",
114116
"typescript": "^4.4.2"
115117
},
116118
"lint-staged": {

src/AppRouter.tsx

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,29 @@
1-
import React from 'react';
1+
import React, { FunctionComponent, Suspense } from 'react';
22
import { Route, Routes } from 'react-router-dom';
33
import { routesList } from './constants/router/routes';
44
import NotFoundPage from './pages/notFoundPage/NotFoundPage';
55
import RouteContextInitializer from './layouts/RouteContextInitializer';
6+
import RouteLoading from './layouts/routeLoading/RouteLoading';
67

7-
const AppRouter = () => (
8-
<Routes>
9-
{routesList.map((route, index) => (
10-
<Route {...route} key={index} />
11-
))}
8+
const routeLoading = <RouteLoading />;
129

13-
<Route
14-
path="*"
15-
element={
16-
<RouteContextInitializer title="Not Found" key="@NOT_FOUND">
17-
<NotFoundPage />
18-
</RouteContextInitializer>
19-
}
20-
/>
21-
</Routes>
10+
const AppRouter: FunctionComponent = () => (
11+
<Suspense fallback={routeLoading}>
12+
<Routes>
13+
{routesList.map((route, index) => (
14+
<Route {...route} key={index} />
15+
))}
16+
17+
<Route
18+
path="*"
19+
element={
20+
<RouteContextInitializer title="Not Found" key="@NOT_FOUND">
21+
<NotFoundPage />
22+
</RouteContextInitializer>
23+
}
24+
/>
25+
</Routes>
26+
</Suspense>
2227
);
2328

2429
export default AppRouter;

src/components/appSyntaxHighlighter/AppSyntaxHighlighter.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,18 @@
11
import React, { FunctionComponent } from 'react';
2-
import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';
3-
import { SyntaxHighlighterProps } from 'react-syntax-highlighter';
2+
import { Prism as SyntaxHighlighter, SyntaxHighlighterProps } from 'react-syntax-highlighter';
43
import useAppTheme from '../../hooks/useAppTheme';
54
// @ts-ignore
6-
import { oneDark, oneLight } from 'react-syntax-highlighter/dist/esm/styles/prism';
5+
import oneDark from 'react-syntax-highlighter/dist/esm/styles/prism/one-dark';
6+
// @ts-ignore
7+
import oneLight from 'react-syntax-highlighter/dist/esm/styles/prism/one-light';
78
import PrismLanguage from './types/PrismLanguage';
89

9-
interface Props extends Omit<SyntaxHighlighterProps, 'style'> {
10+
export interface AppSyntaxHighlighterProps extends Omit<SyntaxHighlighterProps, 'style'> {
1011
language?: PrismLanguage;
1112
children: string | string[];
1213
}
1314

14-
const AppSyntaxHighlighter: FunctionComponent<Props> = ({ children, ...props }) => {
15+
const AppSyntaxHighlighter: FunctionComponent<AppSyntaxHighlighterProps> = ({ children, ...props }) => {
1516
const { isDarkMode } = useAppTheme();
1617

1718
return (

src/constants/router/routes.tsx

Lines changed: 39 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,42 @@
11
import { RouteProps } from 'react-router';
2-
import RootPage from '../../pages/rootPage/RootPage';
32
import { values } from 'lodash';
4-
import GithubPagesListPage from '../../pages/githubPagesPage/GithubPagesListPage';
5-
import { ComponentType } from 'react';
6-
import renderComponent from '../../utils/renderComponent';
7-
import LongContentPage from '../../pages/longContentPage/LongContentPage';
8-
import JsonStringifierPage from '../../pages/jsonStringifierPage/JsonStringifierPage';
9-
import TemplateTextGeneratorPage from '../../pages/templateTextGenerator/TemplateTextGeneratorPage';
10-
import QrScannerPage from '../../pages/qrScannerPage/QrScannerPage';
11-
import BgGeneratorPage from '../../pages/bgGeneratorPage/BgGeneratorPage';
12-
import JsEvaluatorPage from '../../pages/jsEvaluatorPage/JsEvaluatorPage';
13-
import UserInfoPage from '../../pages/userInfoPage/UserInfoPage';
14-
import NotFoundPage from '../../pages/notFoundPage/NotFoundPage';
15-
import UnitConverterPage from '../../pages/unitConverterPage/UnitConverterPage';
16-
import SnakeGamePage from '../../pages/snakeGamePage/SnakeGamePage';
17-
import UuidGeneratorPage from '../../pages/uuidGeneratorPage/UuidGeneratorPage';
18-
import QrGeneratorPage from '../../pages/qrGeneratorPage/QrGeneratorPage';
19-
import SettingsPage from '../../pages/settingsPage/SettingsPage';
20-
import AboutPage from '../../pages/aboutPage/AboutPage';
21-
import CodeFormatterPage from '../../pages/codeFormatterPage/CodeFormatterPage';
22-
import DiffEditorPage from '../../pages/diffEditorPage/DiffEditorPage';
23-
import JsonToTypeScriptPage from '../../pages/jsonToTypeScriptPage/JsonToTypeScriptPage';
24-
import NotificationsTestPage from '../../pages/notificationsTestPage/NotificationsTestPage';
25-
import DateUtilsPage from '../../pages/dateUtilsPage/DateUtilsPage';
26-
import ImageCompressorPage from '../../pages/imageCompressorPage/ImageCompressorPage';
27-
import HtmlEditorPage from '../../pages/htmlEditorPage/HtmlEditorPage';
28-
import Base64Page from '../../pages/base64Page/Base64Page';
29-
import DataUrlPage from '../../pages/dataUrlPage/DataUrlPage';
30-
import DataUrlViewPage from '../../pages/dataUrlViewPage/DataUrlViewPage';
31-
import RouteContextInitializer from '../../layouts/RouteContextInitializer';
32-
import JsonToYamlPage from '../../pages/jsonToYamlPage/JsonToYamlPage';
33-
import CounterPage from '../../pages/counterPage/CounterPage';
34-
import RooksDemoPage from '../../pages/rooksDemoPage/RooksDemoPage';
35-
import MarkdownCheatSheetPage from '../../pages/markdownCheatSheetPage/MarkdownCheatSheetPage';
36-
import JsEventTesterPage from '../../pages/jsEventTesterPage/JsEventTesterPage';
37-
import DataUrlViewerPage from '../../pages/dataUrlViewerPage/DataUrlViewerPage';
3+
import React, { ComponentType } from 'react';
4+
5+
const RootPage = React.lazy(() => import('../../pages/rootPage/RootPage'));
6+
const GithubPagesListPage = React.lazy(() => import('../../pages/githubPagesPage/GithubPagesListPage'));
7+
const LongContentPage = React.lazy(() => import('../../pages/longContentPage/LongContentPage'));
8+
const JsonStringifierPage = React.lazy(() => import('../../pages/jsonStringifierPage/JsonStringifierPage'));
9+
const TemplateTextGeneratorPage = React.lazy(
10+
() => import('../../pages/templateTextGenerator/TemplateTextGeneratorPage')
11+
);
12+
const QrScannerPage = React.lazy(() => import('../../pages/qrScannerPage/QrScannerPage'));
13+
const BgGeneratorPage = React.lazy(() => import('../../pages/bgGeneratorPage/BgGeneratorPage'));
14+
const JsEvaluatorPage = React.lazy(() => import('../../pages/jsEvaluatorPage/JsEvaluatorPage'));
15+
const UserInfoPage = React.lazy(() => import('../../pages/userInfoPage/UserInfoPage'));
16+
const NotFoundPage = React.lazy(() => import('../../pages/notFoundPage/NotFoundPage'));
17+
const UnitConverterPage = React.lazy(() => import('../../pages/unitConverterPage/UnitConverterPage'));
18+
const SnakeGamePage = React.lazy(() => import('../../pages/snakeGamePage/SnakeGamePage'));
19+
const UuidGeneratorPage = React.lazy(() => import('../../pages/uuidGeneratorPage/UuidGeneratorPage'));
20+
const QrGeneratorPage = React.lazy(() => import('../../pages/qrGeneratorPage/QrGeneratorPage'));
21+
const SettingsPage = React.lazy(() => import('../../pages/settingsPage/SettingsPage'));
22+
const AboutPage = React.lazy(() => import('../../pages/aboutPage/AboutPage'));
23+
const CodeFormatterPage = React.lazy(() => import('../../pages/codeFormatterPage/CodeFormatterPage'));
24+
const DiffEditorPage = React.lazy(() => import('../../pages/diffEditorPage/DiffEditorPage'));
25+
const JsonToTypeScriptPage = React.lazy(() => import('../../pages/jsonToTypeScriptPage/JsonToTypeScriptPage'));
26+
const NotificationsTestPage = React.lazy(() => import('../../pages/notificationsTestPage/NotificationsTestPage'));
27+
const DateUtilsPage = React.lazy(() => import('../../pages/dateUtilsPage/DateUtilsPage'));
28+
const ImageCompressorPage = React.lazy(() => import('../../pages/imageCompressorPage/ImageCompressorPage'));
29+
const HtmlEditorPage = React.lazy(() => import('../../pages/htmlEditorPage/HtmlEditorPage'));
30+
const Base64Page = React.lazy(() => import('../../pages/base64Page/Base64Page'));
31+
const DataUrlPage = React.lazy(() => import('../../pages/dataUrlPage/DataUrlPage'));
32+
const DataUrlViewPage = React.lazy(() => import('../../pages/dataUrlViewPage/DataUrlViewPage'));
33+
const RouteContextInitializer = React.lazy(() => import('../../layouts/RouteContextInitializer'));
34+
const JsonToYamlPage = React.lazy(() => import('../../pages/jsonToYamlPage/JsonToYamlPage'));
35+
const CounterPage = React.lazy(() => import('../../pages/counterPage/CounterPage'));
36+
const RooksDemoPage = React.lazy(() => import('../../pages/rooksDemoPage/RooksDemoPage'));
37+
const MarkdownCheatSheetPage = React.lazy(() => import('../../pages/markdownCheatSheetPage/MarkdownCheatSheetPage'));
38+
const JsEventTesterPage = React.lazy(() => import('../../pages/jsEventTesterPage/JsEventTesterPage'));
39+
const DataUrlViewerPage = React.lazy(() => import('../../pages/dataUrlViewerPage/DataUrlViewerPage'));
3840

3941
export interface AppRoute extends Omit<RouteProps, 'element'> {
4042
path: string;
@@ -242,11 +244,11 @@ export const routes: AppRoutesMap = {
242244
}
243245
};
244246

245-
export const convertAppRoute = ({ component, title, ...route }: AppRoute): RouteProps => ({
247+
export const convertAppRoute = ({ component: Component, title, ...route }: AppRoute): RouteProps => ({
246248
...route,
247249
element: (
248250
<RouteContextInitializer title={title} key={route.path}>
249-
{renderComponent(component)}
251+
<Component />
250252
</RouteContextInitializer>
251253
)
252254
});
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import React, { FunctionComponent } from 'react';
2+
import { Spin } from 'antd';
3+
4+
const RouteLoading: FunctionComponent = () => {
5+
return <Spin className="w-100 h-100 d-flex align-items-center justify-content-center" size="large" />;
6+
};
7+
8+
export default RouteLoading;

src/utils/react/loadingLazy.tsx

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import React, { ComponentProps, ComponentType, FunctionComponent, Suspense } from 'react';
2+
import { Spin } from 'antd';
3+
4+
const fallback: JSX.Element = <Spin size="large" />;
5+
6+
const loadingLazy = <T extends ComponentType<any>>(
7+
factory: () => Promise<{ default: T }>
8+
): FunctionComponent<ComponentProps<T>> => {
9+
const LazyComponent = React.lazy(factory);
10+
11+
return (props) => (
12+
<Suspense fallback={fallback}>
13+
<LazyComponent {...(props as any)} />
14+
</Suspense>
15+
);
16+
};
17+
18+
export default loadingLazy;

yarn.lock

Lines changed: 83 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3690,6 +3690,11 @@ async@^2.6.1, async@^2.6.2:
36903690
dependencies:
36913691
lodash "^4.17.14"
36923692

3693+
async@^3.2.3:
3694+
version "3.2.4"
3695+
resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c"
3696+
integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==
3697+
36933698
asynckit@^0.4.0:
36943699
version "0.4.0"
36953700
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
@@ -4104,6 +4109,11 @@ btoa-lite@^1.0.0:
41044109
resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337"
41054110
integrity sha1-M3dm2hWAEhD92VbCLpxokaudAzc=
41064111

4112+
btoa@^1.2.1:
4113+
version "1.2.1"
4114+
resolved "https://registry.yarnpkg.com/btoa/-/btoa-1.2.1.tgz#01a9909f8b2c93f6bf680ba26131eb30f7fa3d73"
4115+
integrity sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==
4116+
41074117
buffer-equal-constant-time@1.0.1:
41084118
version "1.0.1"
41094119
resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819"
@@ -4244,7 +4254,7 @@ chalk@^3.0.0:
42444254
ansi-styles "^4.1.0"
42454255
supports-color "^7.1.0"
42464256

4247-
chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2:
4257+
chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2:
42484258
version "4.1.2"
42494259
resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
42504260
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
@@ -5352,6 +5362,13 @@ ee-first@1.1.1:
53525362
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
53535363
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
53545364

5365+
ejs@^3.1.5:
5366+
version "3.1.8"
5367+
resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.8.tgz#758d32910c78047585c7ef1f92f9ee041c1c190b"
5368+
integrity sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==
5369+
dependencies:
5370+
jake "^10.8.5"
5371+
53555372
ejs@^3.1.6:
53565373
version "3.1.6"
53575374
resolved "https://registry.yarnpkg.com/ejs/-/ejs-3.1.6.tgz#5bfd0a0689743bb5268b3550cceeebbc1702822a"
@@ -5529,7 +5546,7 @@ escalade@^3.1.1:
55295546
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
55305547
integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
55315548

5532-
escape-html@~1.0.3:
5549+
escape-html@^1.0.3, escape-html@~1.0.3:
55335550
version "1.0.3"
55345551
resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
55355552
integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=
@@ -7478,7 +7495,7 @@ is-windows@^1.0.1, is-windows@^1.0.2:
74787495
resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
74797496
integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
74807497

7481-
is-wsl@^2.2.0:
7498+
is-wsl@^2.1.1, is-wsl@^2.2.0:
74827499
version "2.2.0"
74837500
resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271"
74847501
integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
@@ -7559,6 +7576,16 @@ jake@^10.6.1:
75597576
filelist "^1.0.1"
75607577
minimatch "^3.0.4"
75617578

7579+
jake@^10.8.5:
7580+
version "10.8.5"
7581+
resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.5.tgz#f2183d2c59382cb274226034543b9c03b8164c46"
7582+
integrity sha512-sVpxYeuAhWt0OTWITwT98oyV0GsXyMlXCF+3L1SuafBVUIr/uILGRB+NqwkzhgXKvoJpDIpQvqkUALgdmQsQxw==
7583+
dependencies:
7584+
async "^3.2.3"
7585+
chalk "^4.0.2"
7586+
filelist "^1.0.1"
7587+
minimatch "^3.0.4"
7588+
75627589
jest-changed-files@^27.5.1:
75637590
version "27.5.1"
75647591
resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5"
@@ -9068,6 +9095,11 @@ minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5:
90689095
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602"
90699096
integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
90709097

9098+
minimist@^1.2.6:
9099+
version "1.2.6"
9100+
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
9101+
integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
9102+
90719103
mixin-deep@^1.2.0:
90729104
version "1.3.2"
90739105
resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566"
@@ -9076,6 +9108,13 @@ mixin-deep@^1.2.0:
90769108
for-in "^1.0.2"
90779109
is-extendable "^1.0.1"
90789110

9111+
mkdirp@^0.5.1:
9112+
version "0.5.6"
9113+
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
9114+
integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
9115+
dependencies:
9116+
minimist "^1.2.6"
9117+
90799118
mkdirp@^0.5.5, mkdirp@~0.5.1:
90809119
version "0.5.5"
90819120
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
@@ -9480,6 +9519,14 @@ onetime@^5.1.0, onetime@^5.1.2:
94809519
dependencies:
94819520
mimic-fn "^2.1.0"
94829521

9522+
open@^7.3.1:
9523+
version "7.4.2"
9524+
resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321"
9525+
integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==
9526+
dependencies:
9527+
is-docker "^2.0.0"
9528+
is-wsl "^2.1.1"
9529+
94839530
open@^8.0.9, open@^8.4.0:
94849531
version "8.4.0"
94859532
resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8"
@@ -11647,6 +11694,13 @@ rimraf@^3.0.0, rimraf@^3.0.2:
1164711694
dependencies:
1164811695
glob "^7.1.3"
1164911696

11697+
rimraf@~2.6.2:
11698+
version "2.6.3"
11699+
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
11700+
integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
11701+
dependencies:
11702+
glob "^7.1.3"
11703+
1165011704
rollup-plugin-terser@^7.0.0:
1165111705
version "7.0.2"
1165211706
resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d"
@@ -12041,6 +12095,24 @@ source-list-map@^2.0.0, source-list-map@^2.0.1:
1204112095
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
1204212096
integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
1204312097

12098+
source-map-explorer@^2.5.2:
12099+
version "2.5.2"
12100+
resolved "https://registry.yarnpkg.com/source-map-explorer/-/source-map-explorer-2.5.2.tgz#857cab5dd9d1d7175e9c5c2739dc9ccfb99f2dc5"
12101+
integrity sha512-gBwOyCcHPHcdLbgw6Y6kgoH1uLKL6hN3zz0xJcNI2lpnElZliIlmSYAjUVwAWnc7+HscoTyh1ScR7ITtFuEnxg==
12102+
dependencies:
12103+
btoa "^1.2.1"
12104+
chalk "^4.1.0"
12105+
convert-source-map "^1.7.0"
12106+
ejs "^3.1.5"
12107+
escape-html "^1.0.3"
12108+
glob "^7.1.6"
12109+
gzip-size "^6.0.0"
12110+
lodash "^4.17.20"
12111+
open "^7.3.1"
12112+
source-map "^0.7.3"
12113+
temp "^0.9.4"
12114+
yargs "^16.2.0"
12115+
1204412116
"source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.1, source-map-js@^1.0.2:
1204512117
version "1.0.2"
1204612118
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
@@ -12585,6 +12657,14 @@ temp-dir@^2.0.0:
1258512657
resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-2.0.0.tgz#bde92b05bdfeb1516e804c9c00ad45177f31321e"
1258612658
integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==
1258712659

12660+
temp@^0.9.4:
12661+
version "0.9.4"
12662+
resolved "https://registry.yarnpkg.com/temp/-/temp-0.9.4.tgz#cd20a8580cb63635d0e4e9d4bd989d44286e7620"
12663+
integrity sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==
12664+
dependencies:
12665+
mkdirp "^0.5.1"
12666+
rimraf "~2.6.2"
12667+
1258812668
tempy@^0.6.0:
1258912669
version "0.6.0"
1259012670
resolved "https://registry.yarnpkg.com/tempy/-/tempy-0.6.0.tgz#65e2c35abc06f1124a97f387b08303442bde59f3"

0 commit comments

Comments
 (0)