snail.vue 2.0.25 → 2.0.27
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.
- package/dist/snail.vue.d.ts +39 -11
- package/dist/snail.vue.js +33 -32
- package/dist/snail.vue.umd.js +31 -30
- package/dist/styles/snail.vue.vue.css +8 -8
- package/package.json +1 -1
package/dist/snail.vue.d.ts
CHANGED
|
@@ -1876,6 +1876,11 @@ type IconOptions = TitleOptions & {
|
|
|
1876
1876
|
* - 通过:transform: rotate(1.06); 实现
|
|
1877
1877
|
*/
|
|
1878
1878
|
rotate?: number;
|
|
1879
|
+
/**
|
|
1880
|
+
* 图标透明度
|
|
1881
|
+
* - 不传入,默认1
|
|
1882
|
+
*/
|
|
1883
|
+
opacity?: number;
|
|
1879
1884
|
/**
|
|
1880
1885
|
* 图形伸展
|
|
1881
1886
|
* - svg.viewBox 属性
|
|
@@ -1902,9 +1907,10 @@ type IconOptions = TitleOptions & {
|
|
|
1902
1907
|
* - 其他类:
|
|
1903
1908
|
* - - plus 加号
|
|
1904
1909
|
* - - subtract 减号
|
|
1910
|
+
* - - more 更多,默认垂直三个点
|
|
1905
1911
|
* - - grip 紧握图标,垂直方向,一般用于拖动句柄
|
|
1906
1912
|
*/
|
|
1907
|
-
type IconType = "success" | "error" | "warn" | "close" | "trash" | "download" | "print" | "edit" | "arrow" | "datepicker" | "timepicker" | "plus" | "subtract" | "grip";
|
|
1913
|
+
type IconType = "success" | "error" | "warn" | "close" | "trash" | "download" | "print" | "edit" | "arrow" | "datepicker" | "timepicker" | "plus" | "subtract" | "more" | "grip";
|
|
1908
1914
|
|
|
1909
1915
|
/**
|
|
1910
1916
|
* 检查选项 数据结构
|
|
@@ -2007,10 +2013,11 @@ type ButtonOptions = TitleOptions & {
|
|
|
2007
2013
|
type ActionOptions = DisabledOptions & {
|
|
2008
2014
|
/**
|
|
2009
2015
|
* 触发方式
|
|
2010
|
-
* -
|
|
2011
|
-
* -
|
|
2016
|
+
* - always :始终显示一个触发图标,点击图标弹出操作项
|
|
2017
|
+
* - hover:鼠标移入显示一个触发图标,点击图标弹出操作项
|
|
2018
|
+
* - long-press:长摁直接弹出操作项
|
|
2012
2019
|
*/
|
|
2013
|
-
trigger: "hover" | "long-press";
|
|
2020
|
+
trigger: "always" | "hover" | "long-press";
|
|
2014
2021
|
/**
|
|
2015
2022
|
* 显示模式
|
|
2016
2023
|
* - popup:弹出显示操作项
|
|
@@ -2063,6 +2070,19 @@ type ActionItem = {
|
|
|
2063
2070
|
*/
|
|
2064
2071
|
icon?: Pick<IconOptions, "type" | "size" | "title">;
|
|
2065
2072
|
};
|
|
2073
|
+
/**
|
|
2074
|
+
* 可操作向组件 插槽句柄
|
|
2075
|
+
*/
|
|
2076
|
+
type ActionSlotHandle = {
|
|
2077
|
+
/**
|
|
2078
|
+
* 操作项是否激活显示
|
|
2079
|
+
*/
|
|
2080
|
+
isActived(): boolean;
|
|
2081
|
+
/**
|
|
2082
|
+
* 触发操作项显示
|
|
2083
|
+
*/
|
|
2084
|
+
trigger(): void;
|
|
2085
|
+
};
|
|
2066
2086
|
/**
|
|
2067
2087
|
* 可操作项组件 的事件
|
|
2068
2088
|
*/
|
|
@@ -2861,7 +2881,15 @@ declare const components: {
|
|
|
2861
2881
|
trigger: (code: string) => any;
|
|
2862
2882
|
}, string, {}, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => {
|
|
2863
2883
|
$slots: {
|
|
2864
|
-
default?: (props: {
|
|
2884
|
+
default?: (props: {
|
|
2885
|
+
isActived(): boolean;
|
|
2886
|
+
trigger(): void;
|
|
2887
|
+
}) => any;
|
|
2888
|
+
} & {
|
|
2889
|
+
trigger?: (props: {
|
|
2890
|
+
isActived(): boolean;
|
|
2891
|
+
trigger(): void;
|
|
2892
|
+
}) => any;
|
|
2865
2893
|
};
|
|
2866
2894
|
});
|
|
2867
2895
|
Button: {
|
|
@@ -3126,24 +3154,24 @@ declare const components: {
|
|
|
3126
3154
|
new (...args: any[]): vue.CreateComponentPublicInstanceWithMixins<Readonly<ElasticOptions> & Readonly<{
|
|
3127
3155
|
onLeft?: () => any;
|
|
3128
3156
|
onRight?: () => any;
|
|
3157
|
+
onMore?: (resolve: () => void) => any;
|
|
3129
3158
|
onTop?: () => any;
|
|
3130
3159
|
onBottom?: () => any;
|
|
3131
3160
|
onXbar?: (show: boolean) => any;
|
|
3132
3161
|
onYbar?: (show: boolean) => any;
|
|
3133
3162
|
onRefresh?: (resolve: () => void) => any;
|
|
3134
|
-
onMore?: (resolve: () => void) => any;
|
|
3135
3163
|
}>, {
|
|
3136
3164
|
loadRefresh(): Promise<void>;
|
|
3137
3165
|
loadMore(): Promise<void>;
|
|
3138
3166
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
3139
3167
|
left: () => any;
|
|
3140
3168
|
right: () => any;
|
|
3169
|
+
more: (resolve: () => void) => any;
|
|
3141
3170
|
top: () => any;
|
|
3142
3171
|
bottom: () => any;
|
|
3143
3172
|
xbar: (show: boolean) => any;
|
|
3144
3173
|
ybar: (show: boolean) => any;
|
|
3145
3174
|
refresh: (resolve: () => void) => any;
|
|
3146
|
-
more: (resolve: () => void) => any;
|
|
3147
3175
|
}, vue.PublicProps, {}, false, {}, {}, vue.GlobalComponents, vue.GlobalDirectives, string, {}, any, vue.ComponentProvideOptions, {
|
|
3148
3176
|
P: {};
|
|
3149
3177
|
B: {};
|
|
@@ -3154,12 +3182,12 @@ declare const components: {
|
|
|
3154
3182
|
}, Readonly<ElasticOptions> & Readonly<{
|
|
3155
3183
|
onLeft?: () => any;
|
|
3156
3184
|
onRight?: () => any;
|
|
3185
|
+
onMore?: (resolve: () => void) => any;
|
|
3157
3186
|
onTop?: () => any;
|
|
3158
3187
|
onBottom?: () => any;
|
|
3159
3188
|
onXbar?: (show: boolean) => any;
|
|
3160
3189
|
onYbar?: (show: boolean) => any;
|
|
3161
3190
|
onRefresh?: (resolve: () => void) => any;
|
|
3162
|
-
onMore?: (resolve: () => void) => any;
|
|
3163
3191
|
}>, {
|
|
3164
3192
|
loadRefresh(): Promise<void>;
|
|
3165
3193
|
loadMore(): Promise<void>;
|
|
@@ -3170,24 +3198,24 @@ declare const components: {
|
|
|
3170
3198
|
} & vue.ComponentOptionsBase<Readonly<ElasticOptions> & Readonly<{
|
|
3171
3199
|
onLeft?: () => any;
|
|
3172
3200
|
onRight?: () => any;
|
|
3201
|
+
onMore?: (resolve: () => void) => any;
|
|
3173
3202
|
onTop?: () => any;
|
|
3174
3203
|
onBottom?: () => any;
|
|
3175
3204
|
onXbar?: (show: boolean) => any;
|
|
3176
3205
|
onYbar?: (show: boolean) => any;
|
|
3177
3206
|
onRefresh?: (resolve: () => void) => any;
|
|
3178
|
-
onMore?: (resolve: () => void) => any;
|
|
3179
3207
|
}>, {
|
|
3180
3208
|
loadRefresh(): Promise<void>;
|
|
3181
3209
|
loadMore(): Promise<void>;
|
|
3182
3210
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
3183
3211
|
left: () => any;
|
|
3184
3212
|
right: () => any;
|
|
3213
|
+
more: (resolve: () => void) => any;
|
|
3185
3214
|
top: () => any;
|
|
3186
3215
|
bottom: () => any;
|
|
3187
3216
|
xbar: (show: boolean) => any;
|
|
3188
3217
|
ybar: (show: boolean) => any;
|
|
3189
3218
|
refresh: (resolve: () => void) => any;
|
|
3190
|
-
more: (resolve: () => void) => any;
|
|
3191
3219
|
}, string, {}, {}, string, {}, vue.GlobalComponents, vue.GlobalDirectives, string, vue.ComponentProvideOptions> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & (new () => {
|
|
3192
3220
|
$slots: {
|
|
3193
3221
|
'down-refresh'?: (props: {}) => any;
|
|
@@ -3682,4 +3710,4 @@ declare const components: {
|
|
|
3682
3710
|
};
|
|
3683
3711
|
|
|
3684
3712
|
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 };
|
|
3713
|
+
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 };
|
package/dist/snail.vue.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
//@ sourceURL=/snail.vue.js
|
|
2
2
|
import { defineComponent, createElementBlock, openBlock, normalizeClass, renderSlot, createTextVNode, shallowRef, computed, mergeProps, unref, createElementVNode, toDisplayString, Fragment, renderList, mergeModels, useModel, normalizeStyle, createCommentVNode, createBlock, nextTick, useTemplateRef, createVNode, watch, withDirectives, isRef, vModelText, withCtx, createApp, resolveDynamicComponent, TransitionGroup, Transition, normalizeProps, guardReactiveProps, ref, onErrorCaptured, createSlots, onMounted, withModifiers, getCurrentInstance, resolveComponent, vShow, onBeforeUnmount, onActivated, getCurrentScope, onScopeDispose } from 'vue';
|
|
3
|
-
import { throwError, isObject, correctNumber, correctString, useKey, isArray, mountScope, useScopes, throwIfFalse, isPromise, wait, isNumberNotNaN, isStringNotEmpty, hasAny, mustFunction, useScope, removeFromArray, mustObject, isArrayNotEmpty, hasOwnProperty, isString, script, delay, useTimer, defer, useAsyncScope, useHook, newId, throwIfTrue, isFunction, isNullish, getTimeNumber, getDateValue, parseDate, formatDateValue, getDateByValue, parseTimeValue, getTimeValue, padStart, formatTimeValue, parseDateValue, correctDateFormat, isValidTime, getFromArray, onMountScope } from 'snail.core';
|
|
4
|
-
import {
|
|
3
|
+
import { throwError, isObject, correctNumber, correctString, useKey, isArray, mountScope, useScopes, throwIfFalse, isPromise, wait, isNumberNotNaN, isStringNotEmpty, hasAny, mustFunction, useScope, removeFromArray, mustObject, isArrayNotEmpty, hasOwnProperty, isString, script, delay, useTimer, runAsync, defer, useAsyncScope, useHook, newId, throwIfTrue, isFunction, isNullish, getTimeNumber, getDateValue, parseDate, formatDateValue, getDateByValue, parseTimeValue, getTimeValue, padStart, formatTimeValue, parseDateValue, correctDateFormat, isValidTime, getFromArray, onMountScope } from 'snail.core';
|
|
4
|
+
import { css, link, useObserver, useScroll, useAnimation } from 'snail.view';
|
|
5
5
|
|
|
6
6
|
const _hoisted_1$o = ["title"];
|
|
7
7
|
var _sfc_main$F = defineComponent({
|
|
@@ -25,10 +25,6 @@ var _sfc_main$F = defineComponent({
|
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
27
|
|
|
28
|
-
var addLink = href => setTimeout(link.register, 0, href);
|
|
29
|
-
|
|
30
|
-
addLink("/styles/snail.vue.vue.css");
|
|
31
|
-
|
|
32
28
|
function getBuiltinIcon(iconType) {
|
|
33
29
|
switch (iconType) {
|
|
34
30
|
case "success":
|
|
@@ -40,7 +36,7 @@ function getBuiltinIcon(iconType) {
|
|
|
40
36
|
case "close":
|
|
41
37
|
return ["M 571.733 512 l 187.733 -187.733 c 17.0667 -17.0667 17.0667 -42.6667 0 -59.7333 c -17.0667 -17.0667 -42.6667 -17.0667 -59.7333 0 L 512 452.267 L 324.267 268.8 c -17.0667 -17.0667 -42.6667 -17.0667 -59.7333 0 c -17.0667 17.0667 -17.0667 42.6667 0 59.7333 l 187.733 187.733 l -187.733 187.733 c -17.0667 17.0667 -17.0667 42.6667 0 59.7333 c 17.0667 17.0667 42.6667 17.0667 59.7333 0 l 187.733 -187.733 l 187.733 187.733 c 17.0667 17.0667 42.6667 17.0667 59.7333 0 c 17.0667 -17.0667 17.0667 -42.6667 0 -59.7333 L 571.733 512 Z"];
|
|
42
38
|
case "trash":
|
|
43
|
-
return ["
|
|
39
|
+
return ["M736 352.032L736.096 800h-0.128L288 799.968 288.032 352 736 352.032zM384 224h256v64h-256V224z m448 64h-128V202.624C704 182.048 687.232 160 640.16 160h-256.32C336.768 160 320 182.048 320 202.624V288H192a32 32 0 1 0 0 64h32V799.968C224 835.296 252.704 864 288.032 864h447.936A64.064 64.064 0 0 0 800 799.968V352h32a32 32 0 1 0 0-64z", "M608 690.56a32 32 0 0 0 32-32V448a32 32 0 1 0-64 0v210.56a32 32 0 0 0 32 32M416 690.56a32 32 0 0 0 32-32V448a32 32 0 1 0-64 0v210.56a32 32 0 0 0 32 32"];
|
|
44
40
|
case "download":
|
|
45
41
|
return ["M47.234 979.775v-210.45h102.303v70.151h724.874v-70.15h102.3v210.45H47.233zM149.54 359.948l242.595 0.175V44.451h242.6v309.827h242.6L517.821 734.253 149.539 359.948z"];
|
|
46
42
|
case "print":
|
|
@@ -57,6 +53,8 @@ function getBuiltinIcon(iconType) {
|
|
|
57
53
|
return ["M 768 469.333 h -213.333 V 256 c 0 -25.6 -17.0667 -42.6667 -42.6667 -42.6667 s -42.6667 17.0667 -42.6667 42.6667 v 213.333 H 256 c -25.6 0 -42.6667 17.0667 -42.6667 42.6667 s 17.0667 42.6667 42.6667 42.6667 h 213.333 v 213.333 c 0 25.6 17.0667 42.6667 42.6667 42.6667 s 42.6667 -17.0667 42.6667 -42.6667 v -213.333 h 213.333 c 25.6 0 42.6667 -17.0667 42.6667 -42.6667 s -17.0667 -42.6667 -42.6667 -42.6667 Z"];
|
|
58
54
|
case "subtract":
|
|
59
55
|
return ["M768 554.666667H256c-25.6 0-42.666667-17.066667-42.666667-42.666667s17.066667-42.666667 42.666667-42.666667h512c25.6 0 42.666667 17.066667 42.666667 42.666667s-17.066667 42.666667-42.666667 42.666667z"];
|
|
56
|
+
case "more":
|
|
57
|
+
return ["M415.93 223.79c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.003-95.984-95.984zM415.93 511.742c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.004-95.984-95.984zM415.93 799.866c0-52.98 43.004-95.984 95.984-95.984s95.984 43.003 95.984 95.984-43.004 95.983-95.984 95.983-95.984-43.175-95.984-95.983z"];
|
|
60
58
|
case "grip":
|
|
61
59
|
return ["M 384 256 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 384 426.667 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 384 597.333 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 384 768 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 256 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 426.667 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 597.333 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 768 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z"];
|
|
62
60
|
default:
|
|
@@ -85,6 +83,7 @@ var _sfc_main$E = defineComponent({
|
|
|
85
83
|
color: {},
|
|
86
84
|
hoverColor: {},
|
|
87
85
|
rotate: {},
|
|
86
|
+
opacity: {},
|
|
88
87
|
viewBox: {}
|
|
89
88
|
},
|
|
90
89
|
setup(__props) {
|
|
@@ -111,6 +110,8 @@ var _sfc_main$E = defineComponent({
|
|
|
111
110
|
fill && (style.fill = fill);
|
|
112
111
|
const rotate = correctNumber(props.rotate, 0);
|
|
113
112
|
rotate != 0 && (style.transform = `rotate(${rotate}deg)`);
|
|
113
|
+
const opacity = correctNumber(props.opacity, void 0);
|
|
114
|
+
opacity >= 0 && (style.opacity = opacity);
|
|
114
115
|
return style;
|
|
115
116
|
});
|
|
116
117
|
return (_ctx, _cache) => {
|
|
@@ -240,6 +241,10 @@ var _sfc_main$D = defineComponent({
|
|
|
240
241
|
}
|
|
241
242
|
});
|
|
242
243
|
|
|
244
|
+
var addLink = href => setTimeout(link.register, 0, href);
|
|
245
|
+
|
|
246
|
+
addLink("/styles/snail.vue.vue.css");
|
|
247
|
+
|
|
243
248
|
var _sfc_main$C = defineComponent({
|
|
244
249
|
...{
|
|
245
250
|
name: "Footer",
|
|
@@ -1590,10 +1595,7 @@ var _sfc_main$r = defineComponent({
|
|
|
1590
1595
|
};
|
|
1591
1596
|
async function onWrapperConfirm() {
|
|
1592
1597
|
if (fn_onBuildData != void 0) {
|
|
1593
|
-
const rt =
|
|
1594
|
-
success: true,
|
|
1595
|
-
data: void 0
|
|
1596
|
-
};
|
|
1598
|
+
const rt = await runAsync(fn_onBuildData);
|
|
1597
1599
|
console.log("onBuildData result:", rt);
|
|
1598
1600
|
rt.success !== false && closePopup(rt.data);
|
|
1599
1601
|
} else {
|
|
@@ -2635,14 +2637,12 @@ var _sfc_main$j = defineComponent({
|
|
|
2635
2637
|
return openBlock(), createElementBlock("div", {
|
|
2636
2638
|
class: normalizeClass(["snail-switch", [switchModel.value ? "on" : "off", __props.readonly ? "readonly" : ""], __props.type || "switch"]),
|
|
2637
2639
|
onClick: onSwitchChange
|
|
2638
|
-
}, [__props.type == "checkbox" || __props.type == "radio" ? (openBlock(),
|
|
2639
|
-
key: 0
|
|
2640
|
-
}, [switchModel.value ? (openBlock(), createBlock(_sfc_main$E, {
|
|
2640
|
+
}, [__props.type == "checkbox" || __props.type == "radio" ? withDirectives((openBlock(), createBlock(_sfc_main$E, {
|
|
2641
2641
|
key: 0,
|
|
2642
2642
|
type: "success",
|
|
2643
2643
|
color: "white",
|
|
2644
2644
|
size: 16
|
|
2645
|
-
}))
|
|
2645
|
+
}, null, 512)), [[vShow, switchModel.value]]) : (openBlock(), createElementBlock(Fragment, {
|
|
2646
2646
|
key: 1
|
|
2647
2647
|
}, [_cache[0] || (_cache[0] = createElementVNode("div", {
|
|
2648
2648
|
class: "wh-fill on"
|
|
@@ -2806,15 +2806,17 @@ var _sfc_main$g = defineComponent({
|
|
|
2806
2806
|
onEvent
|
|
2807
2807
|
} = useObserver();
|
|
2808
2808
|
const rootDom = useTemplateRef("snail-action");
|
|
2809
|
-
|
|
2809
|
+
const popupScopeRef = shallowRef(void 0);
|
|
2810
2810
|
let pressStartDate = void 0;
|
|
2811
|
+
const slotHandle = Object.freeze({
|
|
2812
|
+
isActived: () => popupScopeRef.value != void 0,
|
|
2813
|
+
trigger: () => onFollowShow(props.trigger == "long-press")
|
|
2814
|
+
});
|
|
2811
2815
|
async function onFollowShow(longPress) {
|
|
2812
|
-
if (
|
|
2813
|
-
|
|
2814
|
-
|
|
2815
|
-
|
|
2816
|
-
if (props.disabled != true) {
|
|
2817
|
-
popupScope = follow(rootDom.value, {
|
|
2816
|
+
if (popupScopeRef.value && popupScopeRef.value.destroyed != true) {
|
|
2817
|
+
popupScopeRef.value.destroy();
|
|
2818
|
+
} else if (props.disabled != true) {
|
|
2819
|
+
popupScopeRef.value = follow(rootDom.value, {
|
|
2818
2820
|
component: _sfc_main$h,
|
|
2819
2821
|
closeOnEscape: true,
|
|
2820
2822
|
closeOnMask: true,
|
|
@@ -2827,9 +2829,10 @@ var _sfc_main$g = defineComponent({
|
|
|
2827
2829
|
actions: props.actions
|
|
2828
2830
|
}
|
|
2829
2831
|
});
|
|
2830
|
-
const code = await
|
|
2832
|
+
const code = await popupScopeRef.value;
|
|
2831
2833
|
isStringNotEmpty(code) && emits("trigger", code);
|
|
2832
2834
|
}
|
|
2835
|
+
popupScopeRef.value = void 0;
|
|
2833
2836
|
}
|
|
2834
2837
|
function onMouseDown() {
|
|
2835
2838
|
if (props.trigger == "long-press" && pressStartDate == void 0) {
|
|
@@ -2863,19 +2866,17 @@ var _sfc_main$g = defineComponent({
|
|
|
2863
2866
|
}
|
|
2864
2867
|
});
|
|
2865
2868
|
return (_ctx, _cache) => {
|
|
2866
|
-
return openBlock(), createElementBlock("div", _hoisted_1$a, [createElementVNode("div", _hoisted_2$5, [renderSlot(_ctx.$slots, "default")]), __props.trigger == "hover"
|
|
2869
|
+
return openBlock(), createElementBlock("div", _hoisted_1$a, [createElementVNode("div", _hoisted_2$5, [renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(unref(slotHandle))))]), __props.disabled != true && (__props.trigger == "hover" || __props.trigger == "always") ? (openBlock(), createElementBlock("div", {
|
|
2867
2870
|
key: 0,
|
|
2868
|
-
class: "
|
|
2871
|
+
class: normalizeClass(["trigger-area", {
|
|
2872
|
+
hidden: __props.trigger == "hover"
|
|
2873
|
+
}])
|
|
2874
|
+
}, [renderSlot(_ctx.$slots, "trigger", normalizeProps(guardReactiveProps(unref(slotHandle))), () => [createVNode(_sfc_main$E, {
|
|
2869
2875
|
button: "",
|
|
2870
|
-
|
|
2876
|
+
type: "more",
|
|
2871
2877
|
size: 16,
|
|
2872
2878
|
onClick: _cache[0] || (_cache[0] = $event => onFollowShow(false))
|
|
2873
|
-
},
|
|
2874
|
-
default: withCtx(() => [...(_cache[1] || (_cache[1] = [createElementVNode("path", {
|
|
2875
|
-
d: "M415.93 223.79c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.003-95.984-95.984zM415.93 511.742c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.004-95.984-95.984zM415.93 799.866c0-52.98 43.004-95.984 95.984-95.984s95.984 43.003 95.984 95.984-43.004 95.983-95.984 95.983-95.984-43.175-95.984-95.983z"
|
|
2876
|
-
}, null, -1)]))]),
|
|
2877
|
-
_: 1
|
|
2878
|
-
})) : createCommentVNode("", true)], 512);
|
|
2879
|
+
})])], 2)) : createCommentVNode("", true)], 512);
|
|
2879
2880
|
};
|
|
2880
2881
|
}
|
|
2881
2882
|
});
|
package/dist/snail.vue.umd.js
CHANGED
|
@@ -27,10 +27,6 @@
|
|
|
27
27
|
}
|
|
28
28
|
});
|
|
29
29
|
|
|
30
|
-
var addLink = href => setTimeout(snail_view.link.register, 0, href);
|
|
31
|
-
|
|
32
|
-
addLink("/styles/snail.vue.vue.css");
|
|
33
|
-
|
|
34
30
|
function getBuiltinIcon(iconType) {
|
|
35
31
|
switch (iconType) {
|
|
36
32
|
case "success":
|
|
@@ -42,7 +38,7 @@
|
|
|
42
38
|
case "close":
|
|
43
39
|
return ["M 571.733 512 l 187.733 -187.733 c 17.0667 -17.0667 17.0667 -42.6667 0 -59.7333 c -17.0667 -17.0667 -42.6667 -17.0667 -59.7333 0 L 512 452.267 L 324.267 268.8 c -17.0667 -17.0667 -42.6667 -17.0667 -59.7333 0 c -17.0667 17.0667 -17.0667 42.6667 0 59.7333 l 187.733 187.733 l -187.733 187.733 c -17.0667 17.0667 -17.0667 42.6667 0 59.7333 c 17.0667 17.0667 42.6667 17.0667 59.7333 0 l 187.733 -187.733 l 187.733 187.733 c 17.0667 17.0667 42.6667 17.0667 59.7333 0 c 17.0667 -17.0667 17.0667 -42.6667 0 -59.7333 L 571.733 512 Z"];
|
|
44
40
|
case "trash":
|
|
45
|
-
return ["
|
|
41
|
+
return ["M736 352.032L736.096 800h-0.128L288 799.968 288.032 352 736 352.032zM384 224h256v64h-256V224z m448 64h-128V202.624C704 182.048 687.232 160 640.16 160h-256.32C336.768 160 320 182.048 320 202.624V288H192a32 32 0 1 0 0 64h32V799.968C224 835.296 252.704 864 288.032 864h447.936A64.064 64.064 0 0 0 800 799.968V352h32a32 32 0 1 0 0-64z", "M608 690.56a32 32 0 0 0 32-32V448a32 32 0 1 0-64 0v210.56a32 32 0 0 0 32 32M416 690.56a32 32 0 0 0 32-32V448a32 32 0 1 0-64 0v210.56a32 32 0 0 0 32 32"];
|
|
46
42
|
case "download":
|
|
47
43
|
return ["M47.234 979.775v-210.45h102.303v70.151h724.874v-70.15h102.3v210.45H47.233zM149.54 359.948l242.595 0.175V44.451h242.6v309.827h242.6L517.821 734.253 149.539 359.948z"];
|
|
48
44
|
case "print":
|
|
@@ -59,6 +55,8 @@
|
|
|
59
55
|
return ["M 768 469.333 h -213.333 V 256 c 0 -25.6 -17.0667 -42.6667 -42.6667 -42.6667 s -42.6667 17.0667 -42.6667 42.6667 v 213.333 H 256 c -25.6 0 -42.6667 17.0667 -42.6667 42.6667 s 17.0667 42.6667 42.6667 42.6667 h 213.333 v 213.333 c 0 25.6 17.0667 42.6667 42.6667 42.6667 s 42.6667 -17.0667 42.6667 -42.6667 v -213.333 h 213.333 c 25.6 0 42.6667 -17.0667 42.6667 -42.6667 s -17.0667 -42.6667 -42.6667 -42.6667 Z"];
|
|
60
56
|
case "subtract":
|
|
61
57
|
return ["M768 554.666667H256c-25.6 0-42.666667-17.066667-42.666667-42.666667s17.066667-42.666667 42.666667-42.666667h512c25.6 0 42.666667 17.066667 42.666667 42.666667s-17.066667 42.666667-42.666667 42.666667z"];
|
|
58
|
+
case "more":
|
|
59
|
+
return ["M415.93 223.79c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.003-95.984-95.984zM415.93 511.742c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.004-95.984-95.984zM415.93 799.866c0-52.98 43.004-95.984 95.984-95.984s95.984 43.003 95.984 95.984-43.004 95.983-95.984 95.983-95.984-43.175-95.984-95.983z"];
|
|
62
60
|
case "grip":
|
|
63
61
|
return ["M 384 256 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 384 426.667 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 384 597.333 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 384 768 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 256 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 426.667 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 597.333 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z", "M 640 768 m -42.6667 0 a 42.6667 42.6667 0 1 0 85.3333 0 a 42.6667 42.6667 0 1 0 -85.3333 0 Z"];
|
|
64
62
|
default:
|
|
@@ -87,6 +85,7 @@
|
|
|
87
85
|
color: {},
|
|
88
86
|
hoverColor: {},
|
|
89
87
|
rotate: {},
|
|
88
|
+
opacity: {},
|
|
90
89
|
viewBox: {}
|
|
91
90
|
},
|
|
92
91
|
setup(__props) {
|
|
@@ -113,6 +112,8 @@
|
|
|
113
112
|
fill && (style.fill = fill);
|
|
114
113
|
const rotate = snail_core.correctNumber(props.rotate, 0);
|
|
115
114
|
rotate != 0 && (style.transform = `rotate(${rotate}deg)`);
|
|
115
|
+
const opacity = snail_core.correctNumber(props.opacity, void 0);
|
|
116
|
+
opacity >= 0 && (style.opacity = opacity);
|
|
116
117
|
return style;
|
|
117
118
|
});
|
|
118
119
|
return (_ctx, _cache) => {
|
|
@@ -242,6 +243,10 @@
|
|
|
242
243
|
}
|
|
243
244
|
});
|
|
244
245
|
|
|
246
|
+
var addLink = href => setTimeout(snail_view.link.register, 0, href);
|
|
247
|
+
|
|
248
|
+
addLink("/styles/snail.vue.vue.css");
|
|
249
|
+
|
|
245
250
|
var _sfc_main$C = vue.defineComponent({
|
|
246
251
|
...{
|
|
247
252
|
name: "Footer",
|
|
@@ -1592,10 +1597,7 @@
|
|
|
1592
1597
|
};
|
|
1593
1598
|
async function onWrapperConfirm() {
|
|
1594
1599
|
if (fn_onBuildData != void 0) {
|
|
1595
|
-
const rt =
|
|
1596
|
-
success: true,
|
|
1597
|
-
data: void 0
|
|
1598
|
-
};
|
|
1600
|
+
const rt = await snail_core.runAsync(fn_onBuildData);
|
|
1599
1601
|
console.log("onBuildData result:", rt);
|
|
1600
1602
|
rt.success !== false && closePopup(rt.data);
|
|
1601
1603
|
} else {
|
|
@@ -2637,14 +2639,12 @@
|
|
|
2637
2639
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
2638
2640
|
class: vue.normalizeClass(["snail-switch", [switchModel.value ? "on" : "off", __props.readonly ? "readonly" : ""], __props.type || "switch"]),
|
|
2639
2641
|
onClick: onSwitchChange
|
|
2640
|
-
}, [__props.type == "checkbox" || __props.type == "radio" ? (vue.openBlock(), vue.
|
|
2641
|
-
key: 0
|
|
2642
|
-
}, [switchModel.value ? (vue.openBlock(), vue.createBlock(_sfc_main$E, {
|
|
2642
|
+
}, [__props.type == "checkbox" || __props.type == "radio" ? vue.withDirectives((vue.openBlock(), vue.createBlock(_sfc_main$E, {
|
|
2643
2643
|
key: 0,
|
|
2644
2644
|
type: "success",
|
|
2645
2645
|
color: "white",
|
|
2646
2646
|
size: 16
|
|
2647
|
-
}))
|
|
2647
|
+
}, null, 512)), [[vue.vShow, switchModel.value]]) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
2648
2648
|
key: 1
|
|
2649
2649
|
}, [_cache[0] || (_cache[0] = vue.createElementVNode("div", {
|
|
2650
2650
|
class: "wh-fill on"
|
|
@@ -2808,15 +2808,17 @@
|
|
|
2808
2808
|
onEvent
|
|
2809
2809
|
} = snail_view.useObserver();
|
|
2810
2810
|
const rootDom = vue.useTemplateRef("snail-action");
|
|
2811
|
-
|
|
2811
|
+
const popupScopeRef = vue.shallowRef(void 0);
|
|
2812
2812
|
let pressStartDate = void 0;
|
|
2813
|
+
const slotHandle = Object.freeze({
|
|
2814
|
+
isActived: () => popupScopeRef.value != void 0,
|
|
2815
|
+
trigger: () => onFollowShow(props.trigger == "long-press")
|
|
2816
|
+
});
|
|
2813
2817
|
async function onFollowShow(longPress) {
|
|
2814
|
-
if (
|
|
2815
|
-
|
|
2816
|
-
|
|
2817
|
-
|
|
2818
|
-
if (props.disabled != true) {
|
|
2819
|
-
popupScope = follow(rootDom.value, {
|
|
2818
|
+
if (popupScopeRef.value && popupScopeRef.value.destroyed != true) {
|
|
2819
|
+
popupScopeRef.value.destroy();
|
|
2820
|
+
} else if (props.disabled != true) {
|
|
2821
|
+
popupScopeRef.value = follow(rootDom.value, {
|
|
2820
2822
|
component: _sfc_main$h,
|
|
2821
2823
|
closeOnEscape: true,
|
|
2822
2824
|
closeOnMask: true,
|
|
@@ -2829,9 +2831,10 @@
|
|
|
2829
2831
|
actions: props.actions
|
|
2830
2832
|
}
|
|
2831
2833
|
});
|
|
2832
|
-
const code = await
|
|
2834
|
+
const code = await popupScopeRef.value;
|
|
2833
2835
|
snail_core.isStringNotEmpty(code) && emits("trigger", code);
|
|
2834
2836
|
}
|
|
2837
|
+
popupScopeRef.value = void 0;
|
|
2835
2838
|
}
|
|
2836
2839
|
function onMouseDown() {
|
|
2837
2840
|
if (props.trigger == "long-press" && pressStartDate == void 0) {
|
|
@@ -2865,19 +2868,17 @@
|
|
|
2865
2868
|
}
|
|
2866
2869
|
});
|
|
2867
2870
|
return (_ctx, _cache) => {
|
|
2868
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [vue.createElementVNode("div", _hoisted_2$5, [vue.renderSlot(_ctx.$slots, "default")]), __props.trigger == "hover"
|
|
2871
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [vue.createElementVNode("div", _hoisted_2$5, [vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps(vue.unref(slotHandle))))]), __props.disabled != true && (__props.trigger == "hover" || __props.trigger == "always") ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
2869
2872
|
key: 0,
|
|
2870
|
-
class: "
|
|
2873
|
+
class: vue.normalizeClass(["trigger-area", {
|
|
2874
|
+
hidden: __props.trigger == "hover"
|
|
2875
|
+
}])
|
|
2876
|
+
}, [vue.renderSlot(_ctx.$slots, "trigger", vue.normalizeProps(vue.guardReactiveProps(vue.unref(slotHandle))), () => [vue.createVNode(_sfc_main$E, {
|
|
2871
2877
|
button: "",
|
|
2872
|
-
|
|
2878
|
+
type: "more",
|
|
2873
2879
|
size: 16,
|
|
2874
2880
|
onClick: _cache[0] || (_cache[0] = $event => onFollowShow(false))
|
|
2875
|
-
},
|
|
2876
|
-
default: vue.withCtx(() => [...(_cache[1] || (_cache[1] = [vue.createElementVNode("path", {
|
|
2877
|
-
d: "M415.93 223.79c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.003-95.984-95.984zM415.93 511.742c0-52.98 43.004-95.984 95.984-95.984s95.984 43.004 95.984 95.984-43.004 95.984-95.984 95.984-95.984-43.004-95.984-95.984zM415.93 799.866c0-52.98 43.004-95.984 95.984-95.984s95.984 43.003 95.984 95.984-43.004 95.983-95.984 95.983-95.984-43.175-95.984-95.983z"
|
|
2878
|
-
}, null, -1)]))]),
|
|
2879
|
-
_: 1
|
|
2880
|
-
})) : vue.createCommentVNode("", true)], 512);
|
|
2881
|
+
})])], 2)) : vue.createCommentVNode("", true)], 512);
|
|
2881
2882
|
};
|
|
2882
2883
|
}
|
|
2883
2884
|
});
|
|
@@ -19,21 +19,21 @@
|
|
|
19
19
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/base/switch.vue index:0 */
|
|
20
20
|
.snail-switch{cursor:pointer;overflow:hidden;position:relative}.snail-switch.readonly{cursor:not-allowed}.snail-switch.switch{border-radius:10px 10px 10px 10px;height:20px!important;width:36px!important}.snail-switch.switch>div.on{background-color:#5ca3ff}.snail-switch.switch>div.off{background-color:#c4c8cc;position:absolute;transition:left .2s ease}.snail-switch.switch>div.status{background:#fff;border-radius:10px 10px 10px 10px;height:16px;position:absolute;top:2px;transition:left .2s ease;width:16px}.snail-switch.switch.on>div.off{left:100%;top:0}.snail-switch.switch.on>div.status{left:calc(100% - 18px)}.snail-switch.switch.off>div.off{left:0;top:0}.snail-switch.switch.off>div.status{left:2px}
|
|
21
21
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/base/switch.vue index:1 */
|
|
22
|
-
.snail-switch.checkbox,.snail-switch.radio{align-items:center;display:flex;flex-shrink:0;height:
|
|
22
|
+
.snail-switch.checkbox,.snail-switch.radio{align-items:center;display:flex;flex-shrink:0;height:18px;justify-content:center;width:18px}.snail-switch.checkbox.off,.snail-switch.radio.off{border:1px solid #dcdfe6}.snail-switch.checkbox.on,.snail-switch.radio.on{background-color:#4c9aff;border:1px solid #4c9aff}.snail-switch.radio{border-radius:50%}
|
|
23
23
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/base/textarea.vue index:0 */
|
|
24
24
|
textarea.snail-textarea{font-size:14px;line-height:1.5em;overflow-x:hidden;overflow-y:auto;resize:none;width:100%}
|
|
25
25
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/action.vue index:0 */
|
|
26
|
-
.snail-action,.snail-action *{-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-action>.action-slot{flex:1;overflow:hidden;position:relative}.snail-action>.
|
|
26
|
+
.snail-action,.snail-action *{-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-action>.action-slot{flex:1;overflow:hidden;position:relative}.snail-action>.trigger-area{align-items:center;flex-shrink:0;width:-moz-fit-content;width:fit-content}.snail-action>.trigger-area.hidden{display:none}.snail-action:hover>.trigger-area{display:flex}
|
|
27
27
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/dynamic.vue index:0 */
|
|
28
28
|
.snail-dynamic-error{color:red}.snail-dynamic-error>span{color:gray}
|
|
29
29
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/elastic.vue index:0 */
|
|
30
30
|
.snail-elastic{background-color:#f6f8ff;overflow:hidden;position:relative}.snail-elastic>div.main-body{background-color:#fff;overflow:auto;overflow-anchor:none;position:relative;scroll-behavior:smooth;transition:transform .4s ease-out;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;z-index:1}.snail-elastic>div.main-body.moving{transition-property:none!important}.snail-elastic>div.down-refresh,.snail-elastic>div.up-more{left:0;overflow:hidden;position:absolute;width:100%}.snail-elastic>div.down-refresh>div.default-loading,.snail-elastic>div.up-more>div.default-loading{gap:6px;height:40px}@keyframes snail-elastic-pull-down{0%{opacity:.2}to{opacity:.8}}.snail-elastic>div.down-refresh>div.default-loading>span,.snail-elastic>div.up-more>div.default-loading>span{animation-direction:alternate;animation-duration:.8s;animation-iteration-count:infinite;animation-timing-function:linear;background-color:#000;border-radius:8px;height:8px;opacity:.2;width:8px}.snail-elastic>div.down-refresh>div.default-loading>span:nth-child(2),.snail-elastic>div.up-more>div.default-loading>span:nth-child(2){animation-delay:.4s}.snail-elastic>div.down-refresh>div.default-loading>span:nth-child(3),.snail-elastic>div.up-more>div.default-loading>span:nth-child(3){animation-delay:.8s}.snail-elastic>div.down-refresh.running>div.default-loading>span,.snail-elastic>div.up-more.running>div.default-loading>span{animation-name:snail-elastic-pull-down}.snail-elastic>div.down-refresh{top:0}.snail-elastic>div.up-more{bottom:0}
|
|
31
31
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/flex.vue index:0 */
|
|
32
32
|
.snail-flex{display:flex;--gap:0;gap:var(--gap)}.snail-flex.row{flex-direction:row}.snail-flex.row-reverse{flex-direction:row-reverse}.snail-flex.column{flex-direction:column}.snail-flex.column-reverse{flex-direction:column-reverse}.snail-flex.nowrap{flex-wrap:nowrap}.snail-flex.wrap{flex-wrap:wrap}.snail-flex.wrap-reverse{flex-wrap:wrap-reverse}.snail-flex.justify-start{justify-content:flex-start}.snail-flex.justify-center{justify-content:center}.snail-flex.justify-end{justify-content:flex-end}.snail-flex.justify-between{justify-content:space-between}.snail-flex.justify-around{justify-content:space-around}.snail-flex.justify-evenly{justify-content:space-evenly}.snail-flex.items-start{align-items:flex-start}.snail-flex.items-center{align-items:center}.snail-flex.items-end{align-items:flex-end}.snail-flex.items-stretch{align-items:stretch}.snail-flex.items-baseline{align-items:baseline}.snail-flex.content-start{align-content:flex-start}.snail-flex.content-center{align-content:center}.snail-flex.content-end{align-content:flex-end}.snail-flex.content-stretch{align-content:stretch}.snail-flex.content-between{align-content:space-between}.snail-flex.content-around{align-content:space-around}.snail-flex.content-evenly{align-content:space-evenly}.snail-flex.row-reverse>.repair-item,.snail-flex.row>.repair-item{height:0!important;padding-bottom:0!important;padding-top:0!important;visibility:hidden!important}.snail-flex.column-reverse,.snail-flex.column>.repair-item{padding-left:0!important;padding-right:0!important;visibility:hidden!important;width:0!important}
|
|
33
|
-
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/fold.vue index:0 */
|
|
34
|
-
.snail-fold{flex-shrink:0}.snail-fold>div.fold-header{align-items:center;display:flex;height:32px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-fold>div.fold-header:before{background-color:#2c97fb;content:"";height:18px;left:0;position:absolute;top:7px;width:4px}.snail-fold>div.fold-header>.title{color:#2e3033;font-weight:bold;padding-left:20px}.snail-fold>div.fold-header>.subtitle{color:#8a9099;font-size:13px}.snail-fold>div.fold-header>div.status{align-items:flex-end;display:flex;flex:1;justify-content:flex-end}.snail-fold>div.fold-body{padding-left:20px}
|
|
35
33
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/layout.vue index:0 */
|
|
36
34
|
.snail-layout{display:flex;flex-wrap:nowrap}.snail-layout,.snail-layout>div:not(.snail-scroll){overflow:hidden}.snail-layout>div.main-area{flex:1}.snail-layout.horizontal>div.left-area,.snail-layout.horizontal>div.right-area{flex-shrink:0;width:-moz-fit-content;width:fit-content}.snail-layout.vertical{flex-direction:column}.snail-layout.vertical>div.bottom-area,.snail-layout.vertical>div.top-area{flex-shrink:0;height:-moz-fit-content;height:fit-content}
|
|
35
|
+
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/fold.vue index:0 */
|
|
36
|
+
.snail-fold{flex-shrink:0}.snail-fold>div.fold-header{align-items:center;display:flex;height:32px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-fold>div.fold-header:before{background-color:#2c97fb;content:"";height:18px;left:0;position:absolute;top:7px;width:4px}.snail-fold>div.fold-header>.title{color:#2e3033;font-weight:bold;padding-left:20px}.snail-fold>div.fold-header>.subtitle{color:#8a9099;font-size:13px}.snail-fold>div.fold-header>div.status{align-items:flex-end;display:flex;flex:1;justify-content:flex-end}.snail-fold>div.fold-body{padding-left:20px}
|
|
37
37
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/motion.vue index:0 */
|
|
38
38
|
|
|
39
39
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/scroll.vue index:0 */
|
|
@@ -62,6 +62,10 @@ textarea.snail-textarea{font-size:14px;line-height:1.5em;overflow-x:hidden;overf
|
|
|
62
62
|
.snail-empty{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:150px;width:100%}.snail-empty>img{height:60px;width:60px}.snail-empty>div.message{color:#babdc2;font-weight:400;padding:0 10px 10px}
|
|
63
63
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/prompt/loading.vue index:0 */
|
|
64
64
|
.snail-loading{height:100%;left:0;position:absolute;top:0;width:100%;z-index:10000}.snail-loading.show-mask{background-color:rgba(0,0,0,.15)}.snail-loading:after,.snail-loading:before{animation:snail-loading-stretch 1s ease-in-out infinite;border-radius:50%;content:"";display:block;display:inline-block;height:10px;left:50%;margin-left:-18px;margin-top:-6px;position:absolute;top:50%;width:10px}.snail-loading:before{background-color:#279bf1}.snail-loading:after{animation-delay:-.5s;background:#64d214;margin-left:0;margin-right:-18px}@keyframes snail-loading-stretch{0%,to{transform:scale(1)}50%{transform:scale(2)}}
|
|
65
|
+
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/picker/components/time-pc.vue index:0 */
|
|
66
|
+
.snail-layout.time-picker.pc{background-color:#fff;border:1px solid rgba(0,0,0,.12);border-radius:4px;box-shadow:0 0 3px rgba(0,0,0,.12);height:240px!important;overflow:hidden!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:210px!important}.snail-layout.time-picker.pc>.main-area{display:flex;flex-wrap:nowrap;justify-content:space-between;margin:10px;overflow:hidden}.snail-layout.time-picker.pc>.main-area>.tz-item{border:1px solid #eee;border-left:none;flex-shrink:0;overflow:hidden auto;width:30%}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number{align-items:center;border-left:1px solid #eee;cursor:pointer;display:flex;height:24px;justify-content:center}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number:hover{background-color:#f4f4f4}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number.active{background-color:#58a4fd;border-color:#58a4fd;color:#fff!important}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number.active.disabled{opacity:.6}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number.disabled{color:#ddd;cursor:not-allowed}.snail-layout.time-picker.pc>.main-area>.tz-item::-webkit-scrollbar{width:4px}.snail-layout.time-picker.pc>.main-area>.tz-item::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.6);border:none;border-radius:0}.snail-layout.time-picker.pc>.main-area>.tz-item::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:0}.snail-layout.time-picker.pc>.bottom-area{align-items:center;border-top:1px solid #eee;display:flex;height:30px;justify-content:flex-end;padding-right:10px}.snail-layout.time-picker.pc>.bottom-area>.snail-button{color:#999;font-size:12px;margin-left:4px}.snail-layout.time-picker.pc>.bottom-area>.snail-button:hover,.snail-layout.time-picker.pc>.bottom-area>.snail-button:last-child{color:#58a4fd}.snail-layout.time-picker.pc>.bottom-area>.snail-button.disabled{cursor:not-allowed;opacity:.6}.snail-layout.time-picker.pc.second-disabled{width:180px}.snail-layout.time-picker.pc.second-disabled>.main-area>.tz-item{width:46%}
|
|
67
|
+
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/picker/components/date-pc.vue index:0 */
|
|
68
|
+
.snail-layout.date-picker.pc{background-color:#fff;border:1px solid rgba(0,0,0,.12);border-radius:4px;box-shadow:0 0 3px rgba(0,0,0,.12);height:300px!important;overflow:hidden!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:280px!important}.snail-layout.date-picker.pc.time-now:after{background-color:gray;content:"";height:100%;left:0;opacity:.6;position:absolute;top:0;width:100%}.snail-layout.date-picker.pc>.top-area{align-items:center;border-bottom:1px solid #eee;display:flex;flex-wrap:nowrap;padding:0 4px}.snail-layout.date-picker.pc>.top-area>svg{fill:#8a9099;flex-shrink:0}.snail-layout.date-picker.pc>.top-area>svg:hover{fill:#58a4fd}.snail-layout.date-picker.pc>.top-area>div.header-content{align-items:center;display:flex;flex:1;justify-content:center}.snail-layout.date-picker.pc>.top-area>div.header-content>div{align-items:center;display:flex;font-size:16px;height:100%}.snail-layout.date-picker.pc>.top-area>div.header-content>div:nth-child(2){margin-left:8px}.snail-layout.date-picker.pc>.top-area>div.header-content:not(.year)>div:hover{color:#58a4fd;cursor:pointer}.snail-layout.date-picker.pc>.main-area{display:flex;flex-wrap:wrap;justify-content:space-between}.snail-layout.date-picker.pc>.main-area>div{align-items:center;display:flex;flex-shrink:0;font-size:13px;justify-content:center;position:relative}.snail-layout.date-picker.pc>.main-area>div>span{align-items:center;display:flex;height:28px;justify-content:center}.snail-layout.date-picker.pc>.main-area>div>span:hover{background:#f4f4f4;cursor:pointer}.snail-layout.date-picker.pc>.main-area>div.active>span{background-color:#58a4fd;color:#fff!important}.snail-layout.date-picker.pc>.main-area>div.active.disabled{opacity:.6}.snail-layout.date-picker.pc>.main-area>div.disabled>span{color:#aaa;cursor:not-allowed}.snail-layout.date-picker.pc>.main-area>div.day-item{height:30px;width:36px}.snail-layout.date-picker.pc>.main-area>div.day-item.week{font-weight:bold}.snail-layout.date-picker.pc>.main-area>div.day-item.active>span,.snail-layout.date-picker.pc>.main-area>div.day-item:hover>span{border-radius:100%;width:28px}.snail-layout.date-picker.pc>.main-area>div.day-item:not(.now-month)>span{color:#aaa}.snail-layout.date-picker.pc>.main-area>div.month-item,.snail-layout.date-picker.pc>.main-area>div.year-item{width:30%}.snail-layout.date-picker.pc>.main-area>div.month-item.active>span,.snail-layout.date-picker.pc>.main-area>div.month-item:hover>span,.snail-layout.date-picker.pc>.main-area>div.year-item.active>span,.snail-layout.date-picker.pc>.main-area>div.year-item:hover>span{border-radius:15px;padding:0 8px;width:-moz-fit-content;width:fit-content}.snail-layout.date-picker.pc>.bottom-area{align-items:center;border-top:1px solid #eee;display:flex;height:30px;justify-content:flex-end;padding-right:10px}.snail-layout.date-picker.pc>.bottom-area>.time-area{color:#58a4fd;cursor:pointer;font-size:12px;margin-left:10px;margin-right:auto}.snail-layout.date-picker.pc>.bottom-area>.snail-button{color:#999;font-size:12px;margin-left:4px}.snail-layout.date-picker.pc>.bottom-area>.snail-button:hover,.snail-layout.date-picker.pc>.bottom-area>.snail-button:last-child{color:#58a4fd}.snail-layout.date-picker.pc>.bottom-area>.snail-button.disabled{cursor:not-allowed;opacity:.6}
|
|
65
69
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/popup/components/confirm-container.vue index:0 */
|
|
66
70
|
.snail-confirm{background-color:#fff;border-radius:4px;color:#2e2f33;max-height:350px;max-width:548px;min-width:348px}.snail-confirm>div.confirm-body{flex:1;margin:20px 40px;overflow:auto;word-wrap:break-word}
|
|
67
71
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/popup/components/dialog-container.vue index:0 */
|
|
@@ -72,10 +76,6 @@ textarea.snail-textarea{font-size:14px;line-height:1.5em;overflow-x:hidden;overf
|
|
|
72
76
|
.snail-popup{left:0;position:fixed;top:0}
|
|
73
77
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/popup/components/toast-container.vue index:0 */
|
|
74
78
|
.snail-toast{background:rgba(0,0,0,.7);border-radius:10px;color:#fff;display:flex;left:50%;max-height:200px;max-width:400px;min-width:200px;overflow:hidden;padding:20px 35px 20px 15px;position:fixed;top:50%;transform:translate(-50%,-50%)}.snail-toast>svg.close-icon{position:absolute;right:10px;top:12px}.snail-toast>div.icon{align-items:center;align-self:center;background:hsla(0,0%,100%,.15);border-radius:50%;display:flex;height:26px;justify-content:center;margin-right:6px;width:26px}.snail-toast>div.icon>svg{background:#fff;border-radius:50%;cursor:none!important;padding:2px}.snail-toast>div.message{flex:1;line-height:24px;overflow:hidden;word-break:break-all}
|
|
75
|
-
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/picker/components/time-pc.vue index:0 */
|
|
76
|
-
.snail-layout.time-picker.pc{background-color:#fff;border:1px solid rgba(0,0,0,.12);border-radius:4px;box-shadow:0 0 3px rgba(0,0,0,.12);height:240px!important;overflow:hidden!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:210px!important}.snail-layout.time-picker.pc>.main-area{display:flex;flex-wrap:nowrap;justify-content:space-between;margin:10px;overflow:hidden}.snail-layout.time-picker.pc>.main-area>.tz-item{border:1px solid #eee;border-left:none;flex-shrink:0;overflow:hidden auto;width:30%}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number{align-items:center;border-left:1px solid #eee;cursor:pointer;display:flex;height:24px;justify-content:center}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number:hover{background-color:#f4f4f4}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number.active{background-color:#58a4fd;border-color:#58a4fd;color:#fff!important}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number.active.disabled{opacity:.6}.snail-layout.time-picker.pc>.main-area>.tz-item>.tzi-number.disabled{color:#ddd;cursor:not-allowed}.snail-layout.time-picker.pc>.main-area>.tz-item::-webkit-scrollbar{width:4px}.snail-layout.time-picker.pc>.main-area>.tz-item::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.6);border:none;border-radius:0}.snail-layout.time-picker.pc>.main-area>.tz-item::-webkit-scrollbar-track{background:rgba(0,0,0,.1);border-radius:0}.snail-layout.time-picker.pc>.bottom-area{align-items:center;border-top:1px solid #eee;display:flex;height:30px;justify-content:flex-end;padding-right:10px}.snail-layout.time-picker.pc>.bottom-area>.snail-button{color:#999;font-size:12px;margin-left:4px}.snail-layout.time-picker.pc>.bottom-area>.snail-button:hover,.snail-layout.time-picker.pc>.bottom-area>.snail-button:last-child{color:#58a4fd}.snail-layout.time-picker.pc>.bottom-area>.snail-button.disabled{cursor:not-allowed;opacity:.6}.snail-layout.time-picker.pc.second-disabled{width:180px}.snail-layout.time-picker.pc.second-disabled>.main-area>.tz-item{width:46%}
|
|
77
|
-
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/picker/components/date-pc.vue index:0 */
|
|
78
|
-
.snail-layout.date-picker.pc{background-color:#fff;border:1px solid rgba(0,0,0,.12);border-radius:4px;box-shadow:0 0 3px rgba(0,0,0,.12);height:300px!important;overflow:hidden!important;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:280px!important}.snail-layout.date-picker.pc.time-now:after{background-color:gray;content:"";height:100%;left:0;opacity:.6;position:absolute;top:0;width:100%}.snail-layout.date-picker.pc>.top-area{align-items:center;border-bottom:1px solid #eee;display:flex;flex-wrap:nowrap;padding:0 4px}.snail-layout.date-picker.pc>.top-area>svg{fill:#8a9099;flex-shrink:0}.snail-layout.date-picker.pc>.top-area>svg:hover{fill:#58a4fd}.snail-layout.date-picker.pc>.top-area>div.header-content{align-items:center;display:flex;flex:1;justify-content:center}.snail-layout.date-picker.pc>.top-area>div.header-content>div{align-items:center;display:flex;font-size:16px;height:100%}.snail-layout.date-picker.pc>.top-area>div.header-content>div:nth-child(2){margin-left:8px}.snail-layout.date-picker.pc>.top-area>div.header-content:not(.year)>div:hover{color:#58a4fd;cursor:pointer}.snail-layout.date-picker.pc>.main-area{display:flex;flex-wrap:wrap;justify-content:space-between}.snail-layout.date-picker.pc>.main-area>div{align-items:center;display:flex;flex-shrink:0;font-size:13px;justify-content:center;position:relative}.snail-layout.date-picker.pc>.main-area>div>span{align-items:center;display:flex;height:28px;justify-content:center}.snail-layout.date-picker.pc>.main-area>div>span:hover{background:#f4f4f4;cursor:pointer}.snail-layout.date-picker.pc>.main-area>div.active>span{background-color:#58a4fd;color:#fff!important}.snail-layout.date-picker.pc>.main-area>div.active.disabled{opacity:.6}.snail-layout.date-picker.pc>.main-area>div.disabled>span{color:#aaa;cursor:not-allowed}.snail-layout.date-picker.pc>.main-area>div.day-item{height:30px;width:36px}.snail-layout.date-picker.pc>.main-area>div.day-item.week{font-weight:bold}.snail-layout.date-picker.pc>.main-area>div.day-item.active>span,.snail-layout.date-picker.pc>.main-area>div.day-item:hover>span{border-radius:100%;width:28px}.snail-layout.date-picker.pc>.main-area>div.day-item:not(.now-month)>span{color:#aaa}.snail-layout.date-picker.pc>.main-area>div.month-item,.snail-layout.date-picker.pc>.main-area>div.year-item{width:30%}.snail-layout.date-picker.pc>.main-area>div.month-item.active>span,.snail-layout.date-picker.pc>.main-area>div.month-item:hover>span,.snail-layout.date-picker.pc>.main-area>div.year-item.active>span,.snail-layout.date-picker.pc>.main-area>div.year-item:hover>span{border-radius:15px;padding:0 8px;width:-moz-fit-content;width:fit-content}.snail-layout.date-picker.pc>.bottom-area{align-items:center;border-top:1px solid #eee;display:flex;height:30px;justify-content:flex-end;padding-right:10px}.snail-layout.date-picker.pc>.bottom-area>.time-area{color:#58a4fd;cursor:pointer;font-size:12px;margin-left:10px;margin-right:auto}.snail-layout.date-picker.pc>.bottom-area>.snail-button{color:#999;font-size:12px;margin-left:4px}.snail-layout.date-picker.pc>.bottom-area>.snail-button:hover,.snail-layout.date-picker.pc>.bottom-area>.snail-button:last-child{color:#58a4fd}.snail-layout.date-picker.pc>.bottom-area>.snail-button.disabled{cursor:not-allowed;opacity:.6}
|
|
79
79
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/base/components/select-popup.vue index:0 */
|
|
80
80
|
.snail-select-popup{background:#fff;border:1px solid #dddfed;border-radius:4px;box-shadow:0 1px 5px 1px #dddfed;display:flex;flex-direction:column;max-height:90%;min-height:32px;overflow:auto}.snail-select-popup>div.snail-search{margin:12px}.snail-select-popup>div.clear-all{align-items:center;background-color:#fff;border-top:1px solid #dddfed;bottom:0;color:#8a9099;cursor:pointer;display:flex;flex-shrink:0;height:32px;padding:0 12px;position:sticky!important;z-index:1}.snail-select-popup>div.clear-all:hover{color:#ff4c4c}.snail-select-popup.child-popup{max-width:250px;min-width:200px;padding-bottom:6px;padding-top:6px}.snail-select-popup.child-popup.placeholder{justify-content:center;padding:0 12px;width:100px!important}
|
|
81
81
|
/* src:../../../../../01_snail/snail.js/packages/snail.vue/src/container/components/action-items.vue index:0 */
|