fix: 修复关闭SSH终端标签页时会话状态未更新的问题

This commit is contained in:
2026-04-18 02:35:38 +08:00
commit 6e2e2f9387
43467 changed files with 5489040 additions and 0 deletions
+35
View File
@@ -0,0 +1,35 @@
import * as React from 'react';
import addClassDecoratorSupport from './addClassDecoratorSupport';
const h = React.createElement;
const noWrap = (Comp, propName, props, state) => h(Comp, propName ?
{[propName]: state, ...props} :
{...state, ...props}
);
export const divWrapper = (Comp, propName, props, state) =>
h('div', null, noWrap(Comp, propName, props, state)) as any;
const createEnhancer = (Facc, prop?: string, wrapper = noWrap) => {
const enhancer = (Comp, propName: any = prop, faccProps: object = null) => {
const isClassDecoratorMethodCall = typeof Comp === 'string';
if (isClassDecoratorMethodCall) {
return (Klass) => enhancer(Klass, Comp as any || prop, propName as any);
}
const Enhanced = (props) =>
h(Facc, faccProps, (state) => wrapper(Comp, propName, props, state));
if (process.env.NODE_ENV !== 'production') {
(Enhanced as any).displayName = `${Facc.displayName || Facc.name}(${Comp.displayName || Comp.name})`;
}
return isClassDecoratorMethodCall ? addClassDecoratorSupport(Enhanced) : Enhanced;
};
return enhancer;
}
export default createEnhancer;