@robot-admin/naive-ui-components 0.21.0 → 0.22.0

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.
Files changed (123) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +2 -0
  3. package/README_EN.md +2 -0
  4. package/SECURITY.md +10 -0
  5. package/THIRD_PARTY_NOTICES.md +10 -0
  6. package/dist/C_AntV2.cjs +1 -1
  7. package/dist/C_Barcode2.cjs +1 -1
  8. package/dist/C_Editor.css +18 -18
  9. package/dist/C_Editor2.cjs +1 -1
  10. package/dist/C_Editor2.js +1 -1
  11. package/dist/C_FilePreview.css +60 -60
  12. package/dist/C_FilePreview2.cjs +1 -1
  13. package/dist/C_FilePreview2.js +1 -1
  14. package/dist/C_Form.css +18 -18
  15. package/dist/C_FullCalendar2.cjs +1 -1
  16. package/dist/C_Markdown.css +38 -39
  17. package/dist/C_Markdown2.cjs +1 -1
  18. package/dist/C_Markdown2.js +1 -1
  19. package/dist/C_QRCode2.cjs +1 -1
  20. package/dist/C_Table.css +18 -18
  21. package/dist/C_Upload2.cjs +1 -1
  22. package/dist/C_WaterFall.css +49 -31
  23. package/dist/C_WaterFall2.cjs +1 -1
  24. package/dist/C_WaterFall2.js +1 -1
  25. package/dist/C_WorkFlow.css +112 -111
  26. package/dist/C_WorkFlow2.cjs +1 -1
  27. package/dist/C_WorkFlow2.js +1 -1
  28. package/dist/chunk.cjs +1 -1
  29. package/dist/constants.d.cts +1 -1
  30. package/dist/constants.d.ts +1 -1
  31. package/dist/constants3.d.cts +1 -1
  32. package/dist/constants3.d.ts +1 -1
  33. package/dist/constants4.d.cts +5 -5
  34. package/dist/constants4.d.ts +5 -5
  35. package/dist/constants5.d.cts +2 -2
  36. package/dist/constants5.d.ts +2 -2
  37. package/dist/data.cjs +1 -1
  38. package/dist/data.d.cts +7 -7
  39. package/dist/data.d.ts +7 -7
  40. package/dist/data.js +1 -1
  41. package/dist/graphics.d.cts +17 -11
  42. package/dist/graphics.d.ts +17 -11
  43. package/dist/helpers.cjs +1 -1
  44. package/dist/helpers.js +1 -1
  45. package/dist/html.cjs +1 -1
  46. package/dist/index.cjs +1 -1
  47. package/dist/index.vue.d.cts +2 -2
  48. package/dist/index.vue.d.ts +2 -2
  49. package/dist/index10.vue.d.cts +4 -4
  50. package/dist/index10.vue.d.ts +5 -5
  51. package/dist/index11.vue.d.cts +5 -5
  52. package/dist/index12.vue.d.ts +3 -3
  53. package/dist/index13.vue.d.cts +3 -3
  54. package/dist/index13.vue.d.ts +9 -9
  55. package/dist/index14.vue.d.cts +9 -9
  56. package/dist/index16.vue.d.ts +1 -1
  57. package/dist/index17.vue.d.cts +1 -1
  58. package/dist/index17.vue.d.ts +1 -1
  59. package/dist/index18.vue.d.cts +1 -1
  60. package/dist/index19.vue.d.cts +2 -2
  61. package/dist/index19.vue.d.ts +2 -2
  62. package/dist/index2.vue.d.cts +2 -2
  63. package/dist/index2.vue.d.ts +2 -2
  64. package/dist/index20.vue.d.cts +1 -1
  65. package/dist/index20.vue.d.ts +1 -1
  66. package/dist/index21.vue.d.cts +1 -1
  67. package/dist/index21.vue.d.ts +1 -1
  68. package/dist/index24.vue.d.cts +1 -1
  69. package/dist/index24.vue.d.ts +1 -1
  70. package/dist/index25.vue.d.cts +2 -2
  71. package/dist/index25.vue.d.ts +2 -2
  72. package/dist/index26.vue.d.cts +2 -2
  73. package/dist/index26.vue.d.ts +2 -2
  74. package/dist/index3.vue.d.cts +4 -4
  75. package/dist/index3.vue.d.ts +4 -4
  76. package/dist/index6.vue.d.ts +2 -2
  77. package/dist/index7.vue.d.cts +2 -2
  78. package/dist/index8.vue.d.ts +1 -1
  79. package/dist/index9.vue.d.cts +1 -1
  80. package/dist/index9.vue.d.ts +4 -4
  81. package/dist/mapUtils.d.cts +1 -1
  82. package/dist/mapUtils.d.ts +1 -1
  83. package/dist/style.css +277 -259
  84. package/dist/types.d.ts +5 -0
  85. package/dist/types2.d.cts +5 -0
  86. package/dist/useCalendarEvents.d.cts +1 -1
  87. package/dist/useCalendarEvents.d.ts +1 -1
  88. package/dist/useCollapsePanel.d.cts +1 -1
  89. package/dist/useCollapsePanel.d.ts +1 -1
  90. package/dist/useCropperCore.d.cts +9 -9
  91. package/dist/useCropperCore.d.ts +9 -9
  92. package/dist/useDynamicFormState.d.cts +2 -2
  93. package/dist/useDynamicFormState.d.ts +2 -2
  94. package/dist/useEdgeInteraction.d.cts +2 -2
  95. package/dist/useEdgeInteraction.d.ts +2 -2
  96. package/dist/useFullscreen.d.cts +1 -1
  97. package/dist/useFullscreen.d.ts +1 -1
  98. package/dist/useInfiniteScroll.d.cts +17 -18
  99. package/dist/useInfiniteScroll.d.ts +17 -18
  100. package/dist/useQRCode.d.cts +3 -3
  101. package/dist/useQRCode.d.ts +3 -3
  102. package/dist/useSignatureHistory.d.cts +4 -4
  103. package/dist/useSignatureHistory.d.ts +4 -4
  104. package/dist/useSplitResize.d.cts +4 -4
  105. package/dist/useSplitResize.d.ts +4 -4
  106. package/dist/useTableQuery.cjs +1 -1
  107. package/dist/useTableQuery.d.cts +15 -13
  108. package/dist/useTableQuery.d.ts +15 -13
  109. package/dist/useTableQuery.js +1 -1
  110. package/dist/useWorkflowValidation.d.cts +35 -35
  111. package/dist/useWorkflowValidation.d.ts +35 -35
  112. package/dist/verification.d.cts +3 -3
  113. package/dist/verification.d.ts +3 -3
  114. package/dist/xlsx.js +143 -0
  115. package/dist/xlsx2.cjs +143 -0
  116. package/docs/architecture.en.md +1 -0
  117. package/docs/architecture.md +1 -0
  118. package/docs/guides/api-migration.md +111 -0
  119. package/docs/guides/runtime-performance.md +16 -1
  120. package/docs/guides/waterfall.md +113 -0
  121. package/docs/runtime-review-20261019.md +2 -0
  122. package/licenses/SheetJS.txt +201 -0
  123. package/package.json +13 -9
package/dist/types.d.ts CHANGED
@@ -37,10 +37,15 @@ type DateProps<M extends DatePickerMode | undefined = DatePickerMode> = Omit<Dat
37
37
  } : never));
38
38
  interface DateEmits<M extends DatePickerMode | undefined = DatePickerMode> {
39
39
  'update:modelValue': [value: DateModelValue<M>];
40
+ /** @deprecated Use update:modelValue with mode="date". */
40
41
  'update:singleDate': [value: DateValue];
42
+ /** @deprecated Use update:modelValue with mode="datetime". */
41
43
  'update:singleDateTime': [value: DateValue];
44
+ /** @deprecated Use update:modelValue with mode="daterange". */
42
45
  'update:dateRange': [value: DateRangeValue];
46
+ /** @deprecated Use update:modelValue with mode="datetimerange". */
43
47
  'update:dateTimeRange': [value: DateRangeValue];
48
+ /** @deprecated Use update:modelValue with mode="smart-range". */
44
49
  'update:smartRange': [value: DateRangeValue];
45
50
  change: [value: DateModelValue<M>];
46
51
  }
package/dist/types2.d.cts CHANGED
@@ -37,10 +37,15 @@ type DateProps<M extends DatePickerMode | undefined = DatePickerMode> = Omit<Dat
37
37
  } : never));
38
38
  interface DateEmits<M extends DatePickerMode | undefined = DatePickerMode> {
39
39
  'update:modelValue': [value: DateModelValue<M>];
40
+ /** @deprecated Use update:modelValue with mode="date". */
40
41
  'update:singleDate': [value: DateValue];
42
+ /** @deprecated Use update:modelValue with mode="datetime". */
41
43
  'update:singleDateTime': [value: DateValue];
44
+ /** @deprecated Use update:modelValue with mode="daterange". */
42
45
  'update:dateRange': [value: DateRangeValue];
46
+ /** @deprecated Use update:modelValue with mode="datetimerange". */
43
47
  'update:dateTimeRange': [value: DateRangeValue];
48
+ /** @deprecated Use update:modelValue with mode="smart-range". */
44
49
  'update:smartRange': [value: DateRangeValue];
45
50
  change: [value: DateModelValue<M>];
46
51
  }
@@ -72,9 +72,9 @@ declare const __VLS_export: vue.DefineComponent<CalendarProps, CalendarExpose, {
72
72
  }) => any) | undefined;
73
73
  "onEvent-dropped"?: ((event: Partial<CalendarEvent>) => any) | undefined;
74
74
  }>, {
75
+ initialView: CalendarViewType;
75
76
  editable: boolean;
76
77
  events: CalendarEvent[];
77
- initialView: CalendarViewType;
78
78
  showAddDialog: boolean;
79
79
  showEditDialog: boolean;
80
80
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -72,9 +72,9 @@ declare const __VLS_export: vue.DefineComponent<CalendarProps, CalendarExpose, {
72
72
  }) => any) | undefined;
73
73
  "onEvent-dropped"?: ((event: Partial<CalendarEvent>) => any) | undefined;
74
74
  }>, {
75
+ initialView: CalendarViewType;
75
76
  editable: boolean;
76
77
  events: CalendarEvent[];
77
- initialView: CalendarViewType;
78
78
  showAddDialog: boolean;
79
79
  showEditDialog: boolean;
80
80
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -80,13 +80,13 @@ declare const __VLS_base: vue.DefineComponent<Props, CollapsePanelExpose, {}, {}
80
80
  onCollapse?: ((key: string) => any) | undefined;
81
81
  "onUpdate:activeKeys"?: ((keys: string[]) => any) | undefined;
82
82
  }>, {
83
+ persistKey: string;
83
84
  bordered: boolean;
84
85
  activeKeys: string[];
85
86
  defaultActiveKeys: string[];
86
87
  accordion: boolean;
87
88
  variant: CollapsePanelVariant;
88
89
  expandIconPosition: ExpandIconPosition;
89
- persistKey: string;
90
90
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
91
91
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
92
92
  declare const _default: typeof __VLS_export;
@@ -80,13 +80,13 @@ declare const __VLS_base: vue.DefineComponent<Props, CollapsePanelExpose, {}, {}
80
80
  onCollapse?: ((key: string) => any) | undefined;
81
81
  "onUpdate:activeKeys"?: ((keys: string[]) => any) | undefined;
82
82
  }>, {
83
+ persistKey: string;
83
84
  bordered: boolean;
84
85
  activeKeys: string[];
85
86
  defaultActiveKeys: string[];
86
87
  accordion: boolean;
87
88
  variant: CollapsePanelVariant;
88
89
  expandIconPosition: ExpandIconPosition;
89
- persistKey: string;
90
90
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
91
91
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
92
92
  declare const _default: typeof __VLS_export;
@@ -52,30 +52,30 @@ interface ImageCropperEmits {
52
52
  //#region src/components/C_ImageCropper/index.vue.d.ts
53
53
  declare const __VLS_export: vue.DefineComponent<ImageCropperProps, ImageCropperExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
54
54
  error: (error: Error) => any;
55
+ cancel: () => any;
56
+ confirm: (result: CropResult) => any;
55
57
  ready: () => any;
56
58
  crop: (result: CropResult) => any;
57
- confirm: (result: CropResult) => any;
58
- cancel: () => any;
59
59
  }, string, vue.PublicProps, Readonly<ImageCropperProps> & Readonly<{
60
60
  onError?: ((error: Error) => any) | undefined;
61
+ onCancel?: (() => any) | undefined;
62
+ onConfirm?: ((result: CropResult) => any) | undefined;
61
63
  onReady?: (() => any) | undefined;
62
64
  onCrop?: ((result: CropResult) => any) | undefined;
63
- onConfirm?: ((result: CropResult) => any) | undefined;
64
- onCancel?: (() => any) | undefined;
65
65
  }>, {
66
66
  disabled: boolean;
67
67
  height: string | number;
68
- src: string;
69
- showToolbar: boolean;
70
68
  aspectRatio: number;
69
+ showPreview: boolean;
70
+ showToolbar: boolean;
71
+ modal: boolean;
72
+ modalTitle: string;
73
+ src: string;
71
74
  outputFormat: CropOutputFormat;
72
75
  outputQuality: number;
73
76
  maxOutputWidth: number;
74
77
  maxOutputHeight: number;
75
- showPreview: boolean;
76
78
  circular: boolean;
77
- modal: boolean;
78
- modalTitle: string;
79
79
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
80
80
  declare const _default: typeof __VLS_export;
81
81
  //#endregion
@@ -52,30 +52,30 @@ interface ImageCropperEmits {
52
52
  //#region src/components/C_ImageCropper/index.vue.d.ts
53
53
  declare const __VLS_export: vue.DefineComponent<ImageCropperProps, ImageCropperExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
54
54
  error: (error: Error) => any;
55
+ cancel: () => any;
56
+ confirm: (result: CropResult) => any;
55
57
  ready: () => any;
56
58
  crop: (result: CropResult) => any;
57
- confirm: (result: CropResult) => any;
58
- cancel: () => any;
59
59
  }, string, vue.PublicProps, Readonly<ImageCropperProps> & Readonly<{
60
60
  onError?: ((error: Error) => any) | undefined;
61
+ onCancel?: (() => any) | undefined;
62
+ onConfirm?: ((result: CropResult) => any) | undefined;
61
63
  onReady?: (() => any) | undefined;
62
64
  onCrop?: ((result: CropResult) => any) | undefined;
63
- onConfirm?: ((result: CropResult) => any) | undefined;
64
- onCancel?: (() => any) | undefined;
65
65
  }>, {
66
66
  disabled: boolean;
67
67
  height: string | number;
68
- src: string;
69
- showToolbar: boolean;
70
68
  aspectRatio: number;
69
+ showPreview: boolean;
70
+ showToolbar: boolean;
71
+ modal: boolean;
72
+ modalTitle: string;
73
+ src: string;
71
74
  outputFormat: CropOutputFormat;
72
75
  outputQuality: number;
73
76
  maxOutputWidth: number;
74
77
  maxOutputHeight: number;
75
- showPreview: boolean;
76
78
  circular: boolean;
77
- modal: boolean;
78
- modalTitle: string;
79
79
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
80
80
  declare const _default: typeof __VLS_export;
81
81
  //#endregion
@@ -647,8 +647,8 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
647
647
  } & {
648
648
  "onUpdate:modelValue"?: ((model: T) => any) | undefined;
649
649
  onSubmit?: ((payload: SubmitEventPayload<T>) => any) | undefined;
650
- "onValidate-error"?: ((errors: unknown) => any) | undefined;
651
650
  "onValidate-success"?: ((model: T) => any) | undefined;
651
+ "onValidate-error"?: ((errors: unknown) => any) | undefined;
652
652
  }> & (typeof globalThis extends {
653
653
  __VLS_PROPS_FALLBACK: infer P;
654
654
  } ? P : {});
@@ -683,7 +683,7 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
683
683
  }>) => void;
684
684
  attrs: any;
685
685
  slots: FormSlots<T>;
686
- emit: ((evt: "update:modelValue", model: T) => void) & ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "validate-error", errors: unknown) => void) & ((evt: "validate-success", model: T) => void);
686
+ emit: ((evt: "update:modelValue", model: T) => void) & ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "validate-success", model: T) => void) & ((evt: "validate-error", errors: unknown) => void);
687
687
  }>) => vue.VNode & {
688
688
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
689
689
  };
@@ -647,8 +647,8 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
647
647
  } & {
648
648
  "onUpdate:modelValue"?: ((model: T) => any) | undefined;
649
649
  onSubmit?: ((payload: SubmitEventPayload<T>) => any) | undefined;
650
- "onValidate-error"?: ((errors: unknown) => any) | undefined;
651
650
  "onValidate-success"?: ((model: T) => any) | undefined;
651
+ "onValidate-error"?: ((errors: unknown) => any) | undefined;
652
652
  }> & (typeof globalThis extends {
653
653
  __VLS_PROPS_FALLBACK: infer P;
654
654
  } ? P : {});
@@ -683,7 +683,7 @@ declare const __VLS_export: <T extends object = FormRecord>(__VLS_props: NonNull
683
683
  }>) => void;
684
684
  attrs: any;
685
685
  slots: FormSlots<T>;
686
- emit: ((evt: "update:modelValue", model: T) => void) & ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "validate-error", errors: unknown) => void) & ((evt: "validate-success", model: T) => void);
686
+ emit: ((evt: "update:modelValue", model: T) => void) & ((evt: "submit", payload: SubmitEventPayload<T>) => void) & ((evt: "validate-success", model: T) => void) & ((evt: "validate-error", errors: unknown) => void);
687
687
  }>) => vue.VNode & {
688
688
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
689
689
  };
@@ -264,10 +264,10 @@ declare const __VLS_export: vue.DefineComponent<Props, {
264
264
  onReady?: ((graph: Graph) => any) | undefined;
265
265
  "onData-change"?: ((data: DiagramData) => any) | undefined;
266
266
  }>, {
267
+ readonly: boolean;
268
+ height: string | number;
267
269
  theme: "light" | "dark";
268
270
  width: string | number;
269
- height: string | number;
270
- readonly: boolean;
271
271
  showToolbar: boolean;
272
272
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
273
273
  declare const _default: typeof __VLS_export;
@@ -264,10 +264,10 @@ declare const __VLS_export: vue.DefineComponent<Props, {
264
264
  onReady?: ((graph: Graph) => any) | undefined;
265
265
  "onData-change"?: ((data: DiagramData) => any) | undefined;
266
266
  }>, {
267
+ readonly: boolean;
268
+ height: string | number;
267
269
  theme: "light" | "dark";
268
270
  width: string | number;
269
- height: string | number;
270
- readonly: boolean;
271
271
  showToolbar: boolean;
272
272
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
273
273
  declare const _default: typeof __VLS_export;
@@ -100,9 +100,9 @@ declare const __VLS_export: vue.DefineComponent<FilePreviewProps, {}, {}, {}, {}
100
100
  onDownload?: ((file: string | File) => any) | undefined;
101
101
  onPreview?: ((file: string | File) => any) | undefined;
102
102
  }>, {
103
+ inline: boolean;
103
104
  fileName: string;
104
105
  autoPreview: boolean;
105
- inline: boolean;
106
106
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
107
107
  declare const _default: typeof __VLS_export;
108
108
  //#endregion
@@ -100,9 +100,9 @@ declare const __VLS_export: vue.DefineComponent<FilePreviewProps, {}, {}, {}, {}
100
100
  onDownload?: ((file: string | File) => any) | undefined;
101
101
  onPreview?: ((file: string | File) => any) | undefined;
102
102
  }>, {
103
+ inline: boolean;
103
104
  fileName: string;
104
105
  autoPreview: boolean;
105
- inline: boolean;
106
106
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
107
107
  declare const _default: typeof __VLS_export;
108
108
  //#endregion
@@ -18,6 +18,8 @@ interface WaterFallLayoutItem {
18
18
  y: number;
19
19
  width: number;
20
20
  height: number;
21
+ /** Measured outer card height, including captions and custom slot content. */
22
+ totalHeight?: number;
21
23
  }
22
24
  interface WaterFallColumn {
23
25
  index: number;
@@ -27,12 +29,14 @@ interface WaterFallBreakpoint {
27
29
  minWidth: number;
28
30
  columns: number;
29
31
  }
30
- type InfiniteScrollStatus = "idle" | "loading" | "no-more" | "error";
32
+ type InfiniteScrollStatus = 'idle' | 'loading' | 'no-more' | 'error';
31
33
  interface WaterFallProps {
32
34
  items: WaterFallItem[];
33
35
  columns?: number;
34
36
  gap?: number;
35
37
  lazy?: boolean;
38
+ /** Automatically window lists of 100+ items; false keeps every item mounted. */
39
+ virtualScroll?: boolean;
36
40
  infinite?: boolean;
37
41
  skeleton?: boolean;
38
42
  skeletonCount?: number;
@@ -42,10 +46,10 @@ interface WaterFallProps {
42
46
  noMore?: boolean;
43
47
  }
44
48
  interface WaterFallEmits {
45
- "load-more": [];
46
- "item-click": [item: WaterFallItem, index: number];
47
- "image-loaded": [item: WaterFallItem];
48
- "image-error": [item: WaterFallItem];
49
+ 'load-more': [];
50
+ 'item-click': [item: WaterFallItem, index: number];
51
+ 'image-loaded': [item: WaterFallItem];
52
+ 'image-error': [item: WaterFallItem];
49
53
  }
50
54
  interface WaterFallExpose {
51
55
  relayout: () => void;
@@ -56,15 +60,7 @@ interface WaterFallExpose {
56
60
  //#endregion
57
61
  //#region src/components/C_WaterFall/index.vue.d.ts
58
62
  declare var __VLS_1: {}, __VLS_3: {
59
- item: {
60
- readonly [x: string]: any;
61
- readonly id: string | number;
62
- readonly src: string;
63
- readonly width: number;
64
- readonly height: number;
65
- readonly title?: string | undefined;
66
- readonly description?: string | undefined;
67
- };
63
+ item: WaterFallItem;
68
64
  index: number;
69
65
  width: number;
70
66
  height: number;
@@ -81,17 +77,19 @@ type __VLS_Slots = {} & {
81
77
  footer?: (props: typeof __VLS_5) => any;
82
78
  };
83
79
  declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
84
- "load-more": () => any;
85
80
  "item-click": (item: WaterFallItem, index: number) => any;
81
+ "load-more": () => any;
86
82
  "image-loaded": (item: WaterFallItem) => any;
87
83
  "image-error": (item: WaterFallItem) => any;
88
84
  }, string, vue.PublicProps, Readonly<WaterFallProps> & Readonly<{
89
- "onLoad-more"?: (() => any) | undefined;
90
85
  "onItem-click"?: ((item: WaterFallItem, index: number) => any) | undefined;
86
+ "onLoad-more"?: (() => any) | undefined;
91
87
  "onImage-loaded"?: ((item: WaterFallItem) => any) | undefined;
92
88
  "onImage-error"?: ((item: WaterFallItem) => any) | undefined;
93
89
  }>, {
90
+ loading: boolean;
94
91
  columns: number;
92
+ virtualScroll: boolean;
95
93
  gap: number;
96
94
  lazy: boolean;
97
95
  infinite: boolean;
@@ -99,7 +97,6 @@ declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {
99
97
  skeletonCount: number;
100
98
  animationDuration: number;
101
99
  breakpoints: WaterFallBreakpoint[];
102
- loading: boolean;
103
100
  noMore: boolean;
104
101
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
105
102
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -149,6 +146,7 @@ declare function useWaterFallLayout(items: Ref<WaterFallItem[]>, columns: Readon
149
146
  readonly y: number;
150
147
  readonly width: number;
151
148
  readonly height: number;
149
+ readonly totalHeight?: number | undefined;
152
150
  }[], readonly {
153
151
  readonly item: {
154
152
  readonly [x: string]: any;
@@ -164,10 +162,11 @@ declare function useWaterFallLayout(items: Ref<WaterFallItem[]>, columns: Readon
164
162
  readonly y: number;
165
163
  readonly width: number;
166
164
  readonly height: number;
165
+ readonly totalHeight?: number | undefined;
167
166
  }[]>>;
168
167
  containerHeight: Readonly<Ref<number, number>>;
169
168
  cacheImageHeight: (id: string | number, realHeight: number, basisWidth?: number, src?: string) => void;
170
- cacheItemExtraHeight: (id: string | number, extraHeight: number) => void;
169
+ cacheItemExtraHeight: (id: string | number, extraHeight: number, basisWidth?: number, src?: string) => void;
171
170
  relayout: () => void;
172
171
  };
173
172
  //#endregion
@@ -18,6 +18,8 @@ interface WaterFallLayoutItem {
18
18
  y: number;
19
19
  width: number;
20
20
  height: number;
21
+ /** Measured outer card height, including captions and custom slot content. */
22
+ totalHeight?: number;
21
23
  }
22
24
  interface WaterFallColumn {
23
25
  index: number;
@@ -27,12 +29,14 @@ interface WaterFallBreakpoint {
27
29
  minWidth: number;
28
30
  columns: number;
29
31
  }
30
- type InfiniteScrollStatus = "idle" | "loading" | "no-more" | "error";
32
+ type InfiniteScrollStatus = 'idle' | 'loading' | 'no-more' | 'error';
31
33
  interface WaterFallProps {
32
34
  items: WaterFallItem[];
33
35
  columns?: number;
34
36
  gap?: number;
35
37
  lazy?: boolean;
38
+ /** Automatically window lists of 100+ items; false keeps every item mounted. */
39
+ virtualScroll?: boolean;
36
40
  infinite?: boolean;
37
41
  skeleton?: boolean;
38
42
  skeletonCount?: number;
@@ -42,10 +46,10 @@ interface WaterFallProps {
42
46
  noMore?: boolean;
43
47
  }
44
48
  interface WaterFallEmits {
45
- "load-more": [];
46
- "item-click": [item: WaterFallItem, index: number];
47
- "image-loaded": [item: WaterFallItem];
48
- "image-error": [item: WaterFallItem];
49
+ 'load-more': [];
50
+ 'item-click': [item: WaterFallItem, index: number];
51
+ 'image-loaded': [item: WaterFallItem];
52
+ 'image-error': [item: WaterFallItem];
49
53
  }
50
54
  interface WaterFallExpose {
51
55
  relayout: () => void;
@@ -56,15 +60,7 @@ interface WaterFallExpose {
56
60
  //#endregion
57
61
  //#region src/components/C_WaterFall/index.vue.d.ts
58
62
  declare var __VLS_1: {}, __VLS_3: {
59
- item: {
60
- readonly [x: string]: any;
61
- readonly id: string | number;
62
- readonly src: string;
63
- readonly width: number;
64
- readonly height: number;
65
- readonly title?: string | undefined;
66
- readonly description?: string | undefined;
67
- };
63
+ item: WaterFallItem;
68
64
  index: number;
69
65
  width: number;
70
66
  height: number;
@@ -81,17 +77,19 @@ type __VLS_Slots = {} & {
81
77
  footer?: (props: typeof __VLS_5) => any;
82
78
  };
83
79
  declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
84
- "load-more": () => any;
85
80
  "item-click": (item: WaterFallItem, index: number) => any;
81
+ "load-more": () => any;
86
82
  "image-loaded": (item: WaterFallItem) => any;
87
83
  "image-error": (item: WaterFallItem) => any;
88
84
  }, string, vue.PublicProps, Readonly<WaterFallProps> & Readonly<{
89
- "onLoad-more"?: (() => any) | undefined;
90
85
  "onItem-click"?: ((item: WaterFallItem, index: number) => any) | undefined;
86
+ "onLoad-more"?: (() => any) | undefined;
91
87
  "onImage-loaded"?: ((item: WaterFallItem) => any) | undefined;
92
88
  "onImage-error"?: ((item: WaterFallItem) => any) | undefined;
93
89
  }>, {
90
+ loading: boolean;
94
91
  columns: number;
92
+ virtualScroll: boolean;
95
93
  gap: number;
96
94
  lazy: boolean;
97
95
  infinite: boolean;
@@ -99,7 +97,6 @@ declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {
99
97
  skeletonCount: number;
100
98
  animationDuration: number;
101
99
  breakpoints: WaterFallBreakpoint[];
102
- loading: boolean;
103
100
  noMore: boolean;
104
101
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
105
102
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -149,6 +146,7 @@ declare function useWaterFallLayout(items: Ref<WaterFallItem[]>, columns: Readon
149
146
  readonly y: number;
150
147
  readonly width: number;
151
148
  readonly height: number;
149
+ readonly totalHeight?: number | undefined;
152
150
  }[], readonly {
153
151
  readonly item: {
154
152
  readonly [x: string]: any;
@@ -164,10 +162,11 @@ declare function useWaterFallLayout(items: Ref<WaterFallItem[]>, columns: Readon
164
162
  readonly y: number;
165
163
  readonly width: number;
166
164
  readonly height: number;
165
+ readonly totalHeight?: number | undefined;
167
166
  }[]>>;
168
167
  containerHeight: Readonly<Ref<number, number>>;
169
168
  cacheImageHeight: (id: string | number, realHeight: number, basisWidth?: number, src?: string) => void;
170
- cacheItemExtraHeight: (id: string | number, extraHeight: number) => void;
169
+ cacheItemExtraHeight: (id: string | number, extraHeight: number, basisWidth?: number, src?: string) => void;
171
170
  relayout: () => void;
172
171
  };
173
172
  //#endregion
@@ -52,13 +52,13 @@ declare const __VLS_export: vue.DefineComponent<Props, QRCodeExpose, {}, {}, {},
52
52
  }>, {
53
53
  size: number;
54
54
  color: string;
55
- label: string;
56
- showBorder: boolean;
57
55
  mode: RenderMode;
56
+ margin: number;
58
57
  bgColor: string;
58
+ label: string;
59
59
  errorCorrectionLevel: ErrorCorrectionLevel;
60
- margin: number;
61
60
  logo: LogoOptions;
61
+ showBorder: boolean;
62
62
  showLabel: boolean;
63
63
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
64
64
  declare const _default: typeof __VLS_export;
@@ -52,13 +52,13 @@ declare const __VLS_export: vue.DefineComponent<Props, QRCodeExpose, {}, {}, {},
52
52
  }>, {
53
53
  size: number;
54
54
  color: string;
55
- label: string;
56
- showBorder: boolean;
57
55
  mode: RenderMode;
56
+ margin: number;
58
57
  bgColor: string;
58
+ label: string;
59
59
  errorCorrectionLevel: ErrorCorrectionLevel;
60
- margin: number;
61
60
  logo: LogoOptions;
61
+ showBorder: boolean;
62
62
  showLabel: boolean;
63
63
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
64
64
  declare const _default: typeof __VLS_export;
@@ -92,18 +92,18 @@ interface SignatureEmits {
92
92
  //#endregion
93
93
  //#region src/components/C_Signature/index.vue.d.ts
94
94
  declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
95
- change: (data: SignatureStroke[]) => any;
96
95
  clear: () => any;
97
96
  error: (error: Error) => any;
97
+ change: (data: SignatureStroke[]) => any;
98
98
  "start-draw": () => any;
99
99
  drawing: (point: SignaturePoint) => any;
100
100
  "end-draw": (stroke: SignatureStroke) => any;
101
101
  undo: () => any;
102
102
  redo: () => any;
103
103
  }, string, vue.PublicProps, Readonly<SignatureProps> & Readonly<{
104
- onChange?: ((data: SignatureStroke[]) => any) | undefined;
105
104
  onClear?: (() => any) | undefined;
106
105
  onError?: ((error: Error) => any) | undefined;
106
+ onChange?: ((data: SignatureStroke[]) => any) | undefined;
107
107
  "onStart-draw"?: (() => any) | undefined;
108
108
  onDrawing?: ((point: SignaturePoint) => any) | undefined;
109
109
  "onEnd-draw"?: ((stroke: SignatureStroke) => any) | undefined;
@@ -111,9 +111,9 @@ declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose,
111
111
  onRedo?: (() => any) | undefined;
112
112
  }>, {
113
113
  disabled: boolean;
114
- width: number | string;
115
- height: number | string;
116
114
  readonly: boolean;
115
+ height: number | string;
116
+ width: number | string;
117
117
  showToolbar: boolean;
118
118
  maxHistory: number;
119
119
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -92,18 +92,18 @@ interface SignatureEmits {
92
92
  //#endregion
93
93
  //#region src/components/C_Signature/index.vue.d.ts
94
94
  declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
95
- change: (data: SignatureStroke[]) => any;
96
95
  clear: () => any;
97
96
  error: (error: Error) => any;
97
+ change: (data: SignatureStroke[]) => any;
98
98
  "start-draw": () => any;
99
99
  drawing: (point: SignaturePoint) => any;
100
100
  "end-draw": (stroke: SignatureStroke) => any;
101
101
  undo: () => any;
102
102
  redo: () => any;
103
103
  }, string, vue.PublicProps, Readonly<SignatureProps> & Readonly<{
104
- onChange?: ((data: SignatureStroke[]) => any) | undefined;
105
104
  onClear?: (() => any) | undefined;
106
105
  onError?: ((error: Error) => any) | undefined;
106
+ onChange?: ((data: SignatureStroke[]) => any) | undefined;
107
107
  "onStart-draw"?: (() => any) | undefined;
108
108
  onDrawing?: ((point: SignaturePoint) => any) | undefined;
109
109
  "onEnd-draw"?: ((stroke: SignatureStroke) => any) | undefined;
@@ -111,9 +111,9 @@ declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose,
111
111
  onRedo?: (() => any) | undefined;
112
112
  }>, {
113
113
  disabled: boolean;
114
- width: number | string;
115
- height: number | string;
116
114
  readonly: boolean;
115
+ height: number | string;
116
+ width: number | string;
117
117
  showToolbar: boolean;
118
118
  maxHistory: number;
119
119
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
@@ -55,31 +55,31 @@ type __VLS_Slots = {
55
55
  second(props: PanelInfo): unknown;
56
56
  };
57
57
  declare const __VLS_base: vue.DefineComponent<SplitPaneProps, SplitPaneExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
58
+ resize: (firstSize: number, secondSize: number) => any;
58
59
  expand: (target: CollapseTarget) => any;
59
60
  "update:size": (size: number) => any;
60
- resize: (firstSize: number, secondSize: number) => any;
61
61
  collapse: (target: CollapseTarget) => any;
62
62
  "drag-start": (size: number) => any;
63
63
  "drag-end": (size: number) => any;
64
64
  }, string, vue.PublicProps, Readonly<SplitPaneProps> & Readonly<{
65
+ onResize?: ((firstSize: number, secondSize: number) => any) | undefined;
65
66
  onExpand?: ((target: CollapseTarget) => any) | undefined;
66
67
  "onUpdate:size"?: ((size: number) => any) | undefined;
67
- onResize?: ((firstSize: number, secondSize: number) => any) | undefined;
68
68
  onCollapse?: ((target: CollapseTarget) => any) | undefined;
69
69
  "onDrag-start"?: ((size: number) => any) | undefined;
70
70
  "onDrag-end"?: ((size: number) => any) | undefined;
71
71
  }>, {
72
72
  disabled: boolean;
73
- maxSize: number;
74
73
  direction: SplitDirection;
74
+ step: number;
75
75
  defaultSize: number;
76
76
  minSize: number;
77
+ maxSize: number;
77
78
  minFirstSize: number;
78
79
  minSecondSize: number;
79
80
  collapsible: boolean;
80
81
  showCollapseButton: boolean;
81
82
  gutterSize: number;
82
- step: number;
83
83
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
84
84
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
85
85
  declare const _default: typeof __VLS_export;
@@ -55,31 +55,31 @@ type __VLS_Slots = {
55
55
  second(props: PanelInfo): unknown;
56
56
  };
57
57
  declare const __VLS_base: vue.DefineComponent<SplitPaneProps, SplitPaneExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
58
+ resize: (firstSize: number, secondSize: number) => any;
58
59
  expand: (target: CollapseTarget) => any;
59
60
  "update:size": (size: number) => any;
60
- resize: (firstSize: number, secondSize: number) => any;
61
61
  collapse: (target: CollapseTarget) => any;
62
62
  "drag-start": (size: number) => any;
63
63
  "drag-end": (size: number) => any;
64
64
  }, string, vue.PublicProps, Readonly<SplitPaneProps> & Readonly<{
65
+ onResize?: ((firstSize: number, secondSize: number) => any) | undefined;
65
66
  onExpand?: ((target: CollapseTarget) => any) | undefined;
66
67
  "onUpdate:size"?: ((size: number) => any) | undefined;
67
- onResize?: ((firstSize: number, secondSize: number) => any) | undefined;
68
68
  onCollapse?: ((target: CollapseTarget) => any) | undefined;
69
69
  "onDrag-start"?: ((size: number) => any) | undefined;
70
70
  "onDrag-end"?: ((size: number) => any) | undefined;
71
71
  }>, {
72
72
  disabled: boolean;
73
- maxSize: number;
74
73
  direction: SplitDirection;
74
+ step: number;
75
75
  defaultSize: number;
76
76
  minSize: number;
77
+ maxSize: number;
77
78
  minFirstSize: number;
78
79
  minSecondSize: number;
79
80
  collapsible: boolean;
80
81
  showCollapseButton: boolean;
81
82
  gutterSize: number;
82
- step: number;
83
83
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
84
84
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
85
85
  declare const _default: typeof __VLS_export;