fix: 补回被合成入口丢掉的 default 导出

button/container/data-converter/data-list/grid-layout/grid-layout-form/
res-ws/virtual-fs 这几个入口的 index.js 都用 export { default as X } from './xxx'
转发了 default 导出,但同级有手写 types/ 目录时会触发合成入口逻辑,用
export * from './index' 拼入口文件,而 export * 在 ES 模块语义里不会带出 default,
导致这些包的 default 导出(部分甚至连实现本身,如 DataConverter、ResWs 整个类)
被 tree-shake 掉,没有出现在最终产物里。
This commit is contained in:
2026-09-23 11:13:04 +08:00
parent ac0e27109b
commit acbff01332
8 changed files with 176 additions and 7 deletions
+32
View File
@@ -1,5 +1,36 @@
import React from 'react';
import { WidgetType, WidgetContainerProps } from './button';
/**
* 按一串中间件(middleware)链式转换数据;每个中间件可以是函数,也可以是要动态加载的
* 组件名字符串(通过 core.getWidgetComponent 解析),支持嵌套数组表示的中间件组
*/
declare class DataConverter {
static "__#private@#resolver": any;
static "__#private@#newMiddleware": any;
/**
* @param {...(Array|[string|Function, *])} middlewares 中间件列表,每项是
* [中间件名或函数, 传给中间件的配置],或者是这种元组的嵌套数组(会被展开)
*/
constructor(...middlewares: (any[] | [string | Function, any])[]);
/**
* 依次跑完所有中间件,把 value 转换成最终结果;单个中间件报错会被跳过,不中断整条链
* @param {*} value 原始值
* @param {*} [record] 关联的记录数据,中间件里可通过 this.getRecord() 取到
* @returns {Promise<*>} 转换后的结果
*/
toValue: (value: any, record?: any) => Promise<any>;
/**
* 把 toValue 的异步转换结果渲染成 React 元素;转换完成前显示 loading,转换出错则显示错误信息
* @param {*} value 原始值
* @param {*} record 关联的记录数据
* @param {*} [loading] 转换完成前显示的占位内容
* @returns {React.ReactElement}
*/
toRender: (value: any, record: any, loading?: any) => React.ReactElement;
#private;
}
// ===== 用户数据结构(复用类型,JSDoc 无法跨文件引用,放 .d.ts) =====
interface UserRoleBinding {
@@ -109,4 +140,5 @@ interface WorkerPipeInstance {
clear: (session: string) => void
}
export { DataConverter as default };
export type { HttpHeaders, MenuItem, RouteItem, UserInfo, UserRoleBinding, WorkerPipeInstance };