arthub-table 0.2.32-next.0 → 0.2.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/arthub-table.common.js +1 -1
- package/dist/arthub-table.common.js.map +1 -1
- package/dist/arthub-table.umd.js +1 -1
- package/dist/arthub-table.umd.js.map +1 -1
- package/dist/arthub-table.umd.min.js +1 -1
- package/dist/arthub-table.umd.min.js.map +1 -1
- package/dist/types/core/Body.d.ts +0 -11
- package/dist/types/core/DataGrid.d.ts +0 -6
- package/dist/types/core/viewers/index.d.ts +0 -3
- package/dist/types/core/viewers/types.d.ts +2 -24
- package/dist/types/index.d.ts +1 -2
- package/package.json +1 -1
- package/dist/types/core/viewers/PreImageViewer.d.ts +0 -49
|
@@ -87,17 +87,6 @@ declare class Body {
|
|
|
87
87
|
* Check if mouse is inside a reminder triangle area (for cursor:pointer)
|
|
88
88
|
*/
|
|
89
89
|
private isInsideReminderArea;
|
|
90
|
-
/**
|
|
91
|
-
* 命中测试:判断 (x, y) 是否落在某个可见 cell 的 reminder 三角区域内。
|
|
92
|
-
* 命中则返回该 cell 的 { rowIndex, colIndex },否则返回 null。
|
|
93
|
-
*
|
|
94
|
-
* 用于 mousedown 阶段提前识别"点击 reminder 三角",从而跳过 selectCell
|
|
95
|
-
* 以保留当前选区(避免多选被 clearMultiSelect 清空)。
|
|
96
|
-
*/
|
|
97
|
-
getReminderTriangleHit(x: number, y: number): {
|
|
98
|
-
rowIndex: number;
|
|
99
|
-
colIndex: number;
|
|
100
|
-
} | null;
|
|
101
90
|
/**
|
|
102
91
|
* Check if click hits a viewer with onClick handler
|
|
103
92
|
* @returns true if viewer handled the click
|
|
@@ -1395,12 +1395,6 @@ declare class DataGrid {
|
|
|
1395
1395
|
multiSelectCell(x: number, y: number, mouseX: number, mouseY: number): void;
|
|
1396
1396
|
endMultiSelect(): void;
|
|
1397
1397
|
clearMultiSelect(): void;
|
|
1398
|
-
/**
|
|
1399
|
-
* 判断指定单元格(colIndex/rowIndex)是否落在当前选区范围内。
|
|
1400
|
-
* 选区未显示(selector.show=false)时返回 false。
|
|
1401
|
-
* 用于"点击 reminder 三角时保留已有选区"的判断(仅当被点 cell 已在选区内才保留)。
|
|
1402
|
-
*/
|
|
1403
|
-
isCellInsideCurrentSelection(colIndex: number, rowIndex: number): boolean;
|
|
1404
1398
|
clearAllNestedGridsSelection(): void;
|
|
1405
1399
|
selectCols(col: any, e?: {
|
|
1406
1400
|
ctrlKey?: boolean;
|
|
@@ -7,7 +7,6 @@ export { default as ViewerRegistry, getViewerRegistry } from './ViewerRegistry';
|
|
|
7
7
|
export { default as TextViewer } from './TextViewer';
|
|
8
8
|
export { default as DropdownViewer } from './DropdownViewer';
|
|
9
9
|
export { default as ImageViewer } from './ImageViewer';
|
|
10
|
-
export { default as PreImageViewer } from './PreImageViewer';
|
|
11
10
|
export { default as PersonViewer } from './PersonViewer';
|
|
12
11
|
export { default as ProgressViewer } from './ProgressViewer';
|
|
13
12
|
export { default as DatetimeViewer } from './DatetimeViewer';
|
|
@@ -47,7 +46,6 @@ export { default as DeliveryExpectationsViewer } from './DeliveryExpectationsVie
|
|
|
47
46
|
import TextViewer from './TextViewer';
|
|
48
47
|
import DropdownViewer from './DropdownViewer';
|
|
49
48
|
import ImageViewer from './ImageViewer';
|
|
50
|
-
import PreImageViewer from './PreImageViewer';
|
|
51
49
|
import PersonViewer from './PersonViewer';
|
|
52
50
|
import ProgressViewer from './ProgressViewer';
|
|
53
51
|
import DatetimeViewer from './DatetimeViewer';
|
|
@@ -97,7 +95,6 @@ export declare const defaultViewers: {
|
|
|
97
95
|
number: typeof TextViewer;
|
|
98
96
|
select: typeof DropdownViewer;
|
|
99
97
|
image: typeof ImageViewer;
|
|
100
|
-
preImage: typeof PreImageViewer;
|
|
101
98
|
person: typeof PersonViewer;
|
|
102
99
|
progress: typeof ProgressViewer;
|
|
103
100
|
datetime: typeof DatetimeViewer;
|
|
@@ -303,12 +303,8 @@ export interface ImageViewerData extends CellViewerData {
|
|
|
303
303
|
animated?: boolean;
|
|
304
304
|
/** 点击图片回调(与 DOM multiImageViewer 的 onClickImage 签名一致) */
|
|
305
305
|
onClickImage?: (imgUrls: string[], initIndex: number, assetIds: (number | string | undefined)[], data: any) => void;
|
|
306
|
-
/**
|
|
307
|
-
|
|
308
|
-
* 第三个参数 data 透传当前 cell 的完整 ViewerData,便于业务侧根据 viewer 类型/行上下文做分支
|
|
309
|
-
* (如 preImage 列触发反馈面板 popper 而非简版预览,需要 _rowId / _colKey 走 findRow 拼 fullData)
|
|
310
|
-
*/
|
|
311
|
-
onImgMouseIn?: (url: string, virtualAnchor: any, data?: any) => void;
|
|
306
|
+
/** 鼠标移入图片回调(用于显示大图预览) */
|
|
307
|
+
onImgMouseIn?: (url: string, virtualAnchor: any) => void;
|
|
312
308
|
/** 鼠标移出图片回调(用于隐藏大图预览) */
|
|
313
309
|
onImgMouseOut?: () => void;
|
|
314
310
|
/**
|
|
@@ -327,23 +323,6 @@ export interface ImageViewerData extends CellViewerData {
|
|
|
327
323
|
progress?: number;
|
|
328
324
|
}>;
|
|
329
325
|
}
|
|
330
|
-
/**
|
|
331
|
-
* 文件预览图 viewer 数据
|
|
332
|
-
*
|
|
333
|
-
* 与 ImageViewerData 的差异(与 DOM `preImageViewer.ts` 行为对齐):
|
|
334
|
-
* 1. 接收单值 string URL(不像 ImageViewer 接收 string[])
|
|
335
|
-
* 2. 多接收 `fileFormat` 字段:当 fileFormat 不属于图片格式时,
|
|
336
|
-
* PreImageViewer 会显示 fileFormat 对应的文件类型图标(PDF / Word / Excel / Sketch ...),
|
|
337
|
-
* 而不是缩略图
|
|
338
|
-
*
|
|
339
|
-
* 其余字段语义与 ImageViewerData 一致(hover / 双击回调签名兼容,可直接复用 imageCallbacks)。
|
|
340
|
-
*/
|
|
341
|
-
export interface PreImageViewerData extends Omit<ImageViewerData, 'value'> {
|
|
342
|
-
/** 缩略图 URL(单值;空字符串/null 时显示占位符 '-') */
|
|
343
|
-
value: string | null;
|
|
344
|
-
/** 文件后缀名(如 'pdf' / 'docx' / 'png'),用于决定显示缩略图还是文件类型图标 */
|
|
345
|
-
fileFormat?: string;
|
|
346
|
-
}
|
|
347
326
|
/**
|
|
348
327
|
* Person/User viewer data
|
|
349
328
|
*/
|
|
@@ -998,7 +977,6 @@ export interface ViewerTypeMap {
|
|
|
998
977
|
text: TextViewerData;
|
|
999
978
|
select: DropdownViewerData;
|
|
1000
979
|
image: ImageViewerData;
|
|
1001
|
-
preImage: PreImageViewerData;
|
|
1002
980
|
person: PersonViewerData;
|
|
1003
981
|
progress: ProgressViewerData;
|
|
1004
982
|
datetime: DatetimeViewerData;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -10,14 +10,13 @@ export { install };
|
|
|
10
10
|
export default DataGrid;
|
|
11
11
|
export type { CellData, CellStyle, RowData, ColData, DataGridOptions, Position, Size, Rect, Range, CellRange, HistoryItem, ValidatorRule, ColumnType, ColumnConfig, SelectorState, EditorState, AutofillState, RangeState, DrawOptions, TextOptions, ClipboardState, EventHandlers, Direction, ScrollDirection, GroupLevel, SeparateLevel, BaseGroupedRowData, GroupRowData, SeparateRowData, NormalRowData, GroupedTableRowData, GroupRowStyle, SeparatorRowStyle, StatisticOption, FooterCellData, FooterData, FooterCellClickInfo, } from './core/types';
|
|
12
12
|
export { isGroupRow, isSeparateRow, isNormalRow, GROUP_TABLE_CONSTANTS, DEFAULT_GROUP_STYLES, DEFAULT_SEPARATOR_STYLES, } from './core/types';
|
|
13
|
-
export type { CellBounds, ViewerRenderContext, ViewerDragState, CellViewer, CellViewerData, ViewerOption, ViewerStyle, TextViewerData, DropdownViewerData, ImageViewerData,
|
|
13
|
+
export type { CellBounds, ViewerRenderContext, ViewerDragState, CellViewer, CellViewerData, ViewerOption, ViewerStyle, TextViewerData, DropdownViewerData, ImageViewerData, PersonViewerData, PersonInfo, ProgressViewerData, DatetimeViewerData, BooleanViewerData, StatusViewerData, StatusOption, GroupHeaderViewerData, GroupNameViewerData, GroupNameTagItem, GroupNamePersonItem, SeparatorRowViewerData, PunchViewerData, PunchValue, ModuleInfo, ModuleViewerData, TextViewerWithSwitcherData, FileItem, FileViewerData, HyperlinkTextViewerData, IUpstreamModule, IUpstreamReminderProperties, IUpstreamSyncProperty, IUpstreamFieldViewItem, UpstreamViewerData, TaskNodeItem, TaskNodeViewerData, NestedGridViewerData, NestedColumnConfig, ViewerConstructor, ViewerFactory, ViewerTypeMap, ViewerType, TypedCellData, TableActionButtonOption, TableActionButtonViewerData, } from './core/viewers/types';
|
|
14
14
|
export { isTextViewerData, isDropdownViewerData, isPersonViewerData, isProgressViewerData, isNestedGridViewerData, } from './core/viewers/types';
|
|
15
15
|
export { default as ViewerRegistry, getViewerRegistry, } from './core/viewers/ViewerRegistry';
|
|
16
16
|
export { registerDefaultViewers, defaultViewers } from './core/viewers/index';
|
|
17
17
|
export { default as TextViewer } from './core/viewers/TextViewer';
|
|
18
18
|
export { default as DropdownViewer } from './core/viewers/DropdownViewer';
|
|
19
19
|
export { default as ImageViewer } from './core/viewers/ImageViewer';
|
|
20
|
-
export { default as PreImageViewer } from './core/viewers/PreImageViewer';
|
|
21
20
|
export { default as PersonViewer } from './core/viewers/PersonViewer';
|
|
22
21
|
export { default as ProgressViewer } from './core/viewers/ProgressViewer';
|
|
23
22
|
export { default as DatetimeViewer } from './core/viewers/DatetimeViewer';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "arthub-table",
|
|
3
|
-
"version": "0.2.32
|
|
3
|
+
"version": "0.2.32",
|
|
4
4
|
"description": "High-performance canvas-based table/grid component for Vue 3 with TypeScript support, featuring virtual scrolling, cell viewers, grouped rows, and nested grids.",
|
|
5
5
|
"main": "dist/arthub-table.common.js",
|
|
6
6
|
"module": "dist/arthub-table.umd.min.js",
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* PreImageViewer - 文件预览图渲染器(DOM PreImageViewer 的 Canvas 对齐版)
|
|
3
|
-
*
|
|
4
|
-
* 与 ImageViewer 的差异(与 DOM `preImageViewer.ts` 行为对齐):
|
|
5
|
-
* 1. 当 fileFormat 不属于图片格式(且 URL 后缀也不属于图片格式)时,
|
|
6
|
-
* 显示 fileFormat 对应的"文件类型图标"(PDF / Word / Excel / Sketch ...),
|
|
7
|
-
* 而不是缩略图 — 与 DOM `PreImageViewer.updateMiddle` 的"非图片型"分支一致。
|
|
8
|
-
* 2. 其余渲染(hover 浮窗、双击预览、loading 占位、状态图标兜底等)100% 委托 `ImageViewer`,
|
|
9
|
-
* 不重复实现像素绘制逻辑。
|
|
10
|
-
*
|
|
11
|
-
* 实现策略:独立类 + 内部组合(持有)一个 ImageViewer 实例完成实际绘制,
|
|
12
|
-
* 在 draw 入口决定"绘制缩略图 URL"还是"绘制 fileFormat 图标 URL",
|
|
13
|
-
* 然后委托 `ImageViewer.draw` 完成像素级渲染。
|
|
14
|
-
*
|
|
15
|
-
* type 标识独立为 `'preImage'`,便于业务侧/适配层做精细化路由。
|
|
16
|
-
*/
|
|
17
|
-
import type { CellViewer, ViewerRenderContext, PreImageViewerData } from './types';
|
|
18
|
-
declare class PreImageViewer implements CellViewer<PreImageViewerData> {
|
|
19
|
-
readonly type = "preImage";
|
|
20
|
-
/** 内部组合的 ImageViewer 实例,承担实际像素绘制 / hover / 命中检测 */
|
|
21
|
-
private imageViewer;
|
|
22
|
-
constructor();
|
|
23
|
-
/**
|
|
24
|
-
* 绘制入口:判定是显示缩略图还是文件类型图标
|
|
25
|
-
* 对齐 DOM `preImageViewer.updateMiddle` 的 ext + IMAGE_EXTENSIONS 判定逻辑
|
|
26
|
-
*/
|
|
27
|
-
draw(context: ViewerRenderContext, data: PreImageViewerData): void;
|
|
28
|
-
/**
|
|
29
|
-
* 给委托给 ImageViewer 的 data 注入 __viewerType: 'preImage'
|
|
30
|
-
* 这样 ImageViewer 触发的 onImgMouseIn / onDblClick 回调里业务侧能识别这是 preImage 列
|
|
31
|
-
* (用于走"反馈面板 popper"而非"简版大图 popper")
|
|
32
|
-
*/
|
|
33
|
-
private withViewerType;
|
|
34
|
-
/**
|
|
35
|
-
* 双击委托给 ImageViewer(onClickImage 由业务侧注入,签名一致)
|
|
36
|
-
*/
|
|
37
|
-
onDblClick(context: ViewerRenderContext, data: PreImageViewerData, localX: number, localY: number): boolean;
|
|
38
|
-
/**
|
|
39
|
-
* 鼠标悬停光标 + hover 回调委托给 ImageViewer
|
|
40
|
-
* 注意:必须注入 __viewerType,否则 ImageViewer.handleHoverChange 透传给业务回调的 data 不带标记,
|
|
41
|
-
* 业务侧无法区分这是 preImage 列还是普通 image 列
|
|
42
|
-
*/
|
|
43
|
-
getInteractiveCursor(context: ViewerRenderContext, data: PreImageViewerData, localX: number, localY: number): string | null;
|
|
44
|
-
/**
|
|
45
|
-
* hover 状态重置委托给 ImageViewer
|
|
46
|
-
*/
|
|
47
|
-
resetHoverState(data: PreImageViewerData): void;
|
|
48
|
-
}
|
|
49
|
-
export default PreImageViewer;
|