snail.vue 2.0.26 → 2.0.28

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.
@@ -1876,6 +1876,23 @@ type IconOptions = TitleOptions & {
1876
1876
  * - 通过:transform: rotate(1.06); 实现
1877
1877
  */
1878
1878
  rotate?: number;
1879
+ /**
1880
+ * 图标透明度
1881
+ * - 不传入,默认1
1882
+ */
1883
+ opacity?: number;
1884
+ /**
1885
+ * 图标边样式
1886
+ */
1887
+ border?: string;
1888
+ /**
1889
+ * 图标圆角样式
1890
+ */
1891
+ radius?: string;
1892
+ /**
1893
+ * 图标背景样式
1894
+ */
1895
+ background?: string;
1879
1896
  /**
1880
1897
  * 图形伸展
1881
1898
  * - svg.viewBox 属性
@@ -1895,6 +1912,7 @@ type IconOptions = TitleOptions & {
1895
1912
  * - - download 下载
1896
1913
  * - - print 打印
1897
1914
  * - - edit 编辑
1915
+ * - - pause 暂停,两道竖线
1898
1916
  * - 指向类:
1899
1917
  * - - arrow 向右箭头
1900
1918
  * - - datepicker 日期选择器
@@ -1902,9 +1920,10 @@ type IconOptions = TitleOptions & {
1902
1920
  * - 其他类:
1903
1921
  * - - plus 加号
1904
1922
  * - - subtract 减号
1923
+ * - - more 更多,默认垂直三个点
1905
1924
  * - - grip 紧握图标,垂直方向,一般用于拖动句柄
1906
1925
  */
1907
- type IconType = "success" | "error" | "warn" | "close" | "trash" | "download" | "print" | "edit" | "arrow" | "datepicker" | "timepicker" | "plus" | "subtract" | "grip";
1926
+ type IconType = "success" | "error" | "warn" | "close" | "trash" | "download" | "print" | "edit" | "pause" | "arrow" | "datepicker" | "timepicker" | "plus" | "subtract" | "more" | "grip";
1908
1927
 
1909
1928
  /**
1910
1929
  * 检查选项 数据结构
@@ -2000,6 +2019,279 @@ type ButtonOptions = TitleOptions & {
2000
2019
  type: "primary" | "default" | "link";
2001
2020
  };
2002
2021
 
2022
+ /**
2023
+ * 公共通用数据结构:
2024
+ * 1、在弹窗、模态弹窗、跟随弹窗的效果下复用
2025
+ */
2026
+
2027
+ /**
2028
+ * 弹窗配置选项
2029
+ * - 约束弹出组件信息
2030
+ * - 弹出组件时传递的参数信息
2031
+ * @see ComponentBindOptions 了解 Props、Model 泛型参数的含义
2032
+ */
2033
+ type PopupOptions<Props = void, Model = void> = ComponentOptions & ComponentBindOptions<Props, Model> & {
2034
+ /**
2035
+ * 弹窗动画名
2036
+ * - 不传则默认“fade”
2037
+ * - 动画规则:打开弹窗时,为 [transition]-in ;关闭弹窗时,为[transition]-out
2038
+ * - - 传入 "scale",则打开弹窗为 "scale-in";关闭弹窗时为 "scale-out"
2039
+ */
2040
+ transition?: string;
2041
+ /**
2042
+ * 动画持续时间
2043
+ * - 配合 transition 使用;单位ms,默认500ms
2044
+ * - 外部传入自定义动画时,传入动画持续时间,否则可能导致关闭时动画失效
2045
+ */
2046
+ transitionDuration?: number;
2047
+ /**
2048
+ * 自定义class
2049
+ * - 绑定到内容组件根元素上
2050
+ * - 可以直接在props中指定,无需特殊设置
2051
+ class?: string | string[];
2052
+ */
2053
+ /**
2054
+ * 自定义style
2055
+ * - 绑定到内容组件根元素上
2056
+ * - 可以直接在props中指定,无需特殊设置
2057
+ style?: AllStyle;
2058
+ */
2059
+ /**
2060
+ * 弹窗的z-index值
2061
+ * - 无特殊情况,建议不指定,内部会自动生成,确保弹窗正确性
2062
+ */
2063
+ zIndex?: number;
2064
+ };
2065
+ /**
2066
+ * 弹出组件句柄
2067
+ */
2068
+ type PopupHandle<T> = {
2069
+ /**
2070
+ * 组件是否在【弹出窗口】中
2071
+ * - popup : 普通弹出弹窗
2072
+ * - dialog : 模态对话弹窗
2073
+ * - follow : 跟随效果弹窗
2074
+ */
2075
+ inPopup: Readonly<"popup" | "dialog" | "follow">;
2076
+ /**
2077
+ * 关闭弹窗
2078
+ * @param data 关闭时传递数据
2079
+ */
2080
+ closePopup(data?: T): void;
2081
+ };
2082
+ /**
2083
+ * 弹窗状态:响应式
2084
+ * - open 打开
2085
+ * - active 激活,针对Dialog弹窗生效
2086
+ * - unactive 非激活,针对Dialog弹窗生效
2087
+ * - closed 关闭
2088
+ */
2089
+ type PopupStatus = ShallowRef<"open" | "active" | "unactive" | "closed">;
2090
+ /**
2091
+ * 弹窗状态 配置选项
2092
+ */
2093
+ type PopupStatusOptions = {
2094
+ /**
2095
+ * 弹窗状态:响应式
2096
+ */
2097
+ popupStatus: PopupStatus;
2098
+ };
2099
+ /**
2100
+ * 弹窗对象描述器
2101
+ * - 给弹窗容器使用,传递过去作为props使用
2102
+ */
2103
+ type PopupDescriptor<Options extends PopupOptions, ExtOptions> = PopupStatusOptions & {
2104
+ /**
2105
+ * 弹窗Id
2106
+ * - 自动分配,全局唯一
2107
+ */
2108
+ popupId: string;
2109
+ /**
2110
+ * 弹窗配置选项
2111
+ * - 由外部传递过来的业务数据配置信息
2112
+ * - 约束具体弹窗的业务组件和业务组件所需props等数据
2113
+ */
2114
+ options: Options;
2115
+ /**
2116
+ * 弹窗扩展配置选项
2117
+ * - 由 popup、follow等方法内部组件:如关闭弹窗方法、钩子函数等
2118
+ * - 配合业务组件使用的一些配置数据
2119
+ */
2120
+ extOptions: ExtOptions;
2121
+ /**
2122
+ * 实际分配的zIndex值
2123
+ */
2124
+ zIndex: number;
2125
+ /**
2126
+ * 弹窗动画名
2127
+ * - 约束打开、关闭动画;基于 PopupOptions.transition 构建出来的
2128
+ * - 具体使用方,将此值绑定的根元素上
2129
+ */
2130
+ popupTransition: ShallowRef<string>;
2131
+ };
2132
+
2133
+ /**
2134
+ * 跟随效果 弹窗
2135
+ */
2136
+
2137
+ /**
2138
+ * 跟随弹窗 配置选项
2139
+ * - 传入的组件,根据配置跟随 target 位置和大小;
2140
+ * @see ComponentBindOptions 了解 Props、Model 泛型参数的含义
2141
+ */
2142
+ type FollowOptions<Props = void, Model = void> = PopupOptions<Props, Model> & FollowPositionOptions;
2143
+ /**
2144
+ * 跟随位置 配置选项
2145
+ * - 基于此计算出最终的跟随效果
2146
+ */
2147
+ type FollowPositionOptions = {
2148
+ /**
2149
+ * 启用【宽度】跟随
2150
+ * - 为true则和 target 宽度保持一致
2151
+ * - false时,宽度由 弹出组件 自己维护
2152
+ * - 不管是true、还是false,若宽度超过浏览器最大宽度,会进行强制干预
2153
+ */
2154
+ followWidth?: boolean;
2155
+ /**
2156
+ * 启用【高度】跟随
2157
+ * - 为true则和 target 高度保持一致
2158
+ * - false时,高度由 弹出组件 自己维护
2159
+ * - 不管是true、还是false,若高度超过浏览器最大高度,会进行强制干预
2160
+ */
2161
+ followHeight?: boolean;
2162
+ /**
2163
+ * x轴方向上的跟随策略
2164
+ * - 支持传入一个或者多个,依次尝试选举最优位置(全宽度展示,否则取最大宽度位置)
2165
+ * - 不传入则按照默认策略;["start","end","after","before","center","ratio"]
2166
+ * - 可选策略值如下:
2167
+ * - - start : 起点跟随,和 target 起始位置(left)一致
2168
+ * - - end : 终点跟随,和 target 结束位置(right)一致
2169
+ * - - center : 中心跟随,和 target 中心位置一致
2170
+ * - - before : 之前跟随,组件在 target 左侧展示
2171
+ * - - after : 之后跟随,组件在 target 右侧展示
2172
+ * - - ratio : 比例跟随,按比例(target中心点/窗口宽度)锚定位置,动态计算left值。
2173
+ */
2174
+ followX?: FollowStrategy | FollowStrategy[];
2175
+ /**
2176
+ * y轴方向上的跟随策略
2177
+ * - 支持传入一个或者多个,依次尝试选举最优位置(全高度展示,否则取最大高度位置)
2178
+ * - 不传入则按照默认策略;["after","before","start","end","center","ratio"]
2179
+ * - 可选策略值如下:
2180
+ * - - start : 起点跟随,和 target 起始位置(top)一致
2181
+ * - - end : 终点跟随,和 target 结束位置(bottom)一致
2182
+ * - - center : 中心跟随,和 target 中心位置一致
2183
+ * - - before : 之前跟随,组件在 target 顶部展示
2184
+ * - - after : 之后跟随,组件在 target 底部展示
2185
+ * - - ratio : 比例跟随,按比例(target中心点/窗口高度)锚定位置,动态计算top值。
2186
+ */
2187
+ followY?: FollowStrategy | FollowStrategy[];
2188
+ /**
2189
+ * x轴方向上 target 之间的留白空间
2190
+ * - 默认0; followX 为 center、ratio 时间距失效
2191
+ * - 增加间距,提升展示效果
2192
+ * -
2193
+ */
2194
+ spaceX?: number;
2195
+ /**
2196
+ * y轴方向上 target 之间的留白空间
2197
+ * - 默认0;followY 为 center、ratio 时间距失效
2198
+ * - 增加间距,提升展示效果
2199
+ */
2200
+ spaceY?: number;
2201
+ /**
2202
+ * 和 浏览器客户 端之间的留白空间
2203
+ * - 弹出组件 和浏览器客户端窗口之间的【留白空间】
2204
+ * - 仅在 弹出组件 计算出来位置紧贴浏览器窗口时生效
2205
+ * - 若强制指定了 start、end,则对应的起始、结束位置不受此值影响
2206
+ */
2207
+ spaceClient?: number;
2208
+ /**
2209
+ * 点击【遮罩层】时是否关闭弹窗
2210
+ * - 则点击非【跟随组件】区域时是否关闭
2211
+ */
2212
+ closeOnMask?: boolean;
2213
+ /**
2214
+ * 按下【ESC】健时是否关闭弹窗
2215
+ */
2216
+ closeOnEscape?: boolean;
2217
+ /**
2218
+ * window窗口【resize】时是否关闭弹窗
2219
+ */
2220
+ closeOnResize?: boolean;
2221
+ /**
2222
+ * target改变时是否关闭弹窗
2223
+ * - target尺寸、位置变化
2224
+ * - target点击时
2225
+ */
2226
+ closeOnTarget?: boolean;
2227
+ };
2228
+ /**
2229
+ * 跟随策略
2230
+ * - 详细值定义,参照 FollowOptions.followX 和 FollowOptions.followY
2231
+ */
2232
+ type FollowStrategy = "start" | "center" | "end" | "before" | "after" | "ratio";
2233
+ /**
2234
+ * 跟随弹窗 句柄
2235
+ * - 用于在 弹窗组件 内部进行模式判断和关闭跟随弹窗
2236
+ */
2237
+ type FollowHandle<T> = PopupHandle<T> & {};
2238
+ /**
2239
+ * 跟随弹窗 扩展配置
2240
+ */
2241
+ type FollowExtend = PopupStatusOptions & {
2242
+ /**
2243
+ * 跟随的目标元素
2244
+ */
2245
+ target: Element;
2246
+ /**
2247
+ * x轴方向的跟随策略:响应式
2248
+ * - 基于外部传入的跟随策略,计算选举出来的最优策略值
2249
+ */
2250
+ followX: ShallowRef<FollowStrategy>;
2251
+ /**
2252
+ * y轴方向的跟随策略:响应式
2253
+ * - 基于外部传入的跟随策略,计算选举出来的最优策略值
2254
+ */
2255
+ followY: ShallowRef<FollowStrategy>;
2256
+ /**
2257
+ * Follow弹窗是否【钉住】了
2258
+ * - 为true时,closeOnMask、closeOnEscape失效
2259
+ * - 满足 子弹窗 点击等操作时,不自动销毁父级弹窗
2260
+ */
2261
+ pinned: ShallowRef<boolean>;
2262
+ };
2263
+ /**
2264
+ * 跟随策略 配置选项
2265
+ */
2266
+ type FollowStrategyOptions = {
2267
+ /**
2268
+ * x轴的跟随策略
2269
+ */
2270
+ followX?: FollowStrategy;
2271
+ /**
2272
+ * x轴的跟随策略
2273
+ */
2274
+ followY?: FollowStrategy;
2275
+ };
2276
+ /**
2277
+ * 跟随选举结果
2278
+ */
2279
+ type FollowElectResult = {
2280
+ /**
2281
+ * 跟随策略
2282
+ */
2283
+ strategy: FollowStrategy;
2284
+ /**
2285
+ * 开始位置:x/top
2286
+ */
2287
+ start: number;
2288
+ /**
2289
+ * 调整后的尺寸(width/height)
2290
+ * - 为undefined表示无需调整尺寸
2291
+ */
2292
+ size?: number;
2293
+ };
2294
+
2003
2295
  /**
2004
2296
  * 可操作项组件 的配置选项
2005
2297
  * - disabled 为true时,不响应操作项触发
@@ -2007,10 +2299,11 @@ type ButtonOptions = TitleOptions & {
2007
2299
  type ActionOptions = DisabledOptions & {
2008
2300
  /**
2009
2301
  * 触发方式
2010
- * - hover:鼠标移入显示
2011
- * - long-press:长摁显示
2302
+ * - always :始终显示一个触发图标,点击图标弹出操作项
2303
+ * - hover:鼠标移入显示一个触发图标,点击图标弹出操作项
2304
+ * - long-press:长摁直接弹出操作项
2012
2305
  */
2013
- trigger: "hover" | "long-press";
2306
+ trigger: "always" | "hover" | "long-press";
2014
2307
  /**
2015
2308
  * 显示模式
2016
2309
  * - popup:弹出显示操作项
@@ -2020,7 +2313,7 @@ type ActionOptions = DisabledOptions & {
2020
2313
  * 可用操作项
2021
2314
  */
2022
2315
  actions: ActionItem[];
2023
- };
2316
+ } & Pick<FollowPositionOptions, "followX" | "followY" | "spaceX" | "spaceY">;
2024
2317
  /**
2025
2318
  * 操作项集合 组件渲染配置选项
2026
2319
  */
@@ -2063,6 +2356,19 @@ type ActionItem = {
2063
2356
  */
2064
2357
  icon?: Pick<IconOptions, "type" | "size" | "title">;
2065
2358
  };
2359
+ /**
2360
+ * 可操作向组件 插槽句柄
2361
+ */
2362
+ type ActionSlotHandle = {
2363
+ /**
2364
+ * 操作项是否激活显示
2365
+ */
2366
+ isActived(): boolean;
2367
+ /**
2368
+ * 触发操作项显示
2369
+ */
2370
+ trigger(): void;
2371
+ };
2066
2372
  /**
2067
2373
  * 可操作项组件 的事件
2068
2374
  */
@@ -2289,196 +2595,85 @@ declare function triggerAppCreated(app: App, type?: AppType): App;
2289
2595
  declare function getBuiltinIcon(iconType: IconType): string[];
2290
2596
 
2291
2597
  /**
2292
- * 动态加载组件 组件配置选项
2293
- */
2294
- type DynamicOptions<Props = void> = ComponentOptions & Pick<ComponentBindOptions<Props>, "props">;
2295
-
2296
- /**
2297
- * 挂载指定的Vue组件
2298
- * - 权限构建的vue app实例,挂载传入的组件
2299
- * @param target 挂载的目标元素
2300
- * @param options 挂载配置选项
2301
- * @param onDestroyed 监听【调用方】的销毁时机,用于自动销毁挂载的实力
2302
- * @returns 作用域对象,销毁挂载实例
2303
- */
2304
- declare function mount<Props>(target: HTMLElement, options: DynamicOptions<Props>, onDestroyed?: (fn: () => void) => void): IScope;
2305
-
2306
- /**
2307
- * 运动组件的助手方法变量
2308
- */
2309
- /**
2310
- * 运行效果常量
2311
- */
2312
- declare const MOTION: Readonly<{
2313
- /** 淡入淡出;进入时 `opacity:0~1`;退出时 `opacity:1~0`*/
2314
- fade: {
2315
- enter: string;
2316
- leave: string;
2317
- };
2318
- /** 缩放进入:进入时 `scale:0~1`;退出时 `scale:1~0`*/
2319
- scale: {
2320
- enter: string;
2321
- leave: string;
2322
- };
2323
- /** 旋转:进入时 `rotate:360deg~0`;退出时 `rotate:0~360deg`*/
2324
- rotate: {
2325
- enter: string;
2326
- leave: string;
2327
- };
2328
- /** 顶部进入退出:进入时`translateY:-100%~0`;退出时`translateY:0~-100%`*/
2329
- top: {
2330
- enter: string;
2331
- leave: string;
2332
- };
2333
- /** 顶部进入底部退出:进入时`translateY:-100%~0`;退出时`translateY:0~100%`*/
2334
- topBottom: {
2335
- enter: string;
2336
- leave: string;
2337
- };
2338
- /** 底部进入退出:进入时`translateY:100%~0`;退出时`translateY:0~100%`*/
2339
- bottom: {
2340
- enter: string;
2341
- leave: string;
2342
- };
2343
- /** 底部进入顶部退出:进入时`translateY:100%~0`;退出时`translateY:0~-100%`*/
2344
- bottomTop: {
2345
- enter: string;
2346
- leave: string;
2347
- };
2348
- /** 左侧进入退出:进入时`translateX:-100%~0`;退出时`translateX:0~-100%`*/
2349
- left: {
2350
- enter: string;
2351
- leave: string;
2352
- };
2353
- /** 左侧进入右侧退出:进入时`translateX:-100%~0`;退出时`translateX:0~100%`*/
2354
- leftRight: {
2355
- enter: string;
2356
- leave: string;
2357
- };
2358
- /** 右侧进入右侧退出:进入时`translateX:100%~0`;退出时`translateX:0~100%`*/
2359
- right: {
2360
- enter: string;
2361
- leave: string;
2362
- };
2363
- /** 右侧进入左侧退出:进入时`translateX:100%~0`;退出时`translateX:0~-100%`*/
2364
- rightLeft: {
2365
- enter: string;
2366
- leave: string;
2367
- };
2368
- }>;
2369
-
2370
- /**
2371
- * 公共通用数据结构:
2372
- * 1、在弹窗、模态弹窗、跟随弹窗的效果下复用
2373
- */
2374
-
2375
- /**
2376
- * 弹窗配置选项
2377
- * - 约束弹出组件信息
2378
- * - 弹出组件时传递的参数信息
2379
- * @see ComponentBindOptions 了解 Props、Model 泛型参数的含义
2380
- */
2381
- type PopupOptions<Props = void, Model = void> = ComponentOptions & ComponentBindOptions<Props, Model> & {
2382
- /**
2383
- * 弹窗动画名
2384
- * - 不传则默认“fade”
2385
- * - 动画规则:打开弹窗时,为 [transition]-in ;关闭弹窗时,为[transition]-out
2386
- * - - 传入 "scale",则打开弹窗为 "scale-in";关闭弹窗时为 "scale-out"
2387
- */
2388
- transition?: string;
2389
- /**
2390
- * 动画持续时间
2391
- * - 配合 transition 使用;单位ms,默认500ms
2392
- * - 外部传入自定义动画时,传入动画持续时间,否则可能导致关闭时动画失效
2393
- */
2394
- transitionDuration?: number;
2395
- /**
2396
- * 自定义class
2397
- * - 绑定到内容组件根元素上
2398
- * - 可以直接在props中指定,无需特殊设置
2399
- class?: string | string[];
2400
- */
2401
- /**
2402
- * 自定义style
2403
- * - 绑定到内容组件根元素上
2404
- * - 可以直接在props中指定,无需特殊设置
2405
- style?: AllStyle;
2406
- */
2407
- /**
2408
- * 弹窗的z-index值
2409
- * - 无特殊情况,建议不指定,内部会自动生成,确保弹窗正确性
2410
- */
2411
- zIndex?: number;
2412
- };
2413
- /**
2414
- * 弹出组件句柄
2415
- */
2416
- type PopupHandle<T> = {
2417
- /**
2418
- * 组件是否在【弹出窗口】中
2419
- * - popup : 普通弹出弹窗
2420
- * - dialog : 模态对话弹窗
2421
- * - follow : 跟随效果弹窗
2422
- */
2423
- inPopup: Readonly<"popup" | "dialog" | "follow">;
2424
- /**
2425
- * 关闭弹窗
2426
- * @param data 关闭时传递数据
2427
- */
2428
- closePopup(data?: T): void;
2429
- };
2430
- /**
2431
- * 弹窗状态:响应式
2432
- * - open 打开
2433
- * - active 激活,针对Dialog弹窗生效
2434
- * - unactive 非激活,针对Dialog弹窗生效
2435
- * - closed 关闭
2436
- */
2437
- type PopupStatus = ShallowRef<"open" | "active" | "unactive" | "closed">;
2438
- /**
2439
- * 弹窗状态 配置选项
2440
- */
2441
- type PopupStatusOptions = {
2442
- /**
2443
- * 弹窗状态:响应式
2444
- */
2445
- popupStatus: PopupStatus;
2446
- };
2447
- /**
2448
- * 弹窗对象描述器
2449
- * - 给弹窗容器使用,传递过去作为props使用
2450
- */
2451
- type PopupDescriptor<Options extends PopupOptions, ExtOptions> = PopupStatusOptions & {
2452
- /**
2453
- * 弹窗Id
2454
- * - 自动分配,全局唯一
2455
- */
2456
- popupId: string;
2457
- /**
2458
- * 弹窗配置选项
2459
- * - 由外部传递过来的业务数据配置信息
2460
- * - 约束具体弹窗的业务组件和业务组件所需props等数据
2461
- */
2462
- options: Options;
2463
- /**
2464
- * 弹窗扩展配置选项
2465
- * - 由 popup、follow等方法内部组件:如关闭弹窗方法、钩子函数等
2466
- * - 配合业务组件使用的一些配置数据
2467
- */
2468
- extOptions: ExtOptions;
2469
- /**
2470
- * 实际分配的zIndex值
2471
- */
2472
- zIndex: number;
2473
- /**
2474
- * 弹窗动画名
2475
- * - 约束打开、关闭动画;基于 PopupOptions.transition 构建出来的
2476
- * - 具体使用方,将此值绑定的根元素上
2477
- */
2478
- popupTransition: ShallowRef<string>;
2479
- };
2480
-
2481
- /**
2598
+ * 动态加载组件 组件配置选项
2599
+ */
2600
+ type DynamicOptions<Props = void> = ComponentOptions & Pick<ComponentBindOptions<Props>, "props">;
2601
+
2602
+ /**
2603
+ * 挂载指定的Vue组件
2604
+ * - 权限构建的vue app实例,挂载传入的组件
2605
+ * @param target 挂载的目标元素
2606
+ * @param options 挂载配置选项
2607
+ * @param onDestroyed 监听【调用方】的销毁时机,用于自动销毁挂载的实力
2608
+ * @returns 作用域对象,销毁挂载实例
2609
+ */
2610
+ declare function mount<Props>(target: HTMLElement, options: DynamicOptions<Props>, onDestroyed?: (fn: () => void) => void): IScope;
2611
+
2612
+ /**
2613
+ * 运动组件的助手方法变量
2614
+ */
2615
+ /**
2616
+ * 运行效果常量
2617
+ */
2618
+ declare const MOTION: Readonly<{
2619
+ /** 淡入淡出;进入时 `opacity:0~1`;退出时 `opacity:1~0`*/
2620
+ fade: {
2621
+ enter: string;
2622
+ leave: string;
2623
+ };
2624
+ /** 缩放进入:进入时 `scale:0~1`;退出时 `scale:1~0`*/
2625
+ scale: {
2626
+ enter: string;
2627
+ leave: string;
2628
+ };
2629
+ /** 旋转:进入时 `rotate:360deg~0`;退出时 `rotate:0~360deg`*/
2630
+ rotate: {
2631
+ enter: string;
2632
+ leave: string;
2633
+ };
2634
+ /** 顶部进入退出:进入时`translateY:-100%~0`;退出时`translateY:0~-100%`*/
2635
+ top: {
2636
+ enter: string;
2637
+ leave: string;
2638
+ };
2639
+ /** 顶部进入底部退出:进入时`translateY:-100%~0`;退出时`translateY:0~100%`*/
2640
+ topBottom: {
2641
+ enter: string;
2642
+ leave: string;
2643
+ };
2644
+ /** 底部进入退出:进入时`translateY:100%~0`;退出时`translateY:0~100%`*/
2645
+ bottom: {
2646
+ enter: string;
2647
+ leave: string;
2648
+ };
2649
+ /** 底部进入顶部退出:进入时`translateY:100%~0`;退出时`translateY:0~-100%`*/
2650
+ bottomTop: {
2651
+ enter: string;
2652
+ leave: string;
2653
+ };
2654
+ /** 左侧进入退出:进入时`translateX:-100%~0`;退出时`translateX:0~-100%`*/
2655
+ left: {
2656
+ enter: string;
2657
+ leave: string;
2658
+ };
2659
+ /** 左侧进入右侧退出:进入时`translateX:-100%~0`;退出时`translateX:0~100%`*/
2660
+ leftRight: {
2661
+ enter: string;
2662
+ leave: string;
2663
+ };
2664
+ /** 右侧进入右侧退出:进入时`translateX:100%~0`;退出时`translateX:0~100%`*/
2665
+ right: {
2666
+ enter: string;
2667
+ leave: string;
2668
+ };
2669
+ /** 右侧进入左侧退出:进入时`translateX:100%~0`;退出时`translateX:0~-100%`*/
2670
+ rightLeft: {
2671
+ enter: string;
2672
+ leave: string;
2673
+ };
2674
+ }>;
2675
+
2676
+ /**
2482
2677
  * 模态弹窗数据结构
2483
2678
  */
2484
2679
 
@@ -2568,168 +2763,6 @@ type ToastOptions = {
2568
2763
  closeDisabled?: boolean;
2569
2764
  };
2570
2765
 
2571
- /**
2572
- * 跟随效果 弹窗
2573
- */
2574
-
2575
- /**
2576
- * 跟随弹窗 配置选项
2577
- * - 传入的组件,根据配置跟随 target 位置和大小;
2578
- * @see ComponentBindOptions 了解 Props、Model 泛型参数的含义
2579
- */
2580
- type FollowOptions<Props = void, Model = void> = PopupOptions<Props, Model> & FollowPositionOptions;
2581
- /**
2582
- * 跟随位置 配置选项
2583
- * - 基于此计算出最终的跟随效果
2584
- */
2585
- type FollowPositionOptions = {
2586
- /**
2587
- * 启用【宽度】跟随
2588
- * - 为true则和 target 宽度保持一致
2589
- * - false时,宽度由 弹出组件 自己维护
2590
- * - 不管是true、还是false,若宽度超过浏览器最大宽度,会进行强制干预
2591
- */
2592
- followWidth?: boolean;
2593
- /**
2594
- * 启用【高度】跟随
2595
- * - 为true则和 target 高度保持一致
2596
- * - false时,高度由 弹出组件 自己维护
2597
- * - 不管是true、还是false,若高度超过浏览器最大高度,会进行强制干预
2598
- */
2599
- followHeight?: boolean;
2600
- /**
2601
- * x轴方向上的跟随策略
2602
- * - 支持传入一个或者多个,依次尝试选举最优位置(全宽度展示,否则取最大宽度位置)
2603
- * - 不传入则按照默认策略;["start","end","after","before","center","ratio"]
2604
- * - 可选策略值如下:
2605
- * - - start : 起点跟随,和 target 起始位置(left)一致
2606
- * - - end : 终点跟随,和 target 结束位置(right)一致
2607
- * - - center : 中心跟随,和 target 中心位置一致
2608
- * - - before : 之前跟随,组件在 target 左侧展示
2609
- * - - after : 之后跟随,组件在 target 右侧展示
2610
- * - - ratio : 比例跟随,按比例(target中心点/窗口宽度)锚定位置,动态计算left值。
2611
- */
2612
- followX?: FollowStrategy | FollowStrategy[];
2613
- /**
2614
- * y轴方向上的跟随策略
2615
- * - 支持传入一个或者多个,依次尝试选举最优位置(全高度展示,否则取最大高度位置)
2616
- * - 不传入则按照默认策略;["after","before","start","end","center","ratio"]
2617
- * - 可选策略值如下:
2618
- * - - start : 起点跟随,和 target 起始位置(top)一致
2619
- * - - end : 终点跟随,和 target 结束位置(bottom)一致
2620
- * - - center : 中心跟随,和 target 中心位置一致
2621
- * - - before : 之前跟随,组件在 target 顶部展示
2622
- * - - after : 之后跟随,组件在 target 底部展示
2623
- * - - ratio : 比例跟随,按比例(target中心点/窗口高度)锚定位置,动态计算top值。
2624
- */
2625
- followY?: FollowStrategy | FollowStrategy[];
2626
- /**
2627
- * x轴方向上 target 之间的留白空间
2628
- * - 默认0; followX 为 center、ratio 时间距失效
2629
- * - 增加间距,提升展示效果
2630
- * -
2631
- */
2632
- spaceX?: number;
2633
- /**
2634
- * y轴方向上 target 之间的留白空间
2635
- * - 默认0;followY 为 center、ratio 时间距失效
2636
- * - 增加间距,提升展示效果
2637
- */
2638
- spaceY?: number;
2639
- /**
2640
- * 和 浏览器客户 端之间的留白空间
2641
- * - 弹出组件 和浏览器客户端窗口之间的【留白空间】
2642
- * - 仅在 弹出组件 计算出来位置紧贴浏览器窗口时生效
2643
- * - 若强制指定了 start、end,则对应的起始、结束位置不受此值影响
2644
- */
2645
- spaceClient?: number;
2646
- /**
2647
- * 点击【遮罩层】时是否关闭弹窗
2648
- * - 则点击非【跟随组件】区域时是否关闭
2649
- */
2650
- closeOnMask?: boolean;
2651
- /**
2652
- * 按下【ESC】健时是否关闭弹窗
2653
- */
2654
- closeOnEscape?: boolean;
2655
- /**
2656
- * window窗口【resize】时是否关闭弹窗
2657
- */
2658
- closeOnResize?: boolean;
2659
- /**
2660
- * target改变时是否关闭弹窗
2661
- * - target尺寸、位置变化
2662
- * - target点击时
2663
- */
2664
- closeOnTarget?: boolean;
2665
- };
2666
- /**
2667
- * 跟随策略
2668
- * - 详细值定义,参照 FollowOptions.followX 和 FollowOptions.followY
2669
- */
2670
- type FollowStrategy = "start" | "center" | "end" | "before" | "after" | "ratio";
2671
- /**
2672
- * 跟随弹窗 句柄
2673
- * - 用于在 弹窗组件 内部进行模式判断和关闭跟随弹窗
2674
- */
2675
- type FollowHandle<T> = PopupHandle<T> & {};
2676
- /**
2677
- * 跟随弹窗 扩展配置
2678
- */
2679
- type FollowExtend = PopupStatusOptions & {
2680
- /**
2681
- * 跟随的目标元素
2682
- */
2683
- target: Element;
2684
- /**
2685
- * x轴方向的跟随策略:响应式
2686
- * - 基于外部传入的跟随策略,计算选举出来的最优策略值
2687
- */
2688
- followX: ShallowRef<FollowStrategy>;
2689
- /**
2690
- * y轴方向的跟随策略:响应式
2691
- * - 基于外部传入的跟随策略,计算选举出来的最优策略值
2692
- */
2693
- followY: ShallowRef<FollowStrategy>;
2694
- /**
2695
- * Follow弹窗是否【钉住】了
2696
- * - 为true时,closeOnMask、closeOnEscape失效
2697
- * - 满足 子弹窗 点击等操作时,不自动销毁父级弹窗
2698
- */
2699
- pinned: ShallowRef<boolean>;
2700
- };
2701
- /**
2702
- * 跟随策略 配置选项
2703
- */
2704
- type FollowStrategyOptions = {
2705
- /**
2706
- * x轴的跟随策略
2707
- */
2708
- followX?: FollowStrategy;
2709
- /**
2710
- * x轴的跟随策略
2711
- */
2712
- followY?: FollowStrategy;
2713
- };
2714
- /**
2715
- * 跟随选举结果
2716
- */
2717
- type FollowElectResult = {
2718
- /**
2719
- * 跟随策略
2720
- */
2721
- strategy: FollowStrategy;
2722
- /**
2723
- * 开始位置:x/top
2724
- */
2725
- start: number;
2726
- /**
2727
- * 调整后的尺寸(width/height)
2728
- * - 为undefined表示无需调整尺寸
2729
- */
2730
- size?: number;
2731
- };
2732
-
2733
2766
  /**
2734
2767
  * 弹窗管理器
2735
2768
  */
@@ -2861,7 +2894,15 @@ declare const components: {
2861
2894
  trigger: (code: string) => any;
2862
2895
  }, string, {}, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => {
2863
2896
  $slots: {
2864
- default?: (props: {}) => any;
2897
+ default?: (props: {
2898
+ isActived(): boolean;
2899
+ trigger(): void;
2900
+ }) => any;
2901
+ } & {
2902
+ trigger?: (props: {
2903
+ isActived(): boolean;
2904
+ trigger(): void;
2905
+ }) => any;
2865
2906
  };
2866
2907
  });
2867
2908
  Button: {
@@ -3126,24 +3167,24 @@ declare const components: {
3126
3167
  new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<Readonly<ElasticOptions> & Readonly<{
3127
3168
  onLeft?: () => any;
3128
3169
  onRight?: () => any;
3170
+ onMore?: (resolve: () => void) => any;
3129
3171
  onTop?: () => any;
3130
3172
  onBottom?: () => any;
3131
3173
  onXbar?: (show: boolean) => any;
3132
3174
  onYbar?: (show: boolean) => any;
3133
3175
  onRefresh?: (resolve: () => void) => any;
3134
- onMore?: (resolve: () => void) => any;
3135
3176
  }>, {
3136
3177
  loadRefresh(): Promise<void>;
3137
3178
  loadMore(): Promise<void>;
3138
3179
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
3139
3180
  left: () => any;
3140
3181
  right: () => any;
3182
+ more: (resolve: () => void) => any;
3141
3183
  top: () => any;
3142
3184
  bottom: () => any;
3143
3185
  xbar: (show: boolean) => any;
3144
3186
  ybar: (show: boolean) => any;
3145
3187
  refresh: (resolve: () => void) => any;
3146
- more: (resolve: () => void) => any;
3147
3188
  }, vue.PublicProps, {}, false, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
3148
3189
  P: {};
3149
3190
  B: {};
@@ -3154,12 +3195,12 @@ declare const components: {
3154
3195
  }, Readonly<ElasticOptions> & Readonly<{
3155
3196
  onLeft?: () => any;
3156
3197
  onRight?: () => any;
3198
+ onMore?: (resolve: () => void) => any;
3157
3199
  onTop?: () => any;
3158
3200
  onBottom?: () => any;
3159
3201
  onXbar?: (show: boolean) => any;
3160
3202
  onYbar?: (show: boolean) => any;
3161
3203
  onRefresh?: (resolve: () => void) => any;
3162
- onMore?: (resolve: () => void) => any;
3163
3204
  }>, {
3164
3205
  loadRefresh(): Promise<void>;
3165
3206
  loadMore(): Promise<void>;
@@ -3170,24 +3211,24 @@ declare const components: {
3170
3211
  } & vue.ComponentOptionsBase<Readonly<ElasticOptions> & Readonly<{
3171
3212
  onLeft?: () => any;
3172
3213
  onRight?: () => any;
3214
+ onMore?: (resolve: () => void) => any;
3173
3215
  onTop?: () => any;
3174
3216
  onBottom?: () => any;
3175
3217
  onXbar?: (show: boolean) => any;
3176
3218
  onYbar?: (show: boolean) => any;
3177
3219
  onRefresh?: (resolve: () => void) => any;
3178
- onMore?: (resolve: () => void) => any;
3179
3220
  }>, {
3180
3221
  loadRefresh(): Promise<void>;
3181
3222
  loadMore(): Promise<void>;
3182
3223
  }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
3183
3224
  left: () => any;
3184
3225
  right: () => any;
3226
+ more: (resolve: () => void) => any;
3185
3227
  top: () => any;
3186
3228
  bottom: () => any;
3187
3229
  xbar: (show: boolean) => any;
3188
3230
  ybar: (show: boolean) => any;
3189
3231
  refresh: (resolve: () => void) => any;
3190
- more: (resolve: () => void) => any;
3191
3232
  }, string, {}, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => {
3192
3233
  $slots: {
3193
3234
  'down-refresh'?: (props: {}) => any;
@@ -3682,4 +3723,4 @@ declare const components: {
3682
3723
  };
3683
3724
 
3684
3725
  export { MOTION, components, getBuiltinIcon, mount, onAppCreated, triggerAppCreated, usePicker, usePopup, useReactive, useTreeContext };
3685
- export type { ActionEvents, ActionItem, ActionItemsOptions, ActionOptions, ButtonOptions, ChangeEvents, ChooseEvents, ChooseItem, ChooseOptions, ClickEvents, CloseEvents, ComponentBindOptions, ComponentOptions, ConfirmAreaOptions, ConfirmOptions, DatePickerDayItem, DatePickerMonthItem, DatePickerOptions, DatePickerYearItem, DatetimeDisabledOptions, DatetimePickerEvents, DeleteEvents, DialogHandle, DialogOptions, DialogWrapperHandle, DisabledOptions, DragVerifyInfo, DragVerifyOptions, ElasticEvents, ElasticExpose, ElasticOptions, ElasticSpringStatus, EmitterType, EmptyOptions, EventsType, FlexOptions, FoldEvents, FoldOptions, FoldSlotHandle, FoldStatus, FollowElectResult, FollowExtend, FollowHandle, FollowOptions, FollowPositionOptions, FollowStrategy, FollowStrategyOptions, FooterEvents, FooterOptions, HeaderEvents, HeaderOptions, INumberFormatter, IPickerManager, IPopupManager, IReactiveManager, ISelectContext, ITreeBaseContext, IconOptions, IconType, InputEvents, InputOptions, LayoutAraeOptions, LayoutAreaItem, LayoutOptions, LoadingOptions, MessageOptions, MotionEffectOptions, MotionOptions, MoveEvents, NumberBaseOptions, NumberEvents, NumberFormatResult, NumberOptions, PickerExtend, PickerPopupOptions, PlaceholderOptions, PopupDescriptor, PopupHandle, PopupOptions, PopupStatus, PopupStatusOptions, PropsType, ReactiveVar, ReadonlyOptions, ScrollEvents, ScrollExpose, ScrollOptions, 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, TimePickerHourItem, TimePickerMinuteItem, TimePickerOptions, TimePickerSecondItem, TitleOptions, ToastOptions, TreeEvents, TreeNode, TreeNodeEvents, TreeNodeExtend, TreeNodeModel, TreeNodeOptions, TreeNodeRenderOptions, TreeNodeSlotOptions, TreeOptions, TreeSearchResult, ValueOptions, WrapperEvents, WrapperOptions };
3726
+ export type { ActionEvents, ActionItem, ActionItemsOptions, ActionOptions, ActionSlotHandle, ButtonOptions, ChangeEvents, ChooseEvents, ChooseItem, ChooseOptions, ClickEvents, CloseEvents, ComponentBindOptions, ComponentOptions, ConfirmAreaOptions, ConfirmOptions, DatePickerDayItem, DatePickerMonthItem, DatePickerOptions, DatePickerYearItem, DatetimeDisabledOptions, DatetimePickerEvents, DeleteEvents, DialogHandle, DialogOptions, DialogWrapperHandle, DisabledOptions, DragVerifyInfo, DragVerifyOptions, ElasticEvents, ElasticExpose, ElasticOptions, ElasticSpringStatus, EmitterType, EmptyOptions, EventsType, FlexOptions, FoldEvents, FoldOptions, FoldSlotHandle, FoldStatus, FollowElectResult, FollowExtend, FollowHandle, FollowOptions, FollowPositionOptions, FollowStrategy, FollowStrategyOptions, FooterEvents, FooterOptions, HeaderEvents, HeaderOptions, INumberFormatter, IPickerManager, IPopupManager, IReactiveManager, ISelectContext, ITreeBaseContext, IconOptions, IconType, InputEvents, InputOptions, LayoutAraeOptions, LayoutAreaItem, LayoutOptions, LoadingOptions, MessageOptions, MotionEffectOptions, MotionOptions, MoveEvents, NumberBaseOptions, NumberEvents, NumberFormatResult, NumberOptions, PickerExtend, PickerPopupOptions, PlaceholderOptions, PopupDescriptor, PopupHandle, PopupOptions, PopupStatus, PopupStatusOptions, PropsType, ReactiveVar, ReadonlyOptions, ScrollEvents, ScrollExpose, ScrollOptions, 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, TimePickerHourItem, TimePickerMinuteItem, TimePickerOptions, TimePickerSecondItem, TitleOptions, ToastOptions, TreeEvents, TreeNode, TreeNodeEvents, TreeNodeExtend, TreeNodeModel, TreeNodeOptions, TreeNodeRenderOptions, TreeNodeSlotOptions, TreeOptions, TreeSearchResult, ValueOptions, WrapperEvents, WrapperOptions };