snail.vue 2.0.10 → 2.0.11

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.
@@ -265,18 +265,6 @@ type ScrollOptions = {
265
265
  * - none :无,不显示滚动条,但仍然能够滚动
266
266
  */
267
267
  barSize?: "normal" | "small" | "mini" | "none";
268
- /**
269
- * 滚动条模式
270
- * - auto(默认值):自动,内容溢出时自动显示滚动条
271
- * - hover:鼠标进入时才显示滚动条
272
- */
273
- barMode?: "auto" | "hover";
274
- /**
275
- * 滚动条防抖处理
276
- * - 垂直滚动条在【有-无】之间变化时,会导致内容width变化,从而产生抖动
277
- * - 为true时,会给滚动条方向一个处理padding值,从而实现防抖效果
278
- */
279
- debounce?: boolean;
280
268
  };
281
269
  /**
282
270
  * 滚动视图事件
@@ -905,54 +893,6 @@ type SortEvent = {
905
893
  newIndex: number | undefined;
906
894
  };
907
895
 
908
- /**
909
- * 布局组件 数据结构
910
- */
911
-
912
- /**
913
- * 布局组件配置选项
914
- */
915
- type LayoutOptions = {
916
- /**
917
- * 布局模式:水平,还是垂直
918
- */
919
- mode: "horizontal" | "vertical";
920
- /**
921
- * 滚动相关配置
922
- * - 中部区域的配置
923
- */
924
- scroll?: ScrollOptions;
925
- };
926
-
927
- /**
928
- * 折叠面板配置选项
929
- * - title 折叠面板标题
930
- * - disabled 禁用折叠效果,始终展开
931
- */
932
- type FoldOptions = DisabledOptions & TitleOptions & {
933
- /**
934
- * 副标题
935
- * - 跟随在title后
936
- */
937
- subtitle?: string;
938
- };
939
- /**
940
- * 折叠状态
941
- * - expand : 展开状态
942
- * - fold : 折叠状态
943
- */
944
- type FoldStatus = "expand" | "fold";
945
- /**
946
- * 折叠面板事件
947
- */
948
- type FoldEvents = {
949
- /**
950
- * 折叠状态发生改变时
951
- * @param status 折叠状态
952
- */
953
- change: [status: FoldStatus];
954
- };
955
-
956
896
  /**
957
897
  * 组件配置选项
958
898
  */
@@ -989,6 +929,12 @@ type PropsType<Props> = Props extends Record<string, any> ? Props : undefined;
989
929
  type EmitterType<Events extends Record<string, any[]>> = {
990
930
  <K extends keyof Events>(event: K, ...payload: Events[K]): any;
991
931
  };
932
+ /**
933
+ * 提取【组件插槽】类型
934
+ */
935
+ type SlotsType<Slots extends Record<string, any>> = {
936
+ [key in keyof Slots]: (props: Slots[key]) => any;
937
+ };
992
938
  /**
993
939
  * 提取【组件事件】类型
994
940
  * - 将【组件事件】中的key首字母小写,追加上on前缀;key对应的value为监听函数参数
@@ -1018,6 +964,113 @@ type ComponentBindOptions<Props = void, Model = void> = {
1018
964
  model?: Model extends (void | never | null | undefined) ? undefined : (ShallowRef<Model> | Ref<Model>);
1019
965
  };
1020
966
 
967
+ /**
968
+ * 布局组件 数据结构
969
+ */
970
+
971
+ /**
972
+ * 布局组件 配置选项
973
+ */
974
+ type LayoutOptions = {
975
+ /**
976
+ * 布局模式
977
+ * - horizontal 水平布局:左中右
978
+ * - vertical 垂直布局:上中下
979
+ * - 默认为 `horizontal`
980
+ */
981
+ mode?: "horizontal" | "vertical";
982
+ /**
983
+ * 内容区域配置
984
+ * - 对应插槽名:default;主要内容显示区域,处于布局中的【中】区域
985
+ * - 配置主内容区域的滚动条配置
986
+ */
987
+ default?: Pick<LayoutAraeOptions<void>, "scroll">;
988
+ /**
989
+ * 【左侧】区域配置
990
+ * - 对应插槽名`left` ;`mode` 为 `horizontal` 时生效
991
+ * - 配置滚动条和宽度;宽度不配置时,默认 `fit-content`
992
+ * -
993
+ */
994
+ left?: LayoutAraeOptions<WidthStyle>;
995
+ /**
996
+ * 【右测】区域配置
997
+ * - 对应插槽名`right` ;`mode` 为 `horizontal` 时生效
998
+ * - 配置滚动条和宽度;宽度不配置时,默认 `fit-content`
999
+ */
1000
+ right?: LayoutAraeOptions<WidthStyle>;
1001
+ /**
1002
+ * 【顶部】区域配置
1003
+ * - 对应插槽名`top`;`mode` 为 `vertical` 时生效
1004
+ * - 配置滚动条和高度;高度不配置时,默认 `fit-content`
1005
+ * -
1006
+ */
1007
+ top?: LayoutAraeOptions<HeightStyle>;
1008
+ /**
1009
+ * 【底部】区域配置
1010
+ * - 对应插槽名`bottom`;`mode` 为 `vertical` 时生效
1011
+ * - 配置滚动条和高度;高度不配置时,默认 `fit-content`
1012
+ */
1013
+ bottom?: LayoutAraeOptions<HeightStyle>;
1014
+ };
1015
+ /**
1016
+ * 布局组件子区域 配置选项
1017
+ */
1018
+ type LayoutAraeOptions<Style extends WidthStyle | HeightStyle | void> = Style & {
1019
+ /**
1020
+ * 滚动视图配置
1021
+ * - 视图属性:滚动条大小、显示时机
1022
+ * - 滚动事件:滚动条显隐、滚动到顶部、底部、、、
1023
+ * - 不传入则当前区域`overflow:hidden`溢出隐藏
1024
+ */
1025
+ scroll?: ScrollOptions & EventsType<ScrollEvents>;
1026
+ };
1027
+ /**
1028
+ * 布局组件的子区域项目 描述
1029
+ */
1030
+ type LayoutAreaItem = {
1031
+ /**
1032
+ * 是否可滚动
1033
+ */
1034
+ scrollable: boolean;
1035
+ /**
1036
+ * 内容区域元素的类样式名
1037
+ */
1038
+ class: string;
1039
+ /**
1040
+ * css样式
1041
+ */
1042
+ style: Record<string, string>;
1043
+ };
1044
+
1045
+ /**
1046
+ * 折叠面板配置选项
1047
+ * - title 折叠面板标题
1048
+ * - disabled 禁用折叠效果,始终展开
1049
+ */
1050
+ type FoldOptions = DisabledOptions & TitleOptions & {
1051
+ /**
1052
+ * 副标题
1053
+ * - 跟随在title后
1054
+ */
1055
+ subtitle?: string;
1056
+ };
1057
+ /**
1058
+ * 折叠状态
1059
+ * - expand : 展开状态
1060
+ * - fold : 折叠状态
1061
+ */
1062
+ type FoldStatus = "expand" | "fold";
1063
+ /**
1064
+ * 折叠面板事件
1065
+ */
1066
+ type FoldEvents = {
1067
+ /**
1068
+ * 折叠状态发生改变时
1069
+ * @param status 折叠状态
1070
+ */
1071
+ change: [status: FoldStatus];
1072
+ };
1073
+
1021
1074
  /**
1022
1075
  * 选项菜单 基础配置选项
1023
1076
  */
@@ -2771,7 +2824,7 @@ declare const components: {
2771
2824
  };
2772
2825
  });
2773
2826
  Layout: {
2774
- new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<Readonly<LayoutOptions> & Readonly<{}>, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, vue.PublicProps, {}, false, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
2827
+ new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<Readonly<LayoutOptions> & Readonly<{}>, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, vue.PublicProps, {}, true, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
2775
2828
  P: {};
2776
2829
  B: {};
2777
2830
  D: {};
@@ -2783,13 +2836,7 @@ declare const components: {
2783
2836
  __isTeleport?: never;
2784
2837
  __isSuspense?: never;
2785
2838
  } & vue.ComponentOptionsBase<Readonly<LayoutOptions> & Readonly<{}>, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, {}, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => {
2786
- $slots: {
2787
- start?: (props: {}) => any;
2788
- } & {
2789
- default?: (props: {}) => any;
2790
- } & {
2791
- end?: (props: {}) => any;
2792
- };
2839
+ $slots: SlotsType<Pick<LayoutOptions, "default" | "left" | "right" | "bottom" | "top">>;
2793
2840
  });
2794
2841
  Scroll: {
2795
2842
  new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<Readonly<ScrollOptions> & Readonly<{
@@ -3142,4 +3189,4 @@ declare const components: {
3142
3189
  };
3143
3190
 
3144
3191
  export { components, getSvgDraw, mount, onAppCreated, triggerAppCreated, usePicker, usePopup, useReactive, useTreeContext };
3145
- export type { ButtonOptions, ChangeEvents, ChooseEvents, ChooseItem, ChooseOptions, ClickEvents, CloseEvents, ComponentBindOptions, ComponentOptions, ConfirmAreaOptions, ConfirmOptions, DatePickerEvents, DatepickerOptions, DatetimePickerEvents, DeleteEvents, DialogHandle, DialogOptions, DisabledOptions, DragVerifyInfo, DragVerifyOptions, EmitterType, EmptyOptions, EventsType, FoldEvents, FoldOptions, FoldStatus, FollowElectResult, FollowExtend, FollowHandle, FollowOptions, FollowStrategy, FollowStrategyOptions, FooterEvents, FooterOptions, HeaderEvents, HeaderOptions, INumberFormatter, IPickerManager, IPopupManager, IReactiveManager, ISelectContext, ITreeBaseContext, IconOptions, IconType, InputEvents, InputOptions, LayoutOptions, LoadingOptions, MessageOptions, MoveEvents, NumberBaseOptions, NumberEvents, NumberFormatResult, NumberOptions, PlaceholderOptions, PopupDescriptor, PopupHandle, PopupOptions, PopupStatus, PopupStatusOptions, PropsType, ReactiveVar, ReadonlyOptions, ScrollEvents, ScrollOptions, ScrollStatus, SearchEvents, SearchOptions, SelectBaseEvents, SelectBaseOptions, SelectEvents, SelectItem, SelectNodeEvents, SelectNodeOptions, SelectOptions, SelectPopupEvents, SelectPopupExtend, SelectPopupOptions, SelectSlotOptions, SortEvent, SortEvents, SortGroupHook, SortGroupOptions, SortOptions, SwitchEvents, SwitchOptions, TableColOptions, TableOptions, TableRowOptions, TextareaEvents, TextareaOptions, TimePickerOptions, TitleOptions, ToastOptions, TransitionEffectOptions, TransitionOptions, TreeEvents, TreeNode, TreeNodeEvents, TreeNodeExtend, TreeNodeModel, TreeNodeOptions, TreeNodeRenderOptions, TreeNodeSlotOptions, TreeOptions, TreeSearchResult, ValueOptions, WrapperEvents, WrapperOptions };
3192
+ export type { ButtonOptions, ChangeEvents, ChooseEvents, ChooseItem, ChooseOptions, ClickEvents, CloseEvents, ComponentBindOptions, ComponentOptions, ConfirmAreaOptions, ConfirmOptions, DatePickerEvents, DatepickerOptions, DatetimePickerEvents, DeleteEvents, DialogHandle, DialogOptions, DisabledOptions, DragVerifyInfo, DragVerifyOptions, EmitterType, EmptyOptions, EventsType, FoldEvents, FoldOptions, FoldStatus, FollowElectResult, FollowExtend, FollowHandle, FollowOptions, FollowStrategy, FollowStrategyOptions, FooterEvents, FooterOptions, HeaderEvents, HeaderOptions, INumberFormatter, IPickerManager, IPopupManager, IReactiveManager, ISelectContext, ITreeBaseContext, IconOptions, IconType, InputEvents, InputOptions, LayoutAraeOptions, LayoutAreaItem, LayoutOptions, LoadingOptions, MessageOptions, MoveEvents, NumberBaseOptions, NumberEvents, NumberFormatResult, NumberOptions, PlaceholderOptions, PopupDescriptor, PopupHandle, PopupOptions, PopupStatus, PopupStatusOptions, PropsType, ReactiveVar, ReadonlyOptions, ScrollEvents, ScrollOptions, ScrollStatus, SearchEvents, SearchOptions, SelectBaseEvents, SelectBaseOptions, SelectEvents, SelectItem, SelectNodeEvents, SelectNodeOptions, SelectOptions, SelectPopupEvents, SelectPopupExtend, SelectPopupOptions, SelectSlotOptions, SlotsType, SortEvent, SortEvents, SortGroupHook, SortGroupOptions, SortOptions, SwitchEvents, SwitchOptions, TableColOptions, TableOptions, TableRowOptions, TextareaEvents, TextareaOptions, TimePickerOptions, TitleOptions, ToastOptions, TransitionEffectOptions, TransitionOptions, TreeEvents, TreeNode, TreeNodeEvents, TreeNodeExtend, TreeNodeModel, TreeNodeOptions, TreeNodeRenderOptions, TreeNodeSlotOptions, TreeOptions, TreeSearchResult, ValueOptions, WrapperEvents, WrapperOptions };