foucui 2.2.1 → 2.3.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.
Files changed (106) hide show
  1. package/README.md +2 -1
  2. package/dist/components/FouBadge/utils/pca-code.json.d.ts +3 -0
  3. package/dist/components/FouBreadcrumb/types.d.ts +14 -0
  4. package/dist/components/FouCalendar/types.d.ts +5 -0
  5. package/dist/components/FouConfigProvider/types.d.ts +6 -0
  6. package/dist/components/FouFloatButton/context.d.ts +1 -0
  7. package/dist/components/FouForm/types.d.ts +2 -1
  8. package/dist/components/FouImagePreviewGroup/context.d.ts +6 -0
  9. package/dist/components/FouInfiniteScroll/index.d.ts +14 -0
  10. package/dist/components/FouMsgBox/index.d.ts +7 -2
  11. package/dist/components/FouSelect/types.d.ts +6 -4
  12. package/dist/components/FouSplitter/types.d.ts +19 -0
  13. package/dist/components/FouTabBar/types.d.ts +5 -0
  14. package/dist/components/FouTour/types.d.ts +18 -0
  15. package/dist/components/popupZIndex.d.ts +3 -0
  16. package/dist/components/useFormField.d.ts +14 -0
  17. package/dist/components/useVirtualList.d.ts +19 -0
  18. package/dist/foucui.css +2 -1
  19. package/dist/foucui.js +24152 -26741
  20. package/dist/foucui.umd.cjs +26 -28
  21. package/dist/index.d.ts +57 -5
  22. package/dist/src/bridge/@/store/modules/settings.d.ts +10 -3
  23. package/package.json +100 -95
  24. package/README.publish.md +0 -19
  25. package/dist/components/FouAnchorLink/index.vue.d.ts +0 -23
  26. package/dist/components/FouBadge/components/BadgeImagePickerDialog.vue.d.ts +0 -16
  27. package/dist/components/FouBadge/components/BadgeLibraryManagerDialog.vue.d.ts +0 -9
  28. package/dist/components/FouBadge/components/BadgeLibraryPanel.vue.d.ts +0 -5
  29. package/dist/components/FouBadge/shared/BadgeTemplateRenderer.vue.d.ts +0 -14
  30. package/dist/components/FouBadge/views/BadgeLibraryView.vue.d.ts +0 -2
  31. package/dist/components/FouBadge/views/BadgeManageView.vue.d.ts +0 -7
  32. package/dist/components/FouBadge/views/BadgeTemplateListView.vue.d.ts +0 -4
  33. package/dist/components/FouBadge/views/DeskLabelTemplateListView.vue.d.ts +0 -4
  34. package/dist/components/FouBadge/views/DeskLabelView.vue.d.ts +0 -4
  35. package/dist/components/FouBanner/index.vue.d.ts +0 -53
  36. package/dist/components/FouButton/index.vue.d.ts +0 -52
  37. package/dist/components/FouCanvasKit/FouCanvasEditor.vue.d.ts +0 -26
  38. package/dist/components/FouCanvasKit/FouCanvasRenderer.vue.d.ts +0 -13
  39. package/dist/components/FouCanvasKit/components/DataModulesPanel.vue.d.ts +0 -24
  40. package/dist/components/FouCarouselItem/index.vue.d.ts +0 -20
  41. package/dist/components/FouCheckbox/FouCheckboxGroup.vue.d.ts +0 -33
  42. package/dist/components/FouCheckbox/index.vue.d.ts +0 -38
  43. package/dist/components/FouCode/index.vue.d.ts +0 -15
  44. package/dist/components/FouCollapseItem/index.vue.d.ts +0 -30
  45. package/dist/components/FouColorField/index.vue.d.ts +0 -23
  46. package/dist/components/FouColorPicker/index.vue.d.ts +0 -21
  47. package/dist/components/FouCombobox/index.vue.d.ts +0 -54
  48. package/dist/components/FouContextMenu/index.vue.d.ts +0 -46
  49. package/dist/components/FouDescriptionsItem/index.vue.d.ts +0 -25
  50. package/dist/components/FouDigitalCard/index.vue.d.ts +0 -45
  51. package/dist/components/FouDropdown/FouDropdownItem.vue.d.ts +0 -30
  52. package/dist/components/FouDropdown/FouDropdownMenu.vue.d.ts +0 -17
  53. package/dist/components/FouDropdown/index.vue.d.ts +0 -47
  54. package/dist/components/FouHoverCard/index.vue.d.ts +0 -44
  55. package/dist/components/FouIcon/index.vue.d.ts +0 -18
  56. package/dist/components/FouInput/index.vue.d.ts +0 -71
  57. package/dist/components/FouInputNumber/index.vue.d.ts +0 -38
  58. package/dist/components/FouInputOtp/index.vue.d.ts +0 -28
  59. package/dist/components/FouKbd/index.vue.d.ts +0 -22
  60. package/dist/components/FouLayoutContainer/index.vue.d.ts +0 -29
  61. package/dist/components/FouLinkPreview/index.vue.d.ts +0 -43
  62. package/dist/components/FouLoading/spinner.vue.d.ts +0 -14
  63. package/dist/components/FouMention/index.vue.d.ts +0 -35
  64. package/dist/components/FouMenu/FouMenuRoot.vue.d.ts +0 -36
  65. package/dist/components/FouMenuNav/FouMenuNavItem.vue.d.ts +0 -26
  66. package/dist/components/FouMenuNav/FouMenuNavSub.vue.d.ts +0 -25
  67. package/dist/components/FouMenuNav/index.vue.d.ts +0 -35
  68. package/dist/components/FouMsg/FouMsgItem.vue.d.ts +0 -15
  69. package/dist/components/FouNotification/FouNotificationItem.vue.d.ts +0 -16
  70. package/dist/components/FouPageMain/index.vue.d.ts +0 -27
  71. package/dist/components/FouPagination/index.vue.d.ts +0 -44
  72. package/dist/components/FouPasswordStrength/index.vue.d.ts +0 -9
  73. package/dist/components/FouQrcode/index.vue.d.ts +0 -20
  74. package/dist/components/FouRadio/FouRadioGroup.vue.d.ts +0 -33
  75. package/dist/components/FouSearchBar/index.vue.d.ts +0 -38
  76. package/dist/components/FouSearchInput/index.vue.d.ts +0 -57
  77. package/dist/components/FouSelect/FouOption.vue.d.ts +0 -24
  78. package/dist/components/FouSelect/index.vue.d.ts +0 -52
  79. package/dist/components/FouSparkline/index.vue.d.ts +0 -18
  80. package/dist/components/FouStep/index.vue.d.ts +0 -31
  81. package/dist/components/FouSwitch/index.vue.d.ts +0 -25
  82. package/dist/components/FouTabBar/index.vue.d.ts +0 -32
  83. package/dist/components/FouTabPane/index.vue.d.ts +0 -25
  84. package/dist/components/FouTable/index.vue.d.ts +0 -322
  85. package/dist/components/FouTime/index.vue.d.ts +0 -43
  86. package/dist/components/FouTimeAgo/index.vue.d.ts +0 -35
  87. package/dist/components/FouTimelineItem/index.vue.d.ts +0 -35
  88. package/dist/components/FouTooltip/index.vue.d.ts +0 -38
  89. package/dist/components/FouTrend/index.vue.d.ts +0 -34
  90. package/dist/components/FouUpload/index.vue.d.ts +0 -86
  91. package/dist/components/FouUploadCrop/index.vue.d.ts +0 -136
  92. package/dist/src/bridge/@/api/media.d.ts +0 -7
  93. package/dist/src/bridge/@/api/notice.d.ts +0 -5
  94. package/dist/src/bridge/@/config/media.config.d.ts +0 -15
  95. package/dist/src/bridge/@/config/security.config.d.ts +0 -7
  96. package/dist/src/bridge/@/store/modules/bing.d.ts +0 -3
  97. package/dist/src/bridge/@/store/modules/errorLog.d.ts +0 -3
  98. package/dist/src/bridge/@/store/modules/media.d.ts +0 -4
  99. package/dist/src/bridge/@/store/modules/routes.d.ts +0 -3
  100. package/dist/src/bridge/@/store/modules/tabs.d.ts +0 -3
  101. package/dist/src/bridge/@/store/modules/user.d.ts +0 -3
  102. package/dist/src/bridge/@/utils/convertToCamelCase.d.ts +0 -2
  103. package/dist/src/bridge/@/utils/index.d.ts +0 -5
  104. package/dist/src/bridge/@/utils/pageTitle.d.ts +0 -1
  105. package/dist/src/bridge/@/utils/routes.d.ts +0 -11
  106. package/dist/src/bridge/@fou/plugins/shortcuts.d.ts +0 -2
@@ -0,0 +1,14 @@
1
+ import { InjectionKey, Ref } from 'vue';
2
+ import { RouteLocationRaw } from 'vue-router';
3
+ export interface FouBreadcrumbItemData {
4
+ label: string;
5
+ to?: RouteLocationRaw;
6
+ replace?: boolean;
7
+ disabled?: boolean;
8
+ icon?: string;
9
+ }
10
+ export interface FouBreadcrumbContext {
11
+ separator: Ref<string>;
12
+ separatorIcon: Ref<string>;
13
+ }
14
+ export declare const FOU_BREADCRUMB_KEY: InjectionKey<FouBreadcrumbContext>;
@@ -0,0 +1,5 @@
1
+ export interface FouCalendarMark {
2
+ date: Date | string;
3
+ type?: 'primary' | 'success' | 'warning' | 'danger' | 'info';
4
+ content?: string;
5
+ }
@@ -0,0 +1,6 @@
1
+ import { Ref } from 'vue';
2
+ export interface FouConfigProviderContext {
3
+ size: Ref<'large' | 'default' | 'small'>;
4
+ locale: Ref<Record<string, string> | undefined>;
5
+ zIndex: Ref<number>;
6
+ }
@@ -0,0 +1 @@
1
+ export declare const FOU_FLOAT_GROUP_KEY: unique symbol;
@@ -8,7 +8,7 @@ export type FouFormRule = {
8
8
  pattern?: RegExp;
9
9
  type?: string;
10
10
  trigger?: 'blur' | 'change' | Array<'blur' | 'change'>;
11
- validator?: (rule: FouFormRule, value: any, callback: (error?: string | Error) => void) => void;
11
+ validator?: (rule: FouFormRule, value: any, callback: (error?: string | Error) => void) => void | boolean | Promise<void | boolean | string | Error>;
12
12
  };
13
13
  export type FouFormRules = Record<string, FouFormRule | FouFormRule[]>;
14
14
  export interface FouFormItemContext {
@@ -25,6 +25,7 @@ export interface FouFormContext {
25
25
  labelPosition: import('vue').ComputedRef<'left' | 'right' | 'top'>;
26
26
  disabled: import('vue').ComputedRef<boolean>;
27
27
  hideRequiredAsterisk: import('vue').ComputedRef<boolean>;
28
+ requireAsteriskPosition: import('vue').ComputedRef<'left' | 'right'>;
28
29
  addField: (field: FouFormItemContext) => void;
29
30
  removeField: (field: FouFormItemContext) => void;
30
31
  emitValidate: (prop: string, isValid: boolean, message: string) => void;
@@ -0,0 +1,6 @@
1
+ export declare const FOU_IMAGE_GROUP_KEY: unique symbol;
2
+ export interface FouImageGroupContext {
3
+ register: (src: string) => void;
4
+ unregister: (src: string) => void;
5
+ open: (src: string) => void;
6
+ }
@@ -0,0 +1,14 @@
1
+ import { App, Directive } from 'vue';
2
+ export interface FouInfiniteScrollOptions {
3
+ handler?: () => void | Promise<void>;
4
+ disabled?: boolean;
5
+ delay?: number;
6
+ distance?: number;
7
+ immediate?: boolean;
8
+ }
9
+ type BindingValue = (() => void | Promise<void>) | FouInfiniteScrollOptions | undefined;
10
+ export declare const vFouInfiniteScroll: Directive<HTMLElement, BindingValue>;
11
+ declare const _default: {
12
+ install(app: App): void;
13
+ };
14
+ export default _default;
@@ -9,6 +9,11 @@ type BoxOptions = {
9
9
  };
10
10
  export declare const fouAlert: (content: any, title?: string, callback?: () => void) => Promise<void>;
11
11
  export declare const fouConfirm: (content: any, title?: string, onOk?: () => void, onCancel?: () => void, confirmButtonText?: string, cancelButtonText?: string) => Promise<void>;
12
- /** Promise 版:返回 'confirm' | 'cancel',便于 async/await */
13
- export declare const fouConfirmPromise: (content: any, title?: string, opts?: Pick<BoxOptions, "confirmButtonText" | "cancelButtonText" | "dangerouslyUseHTMLString">) => Promise<"cancel" | "confirm">;
12
+ /**
13
+ * Promise 版:返回 'confirm' | 'cancel'
14
+ * 支持:
15
+ * - fouConfirmPromise(内容, 标题?, opts?)
16
+ * - fouConfirmPromise({ title, message, confirmButtonText, cancelButtonText })
17
+ */
18
+ export declare const fouConfirmPromise: (contentOrOpts: any, title?: string, opts?: Pick<BoxOptions, "confirmButtonText" | "cancelButtonText" | "dangerouslyUseHTMLString">) => Promise<"cancel" | "confirm">;
14
19
  export {};
@@ -4,10 +4,12 @@ export interface FouSelectOption {
4
4
  label: string;
5
5
  disabled?: boolean;
6
6
  }
7
+ export type FouSelectValue = string | number | boolean;
7
8
  export interface FouSelectContext {
8
- modelValue: Ref<string | number | boolean | null | undefined>;
9
- selectOption: (value: string | number | boolean, label: string) => void;
10
- setHoverOption: (value: string | number | boolean) => void;
9
+ modelValue: Ref<FouSelectValue | FouSelectValue[] | null | undefined>;
10
+ multiple: Ref<boolean>;
11
+ selectOption: (value: FouSelectValue, label: string) => void;
12
+ setHoverOption: (value: FouSelectValue) => void;
11
13
  registerOption: (option: FouSelectOption) => void;
12
- unregisterOption: (value: string | number | boolean) => void;
14
+ unregisterOption: (value: FouSelectValue) => void;
13
15
  }
@@ -0,0 +1,19 @@
1
+ import { InjectionKey, Ref } from 'vue';
2
+ export interface FouSplitterPanelItem {
3
+ uid: number;
4
+ size?: number | string;
5
+ min?: number | string;
6
+ max?: number | string;
7
+ resizable?: boolean;
8
+ }
9
+ export interface FouSplitterContext {
10
+ layout: Ref<'horizontal' | 'vertical'>;
11
+ panels: Ref<FouSplitterPanelItem[]>;
12
+ flexMap: Ref<Record<number, number>>;
13
+ draggingUid: Ref<number>;
14
+ register: (panel: FouSplitterPanelItem) => void;
15
+ unregister: (uid: number) => void;
16
+ update: (uid: number, partial: Partial<FouSplitterPanelItem>) => void;
17
+ startDrag: (uid: number, event: MouseEvent) => void;
18
+ }
19
+ export declare const FOU_SPLITTER_KEY: InjectionKey<FouSplitterContext>;
@@ -5,7 +5,11 @@ export interface FouTabPaneRegistration {
5
5
  label: string;
6
6
  lazy?: boolean;
7
7
  loaded?: boolean;
8
+ disabled?: boolean;
9
+ closable?: boolean;
10
+ icon?: string;
8
11
  render: () => VNode[];
12
+ renderLabel?: () => VNode[];
9
13
  }
10
14
  export interface FouTabBarContext {
11
15
  activeName: Ref<string | number | undefined>;
@@ -14,3 +18,4 @@ export interface FouTabBarContext {
14
18
  updatePane: (uid: number, partial: Partial<FouTabPaneRegistration>) => void;
15
19
  }
16
20
  export declare const FOU_TAB_BAR_KEY: InjectionKey<FouTabBarContext>;
21
+ export declare const FOU_TABS_KEY: InjectionKey<FouTabBarContext>;
@@ -0,0 +1,18 @@
1
+ import { InjectionKey } from 'vue';
2
+ export type FouTourPlacement = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
3
+ export interface FouTourStep {
4
+ target?: string | HTMLElement | (() => HTMLElement | null | undefined);
5
+ title?: string;
6
+ description?: string;
7
+ placement?: FouTourPlacement;
8
+ nextText?: string;
9
+ prevText?: string;
10
+ mask?: boolean;
11
+ }
12
+ export interface FouTourContext {
13
+ registerStep: (step: FouTourStep & {
14
+ uid: number;
15
+ }) => void;
16
+ unregisterStep: (uid: number) => void;
17
+ }
18
+ export declare const FOU_TOUR_KEY: InjectionKey<FouTourContext>;
@@ -0,0 +1,3 @@
1
+ /** 弹层递增 z-index:后打开的盖住先打开的(Dialog 内的 Select 也能盖住 Dialog) */
2
+ export declare function nextPopupZIndex(min?: number): number;
3
+ export declare function peekPopupZIndex(): number;
@@ -0,0 +1,14 @@
1
+ import { MaybeRefOrGetter } from 'vue';
2
+ export type FouFormItemTrigger = {
3
+ validate?: (trigger: string) => Promise<boolean>;
4
+ onFieldBlur?: () => void;
5
+ onFieldChange?: () => void;
6
+ prop?: {
7
+ value?: string;
8
+ };
9
+ };
10
+ export declare function useFormDisabled(disabled: MaybeRefOrGetter<boolean | undefined>): globalThis.ComputedRef<boolean>;
11
+ export declare function useFormItemTrigger(): {
12
+ triggerBlur: () => void;
13
+ triggerChange: () => void;
14
+ };
@@ -0,0 +1,19 @@
1
+ import { Ref } from 'vue';
2
+ /** 简单纵向虚拟列表:按固定行高切可视区 */
3
+ export declare function useVirtualList(opts: {
4
+ scrollRef: Ref<HTMLElement | null>;
5
+ total: () => number;
6
+ itemHeight?: number;
7
+ overscan?: number;
8
+ }): {
9
+ range: globalThis.ComputedRef<{
10
+ start: number;
11
+ end: number;
12
+ padTop: number;
13
+ padBottom: number;
14
+ height: number;
15
+ }>;
16
+ itemHeight: globalThis.ComputedRef<number>;
17
+ measure: () => void;
18
+ onScroll: () => void;
19
+ };