snail.vue 2.0.1 → 2.0.3

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.
@@ -1033,13 +1033,14 @@ type IconOptions = TitleOptions & {
1033
1033
  * - - edit 编辑
1034
1034
  * - 指向类:
1035
1035
  * - - arrow 向右箭头
1036
+ * - - datepicker 日期选择器
1036
1037
  * - 其他类:
1037
1038
  * - - plus 加号
1038
1039
  * - - subtract 减号
1039
1040
  * - - grip 紧握图标,垂直方向,一般用于拖动句柄
1040
1041
  * - - custom 自定义图标:此时IconOptions.draw属性传入绘制路径
1041
1042
  */
1042
- type IconType = "success" | "error" | "warn" | "close" | "trash" | "download" | "print" | "edit" | "arrow" | "plus" | "subtract" | "grip" | "custom";
1043
+ type IconType = "success" | "error" | "warn" | "close" | "trash" | "download" | "print" | "edit" | "arrow" | "datepicker" | "plus" | "subtract" | "grip" | "custom";
1043
1044
 
1044
1045
  /**
1045
1046
  * 日期组件相关数据模型
@@ -1184,13 +1185,21 @@ type ChooseOptions<T> = ReadonlyOptions & {
1184
1185
  * - radio: 单选框样式
1185
1186
  * - checkbox: 多选框样式
1186
1187
  */
1187
- type: "checkbox" | "radio";
1188
+ type: "radio" | "checkbox";
1188
1189
  /**
1189
1190
  * 显示模式
1190
1191
  * - native 原生默认,浏览器自己渲染;不同浏览器效果不一致
1191
1192
  * - beautiful 美化模式,不同浏览器下效果通义
1192
1193
  */
1193
1194
  mode?: "native" | "beautiful";
1195
+ /**
1196
+ * 选项布局
1197
+ * - 默认值:horizontal
1198
+ * - 可选值:
1199
+ * - - horizontal 水平布局;所有选项一行
1200
+ * - - vertical 垂直布局;每个选项一行
1201
+ */
1202
+ layout?: "horizontal" | "vertical";
1194
1203
  /**
1195
1204
  * 待选项目
1196
1205
  * text 可不传入
@@ -1957,8 +1966,9 @@ declare const components: {
1957
1966
  });
1958
1967
  Choose: vue.DefineComponent<ReadonlyOptions & {
1959
1968
  multi?: boolean;
1960
- type: "checkbox" | "radio";
1969
+ type: "radio" | "checkbox";
1961
1970
  mode?: "native" | "beautiful";
1971
+ layout?: "horizontal" | "vertical";
1962
1972
  items: ChooseItem<any>[];
1963
1973
  itemStyle?: snail_view.WidthStyle & snail_view.HeightStyle & snail_view.MarginStyle;
1964
1974
  } & {
@@ -1968,8 +1978,9 @@ declare const components: {
1968
1978
  "update:modelValue": (value: any) => any;
1969
1979
  }, string, vue.PublicProps, Readonly<ReadonlyOptions & {
1970
1980
  multi?: boolean;
1971
- type: "checkbox" | "radio";
1981
+ type: "radio" | "checkbox";
1972
1982
  mode?: "native" | "beautiful";
1983
+ layout?: "horizontal" | "vertical";
1973
1984
  items: ChooseItem<any>[];
1974
1985
  itemStyle?: snail_view.WidthStyle & snail_view.HeightStyle & snail_view.MarginStyle;
1975
1986
  } & {
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, normalizeStyle, createElementVNode, toDisplayString, Fragment, renderList, unref, mergeModels, useModel, computed, createCommentVNode, createBlock, nextTick, onMounted, onUnmounted, withDirectives, vModelText, createVNode, createApp, Transition, withCtx, normalizeProps, guardReactiveProps, watch, ref, onErrorCaptured, resolveDynamicComponent, mergeProps, createSlots, withModifiers, isRef, getCurrentInstance, useTemplateRef, resolveComponent, onBeforeUnmount, getCurrentScope, onScopeDispose } from 'vue';
3
3
  import { throwError, isArrayNotEmpty, isStringNotEmpty, useKey, isArray, useTimer, newId, script, isFunction, getFromArray, mustFunction, useScope, removeFromArray, mustObject, throwIfFalse, isObject, isNumberNotNaN, mountScope, useScopes, isPromise, wait, delay, defer, useAsyncScope, useHook, hasAny, throwIfTrue, onMountScope } from 'snail.core';
4
- import { css, link, useObserver, useAnimation } from 'snail.view';
4
+ import { link, css, useObserver, useAnimation } from 'snail.view';
5
5
 
6
6
  const _hoisted_1$h = ["title"];
7
7
  var _sfc_main$u = defineComponent({
@@ -25,6 +25,10 @@ var _sfc_main$u = 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
+
28
32
  function getSvgDraw(iconType, draw) {
29
33
  switch (iconType) {
30
34
  case "success":
@@ -45,6 +49,8 @@ function getSvgDraw(iconType, draw) {
45
49
  return ["M 780.8 366.933 c 34.1333 -34.1333 34.1333 -93.8667 0 -128 c -38.4 -34.1333 -93.8667 -34.1333 -132.267 0 l -68.2667 68.2667 l 132.267 128 l 68.2667 -68.2667 Z M 541.867 349.867 l -277.333 277.333 L 213.333 806.4 l 179.2 -51.2 l 281.6 -277.333 Z M 469.333 768 h 341.333 v 42.6667 h -341.333 Z"];
46
50
  case "arrow":
47
51
  return ["M651.3 514.2c0 8.2-3.1 16.4-9.4 22.6L426.4 752.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L574 514.2 381.1 321.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l215.5 215.5c6.2 6.3 9.4 14.5 9.4 22.6z"];
52
+ case "datepicker":
53
+ return ["M848.9 118h-93.5c-8.7 0-15.8-7.1-15.8-15.8V60.6c0-16.3-12.8-30.2-29.2-30.6-17-0.5-30.8 13.1-30.8 30v42.3c0 8.7-7.1 15.8-15.8 15.8H363.3c-8.7 0-15.8-7.1-15.8-15.8V60.6c0-16.3-12.8-30.2-29.2-30.6-17-0.5-30.8 13.1-30.8 30v42.3c0 8.7-7.1 15.8-15.8 15.8h-96.6C98.8 118 37 179.8 37 256.1v599.8C37 932.2 98.8 994 175.1 994h673.7c76.3 0 138.1-61.8 138.1-138.1V256.1c0.1-76.3-61.7-138.1-138-138.1zM97 256.1c0-43.2 35-78.1 78.1-78.1h96.6c8.7 0 15.8 7.1 15.8 15.8v41.7c0 16.3 12.8 30.2 29.2 30.6 17 0.5 30.8-13.1 30.8-30v-42.3c0-8.7 7.1-15.8 15.8-15.8h300.5c8.7 0 15.8 7.1 15.8 15.8v41.7c0 16.3 12.8 30.2 29.2 30.6 17 0.5 30.8-13.1 30.8-30v-42.3c0-8.7 7.1-15.8 15.8-15.8h93.5c43.2 0 78.1 35 78.1 78.1v45.4c0 11.4-9.2 20.6-20.6 20.6H117.6c-11.4 0-20.6-9.2-20.6-20.6v-45.4zM927 856c0 43.2-35 78.1-78.1 78.1H175.1c-43.1 0-78.1-35-78.1-78.1V402.7c0-11.4 9.2-20.6 20.6-20.6h788.9c11.4 0 20.6 9.2 20.6 20.6L927 856z", "M240.3 586.1H306c16.5 0 30-13.4 30-30 0-16.5-13.4-30-30-30h-65.7c-16.5 0-30 13.4-30 30s13.4 30 30 30zM479.2 586.1h65.7c16.5 0 30-13.4 30-30 0-16.5-13.4-30-30-30h-65.7c-16.5 0-30 13.4-30 30 0.1 16.6 13.5 30 30 30zM718.2 586.1h65.7c16.5 0 30-13.4 30-30 0-16.5-13.4-30-30-30h-65.7c-16.5 0-30 13.4-30 30s13.4 30 30 30zM312 730.1h-65.7c-16.5 0-30 13.4-30 30 0 16.5 13.4 30 30 30H312c16.5 0 30-13.4 30-30s-13.4-30-30-30zM551 730.1h-65.7c-16.5 0-30 13.4-30 30 0 16.5 13.4 30 30 30H551c16.5 0 30-13.4 30-30-0.1-16.6-13.5-30-30-30zM789.9 730.1h-65.7c-16.5 0-30 13.4-30 30 0 16.5 13.4 30 30 30h65.7c16.5 0 30-13.4 30-30s-13.4-30-30-30z"];
48
54
  case "plus":
49
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"];
50
56
  case "subtract":
@@ -54,8 +60,10 @@ function getSvgDraw(iconType, draw) {
54
60
  case "custom":
55
61
  return isArrayNotEmpty(draw) ? draw : isStringNotEmpty(draw) ? [draw] : throwError("options.draw must be a non-empty string or string array");
56
62
  default:
57
- throwError(`not support icon type: ${iconType}.`);
58
- break;
63
+ {
64
+ throwError(`not support icon type: ${iconType}.`);
65
+ break;
66
+ }
59
67
  }
60
68
  }
61
69
 
@@ -104,7 +112,7 @@ var _sfc_main$t = defineComponent({
104
112
  }
105
113
  });
106
114
 
107
- const _hoisted_1$f = ["onClick"];
115
+ const _hoisted_1$f = ["title", "onClick"];
108
116
  const _hoisted_2$9 = ["type", "checked"];
109
117
  const _hoisted_3$6 = ["textContent"];
110
118
  const _hoisted_4$4 = ["textContent"];
@@ -123,6 +131,7 @@ var _sfc_main$s = defineComponent({
123
131
  },
124
132
  type: {},
125
133
  mode: {},
134
+ layout: {},
126
135
  items: {},
127
136
  itemStyle: {}
128
137
  }, {
@@ -137,51 +146,52 @@ var _sfc_main$s = defineComponent({
137
146
  const props = __props;
138
147
  const emits = __emit;
139
148
  const {
140
- mode = "native"
149
+ mode = "native",
150
+ type = "radio",
151
+ layout = "horizontal"
141
152
  } = props;
142
153
  const {
143
154
  getKey
144
155
  } = useKey();
145
156
  const valuesModel = useModel(__props, "modelValue");
146
157
  props.multi && isArray(valuesModel.value) == false && (valuesModel.value = []);
147
- const chooseItemsRef = computed(() => props.items.map(item => {
148
- return {
149
- item,
150
- checked: props.multi == true ? valuesModel.value.includes(item.value) : valuesModel.value == item.value
151
- };
152
- }));
158
+ const chooseItemsRef = computed(() => props.items.map(item => ({
159
+ item,
160
+ selected: props.multi == true ? valuesModel.value.includes(item.value) : valuesModel.value == item.value
161
+ })));
153
162
  function onItemClick(node, index) {
154
163
  if (props.readonly == true) {
155
164
  return;
156
165
  }
157
166
  if (props.multi == true) {
158
- node.checked = !node.checked;
159
- valuesModel.value = chooseItemsRef.value.filter(item => item.checked).map(item => item.item.value);
167
+ node.selected = !node.selected;
168
+ valuesModel.value = chooseItemsRef.value.filter(item => item.selected).map(item => item.item.value);
160
169
  } else {
161
- const newChecked = props.type == "checkbox" && props.items.length == 1 ? !node.checked : true;
162
- chooseItemsRef.value.forEach(item => item.checked = false);
163
- node.checked = newChecked;
164
- valuesModel.value = newChecked ? node.item.value : void 0;
170
+ const newSelected = type == "checkbox" && props.items.length == 1 ? !node.selected : true;
171
+ chooseItemsRef.value.forEach(item => item.selected = false);
172
+ node.selected = newSelected;
173
+ valuesModel.value = newSelected ? node.item.value : void 0;
165
174
  }
166
175
  nextTick(() => emits("change", valuesModel.value));
167
176
  }
168
177
  return (_ctx, _cache) => {
169
178
  return openBlock(), createElementBlock("div", {
170
- class: normalizeClass(["snail-choose", _ctx.readonly ? "readonly" : ""])
179
+ class: normalizeClass(["snail-choose", [unref(type), unref(mode), unref(layout), _ctx.readonly ? "readonly" : ""]])
171
180
  }, [(openBlock(true), createElementBlock(Fragment, null, renderList(chooseItemsRef.value, (node, index) => {
172
181
  return openBlock(), createElementBlock("div", {
173
182
  key: unref(getKey)(node.item),
174
- class: normalizeClass(["choose-item", node.checked ? "checked" : ""]),
183
+ class: normalizeClass(["choose-item", node.selected ? "selected" : ""]),
175
184
  style: normalizeStyle(unref(css).buildStyle(_ctx.itemStyle)),
185
+ title: node.item.text,
176
186
  onClick: $event => onItemClick(node)
177
187
  }, [unref(mode) == "native" ? (openBlock(), createElementBlock("input", {
178
188
  key: 0,
179
- type: _ctx.type,
180
- checked: node.checked
189
+ type: unref(type),
190
+ checked: node.selected
181
191
  }, null, 8, _hoisted_2$9)) : unref(mode) == "beautiful" ? (openBlock(), createElementBlock("div", {
182
192
  key: 1,
183
- class: normalizeClass(["item-beautiful", [_ctx.type, node.checked ? "item-checked" : "item-unchecked"]])
184
- }, [node.checked ? (openBlock(), createBlock(_sfc_main$t, {
193
+ class: normalizeClass(["status", [node.selected ? "selected" : ""]])
194
+ }, [node.selected ? (openBlock(), createBlock(_sfc_main$t, {
185
195
  key: 0,
186
196
  type: "success",
187
197
  size: 12,
@@ -200,10 +210,6 @@ var _sfc_main$s = defineComponent({
200
210
  }
201
211
  });
202
212
 
203
- var addLink = href => setTimeout(link.register, 0, href);
204
-
205
- addLink("/styles/snail.vue.vue.css");
206
-
207
213
  const _hoisted_1$e = ["id"];
208
214
  var _sfc_main$r = defineComponent({
209
215
  __name: "datepicker",
@@ -27,6 +27,10 @@
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
+
30
34
  function getSvgDraw(iconType, draw) {
31
35
  switch (iconType) {
32
36
  case "success":
@@ -47,6 +51,8 @@
47
51
  return ["M 780.8 366.933 c 34.1333 -34.1333 34.1333 -93.8667 0 -128 c -38.4 -34.1333 -93.8667 -34.1333 -132.267 0 l -68.2667 68.2667 l 132.267 128 l 68.2667 -68.2667 Z M 541.867 349.867 l -277.333 277.333 L 213.333 806.4 l 179.2 -51.2 l 281.6 -277.333 Z M 469.333 768 h 341.333 v 42.6667 h -341.333 Z"];
48
52
  case "arrow":
49
53
  return ["M651.3 514.2c0 8.2-3.1 16.4-9.4 22.6L426.4 752.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L574 514.2 381.1 321.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l215.5 215.5c6.2 6.3 9.4 14.5 9.4 22.6z"];
54
+ case "datepicker":
55
+ return ["M848.9 118h-93.5c-8.7 0-15.8-7.1-15.8-15.8V60.6c0-16.3-12.8-30.2-29.2-30.6-17-0.5-30.8 13.1-30.8 30v42.3c0 8.7-7.1 15.8-15.8 15.8H363.3c-8.7 0-15.8-7.1-15.8-15.8V60.6c0-16.3-12.8-30.2-29.2-30.6-17-0.5-30.8 13.1-30.8 30v42.3c0 8.7-7.1 15.8-15.8 15.8h-96.6C98.8 118 37 179.8 37 256.1v599.8C37 932.2 98.8 994 175.1 994h673.7c76.3 0 138.1-61.8 138.1-138.1V256.1c0.1-76.3-61.7-138.1-138-138.1zM97 256.1c0-43.2 35-78.1 78.1-78.1h96.6c8.7 0 15.8 7.1 15.8 15.8v41.7c0 16.3 12.8 30.2 29.2 30.6 17 0.5 30.8-13.1 30.8-30v-42.3c0-8.7 7.1-15.8 15.8-15.8h300.5c8.7 0 15.8 7.1 15.8 15.8v41.7c0 16.3 12.8 30.2 29.2 30.6 17 0.5 30.8-13.1 30.8-30v-42.3c0-8.7 7.1-15.8 15.8-15.8h93.5c43.2 0 78.1 35 78.1 78.1v45.4c0 11.4-9.2 20.6-20.6 20.6H117.6c-11.4 0-20.6-9.2-20.6-20.6v-45.4zM927 856c0 43.2-35 78.1-78.1 78.1H175.1c-43.1 0-78.1-35-78.1-78.1V402.7c0-11.4 9.2-20.6 20.6-20.6h788.9c11.4 0 20.6 9.2 20.6 20.6L927 856z", "M240.3 586.1H306c16.5 0 30-13.4 30-30 0-16.5-13.4-30-30-30h-65.7c-16.5 0-30 13.4-30 30s13.4 30 30 30zM479.2 586.1h65.7c16.5 0 30-13.4 30-30 0-16.5-13.4-30-30-30h-65.7c-16.5 0-30 13.4-30 30 0.1 16.6 13.5 30 30 30zM718.2 586.1h65.7c16.5 0 30-13.4 30-30 0-16.5-13.4-30-30-30h-65.7c-16.5 0-30 13.4-30 30s13.4 30 30 30zM312 730.1h-65.7c-16.5 0-30 13.4-30 30 0 16.5 13.4 30 30 30H312c16.5 0 30-13.4 30-30s-13.4-30-30-30zM551 730.1h-65.7c-16.5 0-30 13.4-30 30 0 16.5 13.4 30 30 30H551c16.5 0 30-13.4 30-30-0.1-16.6-13.5-30-30-30zM789.9 730.1h-65.7c-16.5 0-30 13.4-30 30 0 16.5 13.4 30 30 30h65.7c16.5 0 30-13.4 30-30s-13.4-30-30-30z"];
50
56
  case "plus":
51
57
  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"];
52
58
  case "subtract":
@@ -56,8 +62,10 @@
56
62
  case "custom":
57
63
  return snail_core.isArrayNotEmpty(draw) ? draw : snail_core.isStringNotEmpty(draw) ? [draw] : snail_core.throwError("options.draw must be a non-empty string or string array");
58
64
  default:
59
- snail_core.throwError(`not support icon type: ${iconType}.`);
60
- break;
65
+ {
66
+ snail_core.throwError(`not support icon type: ${iconType}.`);
67
+ break;
68
+ }
61
69
  }
62
70
  }
63
71
 
@@ -106,7 +114,7 @@
106
114
  }
107
115
  });
108
116
 
109
- const _hoisted_1$f = ["onClick"];
117
+ const _hoisted_1$f = ["title", "onClick"];
110
118
  const _hoisted_2$9 = ["type", "checked"];
111
119
  const _hoisted_3$6 = ["textContent"];
112
120
  const _hoisted_4$4 = ["textContent"];
@@ -125,6 +133,7 @@
125
133
  },
126
134
  type: {},
127
135
  mode: {},
136
+ layout: {},
128
137
  items: {},
129
138
  itemStyle: {}
130
139
  }, {
@@ -139,51 +148,52 @@
139
148
  const props = __props;
140
149
  const emits = __emit;
141
150
  const {
142
- mode = "native"
151
+ mode = "native",
152
+ type = "radio",
153
+ layout = "horizontal"
143
154
  } = props;
144
155
  const {
145
156
  getKey
146
157
  } = snail_core.useKey();
147
158
  const valuesModel = vue.useModel(__props, "modelValue");
148
159
  props.multi && snail_core.isArray(valuesModel.value) == false && (valuesModel.value = []);
149
- const chooseItemsRef = vue.computed(() => props.items.map(item => {
150
- return {
151
- item,
152
- checked: props.multi == true ? valuesModel.value.includes(item.value) : valuesModel.value == item.value
153
- };
154
- }));
160
+ const chooseItemsRef = vue.computed(() => props.items.map(item => ({
161
+ item,
162
+ selected: props.multi == true ? valuesModel.value.includes(item.value) : valuesModel.value == item.value
163
+ })));
155
164
  function onItemClick(node, index) {
156
165
  if (props.readonly == true) {
157
166
  return;
158
167
  }
159
168
  if (props.multi == true) {
160
- node.checked = !node.checked;
161
- valuesModel.value = chooseItemsRef.value.filter(item => item.checked).map(item => item.item.value);
169
+ node.selected = !node.selected;
170
+ valuesModel.value = chooseItemsRef.value.filter(item => item.selected).map(item => item.item.value);
162
171
  } else {
163
- const newChecked = props.type == "checkbox" && props.items.length == 1 ? !node.checked : true;
164
- chooseItemsRef.value.forEach(item => item.checked = false);
165
- node.checked = newChecked;
166
- valuesModel.value = newChecked ? node.item.value : void 0;
172
+ const newSelected = type == "checkbox" && props.items.length == 1 ? !node.selected : true;
173
+ chooseItemsRef.value.forEach(item => item.selected = false);
174
+ node.selected = newSelected;
175
+ valuesModel.value = newSelected ? node.item.value : void 0;
167
176
  }
168
177
  vue.nextTick(() => emits("change", valuesModel.value));
169
178
  }
170
179
  return (_ctx, _cache) => {
171
180
  return vue.openBlock(), vue.createElementBlock("div", {
172
- class: vue.normalizeClass(["snail-choose", _ctx.readonly ? "readonly" : ""])
181
+ class: vue.normalizeClass(["snail-choose", [vue.unref(type), vue.unref(mode), vue.unref(layout), _ctx.readonly ? "readonly" : ""]])
173
182
  }, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(chooseItemsRef.value, (node, index) => {
174
183
  return vue.openBlock(), vue.createElementBlock("div", {
175
184
  key: vue.unref(getKey)(node.item),
176
- class: vue.normalizeClass(["choose-item", node.checked ? "checked" : ""]),
185
+ class: vue.normalizeClass(["choose-item", node.selected ? "selected" : ""]),
177
186
  style: vue.normalizeStyle(vue.unref(snail_view.css).buildStyle(_ctx.itemStyle)),
187
+ title: node.item.text,
178
188
  onClick: $event => onItemClick(node)
179
189
  }, [vue.unref(mode) == "native" ? (vue.openBlock(), vue.createElementBlock("input", {
180
190
  key: 0,
181
- type: _ctx.type,
182
- checked: node.checked
191
+ type: vue.unref(type),
192
+ checked: node.selected
183
193
  }, null, 8, _hoisted_2$9)) : vue.unref(mode) == "beautiful" ? (vue.openBlock(), vue.createElementBlock("div", {
184
194
  key: 1,
185
- class: vue.normalizeClass(["item-beautiful", [_ctx.type, node.checked ? "item-checked" : "item-unchecked"]])
186
- }, [node.checked ? (vue.openBlock(), vue.createBlock(_sfc_main$t, {
195
+ class: vue.normalizeClass(["status", [node.selected ? "selected" : ""]])
196
+ }, [node.selected ? (vue.openBlock(), vue.createBlock(_sfc_main$t, {
187
197
  key: 0,
188
198
  type: "success",
189
199
  size: 12,
@@ -202,10 +212,6 @@
202
212
  }
203
213
  });
204
214
 
205
- var addLink = href => setTimeout(snail_view.link.register, 0, href);
206
-
207
- addLink("/styles/snail.vue.vue.css");
208
-
209
215
  const _hoisted_1$e = ["id"];
210
216
  var _sfc_main$r = vue.defineComponent({
211
217
  __name: "datepicker",
@@ -1,27 +1,25 @@
1
- /* src:base\choose.vue index:0 */
2
- .snail-choose{align-items:center;display:flex;flex-wrap:wrap;overflow-x:hidden}.snail-choose>div.choose-item{align-items:center;cursor:pointer;display:flex;flex-shrink:0;margin:0 8px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-choose>div.choose-item:first-child{margin-left:0}.snail-choose>div.choose-item:after{content:"";height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.snail-choose>div.choose-item>input::checkmark{background-color:#2196f3;border-color:#2196f3}.snail-choose>div.choose-item>div.item-beautiful{align-items:center;display:flex;flex-shrink:0;justify-content:center;overflow:hidden}.snail-choose>div.choose-item>div.item-beautiful.radio{border-radius:50%;height:16px;width:16px}.snail-choose>div.choose-item>div.item-beautiful.checkbox{height:14px;width:14px}.snail-choose>div.choose-item>div.item-beautiful.item-unchecked{border:1px solid #8a9099}.snail-choose>div.choose-item>div.item-beautiful.item-checked{background-color:#4c9aff;border:1px solid #4c9aff}.snail-choose>div.choose-item>span{margin-left:4px}.snail-choose>div.choose-item>span.item-des{color:#8a9099}.snail-choose.readonly>div.choose-item{cursor:auto}.snail-choose.readonly>div.choose-item>div.item-beautiful.item-unchecked{opacity:.5}.snail-choose.readonly>div.choose-item>div.item-beautiful.item-checked{background-color:#d5d7db;border-color:#d5d7db}
3
1
  /* src:base\button.vue index:0 */
4
2
  .snail-button{align-items:center;border-radius:2px;cursor:pointer;display:flex;display:inline-flex;justify-content:center;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.snail-button.max{height:40px;width:120px}.snail-button.middle{height:32px;width:90px}.snail-button.normal{height:28px;width:54px}.snail-button.small{height:20px;width:30px}.snail-button.primary{background-color:#5ca3ff;color:#fff}.snail-button.default{background-color:#fff;border:1px solid #dddfed;color:#2e2f33}.snail-button.link{color:#4c9aff}
5
- /* src:base\header.vue index:0 */
6
- .snail-header{align-items:center;background-color:#fff;display:flex;flex-shrink:0;position:relative;width:100%}.snail-header>.header-title{color:#2e3033;flex:1;line-height:48px;overflow:hidden;padding:0 30px;text-overflow:ellipsis;white-space:nowrap}.snail-header>.header-title.left{text-align:left}.snail-header>.header-title.center{text-align:center}.snail-header>.header-title.right{text-align:right}.snail-header.start-divider{border-bottom:1px solid #dddfed}.snail-header.page{height:48px}.snail-header.page>.header-title{font-size:16px;font-weight:bold}.snail-header.page>.close-icon{margin-right:18px}.snail-header.dialog{height:64px;padding-top:16px}.snail-header.dialog>.header-title{font-size:20px}.snail-header.dialog>.close-icon{position:absolute;right:8px;top:8px}
3
+ /* src:base\choose.vue index:0 */
4
+ .snail-choose>div.choose-item{align-items:center;display:flex;flex-shrink:0;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-choose>div.choose-item:not(.readonly){cursor:pointer}.snail-choose>div.choose-item>input::checkmark{background-color:#2196f3;border-color:#2196f3}.snail-choose>div.choose-item>span{margin-left:4px}.snail-choose>div.choose-item>span.item-des{color:#8a9099}.snail-choose>div.choose-item:after{content:"";height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.snail-choose.horizontal{align-items:center;display:flex;flex-wrap:wrap;overflow-x:hidden}.snail-choose.horizontal>div.choose-item{margin:0 8px}.snail-choose.horizontal>div.choose-item:first-child{margin-left:0}.snail-choose.vertical{display:flex;flex-direction:column;justify-content:center}.snail-choose.beautiful>.choose-item>.status{align-items:center;display:flex;flex-shrink:0;justify-content:center;overflow:hidden}.snail-choose.beautiful>.choose-item>.status.selected{background-color:#4c9aff;border:1px solid #4c9aff}.snail-choose.beautiful>.choose-item>.status:not(.selected){border:1px solid #8a9099}.snail-choose.beautiful.radio>.choose-item>.status{border-radius:50%;height:16px;width:16px}.snail-choose.beautiful.checkbox>.choose-item>.status{height:14px;width:14px}.snail-choose.beautiful.readonly>.choose-item>.status.selected{background-color:#d5d7db;border-color:#d5d7db}.snail-choose.beautiful.readonly>.choose-item>.status:not(.selected){opacity:.5}
7
5
  /* src:base\datepicker.vue index:0 */
8
6
  .snail-datepicker{height:100%;left:0;opacity:0;overflow:hidden;position:absolute;top:0;width:100%}
9
- /* src:base\icon.vue index:0 */
10
- .snail-icon{cursor:pointer;opacity:1}
11
7
  /* src:base\footer.vue index:0 */
12
8
  .snail-footer{align-items:center;background-color:#fff;display:flex;flex-shrink:0;height:72px;padding:0 40px;width:100%}.snail-footer>.snail-button:nth-child(n+2){margin-left:20px}.snail-footer.start-divider{border-top:1px solid #dddfed}.snail-footer.left{justify-content:flex-start}.snail-footer.center{justify-content:center}.snail-footer.right{justify-content:flex-end}
9
+ /* src:base\header.vue index:0 */
10
+ .snail-header{align-items:center;background-color:#fff;display:flex;flex-shrink:0;position:relative;width:100%}.snail-header>.header-title{color:#2e3033;flex:1;line-height:48px;overflow:hidden;padding:0 30px;text-overflow:ellipsis;white-space:nowrap}.snail-header>.header-title.left{text-align:left}.snail-header>.header-title.center{text-align:center}.snail-header>.header-title.right{text-align:right}.snail-header.start-divider{border-bottom:1px solid #dddfed}.snail-header.page{height:48px}.snail-header.page>.header-title{font-size:16px;font-weight:bold}.snail-header.page>.close-icon{margin-right:18px}.snail-header.dialog{height:64px;padding-top:16px}.snail-header.dialog>.header-title{font-size:20px}.snail-header.dialog>.close-icon{position:absolute;right:8px;top:8px}
11
+ /* src:base\icon.vue index:0 */
12
+ .snail-icon{cursor:pointer;opacity:1}
13
13
  /* src:base\select.vue index:0 */
14
- .snail-select{align-items:center;background-color:#fff;border:1px solid #dddfed;border-radius:4px;color:#2e3033;display:flex;height:32px;width:100%}.snail-select:not(.readonly,.empty){cursor:pointer}.snail-select>div.select-result{align-items:center;display:flex;flex:1;flex-wrap:nowrap;height:30px;overflow:hidden;padding:0 10px 0 6px}.snail-select>div.placeholder{flex:1;padding:0 10px 0 6px}.snail-select>svg.snail-icon{flex-shrink:0;margin-right:4px}.snail-select>div.no-items{flex:1;padding:0 8px}
15
- /* src:base\switch.vue index:0 */
16
- .snail-switch{border-radius:10px 10px 10px 10px;cursor:pointer;height:20px!important;overflow:hidden;position:relative;width:36px!important}.snail-switch>div{height:100%;width:100%}.snail-switch>div.on{background-color:#5ca3ff}.snail-switch>div.off{background-color:#c4c8cc;position:absolute;transition:left .2s ease}.snail-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.on>div.off{left:100%;top:0}.snail-switch.on>div.status{left:calc(100% - 18px)}.snail-switch.off>div.off{left:0;top:0}.snail-switch.off>div.status{left:2px}.snail-switch.readonly{cursor:not-allowed}
17
- /* src:container\fold.vue index:0 */
18
- .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-header>div.status>svg.snail-icon{transition:transform .2s ease}.snail-fold>div.fold-body{padding-left:20px}.snail-fold.expand>div.fold-header>div.status>svg.snail-icon{transform:rotate(-90deg)}.snail-fold.fold>div.fold-header>div.status>svg.snail-icon{transform:rotate(90deg)}
14
+ .snail-select{align-items:center;border:1px solid #dddfed;border-radius:4px;color:#2e3033;display:flex;height:32px;width:100%}.snail-select:not(.readonly){background-color:#fff}.snail-select:not(.readonly,.empty){cursor:pointer}.snail-select>div.select-result{align-items:center;display:flex;flex:1;flex-wrap:nowrap;height:30px;overflow:hidden;padding:0 10px 0 6px}.snail-select>div.placeholder{flex:1;padding:0 10px 0 6px}.snail-select>svg.snail-icon{flex-shrink:0;margin-right:4px}.snail-select>div.no-items{flex:1;padding:0 8px}
19
15
  /* src:base\search.vue index:0 */
20
16
  .snail-search{align-items:center;background:#fff;display:flex;flex-shrink:0;height:34px}.snail-search>input{border-radius:0!important;flex:1;height:100%}.snail-search>div{align-items:center;border:1px solid #dddfed;border-left:none;display:flex;flex-shrink:0;height:100%;justify-content:center;width:34px}
17
+ /* src:base\switch.vue index:0 */
18
+ .snail-switch{border-radius:10px 10px 10px 10px;cursor:pointer;height:20px!important;overflow:hidden;position:relative;width:36px!important}.snail-switch>div{height:100%;width:100%}.snail-switch>div.on{background-color:#5ca3ff}.snail-switch>div.off{background-color:#c4c8cc;position:absolute;transition:left .2s ease}.snail-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.on>div.off{left:100%;top:0}.snail-switch.on>div.status{left:calc(100% - 18px)}.snail-switch.off>div.off{left:0;top:0}.snail-switch.off>div.status{left:2px}.snail-switch.readonly{cursor:not-allowed}
21
19
  /* src:container\dynamic.vue index:0 */
22
20
  .snail-dynamic-error{color:red}.snail-dynamic-error>span{color:gray}
23
- /* src:container\layout.vue index:0 */
24
- .snail-layout{display:flex;height:100%;overflow:hidden;width:100%}.snail-layout>.layout-end,.snail-layout>.layout-start{flex-shrink:0}.snail-layout>.layout-body{flex:1}.snail-layout.horizontal{flex-direction:row}.snail-layout.horizontal>div{height:100%}.snail-layout.horizontal>.layout-end,.snail-layout.horizontal>.layout-start{width:-moz-fit-content;width:fit-content}.snail-layout.vertical{flex-direction:column}.snail-layout.vertical>div{width:100%}.snail-layout.vertical>.layout-end,.snail-layout.vertical>.layout-start{height:-moz-fit-content;height:fit-content}
21
+ /* src:container\fold.vue index:0 */
22
+ .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-header>div.status>svg.snail-icon{transition:transform .2s ease}.snail-fold>div.fold-body{padding-left:20px}.snail-fold.expand>div.fold-header>div.status>svg.snail-icon{transform:rotate(-90deg)}.snail-fold.fold>div.fold-header>div.status>svg.snail-icon{transform:rotate(90deg)}
25
23
  /* src:container\scroll.vue index:0 */
26
24
  .snail-scroll{overflow:hidden}.snail-scroll.scroll-x{overflow-x:auto}.snail-scroll.scroll-y{overflow-y:auto}
27
25
  /* src:container\sort.vue index:0 */
@@ -30,6 +28,8 @@
30
28
  .snail-table{display:flex;flex-direction:column}.snail-table>div.table-footer,.snail-table>div.table-header{align-items:center;display:flex;flex-shrink:0;width:100%}.snail-table>div.table-header{background-color:#fff;position:sticky!important;top:0;z-index:1}.snail-table>div.table-body{flex:1;width:100%}.snail-table.start-border>div.table-body>.table-row>.table-col:nth-child(n+2),.snail-table.start-border>div.table-footer>.table-col:nth-child(n+2),.snail-table.start-border>div.table-header>.table-col:nth-child(n+2){border-left:none!important}.snail-table.start-border>div.table-body>.table-row>.table-col,.snail-table.start-border>div.table-footer>.table-col{border-top:none!important}
31
29
  /* src:container\components\table-row.vue index:0 */
32
30
  .table-row{align-items:center;display:flex}
31
+ /* src:container\layout.vue index:0 */
32
+ .snail-layout{display:flex;height:100%;overflow:hidden;width:100%}.snail-layout>.layout-end,.snail-layout>.layout-start{flex-shrink:0}.snail-layout>.layout-body{flex:1}.snail-layout.horizontal{flex-direction:row}.snail-layout.horizontal>div{height:100%}.snail-layout.horizontal>.layout-end,.snail-layout.horizontal>.layout-start{width:-moz-fit-content;width:fit-content}.snail-layout.vertical{flex-direction:column}.snail-layout.vertical>div{width:100%}.snail-layout.vertical>.layout-end,.snail-layout.vertical>.layout-start{height:-moz-fit-content;height:fit-content}
33
33
  /* src:container\components\table-col.vue index:0 */
34
34
  .table-col{align-items:center;display:flex;height:100%;white-space:nowrap}.table-col.left{justify-content:flex-start}.table-col.center{justify-content:center}.table-col.right{justify-content:flex-end}
35
35
  /* src:container\tree.vue index:0 */
@@ -40,20 +40,20 @@
40
40
  .snail-input{display:inline-flex;min-height:34px}.snail-input>.input-title{flex-shrink:0;padding-top:6px}.snail-input>.input-title>span.text{color:#2e3033}.snail-input>.input-title>span.required{color:#f74b4b;margin-left:2px}.snail-input>.input-body{align-self:start;display:flex;flex:1;height:32px}.snail-input>.input-body>input{flex:1}.snail-input>.input-body>span{background-color:red;flex-shrink:0}
41
41
  /* src:prompt\drag-verify.vue index:0 */
42
42
  .snail-drag-verify{background:#f8f9fa;border:1px solid #dddfed;border-radius:8px;height:40px;overflow:hidden;position:relative;width:100%}.snail-drag-verify>div{height:100%;width:100%}.snail-drag-verify>.drag-progress{background-color:#0c6;transition:width .5s ease-in-out}.snail-drag-verify>.drag-handle,.snail-drag-verify>.verify-message{left:0;position:absolute;top:0;transition:left .5s ease-in-out}.snail-drag-verify>.verify-message{background-image:-webkit-linear-gradient(left,#666,#666 45%,#fff 50%,#666 55%,#666);-webkit-text-fill-color:transparent;align-items:center;animation:snail-drag-verify 2s linear infinite;-webkit-background-clip:text;background-clip:text;background-size:200% 100%;color:#7e848c;display:flex;font-size:12px;font-weight:400;justify-content:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-drag-verify>.drag-handle{align-items:center;background-color:#fff;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAnUExURQAAAGBQUGBaWmJZWWJYWGNYWGNZWWJYWGJZWWBYWGNYWGNZWWRYWIqwlb0AAAANdFJOUwAQMMDQoFBgcCCw4ECQ8pPMAAAAP0lEQVQI12NgwATTGBgawAwRBYZwMIPRiYErAcxSFmA0AjN4HBikBcCsUgYmQxQGE0wKphhIQrSzwAyEW4EOACHhB32zIad6AAAAAElFTkSuQmCC);background-position:50%;background-repeat:no-repeat;border-right:1px solid #dddfed;cursor:move;display:flex;justify-content:center;width:40px}.snail-drag-verify.dragging>.drag-handle,.snail-drag-verify.dragging>.drag-progress{transition:none!important}.snail-drag-verify.success>.verify-message{-webkit-text-fill-color:#fff;color:#fff}.snail-drag-verify.success>.drag-handle>svg{background:#76c61d;border-radius:50%;padding:4px}@keyframes snail-drag-verify{0%{background-position:0 0}to{background-position:-200% 0}}
43
- /* src:prompt\loading.vue index:0 */
44
- .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)}}.snail-loading-enter-active,.snail-loading-leave-active{transition:opacity .3s ease-in-out}.snail-loading-enter-from,.snail-loading-leave-to{opacity:0}
45
43
  /* src:prompt\empty.vue index:0 */
46
44
  .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}
47
- /* src:popup\components\confirm-container.vue index:0 */
48
- .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}
45
+ /* src:prompt\loading.vue index:0 */
46
+ .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)}}.snail-loading-enter-active,.snail-loading-leave-active{transition:opacity .3s ease-in-out}.snail-loading-enter-from,.snail-loading-leave-to{opacity:0}
49
47
  /* src:popup\components\toast-container.vue index:0 */
50
48
  .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}
49
+ /* src:popup\components\confirm-container.vue index:0 */
50
+ .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}
51
+ /* src:popup\components\follow-container.vue index:0 */
52
+ .snail-follow{background-color:#fff;display:inline-block;max-height:100%;max-width:100%;position:fixed;transition-duration:.1s;transition-property:left,top;transition-timing-function:ease}.snail-follow.initial{top:100%;transition:none}
51
53
  /* src:popup\components\dialog-container.vue index:0 */
52
54
  .snail-dialog{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%}.snail-dialog:before{background-color:rgba(24,27,33,.45);content:"";height:100%;opacity:1;position:absolute;transition:opacity .4s ease-in-out;width:100%}.snail-dialog>.dialog-body{background-color:#fff;border-radius:4px;box-shadow:0 0 15px rgba(0,0,0,.3);position:relative}.snail-dialog.unactive:before{opacity:0}.snail-dialog.unactive>.dialog-body{box-shadow:0 0 4px rgba(0,0,0,.3)}
53
55
  /* src:popup\components\popup-container.vue index:0 */
54
56
  .snail-popup{left:0;position:fixed;top:0}
55
- /* src:popup\components\follow-container.vue index:0 */
56
- .snail-follow{background-color:#fff;display:inline-block;max-height:100%;max-width:100%;position:fixed;transition-duration:.1s;transition-property:left,top;transition-timing-function:ease}.snail-follow.initial{top:100%;transition:none}
57
57
  /* src:container\components\tree-node.vue index:0 */
58
58
  .snail-tree-node{align-items:center;display:flex;flex-wrap:nowrap;height:40px;width:100%}.snail-tree-node:hover{background-color:#f8f9fa}.snail-tree-node>.indent,.snail-tree-node>.node-slot,.snail-tree-node>.snail-icon{flex-shrink:0}.snail-tree-node>.node-fold{align-items:center;display:flex;height:100%;justify-content:center;width:24px}.snail-tree-node>.node-fold>.snail-icon{transition:transform .1s ease-in}.snail-tree-node>.node-fold>.snail-icon.fold{transform:rotate(-90deg)}.snail-tree-node>.node-text{color:#2e3033;flex:1;min-width:30px}.snail-tree-node.clickable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.snail-tree-children{width:100%}.snail-tree-children.hidden{display:none;height:0;overflow:hidden}.snail-tree-node.level-1>.indent{padding-left:4px}.snail-tree-node.level-2>.indent{padding-left:24px}.snail-tree-node.level-3>.indent{padding-left:48px}.snail-tree-node.level-4>.indent{padding-left:72px}.snail-tree-node.level-5>.indent{padding-left:96px}.snail-tree-node.level-6>.indent{padding-left:120px}.snail-tree-node.level-7>.indent{padding-left:144px}.snail-tree-node.level-8>.indent{padding-left:168px}.snail-tree-node.level-9>.indent{padding-left:192px}.snail-tree-node.level-10>.indent{padding-left:216px}
59
59
  /* src:base\components\select-popup.vue index:0 */
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "依赖【snail】,基于vue封装常用UI组件",
4
4
  "author": "snail_dev@163.com",
5
5
  "license": "MIT",
6
- "version": "2.0.1",
6
+ "version": "2.0.3",
7
7
  "type": "module",
8
8
  "main": "dist/snail.vue.js",
9
9
  "module": "dist/snail.vue.js",
@@ -15,7 +15,7 @@
15
15
  "dependencies": {
16
16
  "vue": "^3.5.14",
17
17
  "snail.core": ">=2.0.16",
18
- "snail.view": ">=2.0.0",
18
+ "snail.view": ">=2.0.1",
19
19
  "sortablejs": ">=1.15.6",
20
20
  "zane-calendar": "2.2.8"
21
21
  },