stk-table-vue 0.6.7 → 0.6.8

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.
@@ -1,4 +1,5 @@
1
1
  import { AutoRowHeightConfig, DragRowConfig, ExpandConfig, HeaderDragConfig, HighlightConfig, Order, PrivateRowDT, SeqConfig, SortConfig, SortOption, StkTableColumn, UniqKeyProp, ColResizableConfig } from './types/index';
2
+
2
3
  /** Generic stands for DataType */
3
4
  type DT = any & PrivateRowDT;
4
5
  /**
@@ -62,7 +63,7 @@ declare function setRowExpand(rowKeyOrRow: string | undefined | DT, expand?: boo
62
63
  col?: StkTableColumn<DT>;
63
64
  silent?: boolean;
64
65
  }): void;
65
- declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
66
+ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
66
67
  width?: string | undefined;
67
68
  /** 最小表格宽度 */
68
69
  minWidth?: string | undefined;
@@ -191,7 +192,56 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
191
192
  * - true: 不使用 onwheel 滚动。鼠标滚轮滚动时更加平滑。滚动过快时会白屏。
192
193
  */
193
194
  smoothScroll?: boolean | undefined;
194
- }, {
195
+ }>, {
196
+ width: string;
197
+ fixedMode: boolean;
198
+ stripe: boolean;
199
+ minWidth: string;
200
+ maxWidth: string;
201
+ headless: boolean;
202
+ theme: string;
203
+ rowHeight: number;
204
+ autoRowHeight: boolean;
205
+ rowHover: boolean;
206
+ rowActive: boolean;
207
+ rowCurrentRevokable: boolean;
208
+ headerRowHeight: number;
209
+ virtual: boolean;
210
+ virtualX: boolean;
211
+ columns: () => never[];
212
+ dataSource: () => never[];
213
+ rowKey: string;
214
+ colKey: string;
215
+ emptyCellText: string;
216
+ noDataFull: boolean;
217
+ showNoData: boolean;
218
+ sortRemote: boolean;
219
+ showHeaderOverflow: boolean;
220
+ showOverflow: boolean;
221
+ showTrHoverClass: boolean;
222
+ cellHover: boolean;
223
+ cellActive: boolean;
224
+ selectedCellRevokable: boolean;
225
+ headerDrag: boolean;
226
+ rowClassName: () => "";
227
+ colResizable: boolean;
228
+ colMinWidth: number;
229
+ bordered: boolean;
230
+ autoResize: boolean;
231
+ fixedColShadow: boolean;
232
+ optimizeVue2Scroll: boolean;
233
+ sortConfig: () => {
234
+ emptyToBottom: boolean;
235
+ stringLocaleCompare: boolean;
236
+ };
237
+ hideHeaderTitle: boolean;
238
+ highlightConfig: () => {};
239
+ seqConfig: () => {};
240
+ expandConfig: () => {};
241
+ dragRowConfig: () => {};
242
+ cellFixedMode: string;
243
+ smoothScroll: boolean;
244
+ }>>, {
195
245
  /**
196
246
  * 重新计算虚拟列表宽高
197
247
  *
@@ -304,10 +354,41 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
304
354
  */
305
355
  clearAllAutoHeight: () => void;
306
356
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
307
- [x: string]: any;
308
- } & {
309
- [x: string]: any;
310
- }, string, import('vue').PublicProps, Readonly<{
357
+ "sort-change": (col: StkTableColumn<any> | null, order: Order, data: any[], sortConfig: SortConfig<any>) => void;
358
+ "row-click": (ev: MouseEvent, row: any) => void;
359
+ "current-change": (ev: MouseEvent | null, row: any, data: {
360
+ select: boolean;
361
+ }) => void;
362
+ "cell-selected": (ev: MouseEvent | null, data: {
363
+ select: boolean;
364
+ row: any;
365
+ col: StkTableColumn<any> | undefined;
366
+ }) => void;
367
+ "row-dblclick": (ev: MouseEvent, row: any) => void;
368
+ "header-row-menu": (ev: MouseEvent) => void;
369
+ "row-menu": (ev: MouseEvent, row: any) => void;
370
+ "cell-click": (ev: MouseEvent, row: any, col: StkTableColumn<any>) => void;
371
+ "cell-mouseenter": (ev: MouseEvent, row: any, col: StkTableColumn<any>) => void;
372
+ "cell-mouseleave": (ev: MouseEvent, row: any, col: StkTableColumn<any>) => void;
373
+ "cell-mouseover": (ev: MouseEvent, row: any, col: StkTableColumn<any>) => void;
374
+ "header-cell-click": (ev: MouseEvent, col: StkTableColumn<any>) => void;
375
+ scroll: (ev: Event, data: {
376
+ startIndex: number;
377
+ endIndex: number;
378
+ }) => void;
379
+ "scroll-x": (ev: Event) => void;
380
+ "col-order-change": (dragStartKey: string, targetColKey: string) => void;
381
+ "th-drag-start": (dragStartKey: string) => void;
382
+ "th-drop": (targetColKey: string) => void;
383
+ "row-order-change": (dragStartKey: string, targetRowKey: string) => void;
384
+ "col-resize": (cols: StkTableColumn<any>) => void;
385
+ "toggle-row-expand": (data: {
386
+ expanded: boolean;
387
+ row: any;
388
+ col: StkTableColumn<any> | null;
389
+ }) => void;
390
+ "update:columns": (cols: StkTableColumn<any>[]) => void;
391
+ }, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
311
392
  width?: string | undefined;
312
393
  /** 最小表格宽度 */
313
394
  minWidth?: string | undefined;
@@ -436,8 +517,90 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
436
517
  * - true: 不使用 onwheel 滚动。鼠标滚轮滚动时更加平滑。滚动过快时会白屏。
437
518
  */
438
519
  smoothScroll?: boolean | undefined;
439
- }> & Readonly<{
440
- [x: `on${Capitalize<any>}`]: ((...args: any[] | unknown[]) => any) | undefined;
520
+ }>, {
521
+ width: string;
522
+ fixedMode: boolean;
523
+ stripe: boolean;
524
+ minWidth: string;
525
+ maxWidth: string;
526
+ headless: boolean;
527
+ theme: string;
528
+ rowHeight: number;
529
+ autoRowHeight: boolean;
530
+ rowHover: boolean;
531
+ rowActive: boolean;
532
+ rowCurrentRevokable: boolean;
533
+ headerRowHeight: number;
534
+ virtual: boolean;
535
+ virtualX: boolean;
536
+ columns: () => never[];
537
+ dataSource: () => never[];
538
+ rowKey: string;
539
+ colKey: string;
540
+ emptyCellText: string;
541
+ noDataFull: boolean;
542
+ showNoData: boolean;
543
+ sortRemote: boolean;
544
+ showHeaderOverflow: boolean;
545
+ showOverflow: boolean;
546
+ showTrHoverClass: boolean;
547
+ cellHover: boolean;
548
+ cellActive: boolean;
549
+ selectedCellRevokable: boolean;
550
+ headerDrag: boolean;
551
+ rowClassName: () => "";
552
+ colResizable: boolean;
553
+ colMinWidth: number;
554
+ bordered: boolean;
555
+ autoResize: boolean;
556
+ fixedColShadow: boolean;
557
+ optimizeVue2Scroll: boolean;
558
+ sortConfig: () => {
559
+ emptyToBottom: boolean;
560
+ stringLocaleCompare: boolean;
561
+ };
562
+ hideHeaderTitle: boolean;
563
+ highlightConfig: () => {};
564
+ seqConfig: () => {};
565
+ expandConfig: () => {};
566
+ dragRowConfig: () => {};
567
+ cellFixedMode: string;
568
+ smoothScroll: boolean;
569
+ }>>> & Readonly<{
570
+ onScroll?: ((ev: Event, data: {
571
+ startIndex: number;
572
+ endIndex: number;
573
+ }) => any) | undefined;
574
+ "onUpdate:columns"?: ((cols: StkTableColumn<any>[]) => any) | undefined;
575
+ "onCol-resize"?: ((cols: StkTableColumn<any>) => any) | undefined;
576
+ "onTh-drag-start"?: ((dragStartKey: string) => any) | undefined;
577
+ "onTh-drop"?: ((targetColKey: string) => any) | undefined;
578
+ "onCol-order-change"?: ((dragStartKey: string, targetColKey: string) => any) | undefined;
579
+ "onRow-order-change"?: ((dragStartKey: string, targetRowKey: string) => any) | undefined;
580
+ "onSort-change"?: ((col: StkTableColumn<any> | null, order: Order, data: any[], sortConfig: SortConfig<any>) => any) | undefined;
581
+ "onRow-click"?: ((ev: MouseEvent, row: any) => any) | undefined;
582
+ "onCurrent-change"?: ((ev: MouseEvent | null, row: any, data: {
583
+ select: boolean;
584
+ }) => any) | undefined;
585
+ "onCell-selected"?: ((ev: MouseEvent | null, data: {
586
+ select: boolean;
587
+ row: any;
588
+ col: StkTableColumn<any> | undefined;
589
+ }) => any) | undefined;
590
+ "onRow-dblclick"?: ((ev: MouseEvent, row: any) => any) | undefined;
591
+ "onHeader-row-menu"?: ((ev: MouseEvent) => any) | undefined;
592
+ "onRow-menu"?: ((ev: MouseEvent, row: any) => any) | undefined;
593
+ "onCell-click"?: ((ev: MouseEvent, row: any, col: StkTableColumn<any>) => any) | undefined;
594
+ "onCell-mouseenter"?: ((ev: MouseEvent, row: any, col: StkTableColumn<any>) => any) | undefined;
595
+ "onCell-mouseleave"?: ((ev: MouseEvent, row: any, col: StkTableColumn<any>) => any) | undefined;
596
+ "onCell-mouseover"?: ((ev: MouseEvent, row: any, col: StkTableColumn<any>) => any) | undefined;
597
+ "onHeader-cell-click"?: ((ev: MouseEvent, col: StkTableColumn<any>) => any) | undefined;
598
+ "onScroll-x"?: ((ev: Event) => any) | undefined;
599
+ "onToggle-row-expand"?: ((data: {
600
+ expanded: boolean;
601
+ row: any;
602
+ col: StkTableColumn<any> | null;
603
+ }) => any) | undefined;
441
604
  }>, {
442
605
  width: string;
443
606
  minWidth: string;
@@ -487,7 +650,7 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
487
650
  dragRowConfig: DragRowConfig;
488
651
  cellFixedMode: "sticky" | "relative";
489
652
  smoothScroll: boolean;
490
- }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>, {
653
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>, {
491
654
  tableHeader?(_: {
492
655
  col: StkTableColumn<any>;
493
656
  }): any;
@@ -499,6 +662,23 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<{
499
662
  customBottom?(_: {}): any;
500
663
  }>;
501
664
  export default _default;
665
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
666
+ type __VLS_TypePropsToRuntimeProps<T> = {
667
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
668
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
669
+ } : {
670
+ type: import('vue').PropType<T[K]>;
671
+ required: true;
672
+ };
673
+ };
674
+ type __VLS_WithDefaults<P, D> = {
675
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
676
+ default: D[K];
677
+ }> : P[K];
678
+ };
679
+ type __VLS_Prettify<T> = {
680
+ [K in keyof T]: T[K];
681
+ } & {};
502
682
  type __VLS_WithTemplateSlots<T, S> = T & {
503
683
  new (): {
504
684
  $slots: S;
@@ -1,4 +1,5 @@
1
1
  import { Component, ConcreteComponent } from 'vue';
2
+
2
3
  /** 排序方式,asc-正序,desc-倒序,null-默认顺序 */
3
4
  export type Order = null | 'asc' | 'desc';
4
5
  type Sorter<T> = boolean | ((data: T[], option: {
@@ -1,4 +1,5 @@
1
1
  import { Ref } from 'vue';
2
+
2
3
  type Options = {
3
4
  props: any;
4
5
  tableContainerRef: Ref<HTMLElement | undefined>;
@@ -1,5 +1,6 @@
1
1
  import { ComputedRef, Ref, ShallowRef } from 'vue';
2
2
  import { StkTableColumn, UniqKey } from './types';
3
+
3
4
  type Params<DT extends Record<string, any>> = {
4
5
  props: any;
5
6
  emits: any;
@@ -1,6 +1,7 @@
1
1
  import { ComputedRef, Ref, ShallowRef } from 'vue';
2
2
  import { StkTableColumn, UniqKey } from './types';
3
3
  import { VirtualScrollXStore } from './useVirtualScroll';
4
+
4
5
  type Params<T extends Record<string, any>> = {
5
6
  props: any;
6
7
  colKeyGen: ComputedRef<(col: StkTableColumn<T>) => UniqKey>;
@@ -1,6 +1,7 @@
1
1
  import { CSSProperties, ComputedRef, Ref } from 'vue';
2
2
  import { StkTableColumn, TagType } from './types';
3
3
  import { VirtualScrollStore, VirtualScrollXStore } from './useVirtualScroll';
4
+
4
5
  type Options<T extends Record<string, any>> = {
5
6
  props: any;
6
7
  isRelativeMode: Ref<boolean>;
@@ -1,5 +1,6 @@
1
1
  import { ComputedRef, ShallowRef } from 'vue';
2
2
  import { StkTableColumn, UniqKey } from './types';
3
+
3
4
  type Params<T extends Record<string, any>> = {
4
5
  colKeyGen: ComputedRef<(col: StkTableColumn<T>) => UniqKey>;
5
6
  tableHeadersForCalc: ShallowRef<StkTableColumn<T>[][]>;
@@ -1,6 +1,7 @@
1
1
  import { Ref } from 'vue';
2
2
  import { UniqKey } from './types';
3
3
  import { HighlightDimCellOption, HighlightDimRowOption } from './types/highlightDimOptions';
4
+
4
5
  type Params = {
5
6
  props: any;
6
7
  stkTableId: string;
@@ -1,6 +1,7 @@
1
1
  import { ComputedRef, Ref, ShallowRef } from 'vue';
2
2
  import { StkTableColumn } from './types';
3
3
  import { VirtualScrollStore, VirtualScrollXStore } from './useVirtualScroll';
4
+
4
5
  type Options<DT extends Record<string, any>> = {
5
6
  props: any;
6
7
  scrollTo: (y: number | null, x: number | null) => void;
@@ -1,5 +1,6 @@
1
1
  import { ComputedRef } from 'vue';
2
2
  import { StkTableColumn, UniqKey } from './types';
3
+
3
4
  type Params<T extends Record<string, any>> = {
4
5
  props: any;
5
6
  emits: any;
@@ -1,5 +1,6 @@
1
1
  import { ShallowRef } from 'vue';
2
2
  import { DragRowConfig } from './types';
3
+
3
4
  type Params = {
4
5
  props: any;
5
6
  emits: any;
@@ -1,5 +1,6 @@
1
1
  import { Ref, ShallowRef } from 'vue';
2
2
  import { StkTableColumn, UniqKey } from './types';
3
+
3
4
  type Option<DT extends Record<string, any>> = {
4
5
  props: any;
5
6
  tableContainerRef: Ref<HTMLElement | undefined>;
@@ -1,4 +1,5 @@
1
1
  import { PrivateStkTableColumn, StkTableColumn } from '../types';
2
+
2
3
  /**
3
4
  * 获取列宽
4
5
  *
@@ -1,4 +1,5 @@
1
1
  import { Order, SortConfig, SortOption, SortState, StkTableColumn } from '../types';
2
+
2
3
  /** 是否空值 */
3
4
  export declare function isEmptyValue(val: any, isNumber?: boolean): boolean;
4
5
  /**
@@ -1,4 +1,5 @@
1
1
  import { Ref } from 'vue';
2
+
2
3
  type UseTriggerRef<T> = {
3
4
  getRef: () => Ref<T>;
4
5
  getValue: () => T;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stk-table-vue",
3
- "version": "0.6.7",
3
+ "version": "0.6.8",
4
4
  "description": "Simple realtime virtual table for vue3 and vue2.7",
5
5
  "main": "./lib/stk-table-vue.js",
6
6
  "types": "./lib/src/StkTable/index.d.ts",
@@ -62,7 +62,7 @@
62
62
  "prettier": "^3.2.5",
63
63
  "typescript": "^5.4.5",
64
64
  "vite": "^5.4.10",
65
- "vite-plugin-dts": "^4.3.0",
65
+ "vite-plugin-dts": "3.9.1",
66
66
  "vitepress": "^1.5.0",
67
67
  "vitepress-demo-plugin": "^1.2.2",
68
68
  "vitest": "^2.1.3",