Skip to content

Commit b13344d

Browse files
authored
fix: initial bundle size (#776)
1 parent fe6ad27 commit b13344d

File tree

35 files changed

+300
-83
lines changed

35 files changed

+300
-83
lines changed

package-lock.json

Lines changed: 118 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
"ydb-ui-components": "^3.6.0"
5252
},
5353
"scripts": {
54+
"analyze": "source-map-explorer 'build/static/js/*.js'",
5455
"start": "react-app-rewired start",
5556
"dev": "DISABLE_ESLINT_PLUGIN=true TSC_COMPILE_ON_ERROR=true REACT_APP_BACKEND=http://localhost:8765 REACT_APP_META_BACKEND=undefined npm start",
5657
"build": "rm -rf build && DISABLE_ESLINT_PLUGIN=true react-app-rewired build",
@@ -150,6 +151,7 @@
150151
"react-dom": "^17.0.2",
151152
"react-scripts": "^5.0.1",
152153
"sass": "^1.32.8",
154+
"source-map-explorer": "^2.5.3",
153155
"stylelint": "^14.3.0",
154156
"ts-jest": "^28.0.7",
155157
"typescript": "^4.5.5"

src/components/ErrorBoundary/ErrorBoundary.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ export function ErrorBoundaryInner({
5252
interface ErrorBoundaryFallbackProps {
5353
error: Error;
5454
useRetry?: boolean;
55-
resetErrorBoundary: () => void;
55+
resetErrorBoundary?: () => void;
5656
onReportProblem?: (error?: Error) => void;
5757
}
5858
export function ErrorBoundaryFallback({
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import {lazyComponent} from '../../utils/lazyComponent';
2+
3+
export const MonacoEditor = lazyComponent(async () => {
4+
const Editor = (await import('react-monaco-editor')).default;
5+
const {registerLanguages} = await import('../../utils/monaco');
6+
registerLanguages();
7+
return {Editor};
8+
}, 'Editor');

src/components/SplitPane/SplitPane.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import cn from 'bem-cn-lite';
2-
import _ from 'lodash';
32
import React, {useEffect, useState} from 'react';
43

54
import SplitPaneLib, {SplitProps} from 'react-split';

src/containers/App/App.tsx

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import ReduxTooltip from '../ReduxTooltip/ReduxTooltip';
77
import AppIcons from '../AppIcons/AppIcons';
88
import {Navigation} from '../AsideNavigation/Navigation';
99

10-
import {registerLanguages} from '../../utils/monaco';
1110
import {ErrorBoundary} from '../../components/ErrorBoundary/ErrorBoundary';
1211
import {settings} from '../UserSettings/settings';
1312
import {Providers} from './Providers';
@@ -19,8 +18,6 @@ import type {RootState} from '../../store';
1918

2019
import './App.scss';
2120

22-
registerLanguages();
23-
2421
export interface AppProps {
2522
store: Store;
2623
history: History;

src/containers/Heatmap/HeatmapCanvas/HeatmapCanvas.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import {useEffect, useLayoutEffect, useRef, useState} from 'react';
22
import PropTypes from 'prop-types';
33
import cn from 'bem-cn-lite';
4-
import _ from 'lodash';
4+
import throttle from 'lodash/throttle';
55

66
import {basename as appBasename} from '../../../store/index';
77
import routes, {createHref} from '../../../routes';
@@ -118,7 +118,7 @@ export const HeatmapCanvas = (props) => {
118118
props.hideTooltip();
119119
}, 40);
120120
};
121-
const _onCanvasMouseMove = _.throttle((x, y) => {
121+
const _onCanvasMouseMove = throttle((x, y) => {
122122
//this is needed to force ReduxPopup rerender
123123
const event = new CustomEvent('scroll');
124124
window.dispatchEvent(event);

src/containers/Node/NodeStructure/NodeStructure.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import {useEffect, useRef} from 'react';
22
import url from 'url';
3-
import {isEmpty} from 'lodash/fp';
3+
import isEmpty from 'lodash/isEmpty';
44

55
import cn from 'bem-cn-lite';
66

src/containers/Node/NodeStructure/Pdisk.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import {useState} from 'react';
22
import cn from 'bem-cn-lite';
3-
import {isEmpty} from 'lodash/fp';
3+
import isEmpty from 'lodash/isEmpty';
44

55
import {ArrowToggle, Button, Popover} from '@gravity-ui/uikit';
66

src/containers/TabletsFilters/TabletsFilters.js

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@ import React from 'react';
22
import PropTypes from 'prop-types';
33
import {connect} from 'react-redux';
44
import cn from 'bem-cn-lite';
5-
import _ from 'lodash';
5+
import map from 'lodash/map';
6+
import isEqual from 'lodash/isEqual';
67
import {Helmet} from 'react-helmet-async';
78

89
import {Loader, Select} from '@gravity-ui/uikit';
@@ -169,12 +170,12 @@ export class TabletsFilters extends React.Component {
169170
const {tablets, filteredTablets, nodes, stateFilter, typeFilter, error} = this.props;
170171

171172
const states = tabletStates.map((item) => ({value: item, content: item}));
172-
const types = Array.from(new Set(...[_.map(tablets, (tblt) => tblt.Type)])).map((item) => ({
173+
const types = Array.from(new Set(...[map(tablets, (tblt) => tblt.Type)])).map((item) => ({
173174
value: item,
174175
content: item,
175176
}));
176177

177-
const nodesForSelect = _.map(nodes, (node) => ({
178+
const nodesForSelect = map(nodes, (node) => ({
178179
content: node.Id,
179180
value: node.Id,
180181
meta: node.Host,
@@ -332,9 +333,9 @@ Filters.propTypes = {
332333

333334
const MemoizedFilters = React.memo(Filters, (prevProps, nextProps) => {
334335
return (
335-
_.isEqual(prevProps.nodeFilter, nextProps.nodeFilter) &&
336-
_.isEqual(prevProps.stateFilter, nextProps.stateFilter) &&
337-
_.isEqual(prevProps.typeFilter, nextProps.typeFilter)
336+
isEqual(prevProps.nodeFilter, nextProps.nodeFilter) &&
337+
isEqual(prevProps.stateFilter, nextProps.stateFilter) &&
338+
isEqual(prevProps.typeFilter, nextProps.typeFilter)
338339
);
339340
});
340341

0 commit comments

Comments
 (0)