Replace webpack with only esbuild, replace react with preact

reduce node_modules size to only 18M

reduce js file bundle to 20%
This commit is contained in:
2022-12-04 17:08:06 +08:00
parent d278e4009d
commit aa2377df7f
35 changed files with 582 additions and 27515 deletions

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { HashRouter as Router, Routes, Route, NavLink } from "react-router-dom";
import "./App.css";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import {useEffect, useState} from "react";
import {useNavigate} from "react-router";
import {CalcReadableFilesizeDetail} from "./Common";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState, useEffect, useContext } from "react";
import { Tr, tr, langCodeContext } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useContext, useEffect, useState } from "react";
import { useParams, useNavigate } from "react-router";
import { tr, Tr, langCodeContext } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState, useEffect, useContext } from "react";
import { useParams, useNavigate } from "react-router";
import { tr, Tr, langCodeContext } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState, useEffect } from "react";
import { Link } from "react-router-dom";
import { convertIntToDateTime } from "./Common";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useEffect, useState } from "react";
function FfmpegConfig(props) {

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useNavigate } from "react-router";
import { Tr } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState } from "react";
import { useNavigate } from "react-router";
import { CalcReadableFilesize } from "./Common";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import {useNavigate, useParams} from "react-router";
import {useContext, useEffect, useState} from "react";
import {Tr, tr, langCodeContext} from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import {useParams} from "react-router";
import {useState, useEffect} from "react";
import {useNavigate} from "react-router-dom";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import FileEntry from "./FileEntry";
import { Tr } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useNavigate } from "react-router";
import { Tr } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useContext, useEffect, useState } from "react";
import { useNavigate } from "react-router-dom";
import { useQuery } from "./Common";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useNavigate } from "react-router-dom";
import { useContext, useState } from "react";
import { Tr, tr, langCodeContext } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useNavigate } from "react-router";
import Database from "./Database";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState, useEffect } from "react";
import { Link } from "react-router-dom";
import { Tr } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useNavigate } from "react-router-dom";
import { useContext, useState } from "react";
import { tr, Tr, langCodeContext } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { Link } from "react-router-dom";
import { convertIntToDateTime } from "./Common";
import { Tr, tr, langCodeContext } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState, useEffect } from "react";
import { useParams } from "react-router";
import ReviewEntry from "./ReviewEntry";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState, useEffect, useContext } from "react";
import { useNavigate } from "react-router-dom";
import { useQuery } from "./Common";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useContext, useEffect, useState } from "react";
import { useNavigate } from "react-router-dom";
import { useQuery } from "./Common";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useContext, useEffect, useState } from "react";
import { useParams } from "react-router";
import FilesTable from "./FilesTable";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useEffect, useState } from "react";
import { Link } from "react-router-dom";
import { Tr } from "../translate";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useState, useEffect, useContext } from "react";
import { useParams } from "react-router";
import ReviewEntry from "./ReviewEntry";

View File

@@ -1,3 +1,4 @@
import * as React from 'react';
import { useEffect } from 'react';
function UserStatus(props) {

View File

@@ -1,18 +0,0 @@
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import 'water.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
);
// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();

12
web/src/index.jsx Normal file
View File

@@ -0,0 +1,12 @@
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import 'water.css';
import App from './App';
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
);

View File

@@ -1,13 +0,0 @@
const reportWebVitals = onPerfEntry => {
if (onPerfEntry && onPerfEntry instanceof Function) {
import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
getCLS(onPerfEntry);
getFID(onPerfEntry);
getFCP(onPerfEntry);
getLCP(onPerfEntry);
getTTFB(onPerfEntry);
});
}
};
export default reportWebVitals;

View File

@@ -1,4 +1,5 @@
import { createContext, renderToString } from "react";
import * as React from 'react';
import { createContext } from "react";
import MAP_zh_CN from "./zh_CN";
const LANG_OPTIONS = {