ep-craft 0.1.26 → 0.1.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/date-picker/src/date-picker.js +38 -34
- package/dist/components/date-picker/src/props.js +19 -7
- package/dist/components/form/EpForm.vue.d.ts +61 -0
- package/dist/components/form/EpForm.vue.js +199 -0
- package/dist/components/form/EpForm2.vue.js +4 -0
- package/dist/components/form/index.d.ts +12 -2
- package/dist/components/form/index.js +9 -3
- package/dist/components/form/instance.d.ts +2 -0
- package/dist/components/form/src/form-item.d.ts +103 -0
- package/dist/components/form/src/form-item.js +91 -0
- package/dist/components/form/src/form-label-wrap.d.ts +11 -0
- package/dist/components/form/src/form-label-wrap.js +74 -0
- package/dist/components/form/src/form.d.ts +127 -0
- package/dist/components/form/src/form.js +112 -0
- package/dist/components/form/src/types.d.ts +48 -19
- package/dist/components/form/src/utils.d.ts +9 -0
- package/dist/components/form/src/utils.js +45 -0
- package/dist/components/form-item/EpFormItem.vue.d.ts +55 -0
- package/dist/components/form-item/EpFormItem.vue.js +257 -0
- package/dist/components/form-item/EpFormItem2.vue.js +4 -0
- package/dist/components/form-item/index.d.ts +5 -2
- package/dist/components/form-item/index.js +5 -3
- package/dist/components/form-item/instance.d.ts +2 -0
- package/dist/components/scrollbar/index.d.ts +1 -0
- package/dist/components/scrollbar/src/util.d.ts +40 -0
- package/dist/components/scrollbar/src/util.js +25 -0
- package/dist/components/select/select.vue.d.ts +9 -9
- package/dist/components/select/src/useSelect.d.ts +3 -3
- package/dist/components/select-v2/index.d.ts +6 -2
- package/dist/components/select-v2/index.js +7 -4
- package/dist/components/select-v2/src/defaults.d.ts +258 -0
- package/dist/components/select-v2/src/defaults.js +359 -0
- package/dist/components/select-v2/src/group-item.vue.d.ts +40 -0
- package/dist/components/select-v2/src/group-item.vue.js +13 -0
- package/dist/components/select-v2/src/group-item2.vue.js +33 -0
- package/dist/components/select-v2/src/option-item.vue.d.ts +66 -0
- package/dist/components/select-v2/src/option-item.vue.js +37 -0
- package/dist/components/select-v2/src/option-item2.vue.js +46 -0
- package/dist/components/select-v2/src/select-dropdown.d.ts +53 -0
- package/dist/components/select-v2/src/select-dropdown.js +209 -0
- package/dist/components/select-v2/src/select.types.d.ts +2 -1
- package/dist/components/select-v2/src/select.vue.d.ts +918 -0
- package/dist/components/select-v2/src/select.vue.js +388 -0
- package/dist/components/select-v2/src/select2.vue.js +86 -0
- package/dist/components/select-v2/src/token.d.ts +16 -0
- package/dist/components/select-v2/src/token.js +6 -0
- package/dist/components/select-v2/src/useAllowCreate.d.ts +8 -0
- package/dist/components/select-v2/src/useAllowCreate.js +64 -0
- package/dist/components/select-v2/src/useOption.d.ts +7 -0
- package/dist/components/select-v2/src/useOption.js +13 -0
- package/dist/components/select-v2/src/useProps.d.ts +2 -3
- package/dist/components/select-v2/src/useSelect.d.ts +129 -0
- package/dist/components/select-v2/src/useSelect.js +501 -0
- package/dist/components/time-picker/index.js +10 -11
- package/dist/components/time-picker/src/common/picker.vue.d.ts +131 -125
- package/dist/components/time-picker/src/common/picker.vue.js +163 -160
- package/dist/components/time-picker/src/common/props.d.ts +0 -1
- package/dist/components/time-picker/src/common/props.js +13 -14
- package/dist/components/time-picker/src/time-picker.d.ts +0 -3
- package/dist/components/virtual-list/index.d.ts +8 -0
- package/dist/components/virtual-list/src/builders/build-list.d.ts +187 -0
- package/dist/components/virtual-list/src/builders/build-list.js +363 -0
- package/dist/components/virtual-list/src/components/dynamic-size-list.d.ts +186 -0
- package/dist/components/virtual-list/src/components/dynamic-size-list.js +112 -0
- package/dist/components/virtual-list/src/components/fixed-size-list.d.ts +185 -0
- package/dist/components/virtual-list/src/components/fixed-size-list.js +68 -0
- package/dist/components/virtual-list/src/components/scrollbar.d.ts +79 -0
- package/dist/components/virtual-list/src/components/scrollbar.js +134 -0
- package/dist/components/virtual-list/src/defaults.d.ts +27 -0
- package/dist/components/virtual-list/src/defaults.js +26 -0
- package/dist/components/virtual-list/src/hooks/use-cache.d.ts +1 -0
- package/dist/components/virtual-list/src/hooks/use-cache.js +13 -0
- package/dist/components/virtual-list/src/hooks/use-wheel.d.ts +13 -0
- package/dist/components/virtual-list/src/hooks/use-wheel.js +26 -0
- package/dist/components/virtual-list/src/props.d.ts +211 -0
- package/dist/components/virtual-list/src/props.js +151 -0
- package/dist/components/virtual-list/src/types.d.ts +152 -0
- package/dist/components/virtual-list/src/utils.d.ts +16 -0
- package/dist/components/virtual-list/src/utils.js +22 -0
- package/dist/hooks/use-float-label/index.d.ts +6 -2
- package/dist/hooks/use-float-label/index.js +11 -7
- package/dist/index.css +1 -1
- package/dist/utils/objects.js +11 -3
- package/dist/vendored-components.d.ts +1 -1
- package/dist/vendored-components.js +1 -0
- package/package.json +3 -1
- package/theme-chalk/src/float-label.scss +57 -0
package/dist/utils/objects.js
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
|
-
import "lodash-unified";
|
|
1
|
+
import { set as s, get as n } from "lodash-unified";
|
|
2
2
|
import { hasOwn as p } from "@vue/shared";
|
|
3
|
-
const
|
|
3
|
+
const c = (e) => Object.keys(e), f = (e, t, r) => ({
|
|
4
|
+
get value() {
|
|
5
|
+
return n(e, t, r);
|
|
6
|
+
},
|
|
7
|
+
set value(o) {
|
|
8
|
+
s(e, t, o);
|
|
9
|
+
}
|
|
10
|
+
});
|
|
4
11
|
export {
|
|
12
|
+
f as getProp,
|
|
5
13
|
p as hasOwn,
|
|
6
|
-
|
|
14
|
+
c as keysOf
|
|
7
15
|
};
|
|
@@ -11,6 +11,6 @@
|
|
|
11
11
|
* 2. 横切组件(icon/tooltip/collapse-transition/popper)由 vendor-cross-cutting
|
|
12
12
|
* vendor 到本地,同样需跳过 gen 包装以免被覆盖为 wrapper。
|
|
13
13
|
*/
|
|
14
|
-
export declare const vendoredComponents: readonly ["Affix", "Alert", "Anchor", "AnchorLink", "Button", "CheckTag", "Tag", "Menu", "MenuItem", "MenuItemGroup", "SubMenu", "Tabs", "TabPane", "Radio", "RadioButton", "RadioGroup", "Input", "Option", "OptionGroup", "Select", "DatePicker", "DatePickerPanel", "TimePicker", "CollapseTransition", "Form", "Icon", "Popper", "Tooltip", "Scrollbar"];
|
|
14
|
+
export declare const vendoredComponents: readonly ["Affix", "Alert", "Anchor", "AnchorLink", "Button", "CheckTag", "Tag", "Menu", "MenuItem", "MenuItemGroup", "SubMenu", "Tabs", "TabPane", "Radio", "RadioButton", "RadioGroup", "Input", "Option", "OptionGroup", "Select", "SelectV2", "DatePicker", "DatePickerPanel", "TimePicker", "CollapseTransition", "Form", "Icon", "Popper", "Tooltip", "Scrollbar"];
|
|
15
15
|
export type VendoredComponentName = (typeof vendoredComponents)[number];
|
|
16
16
|
export declare const isVendored: (name: string) => boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ep-craft",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.28",
|
|
4
4
|
"description": "A Vue 3 component library based on element-plus with ep- prefix",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/ep-craft.js",
|
|
@@ -65,10 +65,12 @@
|
|
|
65
65
|
"@popperjs/core": "npm:@sxzz/popperjs-es@^2.11.8",
|
|
66
66
|
"@vue/shared": "^3.5.40",
|
|
67
67
|
"@vueuse/core": "14.3.0",
|
|
68
|
+
"async-validator": "^4.2.5",
|
|
68
69
|
"csstype": "^3.2.3",
|
|
69
70
|
"dayjs": "^1.11.20",
|
|
70
71
|
"element-plus": "^2.9.0",
|
|
71
72
|
"lodash-unified": "^1.0.3",
|
|
73
|
+
"memoize-one": "^6.0.0",
|
|
72
74
|
"normalize-wheel-es": "^1.2.0",
|
|
73
75
|
"vue-component-type-helpers": "^3.3.5"
|
|
74
76
|
},
|
|
@@ -50,6 +50,12 @@ $float-label-scale: 0.75 !default;
|
|
|
50
50
|
margin-left: -4px;
|
|
51
51
|
background-color: getCssVar('fill-color', 'blank');
|
|
52
52
|
}
|
|
53
|
+
|
|
54
|
+
// 休息态且有值(仅禁用/只读 + 有值可达,见 useFloatLabel):label 与内容文本同位重叠,隐藏之。
|
|
55
|
+
// 用 opacity 而非 display,使禁用态被清空/赋值时仍有淡入淡出,不产生跳变。
|
|
56
|
+
&.is-hidden {
|
|
57
|
+
opacity: 0;
|
|
58
|
+
}
|
|
53
59
|
}
|
|
54
60
|
|
|
55
61
|
// input(非 textarea):label 位于 wrapper 内,需将 wrapper 设为定位上下文
|
|
@@ -98,6 +104,57 @@ $float-label-scale: 0.75 !default;
|
|
|
98
104
|
}
|
|
99
105
|
}
|
|
100
106
|
|
|
107
|
+
// input 有 prefix(图标或自定义前缀)时,输入文本起点被右移,label 必须同步右移,否则会压在图标上。
|
|
108
|
+
// 文本起点 = wrapper 水平内边距 + 图标宽 + 图标右间距:
|
|
109
|
+
// - wrapper 水平内边距:$input-padding-horizontal - $border-width(12-1 / 16-1 / 8-1)
|
|
110
|
+
// - 图标宽:1em(.el-icon { width: 1em; font-size: inherit }),随尺寸档位为 14px / 12px
|
|
111
|
+
// - 图标右间距:8px(.el-input__prefix-inner > :last-child { margin-right: 8px })
|
|
112
|
+
// label 自身 font-size 与 .el-input 根一致(default/large 14px、small 12px),故 1em 自动跟随
|
|
113
|
+
// 图标宽度与尺寸档位;三档尺寸仅需替换内边距基数。
|
|
114
|
+
//
|
|
115
|
+
// 作用域限定为「.el-input__wrapper 内的 label」,即 EpInput 自绘的浮标。date-picker 单值形态的
|
|
116
|
+
// 浮标是经 EpInput 默认插槽注入到 .el-input 根的直接子节点(不在 wrapper 内),由下文
|
|
117
|
+
// .el-date-editor 规则单独处理,两者互不干扰——请勿把选择器放宽为 `.el-input--prefix .el-float-label`。
|
|
118
|
+
//
|
|
119
|
+
// 注意:本规则特异性为 (0,3,0),高于上文 .el-input--large/.el-input--small 的 (0,2,0),
|
|
120
|
+
// 故三档尺寸必须各自成条,不能合并为一条通用规则(否则 large/small 的内边距基数会被覆盖)。
|
|
121
|
+
//
|
|
122
|
+
// 局限:仅按「一个图标宽 + 8px」估算。prefix 插槽若塞入非图标内容(如自定义文本/多图标),
|
|
123
|
+
// 实际宽度不同,label 仍可能偏左;此场景需使用方自行覆盖 left。
|
|
124
|
+
.#{$namespace}-input--prefix
|
|
125
|
+
> .#{$namespace}-input__wrapper
|
|
126
|
+
> .#{$namespace}-float-label {
|
|
127
|
+
left: calc(
|
|
128
|
+
#{map.get($input-padding-horizontal, 'default') - $border-width} + 1em + 8px
|
|
129
|
+
);
|
|
130
|
+
max-width: calc(
|
|
131
|
+
100% - #{2 * (map.get($input-padding-horizontal, 'default') - $border-width)} - 1em -
|
|
132
|
+
8px
|
|
133
|
+
);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.#{$namespace}-input--large.#{$namespace}-input--prefix
|
|
137
|
+
> .#{$namespace}-input__wrapper
|
|
138
|
+
> .#{$namespace}-float-label {
|
|
139
|
+
left: calc(
|
|
140
|
+
#{map.get($input-padding-horizontal, 'large') - $border-width} + 1em + 8px
|
|
141
|
+
);
|
|
142
|
+
max-width: calc(
|
|
143
|
+
100% - #{2 * (map.get($input-padding-horizontal, 'large') - $border-width)} - 1em - 8px
|
|
144
|
+
);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.#{$namespace}-input--small.#{$namespace}-input--prefix
|
|
148
|
+
> .#{$namespace}-input__wrapper
|
|
149
|
+
> .#{$namespace}-float-label {
|
|
150
|
+
left: calc(
|
|
151
|
+
#{map.get($input-padding-horizontal, 'small') - $border-width} + 1em + 8px
|
|
152
|
+
);
|
|
153
|
+
max-width: calc(
|
|
154
|
+
100% - #{2 * (map.get($input-padding-horizontal, 'small') - $border-width)} - 1em - 8px
|
|
155
|
+
);
|
|
156
|
+
}
|
|
157
|
+
|
|
101
158
|
// 尺寸适配:select 的水平对齐
|
|
102
159
|
.#{$namespace}-select--large {
|
|
103
160
|
.#{$namespace}-float-label {
|