plus-pro-components
Version:
Page level components developed based on Element Plus.
607 lines (605 loc) • 26.5 kB
TypeScript
import { DebouncedFunc } from 'lodash-es';
import { default as __DTS_DEFAULT_0__ } from 'element-plus/es/components/table/src/table-layout';
import { EpPropMergeType } from 'element-plus/es/utils';
import { DefineComponent, ComponentOptionsMixin, PublicProps, ExtractPropTypes, CreateComponentPublicInstance, PropType, CSSProperties, ComputedRef, Ref, VNodeProps, AllowedComponentProps, ComponentCustomProps } from 'vue';
import { TableInstance, SummaryMethod, ColumnCls, ColumnStyle, CellCls, CellStyle, Sort, ElTooltipProps, TableColumnCtx, TreeNode, Translator, Table } from 'element-plus';
import { RecordType } from 'plus-pro-components/es/types';
import { Options as SortableOptions } from 'sortablejs';
export interface PlusTableColumnDragSortProps {
sortable: SortableOptions | boolean;
tableInstance: TableInstance | null;
dragSortableTableColumnProps: RecordType;
}
export interface PlusTableColumnDragSortEmits {
(e: 'dragSortEnd', newIndex: number, oldIndex: number): void;
}
declare const _default: __VLS_WithTemplateSlots< DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PlusTableColumnDragSortProps>, {
sortable: boolean;
tableInstance: null;
dragSortableTableColumnProps: () => {};
}>, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
dragSortEnd: (newIndex: number, oldIndex: number) => void;
}, string, PublicProps, Readonly< ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PlusTableColumnDragSortProps>, {
sortable: boolean;
tableInstance: null;
dragSortableTableColumnProps: () => {};
}>>> & {
onDragSortEnd?: ((newIndex: number, oldIndex: number) => any) | undefined;
}, {
sortable: boolean | SortableOptions;
dragSortableTableColumnProps: RecordType;
tableInstance: CreateComponentPublicInstance<Readonly< ExtractPropTypes<{
data: {
type: PropType<any[]>;
default: () => never[];
};
size: {
readonly type: PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
readonly required: false;
readonly validator: ((val: unknown) => boolean) | undefined;
__epPropKey: true;
};
width: (NumberConstructor | StringConstructor)[];
height: (NumberConstructor | StringConstructor)[];
maxHeight: (NumberConstructor | StringConstructor)[];
fit: {
type: BooleanConstructor;
default: boolean;
};
stripe: BooleanConstructor;
border: BooleanConstructor;
rowKey: PropType<string | ((row: any) => string) | undefined>;
showHeader: {
type: BooleanConstructor;
default: boolean;
};
showSummary: BooleanConstructor;
sumText: StringConstructor;
summaryMethod: PropType< SummaryMethod<any> | undefined>;
rowClassName: PropType< ColumnCls<any> | undefined>;
rowStyle: PropType< ColumnStyle<any> | undefined>;
cellClassName: PropType< CellCls<any> | undefined>;
cellStyle: PropType< CellStyle<any> | undefined>;
headerRowClassName: PropType< ColumnCls<any> | undefined>;
headerRowStyle: PropType< ColumnStyle<any> | undefined>;
headerCellClassName: PropType< CellCls<any> | undefined>;
headerCellStyle: PropType< CellStyle<any> | undefined>;
highlightCurrentRow: BooleanConstructor;
currentRowKey: (NumberConstructor | StringConstructor)[];
emptyText: StringConstructor;
expandRowKeys: PropType<any[] | undefined>;
defaultExpandAll: BooleanConstructor;
defaultSort: PropType< Sort | undefined>;
tooltipEffect: StringConstructor;
tooltipOptions: PropType<Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
spanMethod: PropType<((data: {
row: any;
rowIndex: number;
column: TableColumnCtx<any>;
columnIndex: number;
}) => number[] | {
rowspan: number;
colspan: number;
} | undefined) | undefined>;
selectOnIndeterminate: {
type: BooleanConstructor;
default: boolean;
};
indent: {
type: NumberConstructor;
default: number;
};
treeProps: {
type: PropType<{
hasChildren?: string | undefined;
children?: string | undefined;
} | undefined>;
default: () => {
hasChildren: string;
children: string;
};
};
lazy: BooleanConstructor;
load: PropType<((row: any, treeNode: TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
style: {
type: PropType<CSSProperties>;
default: () => {};
};
className: {
type: StringConstructor;
default: string;
};
tableLayout: {
type: PropType<"fixed" | "auto">;
default: string;
};
scrollbarAlwaysOn: BooleanConstructor;
flexible: BooleanConstructor;
showOverflowTooltip: PropType<boolean | Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
}>> & {
onSelect?: ((...args: any[]) => any) | undefined;
"onExpand-change"?: ((...args: any[]) => any) | undefined;
"onCurrent-change"?: ((...args: any[]) => any) | undefined;
"onSelect-all"?: ((...args: any[]) => any) | undefined;
"onSelection-change"?: ((...args: any[]) => any) | undefined;
"onCell-mouse-enter"?: ((...args: any[]) => any) | undefined;
"onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
"onCell-contextmenu"?: ((...args: any[]) => any) | undefined;
"onCell-click"?: ((...args: any[]) => any) | undefined;
"onCell-dblclick"?: ((...args: any[]) => any) | undefined;
"onRow-click"?: ((...args: any[]) => any) | undefined;
"onRow-contextmenu"?: ((...args: any[]) => any) | undefined;
"onRow-dblclick"?: ((...args: any[]) => any) | undefined;
"onHeader-click"?: ((...args: any[]) => any) | undefined;
"onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
"onSort-change"?: ((...args: any[]) => any) | undefined;
"onFilter-change"?: ((...args: any[]) => any) | undefined;
"onHeader-dragend"?: ((...args: any[]) => any) | undefined;
}, {
ns: {
namespace: ComputedRef<string>;
b: (blockSuffix?: string | undefined) => string;
e: (element?: string | undefined) => string;
m: (modifier?: string | undefined) => string;
be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
em: (element?: string | undefined, modifier?: string | undefined) => string;
bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
is: {
(name: string, state: boolean | undefined): string;
(name: string): string;
};
cssVar: (object: Record<string, string>) => Record<string, string>;
cssVarName: (name: string) => string;
cssVarBlock: (object: Record<string, string>) => Record<string, string>;
cssVarBlockName: (name: string) => string;
};
layout: __DTS_DEFAULT_0__<any>;
store: any;
handleHeaderFooterMousewheel: (event: any, data: any) => void;
handleMouseLeave: () => void;
tableId: string;
tableSize: ComputedRef<"" | "default" | "small" | "large">;
isHidden: Ref<boolean>;
isEmpty: ComputedRef<boolean>;
renderExpanded: Ref<null>;
resizeProxyVisible: Ref<boolean>;
resizeState: Ref<{
width: number | null;
height: number | null;
headerHeight: number | null;
}>;
isGroup: Ref<boolean>;
bodyWidth: ComputedRef<string>;
tableBodyStyles: ComputedRef<{
width: string;
}>;
emptyBlockStyle: ComputedRef<{
width: string;
height: string;
} | null>;
debouncedUpdateLayout: DebouncedFunc<() => void>;
handleFixedMousewheel: (event: any, data: any) => void;
setCurrentRow: (row: any) => void;
getSelectionRows: () => any;
toggleRowSelection: (row: any, selected: boolean) => void;
clearSelection: () => void;
clearFilter: (columnKeys?: string[] | undefined) => void;
toggleAllSelection: () => void;
toggleRowExpansion: (row: any, expanded?: boolean | undefined) => void;
clearSort: () => void;
doLayout: () => void;
sort: (prop: string, order: string) => void;
t: Translator;
setDragVisible: (visible: boolean) => void;
context: Table<any>;
computedSumText: ComputedRef<string>;
computedEmptyText: ComputedRef<string>;
tableLayout: ComputedRef<"fixed" | "auto" | undefined>;
scrollbarViewStyle: {
display: string;
verticalAlign: string;
};
tableInnerStyle: ComputedRef<{
height: string | number;
maxHeight?: undefined;
} | {
maxHeight: string | number;
height?: undefined;
} | {
height?: undefined;
maxHeight?: undefined;
}>;
scrollbarStyle: ComputedRef<{
height: string;
maxHeight?: undefined;
} | {
maxHeight: string;
height?: undefined;
} | {
height?: undefined;
maxHeight?: undefined;
}>;
scrollBarRef: Ref<any>;
scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void;
setScrollLeft: (left?: number | undefined) => void;
setScrollTop: (top?: number | undefined) => void;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("select" | "select-all" | "selection-change" | "cell-mouse-enter" | "cell-mouse-leave" | "cell-contextmenu" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-click" | "header-contextmenu" | "sort-change" | "filter-change" | "current-change" | "header-dragend" | "expand-change" | "cell-click" | "cell-dblclick")[], VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly< ExtractPropTypes<{
data: {
type: PropType<any[]>;
default: () => never[];
};
size: {
readonly type: PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
readonly required: false;
readonly validator: ((val: unknown) => boolean) | undefined;
__epPropKey: true;
};
width: (NumberConstructor | StringConstructor)[];
height: (NumberConstructor | StringConstructor)[];
maxHeight: (NumberConstructor | StringConstructor)[];
fit: {
type: BooleanConstructor;
default: boolean;
};
stripe: BooleanConstructor;
border: BooleanConstructor;
rowKey: PropType<string | ((row: any) => string) | undefined>;
showHeader: {
type: BooleanConstructor;
default: boolean;
};
showSummary: BooleanConstructor;
sumText: StringConstructor;
summaryMethod: PropType< SummaryMethod<any> | undefined>;
rowClassName: PropType< ColumnCls<any> | undefined>;
rowStyle: PropType< ColumnStyle<any> | undefined>;
cellClassName: PropType< CellCls<any> | undefined>;
cellStyle: PropType< CellStyle<any> | undefined>;
headerRowClassName: PropType< ColumnCls<any> | undefined>;
headerRowStyle: PropType< ColumnStyle<any> | undefined>;
headerCellClassName: PropType< CellCls<any> | undefined>;
headerCellStyle: PropType< CellStyle<any> | undefined>;
highlightCurrentRow: BooleanConstructor;
currentRowKey: (NumberConstructor | StringConstructor)[];
emptyText: StringConstructor;
expandRowKeys: PropType<any[] | undefined>;
defaultExpandAll: BooleanConstructor;
defaultSort: PropType< Sort | undefined>;
tooltipEffect: StringConstructor;
tooltipOptions: PropType<Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
spanMethod: PropType<((data: {
row: any;
rowIndex: number;
column: TableColumnCtx<any>;
columnIndex: number;
}) => number[] | {
rowspan: number;
colspan: number;
} | undefined) | undefined>;
selectOnIndeterminate: {
type: BooleanConstructor;
default: boolean;
};
indent: {
type: NumberConstructor;
default: number;
};
treeProps: {
type: PropType<{
hasChildren?: string | undefined;
children?: string | undefined;
} | undefined>;
default: () => {
hasChildren: string;
children: string;
};
};
lazy: BooleanConstructor;
load: PropType<((row: any, treeNode: TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
style: {
type: PropType<CSSProperties>;
default: () => {};
};
className: {
type: StringConstructor;
default: string;
};
tableLayout: {
type: PropType<"fixed" | "auto">;
default: string;
};
scrollbarAlwaysOn: BooleanConstructor;
flexible: BooleanConstructor;
showOverflowTooltip: PropType<boolean | Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
}>> & {
onSelect?: ((...args: any[]) => any) | undefined;
"onExpand-change"?: ((...args: any[]) => any) | undefined;
"onCurrent-change"?: ((...args: any[]) => any) | undefined;
"onSelect-all"?: ((...args: any[]) => any) | undefined;
"onSelection-change"?: ((...args: any[]) => any) | undefined;
"onCell-mouse-enter"?: ((...args: any[]) => any) | undefined;
"onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
"onCell-contextmenu"?: ((...args: any[]) => any) | undefined;
"onCell-click"?: ((...args: any[]) => any) | undefined;
"onCell-dblclick"?: ((...args: any[]) => any) | undefined;
"onRow-click"?: ((...args: any[]) => any) | undefined;
"onRow-contextmenu"?: ((...args: any[]) => any) | undefined;
"onRow-dblclick"?: ((...args: any[]) => any) | undefined;
"onHeader-click"?: ((...args: any[]) => any) | undefined;
"onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
"onSort-change"?: ((...args: any[]) => any) | undefined;
"onFilter-change"?: ((...args: any[]) => any) | undefined;
"onHeader-dragend"?: ((...args: any[]) => any) | undefined;
}, {
style: CSSProperties;
className: string;
tableLayout: "fixed" | "auto";
border: boolean;
data: any[];
fit: boolean;
lazy: boolean;
scrollbarAlwaysOn: boolean;
stripe: boolean;
treeProps: {
hasChildren?: string | undefined;
children?: string | undefined;
} | undefined;
showHeader: boolean;
showSummary: boolean;
highlightCurrentRow: boolean;
defaultExpandAll: boolean;
selectOnIndeterminate: boolean;
indent: number;
flexible: boolean;
}, true, {}, {}, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly< ExtractPropTypes<{
data: {
type: PropType<any[]>;
default: () => never[];
};
size: {
readonly type: PropType<EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
readonly required: false;
readonly validator: ((val: unknown) => boolean) | undefined;
__epPropKey: true;
};
width: (NumberConstructor | StringConstructor)[];
height: (NumberConstructor | StringConstructor)[];
maxHeight: (NumberConstructor | StringConstructor)[];
fit: {
type: BooleanConstructor;
default: boolean;
};
stripe: BooleanConstructor;
border: BooleanConstructor;
rowKey: PropType<string | ((row: any) => string) | undefined>;
showHeader: {
type: BooleanConstructor;
default: boolean;
};
showSummary: BooleanConstructor;
sumText: StringConstructor;
summaryMethod: PropType< SummaryMethod<any> | undefined>;
rowClassName: PropType< ColumnCls<any> | undefined>;
rowStyle: PropType< ColumnStyle<any> | undefined>;
cellClassName: PropType< CellCls<any> | undefined>;
cellStyle: PropType< CellStyle<any> | undefined>;
headerRowClassName: PropType< ColumnCls<any> | undefined>;
headerRowStyle: PropType< ColumnStyle<any> | undefined>;
headerCellClassName: PropType< CellCls<any> | undefined>;
headerCellStyle: PropType< CellStyle<any> | undefined>;
highlightCurrentRow: BooleanConstructor;
currentRowKey: (NumberConstructor | StringConstructor)[];
emptyText: StringConstructor;
expandRowKeys: PropType<any[] | undefined>;
defaultExpandAll: BooleanConstructor;
defaultSort: PropType< Sort | undefined>;
tooltipEffect: StringConstructor;
tooltipOptions: PropType<Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
spanMethod: PropType<((data: {
row: any;
rowIndex: number;
column: TableColumnCtx<any>;
columnIndex: number;
}) => number[] | {
rowspan: number;
colspan: number;
} | undefined) | undefined>;
selectOnIndeterminate: {
type: BooleanConstructor;
default: boolean;
};
indent: {
type: NumberConstructor;
default: number;
};
treeProps: {
type: PropType<{
hasChildren?: string | undefined;
children?: string | undefined;
} | undefined>;
default: () => {
hasChildren: string;
children: string;
};
};
lazy: BooleanConstructor;
load: PropType<((row: any, treeNode: TreeNode, resolve: (data: any[]) => void) => void) | undefined>;
style: {
type: PropType<CSSProperties>;
default: () => {};
};
className: {
type: StringConstructor;
default: string;
};
tableLayout: {
type: PropType<"fixed" | "auto">;
default: string;
};
scrollbarAlwaysOn: BooleanConstructor;
flexible: BooleanConstructor;
showOverflowTooltip: PropType<boolean | Partial<Pick< ElTooltipProps, "showArrow" | "appendTo" | "transition" | "effect" | "enterable" | "popperClass" | "offset" | "placement" | "popperOptions" | "showAfter" | "hideAfter">> | undefined>;
}>> & {
onSelect?: ((...args: any[]) => any) | undefined;
"onExpand-change"?: ((...args: any[]) => any) | undefined;
"onCurrent-change"?: ((...args: any[]) => any) | undefined;
"onSelect-all"?: ((...args: any[]) => any) | undefined;
"onSelection-change"?: ((...args: any[]) => any) | undefined;
"onCell-mouse-enter"?: ((...args: any[]) => any) | undefined;
"onCell-mouse-leave"?: ((...args: any[]) => any) | undefined;
"onCell-contextmenu"?: ((...args: any[]) => any) | undefined;
"onCell-click"?: ((...args: any[]) => any) | undefined;
"onCell-dblclick"?: ((...args: any[]) => any) | undefined;
"onRow-click"?: ((...args: any[]) => any) | undefined;
"onRow-contextmenu"?: ((...args: any[]) => any) | undefined;
"onRow-dblclick"?: ((...args: any[]) => any) | undefined;
"onHeader-click"?: ((...args: any[]) => any) | undefined;
"onHeader-contextmenu"?: ((...args: any[]) => any) | undefined;
"onSort-change"?: ((...args: any[]) => any) | undefined;
"onFilter-change"?: ((...args: any[]) => any) | undefined;
"onHeader-dragend"?: ((...args: any[]) => any) | undefined;
}, {
ns: {
namespace: ComputedRef<string>;
b: (blockSuffix?: string | undefined) => string;
e: (element?: string | undefined) => string;
m: (modifier?: string | undefined) => string;
be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
em: (element?: string | undefined, modifier?: string | undefined) => string;
bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
is: {
(name: string, state: boolean | undefined): string;
(name: string): string;
};
cssVar: (object: Record<string, string>) => Record<string, string>;
cssVarName: (name: string) => string;
cssVarBlock: (object: Record<string, string>) => Record<string, string>;
cssVarBlockName: (name: string) => string;
};
layout: __DTS_DEFAULT_0__<any>;
store: any;
handleHeaderFooterMousewheel: (event: any, data: any) => void;
handleMouseLeave: () => void;
tableId: string;
tableSize: ComputedRef<"" | "default" | "small" | "large">;
isHidden: Ref<boolean>;
isEmpty: ComputedRef<boolean>;
renderExpanded: Ref<null>;
resizeProxyVisible: Ref<boolean>;
resizeState: Ref<{
width: number | null;
height: number | null;
headerHeight: number | null;
}>;
isGroup: Ref<boolean>;
bodyWidth: ComputedRef<string>;
tableBodyStyles: ComputedRef<{
width: string;
}>;
emptyBlockStyle: ComputedRef<{
width: string;
height: string;
} | null>;
debouncedUpdateLayout: DebouncedFunc<() => void>;
handleFixedMousewheel: (event: any, data: any) => void;
setCurrentRow: (row: any) => void;
getSelectionRows: () => any;
toggleRowSelection: (row: any, selected: boolean) => void;
clearSelection: () => void;
clearFilter: (columnKeys?: string[] | undefined) => void;
toggleAllSelection: () => void;
toggleRowExpansion: (row: any, expanded?: boolean | undefined) => void;
clearSort: () => void;
doLayout: () => void;
sort: (prop: string, order: string) => void;
t: Translator;
setDragVisible: (visible: boolean) => void;
context: Table<any>;
computedSumText: ComputedRef<string>;
computedEmptyText: ComputedRef<string>;
tableLayout: ComputedRef<"fixed" | "auto" | undefined>;
scrollbarViewStyle: {
display: string;
verticalAlign: string;
};
tableInnerStyle: ComputedRef<{
height: string | number;
maxHeight?: undefined;
} | {
maxHeight: string | number;
height?: undefined;
} | {
height?: undefined;
maxHeight?: undefined;
}>;
scrollbarStyle: ComputedRef<{
height: string;
maxHeight?: undefined;
} | {
maxHeight: string;
height?: undefined;
} | {
height?: undefined;
maxHeight?: undefined;
}>;
scrollBarRef: Ref<any>;
scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void;
setScrollLeft: (left?: number | undefined) => void;
setScrollTop: (top?: number | undefined) => void;
}, {}, {}, {}, {
style: CSSProperties;
className: string;
tableLayout: "fixed" | "auto";
border: boolean;
data: any[];
fit: boolean;
lazy: boolean;
scrollbarAlwaysOn: boolean;
stripe: boolean;
treeProps: {
hasChildren?: string | undefined;
children?: string | undefined;
} | undefined;
showHeader: boolean;
showSummary: boolean;
highlightCurrentRow: boolean;
defaultExpandAll: boolean;
selectOnIndeterminate: boolean;
indent: number;
flexible: boolean;
}> | null;
}, {}>, {
"drag-sort-icon"?(_: {}): any;
}>;
export default _default;
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
type __VLS_TypePropsToRuntimeProps<T> = {
[K in keyof T]-?: {} extends Pick<T, K> ? {
type: PropType<__VLS_NonUndefinedable<T[K]>>;
} : {
type: PropType<T[K]>;
required: true;
};
};
type __VLS_WithDefaults<P, D> = {
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
default: D[K];
}> : P[K];
};
type __VLS_Prettify<T> = {
[K in keyof T]: T[K];
} & {};
type __VLS_WithTemplateSlots<T, S> = T & {
new (): {
$slots: S;
};
};