Build(package.json): Upgrade dependencies
This commit is contained in:
@@ -1,40 +0,0 @@
|
||||
/* eslint-env node */
|
||||
|
||||
module.exports = {
|
||||
root: true,
|
||||
env: { browser: true, es2020: true },
|
||||
extends: [
|
||||
'eslint:recommended',
|
||||
'plugin:@typescript-eslint/recommended',
|
||||
'plugin:@typescript-eslint/recommended-requiring-type-checking',
|
||||
'plugin:react-hooks/recommended',
|
||||
'plugin:prettier/recommended',
|
||||
'./.eslintrc-auto-import.json'
|
||||
],
|
||||
parser: '@typescript-eslint/parser',
|
||||
parserOptions: {
|
||||
ecmaVersion: 'latest',
|
||||
sourceType: 'module',
|
||||
project: './tsconfig*.json',
|
||||
tsconfigRootDir: __dirname,
|
||||
},
|
||||
plugins: [
|
||||
'react-refresh',
|
||||
'prettier'],
|
||||
rules: {
|
||||
'no-cond-assign': 'error',
|
||||
'eqeqeq': 'error',
|
||||
'prettier/prettier': [
|
||||
'error',
|
||||
{
|
||||
endOfLine: 'auto',
|
||||
}
|
||||
],
|
||||
'react-refresh/only-export-components': [
|
||||
'warn',
|
||||
{ allowConstantExport: true }
|
||||
],
|
||||
'@typescript-eslint/no-non-null-assertion': 'off',
|
||||
'react-hooks/exhaustive-deps': 'off',
|
||||
}
|
||||
}
|
||||
@@ -5,4 +5,4 @@
|
||||
"singleQuote": true,
|
||||
"printWidth": 100,
|
||||
"trailingComma": "none"
|
||||
}
|
||||
}
|
||||
|
||||
30
eslint.config.mjs
Normal file
30
eslint.config.mjs
Normal file
@@ -0,0 +1,30 @@
|
||||
import globals from 'globals'
|
||||
import eslintJs from '@eslint/js'
|
||||
import tsEslint from 'typescript-eslint'
|
||||
|
||||
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended'
|
||||
|
||||
const config = {
|
||||
name: 'Global config',
|
||||
files: ['**/*.{js,mjs,cjs,ts,jsx,tsx}'],
|
||||
rules: {
|
||||
'@typescript-eslint/no-unused-expressions': [
|
||||
'error',
|
||||
{
|
||||
allowShortCircuit: true,
|
||||
allowTernary: true,
|
||||
allowTaggedTemplates: true
|
||||
}
|
||||
],
|
||||
'@typescript-eslint/no-unused-vars': 'off'
|
||||
}
|
||||
}
|
||||
|
||||
export default [
|
||||
{ files: ['**/*.{js,mjs,cjs,ts,jsx,tsx}'] },
|
||||
{ languageOptions: { globals: globals.browser } },
|
||||
eslintJs.configs.recommended,
|
||||
eslintPluginPrettierRecommended,
|
||||
...tsEslint.configs.recommended,
|
||||
config
|
||||
]
|
||||
6127
package-lock.json
generated
6127
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
63
package.json
63
package.json
@@ -23,18 +23,18 @@
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"@ant-design/icons": "^5.3.7",
|
||||
"@ant-design/icons": "^5.5.1",
|
||||
"@dnd-kit/core": "^6.1.0",
|
||||
"@dnd-kit/sortable": "^8.0.0",
|
||||
"@dnd-kit/utilities": "^3.2.2",
|
||||
"@marsidev/react-turnstile": "^0.7.1",
|
||||
"@marsidev/react-turnstile": "^1.0.2",
|
||||
"@monaco-editor/react": "^4.6.0",
|
||||
"antd": "^5.18.1",
|
||||
"axios": "^1.7.2",
|
||||
"antd": "^5.21.4",
|
||||
"axios": "1.7.4",
|
||||
"custom-protocol-check": "^1.4.0",
|
||||
"dayjs": "^1.11.11",
|
||||
"echarts": "^5.5.0",
|
||||
"esbuild-wasm": "^0.21.5",
|
||||
"dayjs": "^1.11.13",
|
||||
"echarts": "^5.5.1",
|
||||
"esbuild-wasm": "^0.24.0",
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"fflate": "^0.8.2",
|
||||
"jwt-decode": "^4.0.0",
|
||||
@@ -42,43 +42,38 @@
|
||||
"lodash": "^4.17.21",
|
||||
"match-sorter": "^6.3.4",
|
||||
"moment": "^2.30.1",
|
||||
"monaco-editor": "^0.49.0",
|
||||
"monaco-editor": "^0.52.0",
|
||||
"monaco-jsx-syntax-highlight": "^1.2.0",
|
||||
"react": "^18.3.1",
|
||||
"react-dom": "^18.3.1",
|
||||
"react-draggable": "^4.4.6",
|
||||
"react-router": "^6.23.1",
|
||||
"react-router-dom": "^6.23.1",
|
||||
"react-router": "^6.27.0",
|
||||
"react-router-dom": "^6.27.0",
|
||||
"size-sensor": "^1.0.2",
|
||||
"vanilla-tilt": "^1.8.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@eslint/js": "^9.12.0",
|
||||
"@svgr/core": "^8.1.0",
|
||||
"@svgr/plugin-jsx": "^8.1.0",
|
||||
"@types/jsdom": "^21.1.7",
|
||||
"@types/lodash": "^4.17.5",
|
||||
"@types/node": "^20.14.2",
|
||||
"@types/react": "^18.3.3",
|
||||
"@types/react-dom": "^18.3.0",
|
||||
"@typescript-eslint/eslint-plugin": "^7.13.0",
|
||||
"@typescript-eslint/parser": "^7.13.0",
|
||||
"@typescript/ata": "^0.9.6",
|
||||
"@vitejs/plugin-react": "^4.3.1",
|
||||
"eslint": "^8.57.0",
|
||||
"eslint-config-love": "^52.0.0",
|
||||
"eslint-config-prettier": "^9.1.0",
|
||||
"eslint-plugin-import": "^2.29.1",
|
||||
"eslint-plugin-prettier": "^5.1.3",
|
||||
"eslint-plugin-promise": "^6.2.0",
|
||||
"eslint-plugin-react-hooks": "^4.6.2",
|
||||
"eslint-plugin-react-refresh": "^0.4.7",
|
||||
"jsdom": "^24.1.0",
|
||||
"prettier": "^3.3.2",
|
||||
"sass": "^1.77.5",
|
||||
"stylelint-config-prettier": "^9.0.5",
|
||||
"typescript": "^5.4.5",
|
||||
"unplugin-auto-import": "^0.17.6",
|
||||
"unplugin-icons": "^0.19.0",
|
||||
"vite": "^5.2.13"
|
||||
"@types/lodash": "^4.17.10",
|
||||
"@types/node": "^20.16.11",
|
||||
"@types/react": "^18.3.11",
|
||||
"@types/react-dom": "^18.3.1",
|
||||
"@typescript/ata": "^0.9.7",
|
||||
"@vitejs/plugin-react": "^4.3.2",
|
||||
"eslint": "^9.12.0",
|
||||
"eslint-plugin-prettier": "^5.2.1",
|
||||
"eslint-plugin-react-refresh": "^0.4.12",
|
||||
"globals": "^15.11.0",
|
||||
"jsdom": "^24.1.3",
|
||||
"prettier": "^3.3.3",
|
||||
"sass": "^1.79.5",
|
||||
"typescript": "^5.6.3",
|
||||
"typescript-eslint": "^8.9.0",
|
||||
"unplugin-auto-import": "^0.18.3",
|
||||
"unplugin-icons": "^0.19.3",
|
||||
"vite": "5.4.6"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,8 +34,7 @@ export interface TypeHelper {
|
||||
export const createATA = async (): Promise<TypeHelper> => {
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
// @ts-expect-error
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
||||
const ts = await import('https://esm.sh/typescript@5.3.3')
|
||||
const ts = await import('https://esm.sh/typescript@5.6.3')
|
||||
|
||||
const maxConcurrentRequests = 50
|
||||
let activeRequests = 0
|
||||
@@ -63,7 +62,6 @@ export const createATA = async (): Promise<TypeHelper> => {
|
||||
|
||||
const ata = setupTypeAcquisition({
|
||||
projectName: 'monaco-ts',
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
||||
typescript: ts,
|
||||
logger: console,
|
||||
fetcher: (input, init) => {
|
||||
@@ -117,7 +115,6 @@ export const createATA = async (): Promise<TypeHelper> => {
|
||||
}
|
||||
|
||||
return {
|
||||
// eslint-disable-next-line @typescript-eslint/no-misused-promises
|
||||
acquireType,
|
||||
addListener,
|
||||
removeListener,
|
||||
|
||||
@@ -73,7 +73,6 @@ const Editor = ({
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
// @ts-expect-error
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
||||
editor['_codeEditorService'].doOpenEditor = function (
|
||||
editor: editor.IStandaloneCodeEditor,
|
||||
input: { options: { selection: Selection }; resource: { path: string } }
|
||||
|
||||
@@ -2,6 +2,6 @@ import { loader } from '@monaco-editor/react'
|
||||
|
||||
loader.config({
|
||||
paths: {
|
||||
vs: 'https://unpkg.com/monaco-editor@0.49.0/min/vs'
|
||||
vs: 'https://unpkg.com/monaco-editor@0.52.0/min/vs'
|
||||
}
|
||||
})
|
||||
|
||||
@@ -83,4 +83,4 @@
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,4 +2,4 @@
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -186,15 +186,15 @@ const Render = ({ iframeKey, compiledCode, mobileMode = false }: RenderProps) =>
|
||||
className={`device-content${isRotate ? ' rotate' : ''}`}
|
||||
style={{
|
||||
width: isRotate
|
||||
? devices.find((value) => value.name === selectedDevice)
|
||||
?.height ?? 915
|
||||
: devices.find((value) => value.name === selectedDevice)
|
||||
?.width ?? 412,
|
||||
? (devices.find((value) => value.name === selectedDevice)
|
||||
?.height ?? 915)
|
||||
: (devices.find((value) => value.name === selectedDevice)
|
||||
?.width ?? 412),
|
||||
height: isRotate
|
||||
? devices.find((value) => value.name === selectedDevice)
|
||||
?.width ?? 412
|
||||
: devices.find((value) => value.name === selectedDevice)
|
||||
?.height ?? 915
|
||||
? (devices.find((value) => value.name === selectedDevice)
|
||||
?.width ?? 412)
|
||||
: (devices.find((value) => value.name === selectedDevice)
|
||||
?.height ?? 915)
|
||||
}}
|
||||
>
|
||||
<iframe
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
}
|
||||
|
||||
if (data?.type === "SCALE") {
|
||||
document.getElementById("root").style.zoom = data.data.zoom
|
||||
document.getElementById("root").style.zoom = data.data.zoom;
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
[data-component=playground-transform] {
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ class Compiler {
|
||||
void esbuild
|
||||
.initialize({
|
||||
worker: true,
|
||||
wasmURL: 'https://esm.sh/esbuild-wasm@0.21.5/esbuild.wasm'
|
||||
wasmURL: 'https://esm.sh/esbuild-wasm@0.24.0/esbuild.wasm'
|
||||
})
|
||||
.finally(() => {
|
||||
this.init = true
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{
|
||||
"type": "object",
|
||||
"additionalProperties": {"type": "string"}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,4 +5,4 @@
|
||||
> * {
|
||||
width: 0 !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -864,4 +864,4 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { DetailedHTMLProps, HTMLAttributes } from 'react'
|
||||
import '@/assets/css/components/common/card.scss'
|
||||
|
||||
interface CardProps extends DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement> {}
|
||||
type CardProps = DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>
|
||||
|
||||
const Card = forwardRef<HTMLDivElement, CardProps>(({ className, ...props }, ref) => {
|
||||
return <div className={`card-box${className ? ` ${className}` : ''}`} {...props} ref={ref} />
|
||||
|
||||
@@ -82,94 +82,90 @@ const HideScrollbar = forwardRef<HideScrollbarElement, HideScrollbarProps>(
|
||||
},
|
||||
ref
|
||||
) => {
|
||||
useImperativeHandle<HideScrollbarElement, HideScrollbarElement>(
|
||||
ref,
|
||||
() => {
|
||||
return {
|
||||
scrollTo(x, y, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: x,
|
||||
top: y,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollX(x, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: x,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollY(y, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
top: y,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollLeft(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: rootRef.current?.scrollLeft - length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollRight(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: rootRef.current?.scrollLeft + length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollUp(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
top: rootRef.current?.scrollTop - length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollDown(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
top: rootRef.current?.scrollTop + length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
getX() {
|
||||
return rootRef.current?.scrollLeft ?? 0
|
||||
},
|
||||
getY() {
|
||||
return rootRef.current?.scrollTop ?? 0
|
||||
},
|
||||
addEventListenerWithType<K extends keyof HTMLElementEventMap>(
|
||||
type: K,
|
||||
listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => never,
|
||||
options?: boolean | AddEventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.addEventListener<K>(type, listener, options)
|
||||
},
|
||||
addEventListener(
|
||||
type: string,
|
||||
listener: EventListenerOrEventListenerObject,
|
||||
options?: boolean | AddEventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.addEventListener(type, listener, options)
|
||||
},
|
||||
removeEventListenerWithType<K extends keyof HTMLElementEventMap>(
|
||||
type: K,
|
||||
listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => never,
|
||||
options?: boolean | EventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.removeEventListener<K>(type, listener, options)
|
||||
},
|
||||
removeEventListener(
|
||||
type: string,
|
||||
listener: EventListenerOrEventListenerObject,
|
||||
options?: boolean | EventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.removeEventListener(type, listener, options)
|
||||
},
|
||||
refreshLayout(): void {
|
||||
refreshLayout()
|
||||
}
|
||||
useImperativeHandle<HideScrollbarElement, HideScrollbarElement>(ref, () => {
|
||||
return {
|
||||
scrollTo(x, y, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: x,
|
||||
top: y,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollX(x, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: x,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollY(y, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
top: y,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollLeft(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: rootRef.current?.scrollLeft - length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollRight(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
left: rootRef.current?.scrollLeft + length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollUp(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
top: rootRef.current?.scrollTop - length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
scrollDown(length, smooth?: boolean) {
|
||||
rootRef.current?.scrollTo({
|
||||
top: rootRef.current?.scrollTop + length,
|
||||
behavior: smooth === false ? 'instant' : 'smooth'
|
||||
})
|
||||
},
|
||||
getX() {
|
||||
return rootRef.current?.scrollLeft ?? 0
|
||||
},
|
||||
getY() {
|
||||
return rootRef.current?.scrollTop ?? 0
|
||||
},
|
||||
addEventListenerWithType<K extends keyof HTMLElementEventMap>(
|
||||
type: K,
|
||||
listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => never,
|
||||
options?: boolean | AddEventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.addEventListener<K>(type, listener, options)
|
||||
},
|
||||
addEventListener(
|
||||
type: string,
|
||||
listener: EventListenerOrEventListenerObject,
|
||||
options?: boolean | AddEventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.addEventListener(type, listener, options)
|
||||
},
|
||||
removeEventListenerWithType<K extends keyof HTMLElementEventMap>(
|
||||
type: K,
|
||||
listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => never,
|
||||
options?: boolean | EventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.removeEventListener<K>(type, listener, options)
|
||||
},
|
||||
removeEventListener(
|
||||
type: string,
|
||||
listener: EventListenerOrEventListenerObject,
|
||||
options?: boolean | EventListenerOptions
|
||||
): void {
|
||||
rootRef.current?.removeEventListener(type, listener, options)
|
||||
},
|
||||
refreshLayout(): void {
|
||||
refreshLayout()
|
||||
}
|
||||
},
|
||||
[]
|
||||
)
|
||||
}
|
||||
}, [])
|
||||
|
||||
const maskRef = useRef<HTMLDivElement>(null)
|
||||
const rootRef = useRef<HTMLDivElement>(null)
|
||||
|
||||
@@ -7,7 +7,6 @@ interface DragHandleProps {
|
||||
}
|
||||
|
||||
const DragHandle = ({ padding }: DragHandleProps) => {
|
||||
// eslint-disable-next-line @typescript-eslint/unbound-method
|
||||
const { attributes, listeners, ref } = useContext(HandleContextInst)
|
||||
|
||||
return (
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { DraggableSyntheticListeners } from '@dnd-kit/core'
|
||||
|
||||
export interface HandleContext {
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
attributes: Record<string, any>
|
||||
listeners: DraggableSyntheticListeners
|
||||
ref(node: HTMLElement | null): void
|
||||
|
||||
@@ -126,10 +126,8 @@ const SignIn = () => {
|
||||
form={twoFactorForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
||||
twoFactorForm
|
||||
.getFieldInstance('twoFactorCode')
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
||||
.focus()
|
||||
}, 50)
|
||||
}}
|
||||
|
||||
@@ -31,7 +31,6 @@ const Mail = () => {
|
||||
form={mailSendForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
mailSendForm?.getFieldInstance('to').focus()
|
||||
}, 50)
|
||||
}}
|
||||
|
||||
@@ -14,8 +14,6 @@ import {
|
||||
import { BarChart, BarSeriesOption, LineChart, LineSeriesOption } from 'echarts/charts'
|
||||
import { SVGRenderer } from 'echarts/renderers'
|
||||
import { UniversalTransition } from 'echarts/features'
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
// @ts-expect-error
|
||||
import { CallbackDataParams } from 'echarts/types/dist/shared'
|
||||
import { utcToLocalTime } from '@/util/datetime'
|
||||
|
||||
@@ -83,11 +81,13 @@ export const barEChartsBaseOption: EChartsOption = {
|
||||
|
||||
export const getTooltipTimeFormatter = (format: string = 'yyyy-MM-DD HH:mm:ss') => {
|
||||
return (params: CallbackDataParams[]) =>
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument,@typescript-eslint/no-unsafe-member-access
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
// @ts-expect-error
|
||||
`${utcToLocalTime(params[0].data[0], format)}<br>${params
|
||||
.map(
|
||||
(param) =>
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
||||
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
||||
// @ts-expect-error
|
||||
`<span style="display: flex; justify-content: space-between;"><span>${param.marker}${param.seriesName}</span><span style="font-weight: bold; margin-left: 16px;">${param.data[1]}</span></span>`
|
||||
)
|
||||
.join('')}`
|
||||
|
||||
@@ -628,7 +628,6 @@ const Base = () => {
|
||||
form={addFileForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
addFileForm?.getFieldInstance('fileName').focus()
|
||||
}, 50)
|
||||
}}
|
||||
@@ -822,7 +821,6 @@ const Base = () => {
|
||||
form={renameFileForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
renameFileForm?.getFieldInstance('fileName').focus()
|
||||
}, 50)
|
||||
}}
|
||||
|
||||
@@ -479,7 +479,6 @@ const Template = () => {
|
||||
form={addFileForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
addFileForm?.getFieldInstance('fileName').focus()
|
||||
}, 50)
|
||||
}}
|
||||
@@ -674,7 +673,6 @@ const Template = () => {
|
||||
form={renameFileForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
renameFileForm?.getFieldInstance('fileName').focus()
|
||||
}, 50)
|
||||
}}
|
||||
|
||||
@@ -353,7 +353,6 @@ const User = () => {
|
||||
wrapperCol={{ span: 18 }}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
changePasswordForm?.getFieldInstance('password').focus()
|
||||
}, 50)
|
||||
}}
|
||||
|
||||
@@ -74,7 +74,6 @@ const Create = () => {
|
||||
|
||||
const reader = new FileReader()
|
||||
reader.addEventListener('load', () => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-base-to-string
|
||||
form.setFieldValue('icon', reader.result!.toString().split(',')[1])
|
||||
void form.validateFields(['icon'])
|
||||
})
|
||||
@@ -163,7 +162,7 @@ const Create = () => {
|
||||
temp.push(item)
|
||||
}
|
||||
})
|
||||
form.setFieldValue('keyword', temp)
|
||||
form.setFieldValue('keywords', temp)
|
||||
}, [form, formValues?.keywords])
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
@@ -151,7 +151,6 @@ const Edit = () => {
|
||||
|
||||
const reader = new FileReader()
|
||||
reader.addEventListener('load', () => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-base-to-string
|
||||
form.setFieldValue('icon', reader.result!.toString().split(',')[1])
|
||||
void form.validateFields(['icon'])
|
||||
})
|
||||
|
||||
@@ -266,7 +266,6 @@ const Tools = () => {
|
||||
form={upgradeForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
upgradeForm?.getFieldInstance('toolId').focus()
|
||||
}, 50)
|
||||
}}
|
||||
|
||||
@@ -22,10 +22,6 @@ import Card from '@/components/common/Card'
|
||||
import FlexBox from '@/components/common/FlexBox'
|
||||
import HideScrollbar from '@/components/common/HideScrollbar'
|
||||
|
||||
interface ChangePasswordFields extends UserUpdatePasswordParam {
|
||||
newPasswordConfirm: string
|
||||
}
|
||||
|
||||
const User = () => {
|
||||
const [modal, contextHolder] = AntdModal.useModal()
|
||||
const [form] = AntdForm.useForm<UserInfoUpdateParam>()
|
||||
@@ -37,7 +33,7 @@ const User = () => {
|
||||
const [isGettingAvatar, setIsGettingAvatar] = useState(false)
|
||||
const [avatar, setAvatar] = useState('')
|
||||
const [userWithPowerInfoVo, setUserWithPowerInfoVo] = useState<UserWithPowerInfoVo>()
|
||||
const [changePasswordForm] = AntdForm.useForm<ChangePasswordFields>()
|
||||
const [changePasswordForm] = AntdForm.useForm<UserChangePasswordParam>()
|
||||
|
||||
const handleOnCopyToClipboard = (username?: string) => {
|
||||
return username
|
||||
@@ -127,7 +123,6 @@ const User = () => {
|
||||
wrapperCol={{ span: 18 }}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
|
||||
changePasswordForm?.getFieldInstance('originalPassword').focus()
|
||||
}, 50)
|
||||
}}
|
||||
@@ -260,10 +255,8 @@ const User = () => {
|
||||
form={twoFactorForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
||||
twoFactorForm
|
||||
?.getFieldInstance('twoFactorCode')
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
||||
.focus()
|
||||
}, 50)
|
||||
}}
|
||||
@@ -352,10 +345,8 @@ const User = () => {
|
||||
form={twoFactorForm}
|
||||
ref={() => {
|
||||
setTimeout(() => {
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
||||
twoFactorForm
|
||||
?.getFieldInstance('twoFactorCode')
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
||||
.focus()
|
||||
}, 50)
|
||||
}}
|
||||
|
||||
@@ -12,7 +12,7 @@ export const useUpdatedEffect = (effect: EffectCallback, dependencies: Dependenc
|
||||
}, dependencies)
|
||||
}
|
||||
|
||||
export const usePrevious = <T,>(value: T): T | undefined => {
|
||||
export const usePrevious = <T>(value: T): T | undefined => {
|
||||
const ref = useRef<T>()
|
||||
useEffect(() => {
|
||||
ref.current = value
|
||||
|
||||
@@ -12,14 +12,12 @@ import { AntDesignResolver } from './build/resolvers/antd'
|
||||
export default defineConfig({
|
||||
plugins: [
|
||||
react(),
|
||||
// eslint-disable-next-line @typescript-eslint/no-unsafe-call
|
||||
AutoImport({
|
||||
// targets to transform
|
||||
include: [
|
||||
/\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
|
||||
/\.md$/ // .md
|
||||
],
|
||||
|
||||
// global imports to register
|
||||
imports: [
|
||||
'react',
|
||||
@@ -42,7 +40,6 @@ export default defineConfig({
|
||||
// Defaults to './auto-imports.d.ts' when `typescript` is installed locally.
|
||||
// Set `false` to disable.
|
||||
dts: './auto-imports.d.ts',
|
||||
|
||||
// Custom resolvers, compatible with `unplugin-vue-components`
|
||||
// see https://github.com/antfu/unplugin-auto-import/pull/23/
|
||||
resolvers: [
|
||||
@@ -55,7 +52,6 @@ export default defineConfig({
|
||||
resolveIcons: true
|
||||
})
|
||||
],
|
||||
|
||||
// Generate corresponding .eslintrc-auto-import.json file.
|
||||
// eslint globals Docs - https://eslint.org/docs/user-guide/configuring/language-options#specifying-globals
|
||||
eslintrc: {
|
||||
|
||||
Reference in New Issue
Block a user