foucui 2.1.0 → 2.2.1

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.
@@ -0,0 +1,53 @@
1
+ export type FouBannerAction = {
2
+ text: string;
3
+ type?: string;
4
+ href?: string;
5
+ url?: string;
6
+ route?: string;
7
+ };
8
+ export type FouBannerSlide = {
9
+ /** image | html | iframe,默认按字段推断 */
10
+ type?: 'image' | 'html' | 'iframe';
11
+ image?: string;
12
+ /** 内联 HTML 片段 */
13
+ html?: string;
14
+ /** iframe 页面地址(可显示完整 HTML 页) */
15
+ src?: string;
16
+ title?: string;
17
+ description?: string;
18
+ link?: string;
19
+ actions?: FouBannerAction[];
20
+ };
21
+ type __VLS_Props = {
22
+ items?: FouBannerSlide[];
23
+ modelValue?: number;
24
+ height?: string | number;
25
+ autoplay?: boolean;
26
+ interval?: number;
27
+ arrow?: 'always' | 'hover' | 'never';
28
+ loop?: boolean;
29
+ };
30
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {
31
+ next: () => void;
32
+ prev: () => void;
33
+ go: (i: number) => void;
34
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
35
+ "update:modelValue": (args_0: number) => any;
36
+ change: (args_0: number) => any;
37
+ click: (args_0: FouBannerSlide) => any;
38
+ action: (args_0: FouBannerAction, args_1: FouBannerSlide) => any;
39
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
40
+ "onUpdate:modelValue"?: (args_0: number) => any;
41
+ onChange?: (args_0: number) => any;
42
+ onClick?: (args_0: FouBannerSlide) => any;
43
+ onAction?: (args_0: FouBannerAction, args_1: FouBannerSlide) => any;
44
+ }>, {
45
+ modelValue: number;
46
+ height: string | number;
47
+ items: FouBannerSlide[];
48
+ interval: number;
49
+ autoplay: boolean;
50
+ arrow: "always" | "hover" | "never";
51
+ loop: boolean;
52
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
53
+ export default _default;
@@ -1,9 +1,8 @@
1
1
  type __VLS_Props = {
2
- /** 禁用下拉 */
3
2
  disabled?: boolean;
4
- /** 弹出位置 */
3
+ /** 触发方式 */
4
+ trigger?: 'click' | 'contextmenu' | 'hover';
5
5
  placement?: 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end' | 'bottom' | 'top';
6
- /** 附加到弹层的 class */
7
6
  popperClass?: string;
8
7
  };
9
8
  declare function __VLS_template(): {
@@ -23,6 +22,7 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
23
22
  open: () => Promise<void>;
24
23
  close: () => void;
25
24
  toggle: () => void;
25
+ openAt: (x: number, y: number) => Promise<void>;
26
26
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
27
27
  command: (args_0: string | number) => any;
28
28
  visibleChange: (args_0: boolean) => any;
@@ -32,6 +32,7 @@ declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
32
32
  }>, {
33
33
  disabled: boolean;
34
34
  placement: "bottom-start" | "bottom-end" | "top-start" | "top-end" | "bottom" | "top";
35
+ trigger: "click" | "contextmenu" | "hover";
35
36
  popperClass: string;
36
37
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
37
38
  triggerRef: HTMLSpanElement;
@@ -2,7 +2,7 @@ import { Ref } from 'vue';
2
2
  /**
3
3
  * 表头 / 表体 / 表尾横向滚动同步。
4
4
  * 对齐策略(双表经典坑):
5
- * 1. 量出 body 纵向滚动条占用
5
+ * 1. 仅在表体确有纵向溢出时量出滚动条占用
6
6
  * 2. header/footer wrap 用 paddingRight 留出同宽空隙
7
7
  * 3. 强制 header/footer 内 table 的像素宽 = body table 宽
8
8
  * 4. 把 body 各 col 的实际像素宽抄到 header/footer
@@ -10,7 +10,7 @@ import { Ref } from 'vue';
10
10
  *
11
11
  * @author qiuye
12
12
  * @email yjk150@qq.com
13
- * @date 2026-08-16
13
+ * @date 2026-08-17
14
14
  */
15
15
  export declare function useScrollSync(opts: {
16
16
  headerWrapRef: Ref<HTMLElement | null>;