vxe-pc-ui 4.4.23 → 4.4.25
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/es/form/src/form-config-item.js +2 -1
- package/es/form/src/form-group.js +2 -1
- package/es/form/src/form-item.js +2 -1
- package/es/form/src/form.js +5 -3
- package/es/form/src/render.js +8 -4
- package/es/form/src/util.js +2 -1
- package/es/icon/style.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table-select/src/table-select.js +19 -2
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/form/src/form-config-item.js +2 -1
- package/lib/form/src/form-config-item.min.js +1 -1
- package/lib/form/src/form-group.js +2 -1
- package/lib/form/src/form-group.min.js +1 -1
- package/lib/form/src/form-item.js +2 -1
- package/lib/form/src/form-item.min.js +1 -1
- package/lib/form/src/form.js +5 -3
- package/lib/form/src/form.min.js +1 -1
- package/lib/form/src/render.js +8 -4
- package/lib/form/src/render.min.js +1 -1
- package/lib/form/src/util.js +2 -1
- package/lib/form/src/util.min.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +33 -14
- package/lib/index.umd.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table-select/src/table-select.js +10 -2
- package/lib/table-select/src/table-select.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/form/src/form-config-item.ts +3 -1
- package/packages/form/src/form-group.ts +3 -1
- package/packages/form/src/form-item.ts +3 -1
- package/packages/form/src/form.ts +7 -3
- package/packages/form/src/render.ts +12 -4
- package/packages/form/src/util.ts +3 -1
- package/packages/table-select/src/table-select.ts +21 -1
- package/types/components/form.d.ts +1 -1
- package/types/components/table-select.d.ts +27 -2
- /package/es/icon/{iconfont.1742786108652.ttf → iconfont.1742881828559.ttf} +0 -0
- /package/es/icon/{iconfont.1742786108652.woff → iconfont.1742881828559.woff} +0 -0
- /package/es/icon/{iconfont.1742786108652.woff2 → iconfont.1742881828559.woff2} +0 -0
- /package/es/{iconfont.1742786108652.ttf → iconfont.1742881828559.ttf} +0 -0
- /package/es/{iconfont.1742786108652.woff → iconfont.1742881828559.woff} +0 -0
- /package/es/{iconfont.1742786108652.woff2 → iconfont.1742881828559.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1742786108652.ttf → iconfont.1742881828559.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1742786108652.woff → iconfont.1742881828559.woff} +0 -0
- /package/lib/icon/style/{iconfont.1742786108652.woff2 → iconfont.1742881828559.woff2} +0 -0
- /package/lib/{iconfont.1742786108652.ttf → iconfont.1742881828559.ttf} +0 -0
- /package/lib/{iconfont.1742786108652.woff → iconfont.1742881828559.woff} +0 -0
- /package/lib/{iconfont.1742786108652.woff2 → iconfont.1742881828559.woff2} +0 -0
|
@@ -2,6 +2,7 @@ import { defineComponent, ref, h, computed, inject, watch, provide, nextTick, Te
|
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import { VxeUI, getConfig, getIcon, globalEvents, getI18n, createEvent, useSize, renderEmptyElement } from '../../ui';
|
|
4
4
|
import { getEventTargetNode, getAbsolutePos, toCssUnit } from '../../ui/src/dom';
|
|
5
|
+
import { getOnName } from '../../ui/src/vn';
|
|
5
6
|
import { getLastZIndex, nextZIndex } from '../../ui/src/utils';
|
|
6
7
|
import { errLog } from '../../ui/src/log';
|
|
7
8
|
import VxeInputComponent from '../../input/src/input';
|
|
@@ -50,7 +51,11 @@ export default defineComponent({
|
|
|
50
51
|
'clear',
|
|
51
52
|
'blur',
|
|
52
53
|
'focus',
|
|
53
|
-
'click'
|
|
54
|
+
'click',
|
|
55
|
+
'form-submit',
|
|
56
|
+
'form-reset',
|
|
57
|
+
'form-collapse',
|
|
58
|
+
'page-change'
|
|
54
59
|
],
|
|
55
60
|
setup(props, context) {
|
|
56
61
|
const { emit, slots } = context;
|
|
@@ -177,6 +182,18 @@ export default defineComponent({
|
|
|
177
182
|
getRefMaps: () => refMaps,
|
|
178
183
|
getComputeMaps: () => computeMaps
|
|
179
184
|
};
|
|
185
|
+
const gridEventKeys = [
|
|
186
|
+
'form-submit',
|
|
187
|
+
'form-reset',
|
|
188
|
+
'form-collapse',
|
|
189
|
+
'page-change'
|
|
190
|
+
];
|
|
191
|
+
const gridEvents = {};
|
|
192
|
+
gridEventKeys.forEach(name => {
|
|
193
|
+
gridEvents[getOnName(XEUtils.camelCase(name))] = (params) => {
|
|
194
|
+
dispatchEvent(name, params, params.$event);
|
|
195
|
+
};
|
|
196
|
+
});
|
|
180
197
|
const dispatchEvent = (type, params, evnt) => {
|
|
181
198
|
emit(type, createEvent(evnt, { $tableSelect: $xeTableSelect }, params));
|
|
182
199
|
};
|
|
@@ -582,7 +599,7 @@ export default defineComponent({
|
|
|
582
599
|
style: popupWrapperStyle
|
|
583
600
|
}, [
|
|
584
601
|
VxeTableGridComponent
|
|
585
|
-
? h(VxeTableGridComponent, Object.assign(Object.assign({}, gridOpts), { class: 'vxe-table-select--grid', ref: refGrid, rowConfig: rowOpts, data: options, columns: tableColumns, height: '100%', autoResize: true, onRadioChange: radioChangeEvent, onCheckboxChange: checkboxChangeEvent, onCheckboxAll: checkboxAllEvent }), Object.assign({}, slots, {
|
|
602
|
+
? h(VxeTableGridComponent, Object.assign(Object.assign(Object.assign({}, gridOpts), gridEvents), { class: 'vxe-table-select--grid', ref: refGrid, rowConfig: rowOpts, data: options, columns: tableColumns, height: '100%', autoResize: true, onRadioChange: radioChangeEvent, onCheckboxChange: checkboxChangeEvent, onCheckboxAll: checkboxAllEvent }), Object.assign({}, slots, {
|
|
586
603
|
header: undefined,
|
|
587
604
|
footer: undefined,
|
|
588
605
|
prefixSlot: undefined
|
package/es/ui/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VxeUI, setConfig, setIcon } from '@vxe-ui/core';
|
|
2
2
|
import { dynamicApp } from '../dynamics';
|
|
3
3
|
import { warnLog } from './src/log';
|
|
4
|
-
export const version = "4.4.
|
|
4
|
+
export const version = "4.4.25";
|
|
5
5
|
VxeUI.uiVersion = version;
|
|
6
6
|
VxeUI.dynamicApp = dynamicApp;
|
|
7
7
|
export function config(options) {
|
package/es/ui/src/log.js
CHANGED
|
@@ -23,6 +23,7 @@ const VxeFormConfigItem = (0, _vue.defineComponent)({
|
|
|
23
23
|
(0, _vue.provide)('xeFormItemInfo', xeformiteminfo);
|
|
24
24
|
const renderItem = ($xeForm, item) => {
|
|
25
25
|
const formProps = $xeForm.props;
|
|
26
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
26
27
|
const {
|
|
27
28
|
data,
|
|
28
29
|
readonly,
|
|
@@ -47,7 +48,7 @@ const VxeFormConfigItem = (0, _vue.defineComponent)({
|
|
|
47
48
|
property: field,
|
|
48
49
|
item,
|
|
49
50
|
$form: $xeForm,
|
|
50
|
-
$grid: $
|
|
51
|
+
$grid: $xeGrid
|
|
51
52
|
};
|
|
52
53
|
const hasGroup = children && children.length > 0;
|
|
53
54
|
if (visible === false) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_render=require("./render"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const VxeFormConfigItem=(0,_vue.defineComponent)({name:"VxeFormConfigItem",props:{itemConfig:Object},setup(e){const t=(0,_vue.inject)("$xeForm",{});var r={itemConfig:e.itemConfig};(0,_vue.provide)("xeFormItemInfo",r);const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_render=require("./render"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const VxeFormConfigItem=(0,_vue.defineComponent)({name:"VxeFormConfigItem",props:{itemConfig:Object},setup(e){const t=(0,_vue.inject)("$xeForm",{});var r={itemConfig:e.itemConfig};(0,_vue.provide)("xeFormItemInfo",r);const f=(t,e)=>{var r=t.props,n=t.xeGrid,{data:r,readonly:i,disabled:o}=r,{visible:u,field:l,itemRender:d,contentStyle:s,children:m,showContent:a}=e,d=(0,_utils.isEnableConf)(d)?_ui.renderer.get(d.name):null,_=d?d.formItemStyle||d.itemStyle:null,d=d?d.formItemContentStyle||d.itemContentStyle:null,r={data:r,disabled:o,readonly:i,field:l,property:l,item:e,$form:t,$grid:n},o=m&&0<m.length;return!1===u?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{key:e.id,class:(0,_render.getItemClass)(t,e),style:_xeUtils.default.isFunction(_)?_(r):_},[(0,_render.renderTitle)(t,e),!1===a?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{class:(0,_render.getItemContentClass)(t,e),style:Object.assign({},_xeUtils.default.isFunction(d)?d(r):d,_xeUtils.default.isFunction(s)?s(r):s)},o?m.map(e=>f(t,e)):[(0,_render.renderItemContent)(t,e)])])};r={renderVN:()=>f(t,e.itemConfig)};return(0,_vue.provide)("$xeFormGroup",null),r},render(){return this.renderVN()}});var _default=exports.default=VxeFormConfigItem;
|
|
@@ -31,6 +31,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
31
31
|
(0, _vue.provide)('xeFormItemInfo', formItemInfo);
|
|
32
32
|
const renderVN = () => {
|
|
33
33
|
const formProps = $xeForm.props;
|
|
34
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
34
35
|
const item = formItem;
|
|
35
36
|
const {
|
|
36
37
|
data,
|
|
@@ -55,7 +56,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
55
56
|
property: field,
|
|
56
57
|
item,
|
|
57
58
|
$form: $xeForm,
|
|
58
|
-
$grid: $
|
|
59
|
+
$grid: $xeGrid
|
|
59
60
|
};
|
|
60
61
|
if (visible === false) {
|
|
61
62
|
return (0, _vue.createCommentVNode)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_util=require("./util"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_formItem=require("./form-item"),_render=require("./render"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeFormGroup",props:_formItem.formItemProps,setup(e,t){const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_util=require("./util"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_formItem=require("./form-item"),_render=require("./render"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_vue.defineComponent)({name:"VxeFormGroup",props:_formItem.formItemProps,setup(e,t){const _=t["slots"],a=(0,_vue.ref)(),v=(0,_vue.inject)("$xeForm",{}),r=(0,_vue.inject)("$xeFormGroup",null),f=(0,_vue.reactive)((0,_util.createItem)(v,e));f.slots=_,f.children=[];t={itemConfig:f},(0,_vue.provide)("xeFormItemInfo",t),t={formItem:f,renderVN:()=>{var e=v.props,t=v.xeGrid,r=f,{data:e,readonly:u,disabled:i}=e,{visible:l,field:n,itemRender:o,contentStyle:s}=r,o=(0,_utils.isEnableConf)(o)?_ui.renderer.get(o.name):null,d=o?o.formItemStyle||o.itemStyle:null,o=o?o.formItemContentStyle||o.itemContentStyle:null,m=_?_.default:null,e={data:e,disabled:i,readonly:u,field:n,property:n,item:r,$form:v,$grid:t};return!1===l?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:a,key:r.id,class:(0,_render.getItemClass)(v,r,!0),style:_xeUtils.default.isFunction(d)?d(e):d},[(0,_render.renderTitle)(v,r,!0),(0,_vue.h)("div",{class:(0,_render.getItemContentClass)(v,r,!0),style:Object.assign({},_xeUtils.default.isFunction(o)?o(e):o,_xeUtils.default.isFunction(s)?s(e):s)},m?m({}):[])])}};return(0,_util.watchItem)(e,f),(0,_vue.onMounted)(()=>{var e=a.value;(0,_util.assembleItem)(v,e,f,r)}),(0,_vue.onUnmounted)(()=>{(0,_util.destroyItem)(v,f)}),(0,_vue.provide)("$xeFormGroup",t),(0,_vue.provide)("$xeFormItem",null),t},render(){return this.renderVN()}});
|
|
@@ -107,6 +107,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
107
107
|
(0, _vue.provide)('xeFormItemInfo', formItemInfo);
|
|
108
108
|
const renderItem = ($xeForm, item) => {
|
|
109
109
|
const formProps = $xeForm.props;
|
|
110
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
110
111
|
const {
|
|
111
112
|
data,
|
|
112
113
|
readonly,
|
|
@@ -130,7 +131,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
130
131
|
property: field,
|
|
131
132
|
item,
|
|
132
133
|
$form: $xeForm,
|
|
133
|
-
$grid: $
|
|
134
|
+
$grid: $xeGrid
|
|
134
135
|
};
|
|
135
136
|
if (visible === false) {
|
|
136
137
|
return (0, _vue.createCommentVNode)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.formItemProps=exports.default=void 0;var _vue=require("vue"),_util=require("./util"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_render=require("./render"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const formItemProps=exports.formItemProps={title:String,field:String,span:{type:[String,Number],default:null},align:{type:String,default:null},verticalAlign:{type:String,default:null},titleBackground:{type:Boolean,default:null},titleBold:{type:Boolean,default:null},titleAlign:{type:String,default:null},titleWidth:{type:[String,Number],default:null},titleColon:{type:Boolean,default:null},titleAsterisk:{type:Boolean,default:null},showTitle:{type:Boolean,default:!0},vertical:{type:Boolean,default:null},padding:{type:Boolean,default:null},className:[String,Function],contentClassName:[String,Function],contentStyle:[Object,Function],titleClassName:[String,Function],titleStyle:[Object,Function],titleOverflow:{type:[Boolean,String],default:null},titlePrefix:Object,titleSuffix:Object,resetValue:{default:null},visibleMethod:Function,visible:{type:Boolean,default:null},showContent:{type:Boolean,default:null},folding:Boolean,collapseNode:Boolean,itemRender:Object,rules:Array};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeFormItem",props:formItemProps,setup(e,{slots:t}){const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.formItemProps=exports.default=void 0;var _vue=require("vue"),_util=require("./util"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_render=require("./render"),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const formItemProps=exports.formItemProps={title:String,field:String,span:{type:[String,Number],default:null},align:{type:String,default:null},verticalAlign:{type:String,default:null},titleBackground:{type:Boolean,default:null},titleBold:{type:Boolean,default:null},titleAlign:{type:String,default:null},titleWidth:{type:[String,Number],default:null},titleColon:{type:Boolean,default:null},titleAsterisk:{type:Boolean,default:null},showTitle:{type:Boolean,default:!0},vertical:{type:Boolean,default:null},padding:{type:Boolean,default:null},className:[String,Function],contentClassName:[String,Function],contentStyle:[Object,Function],titleClassName:[String,Function],titleStyle:[Object,Function],titleOverflow:{type:[Boolean,String],default:null},titlePrefix:Object,titleSuffix:Object,resetValue:{default:null},visibleMethod:Function,visible:{type:Boolean,default:null},showContent:{type:Boolean,default:null},folding:Boolean,collapseNode:Boolean,itemRender:Object,rules:Array};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeFormItem",props:formItemProps,setup(e,{slots:t}){const f=(0,_vue.ref)(),p=(0,_vue.inject)("$xeForm",{}),l=(0,_vue.inject)("$xeFormGroup",null),_=(0,_vue.reactive)((0,_util.createItem)(p,e));_.slots=t;t={itemConfig:_};(0,_vue.provide)("xeFormItemInfo",t);t={formItem:_,renderVN:()=>{var e,t,l,n,r,u,o,i,a,d,s=!!p&&p.props.customLayout,m=_;return s?(s=p,m=m,d=s.props,e=s.xeGrid,{data:d,readonly:t,disabled:l}=d,{visible:n,field:r,itemRender:a,contentStyle:u,showContent:o}=m,i=(a=(0,_utils.isEnableConf)(a)?_ui.renderer.get(a.name):null)?a.formItemStyle||a.itemStyle:null,a=a?a.formItemContentStyle||a.itemContentStyle:null,!(d={data:d,disabled:l,readonly:t,field:r,property:r,item:m,$form:s,$grid:e})===n?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{ref:f,key:m.id,class:(0,_render.getItemClass)(s,m),style:_xeUtils.default.isFunction(i)?i(d):i},[(0,_render.renderTitle)(s,m),!1===o?(0,_vue.createCommentVNode)():(0,_vue.h)("div",{class:(0,_render.getItemContentClass)(s,m),style:Object.assign({},_xeUtils.default.isFunction(a)?a(d):a,_xeUtils.default.isFunction(u)?u(d):u)},[(0,_render.renderItemContent)(s,m)])])):(0,_vue.h)("div",{ref:f})}};return(0,_util.watchItem)(e,_),(0,_vue.onMounted)(()=>{var e=f.value;(0,_util.assembleItem)(p,e,_,l)}),(0,_vue.onUnmounted)(()=>{(0,_util.destroyItem)(p,_)}),(0,_vue.provide)("$xeFormItem",t),(0,_vue.provide)("$xeFormGroup",null),t},render(){return this.renderVN()}});
|
package/lib/form/src/form.js
CHANGED
|
@@ -197,7 +197,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
197
197
|
props,
|
|
198
198
|
context,
|
|
199
199
|
reactData,
|
|
200
|
-
|
|
200
|
+
xeGrid: $xeGrid,
|
|
201
201
|
getRefMaps: () => refMaps,
|
|
202
202
|
getComputeMaps: () => computeMaps
|
|
203
203
|
};
|
|
@@ -293,6 +293,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
293
293
|
return (0, _vue.nextTick)();
|
|
294
294
|
};
|
|
295
295
|
const getResetValue = (item, data) => {
|
|
296
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
296
297
|
const {
|
|
297
298
|
field,
|
|
298
299
|
resetValue
|
|
@@ -304,7 +305,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
304
305
|
item,
|
|
305
306
|
data,
|
|
306
307
|
$form: $xeForm,
|
|
307
|
-
$grid: $
|
|
308
|
+
$grid: $xeGrid
|
|
308
309
|
});
|
|
309
310
|
} else if (resetValue === null) {
|
|
310
311
|
// 默认
|
|
@@ -315,6 +316,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
315
316
|
return resetValue;
|
|
316
317
|
};
|
|
317
318
|
const reset = () => {
|
|
319
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
318
320
|
const {
|
|
319
321
|
data
|
|
320
322
|
} = props;
|
|
@@ -335,7 +337,7 @@ var _default = exports.default = (0, _vue.defineComponent)({
|
|
|
335
337
|
property: field,
|
|
336
338
|
item,
|
|
337
339
|
$form: $xeForm,
|
|
338
|
-
$grid: $
|
|
340
|
+
$grid: $xeGrid
|
|
339
341
|
});
|
|
340
342
|
} else if (field) {
|
|
341
343
|
_xeUtils.default.set(data, field, getResetValue(item, data));
|
package/lib/form/src/form.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip")),_formConfigItem=_interopRequireDefault(require("./form-config-item")),_loading=_interopRequireDefault(require("../../loading/src/loading")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}class Rule{constructor(e){Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.min,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}get content(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}get message(){return this.content}}const validErrorRuleValue=(e,t)=>{var{type:e,min:i,max:l,pattern:r}=e,e="number"===e,o=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||!_xeUtils.default.eqNull(i)&&o<_xeUtils.default.toNumber(i)||!_xeUtils.default.eqNull(l)&&o>_xeUtils.default.toNumber(l)||!(!r||(_xeUtils.default.isRegExp(r)?r:new RegExp(r)).test(t))};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeForm",props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:()=>(0,_ui.getConfig)().form.size||(0,_ui.getConfig)().size},span:{type:[String,Number],default:()=>(0,_ui.getConfig)().form.span},align:{type:String,default:()=>(0,_ui.getConfig)().form.align},verticalAlign:{type:String,default:()=>(0,_ui.getConfig)().form.verticalAlign},border:{type:Boolean,default:()=>(0,_ui.getConfig)().form.border},titleBackground:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleBackground},titleBold:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleBold},titleAlign:{type:String,default:()=>(0,_ui.getConfig)().form.titleAlign},titleWidth:{type:[String,Number],default:()=>(0,_ui.getConfig)().form.titleWidth},titleColon:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleColon},titleAsterisk:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleAsterisk},titleOverflow:{type:[Boolean,String],default:()=>(0,_ui.getConfig)().form.titleOverflow},vertical:{type:Boolean,default:()=>(0,_ui.getConfig)().form.vertical},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().form.padding},className:[String,Function],readonly:Boolean,disabled:Boolean,items:Array,rules:Object,preventSubmit:{type:Boolean,default:()=>(0,_ui.getConfig)().form.preventSubmit},validConfig:Object,tooltipConfig:Object,collapseConfig:Object,customLayout:{type:Boolean,default:()=>(0,_ui.getConfig)().form.customLayout}},emits:["update:collapseStatus","collapse","toggle-collapse","submit","submit-invalid","reset"],setup(n,e){const{slots:d,emit:l}=e;var t=_xeUtils.default.uniqueId();const c=(0,_ui.useSize)(n)["computeSize"],m=(0,_vue.reactive)({collapseAll:n.collapseStatus,staticItems:[],formItems:[]}),f=(0,_vue.reactive)({meTimeout:void 0,stTimeout:void 0,tooltipStore:{item:null,visible:!1}}),u=((0,_vue.provide)("xeFormItemInfo",null),(0,_vue.inject)("$xeGrid",null)),g=(0,_vue.ref)(),v=(0,_vue.ref)();let i={};const p=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().form.validConfig,n.validConfig)),_=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tooltip,(0,_ui.getConfig)().form.tooltipConfig,n.tooltipConfig));var r=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().form.collapseConfig,n.collapseConfig));const o={refElem:g},a={computeSize:c,computeValidOpts:p,computeTooltipOpts:_,computeCollapseOpts:r},h={xID:t,props:n,context:e,reactData:m,xegrid:u,getRefMaps:()=>o,getComputeMaps:()=>a};const s=e=>(e.length&&"development"===process.env.NODE_ENV&&e.forEach(e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||d[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),m.staticItems=_xeUtils.default.mapTree(e,e=>(0,_util.createItem)(h,e),{children:"children"}),(0,_vue.nextTick)()),x=()=>{const t=[];return _xeUtils.default.eachTree(m.formItems,e=>{t.push(e)},{children:"children"}),t},y=t=>{var e=_xeUtils.default.findTree(m.formItems,e=>e.field===t,{children:"children"});return e?e.item:null},b=()=>m.collapseAll,C=()=>{var e=!b();return m.collapseAll=e,l("update:collapseStatus",e),(0,_vue.nextTick)()};const E=t=>{if(t){let e=t;(e=_xeUtils.default.isArray(t)?e:[t]).forEach(e=>{e&&(e=(0,_util.handleFieldOrItem)(h,e))&&(e.showError=!1)})}else x().forEach(e=>{e.showError=!1});return(0,_vue.nextTick)()},S=()=>{const r=n["data"];var e=x();return r&&e.forEach(e=>{var t,{field:i,itemRender:l}=e;(0,_utils.isEnableConf)(l)&&(t=(l=_ui.renderer.get(l.name))?l.formItemResetMethod||l.itemResetMethod:null,l&&t?t({data:r,field:i,property:i,item:e,$form:h,$grid:h.xegrid}):i&&_xeUtils.default.set(r,i,((e,t)=>{var{field:i,resetValue:l}=e,r=_xeUtils.default.get(t,i);return _xeUtils.default.isFunction(l)?l({field:i,item:e,data:t,$form:h,$grid:h.xegrid}):null===l&&_xeUtils.default.isArray(r)?[]:l})(e,r)))}),E()},U=e=>{e.preventDefault(),S(),i.dispatchEvent("reset",{data:n.data},e)},T=e=>{var i=g.value;if(i)for(let t=0;t<e.length;t++){var l=e[t],r=y(l);if(r&&(0,_utils.isEnableConf)(r.itemRender)){var o=r["itemRender"],a=_ui.renderer.get(o.name);t||(0,_dom.scrollToView)(i.querySelector("."+r.id));let e=null;o=o.autoFocus||o.autofocus||(a?a.formItemAutoFocus:null);if(_xeUtils.default.isFunction(o)?e=o({$form:h,$grid:u,item:r,data:n.data,field:l}):!0===o?e=i.querySelector(`.${r.id} input,textarea`):o&&(e=i.querySelector(`.${r.id} `+o)),e){e.focus();break}}}},I=(e,t,i)=>{const{data:f,rules:l}=n,r={};return _xeUtils.default.isArray(t)||(t=[t]),Promise.all(t.map(s=>{const n=[],d=[];if(s&&l){const c=_xeUtils.default.get(l,s);if(c){const m=_xeUtils.default.isUndefined(i)?_xeUtils.default.get(f,s):i;c.forEach(t=>{const{type:i,trigger:l,required:r,validator:o}=t;if("all"===e||!l||e===l)if(o){var a={itemValue:m,rule:t,rules:c,data:f,field:s,property:s,$form:h};let e;_xeUtils.default.isString(o)?(u=_ui.validators.get(o))?(u=u.formItemValidatorMethod||u.itemValidatorMethod)?e=u(a):"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.notValidators",[o]):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notValidators",[o]):e=o(a),e&&(_xeUtils.default.isError(e)?n.push(new Rule({type:"custom",trigger:l,content:e.message,rule:new Rule(t)})):e.catch&&d.push(e.catch(e=>{n.push(new Rule({type:"custom",trigger:l,content:e?e.message:t.content||t.message,rule:new Rule(t)}))})))}else{var u="array"===i,a=_xeUtils.default.isArray(m);let e=!0;e=u||a?!a||!m.length:_xeUtils.default.isString(m)?(0,_utils.eqEmptyValue)(m.trim()):(0,_utils.eqEmptyValue)(m),(r?e||validErrorRuleValue(t,m):!e&&validErrorRuleValue(t,m))&&n.push(new Rule(t))}})}}return Promise.all(d).then(()=>{n.length&&(r[s]=n.map(e=>({$form:h,rule:e,data:f,field:s,property:s})))})})).then(()=>{if(!_xeUtils.default.isEmpty(r))return Promise.reject(r)})},q=(t,e,i)=>{var{data:l,rules:r}=n;const o=p.value,a={},u=[],s=[];return clearTimeout(f.meTimeout),l&&r?(t.forEach(t=>{const i=t["field"];i&&!(0,_util.isHiddenItem)(h,t)&&(0,_util.isActiveItem)(h,t)&&s.push(I(e||"all",i).then(()=>{t.errRule=null}).catch(e=>{e=e[i];return a[i]||(a[i]=[]),a[i].push(e),u.push(i),t.errRule=e[0].rule,Promise.reject(e)}))}),Promise.all(s).then(()=>{i&&i()}).catch(()=>new Promise(e=>{f.meTimeout=setTimeout(()=>{t.forEach(e=>{e.errRule&&(e.showError=!0)})},20),!1!==o.autoPos&&(0,_vue.nextTick)(()=>{T(u)}),i?(i(a),e()):e(a)}))):(i&&i(),Promise.resolve())};const w=t=>{var e=n["readonly"];t.preventDefault(),n.preventSubmit||(E(),e?i.dispatchEvent("submit",{data:n.data},t):q(x()).then(e=>{e?i.dispatchEvent("submit-invalid",{data:n.data,errMap:e},t):i.dispatchEvent("submit",{data:n.data},t)}))},R=()=>{var e=f["tooltipStore"],t=v.value;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t)&&t.close(),(0,_vue.nextTick)()};const O=(e,i,t)=>i?I(e?["blur"].includes(e.type)?"blur":"change":"all",i,t).then(()=>{E(i)}).catch(e=>{var e=e[i],t=y(i);e&&t&&(t.showError=!0,t.errRule=e[0].rule)}):(0,_vue.nextTick)();i={dispatchEvent(e,t,i){l(e,(0,_ui.createEvent)(i,{$form:h,$grid:u},t))},reset:S,validate:e=>{var t=n["readonly"];return E(),t?(0,_vue.nextTick)():q(x(),"",e)},validateField:(e,t)=>{var i=n["readonly"];if(i)return(0,_vue.nextTick)();let l=[];return e&&(l=_xeUtils.default.isArray(e)?e:[e]),q(l.map(e=>(0,_util.handleFieldOrItem)(h,e)),"",t)},clearValidate:E,updateStatus:(e,t)=>{e=e.field;return O(new Event("change"),e,t)},toggleCollapse:C,getItems:x,getItemByField:y,closeTooltip:R};r={callSlot:(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=d[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],triggerItemEvent:O,toggleCollapseEvent:e=>{C();var t=b();i.dispatchEvent("toggle-collapse",{status:t,collapse:t,data:n.data},e),i.dispatchEvent("collapse",{status:t,collapse:t,data:n.data},e)},triggerTitleTipEvent:(e,t)=>{var t=t["item"],i=f["tooltipStore"],l=v.value,e=e.currentTarget.children[0],r=(e.textContent||"").trim(),o=e.scrollWidth>e.clientWidth;clearTimeout(f.stTimeout),i.item!==t&&R(),r&&o&&(Object.assign(i,{item:t,visible:!0}),l)&&l.open(e,r)},handleTitleTipLeaveEvent:()=>{var e=_.value;let t=v.value;t&&t.setActived(!1),e.enterable?f.stTimeout=setTimeout(()=>{(t=v.value)&&!t.isActived()&&R()},e.leaveDelay):R()}};Object.assign(h,i,r);const V=(0,_vue.ref)(0),N=((0,_vue.watch)(()=>m.staticItems.length,()=>{V.value++}),(0,_vue.watch)(()=>m.staticItems,()=>{V.value++}),(0,_vue.watch)(V,()=>{m.formItems=m.staticItems}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>n.items?n.items.length:-1,()=>{N.value++}),(0,_vue.watch)(()=>n.items,()=>{N.value++}),(0,_vue.watch)(N,()=>{s(n.items||[])}),(0,_vue.watch)(()=>n.collapseStatus,e=>{m.collapseAll=!!e}),(0,_vue.watch)(()=>n.readonly,()=>{E()}),(0,_vue.watch)(()=>n.disabled,()=>{E()}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{"development"===process.env.NODE_ENV&&n.customLayout&&n.items&&(0,_log.errLog)("vxe.error.errConflicts",["custom-layout","items"])})}),n.items&&s(n.items),(0,_vue.provide)("$xeForm",h),(0,_vue.provide)("$xeFormGroup",null),(0,_vue.provide)("$xeFormItem",null),h.renderVN=()=>{var{loading:e,border:t,className:i,data:l,customLayout:r}=n,o=m["formItems"],a=c.value,u=_.value,s=d.default;return(0,_vue.h)("form",{ref:g,class:["vxe-form",i?_xeUtils.default.isFunction(i)?i({items:o,data:l,$form:h}):i:"",{["size--"+a]:a,"is--border":t,"custom--layout":r,"is--loading":e}],onSubmit:w,onReset:U},[(0,_vue.h)("div",{class:"vxe-form--wrapper vxe-form--item-row"},r?s?s({}):[]:o.map((e,t)=>(0,_vue.h)(_formConfigItem.default,{key:t,itemConfig:e}))),(0,_vue.h)("div",{class:"vxe-form-slots",ref:"hideItem"},!r&&s?s({}):[]),(0,_vue.h)(_loading.default,{class:"vxe-form--loading",modelValue:e}),(0,_vue.h)(_tooltip.default,Object.assign({ref:v},u))])},h},render(){return this.renderVN()}});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip")),_formConfigItem=_interopRequireDefault(require("./form-config-item")),_loading=_interopRequireDefault(require("../../loading/src/loading")),_vn=require("../../ui/src/vn"),_log=require("../../ui/src/log");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}class Rule{constructor(e){Object.assign(this,{$options:e,required:e.required,min:e.min,max:e.min,type:e.type,pattern:e.pattern,validator:e.validator,trigger:e.trigger,maxWidth:e.maxWidth})}get content(){return(0,_utils.getFuncText)(this.$options.content||this.$options.message)}get message(){return this.content}}const validErrorRuleValue=(e,t)=>{var{type:e,min:i,max:l,pattern:r}=e,e="number"===e,o=e?_xeUtils.default.toNumber(t):_xeUtils.default.getSize(t);return!(!e||!isNaN(t))||!_xeUtils.default.eqNull(i)&&o<_xeUtils.default.toNumber(i)||!_xeUtils.default.eqNull(l)&&o>_xeUtils.default.toNumber(l)||!(!r||(_xeUtils.default.isRegExp(r)?r:new RegExp(r)).test(t))};var _default=exports.default=(0,_vue.defineComponent)({name:"VxeForm",props:{collapseStatus:{type:Boolean,default:!0},loading:Boolean,data:Object,size:{type:String,default:()=>(0,_ui.getConfig)().form.size||(0,_ui.getConfig)().size},span:{type:[String,Number],default:()=>(0,_ui.getConfig)().form.span},align:{type:String,default:()=>(0,_ui.getConfig)().form.align},verticalAlign:{type:String,default:()=>(0,_ui.getConfig)().form.verticalAlign},border:{type:Boolean,default:()=>(0,_ui.getConfig)().form.border},titleBackground:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleBackground},titleBold:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleBold},titleAlign:{type:String,default:()=>(0,_ui.getConfig)().form.titleAlign},titleWidth:{type:[String,Number],default:()=>(0,_ui.getConfig)().form.titleWidth},titleColon:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleColon},titleAsterisk:{type:Boolean,default:()=>(0,_ui.getConfig)().form.titleAsterisk},titleOverflow:{type:[Boolean,String],default:()=>(0,_ui.getConfig)().form.titleOverflow},vertical:{type:Boolean,default:()=>(0,_ui.getConfig)().form.vertical},padding:{type:Boolean,default:()=>(0,_ui.getConfig)().form.padding},className:[String,Function],readonly:Boolean,disabled:Boolean,items:Array,rules:Object,preventSubmit:{type:Boolean,default:()=>(0,_ui.getConfig)().form.preventSubmit},validConfig:Object,tooltipConfig:Object,collapseConfig:Object,customLayout:{type:Boolean,default:()=>(0,_ui.getConfig)().form.customLayout}},emits:["update:collapseStatus","collapse","toggle-collapse","submit","submit-invalid","reset"],setup(n,e){const{slots:d,emit:l}=e;var t=_xeUtils.default.uniqueId();const c=(0,_ui.useSize)(n)["computeSize"],m=(0,_vue.reactive)({collapseAll:n.collapseStatus,staticItems:[],formItems:[]}),f=(0,_vue.reactive)({meTimeout:void 0,stTimeout:void 0,tooltipStore:{item:null,visible:!1}}),u=((0,_vue.provide)("xeFormItemInfo",null),(0,_vue.inject)("$xeGrid",null)),v=(0,_vue.ref)(),g=(0,_vue.ref)();let i={};const p=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().form.validConfig,n.validConfig)),_=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().tooltip,(0,_ui.getConfig)().form.tooltipConfig,n.tooltipConfig));var r=(0,_vue.computed)(()=>Object.assign({},(0,_ui.getConfig)().form.collapseConfig,n.collapseConfig));const o={refElem:v},a={computeSize:c,computeValidOpts:p,computeTooltipOpts:_,computeCollapseOpts:r},h={xID:t,props:n,context:e,reactData:m,xeGrid:u,getRefMaps:()=>o,getComputeMaps:()=>a};const s=e=>(e.length&&"development"===process.env.NODE_ENV&&e.forEach(e=>{e.slots&&_xeUtils.default.each(e.slots,e=>{_xeUtils.default.isFunction(e)||d[e]||(0,_log.errLog)("vxe.error.notSlot",[e])})}),m.staticItems=_xeUtils.default.mapTree(e,e=>(0,_util.createItem)(h,e),{children:"children"}),(0,_vue.nextTick)()),x=()=>{const t=[];return _xeUtils.default.eachTree(m.formItems,e=>{t.push(e)},{children:"children"}),t},y=t=>{var e=_xeUtils.default.findTree(m.formItems,e=>e.field===t,{children:"children"});return e?e.item:null},b=()=>m.collapseAll,C=()=>{var e=!b();return m.collapseAll=e,l("update:collapseStatus",e),(0,_vue.nextTick)()};const E=t=>{if(t){let e=t;(e=_xeUtils.default.isArray(t)?e:[t]).forEach(e=>{e&&(e=(0,_util.handleFieldOrItem)(h,e))&&(e.showError=!1)})}else x().forEach(e=>{e.showError=!1});return(0,_vue.nextTick)()},S=()=>{const r=h.xeGrid,o=n["data"];var e=x();return o&&e.forEach(e=>{var t,{field:i,itemRender:l}=e;(0,_utils.isEnableConf)(l)&&(t=(l=_ui.renderer.get(l.name))?l.formItemResetMethod||l.itemResetMethod:null,l&&t?t({data:o,field:i,property:i,item:e,$form:h,$grid:r}):i&&_xeUtils.default.set(o,i,((e,t)=>{var i=h.xeGrid,{field:l,resetValue:r}=e,o=_xeUtils.default.get(t,l);return _xeUtils.default.isFunction(r)?r({field:l,item:e,data:t,$form:h,$grid:i}):null===r&&_xeUtils.default.isArray(o)?[]:r})(e,o)))}),E()},U=e=>{e.preventDefault(),S(),i.dispatchEvent("reset",{data:n.data},e)},T=e=>{var i=v.value;if(i)for(let t=0;t<e.length;t++){var l=e[t],r=y(l);if(r&&(0,_utils.isEnableConf)(r.itemRender)){var o=r["itemRender"],a=_ui.renderer.get(o.name);t||(0,_dom.scrollToView)(i.querySelector("."+r.id));let e=null;o=o.autoFocus||o.autofocus||(a?a.formItemAutoFocus:null);if(_xeUtils.default.isFunction(o)?e=o({$form:h,$grid:u,item:r,data:n.data,field:l}):!0===o?e=i.querySelector(`.${r.id} input,textarea`):o&&(e=i.querySelector(`.${r.id} `+o)),e){e.focus();break}}}},I=(e,t,i)=>{const{data:f,rules:l}=n,r={};return _xeUtils.default.isArray(t)||(t=[t]),Promise.all(t.map(s=>{const n=[],d=[];if(s&&l){const c=_xeUtils.default.get(l,s);if(c){const m=_xeUtils.default.isUndefined(i)?_xeUtils.default.get(f,s):i;c.forEach(t=>{const{type:i,trigger:l,required:r,validator:o}=t;if("all"===e||!l||e===l)if(o){var a={itemValue:m,rule:t,rules:c,data:f,field:s,property:s,$form:h};let e;_xeUtils.default.isString(o)?(u=_ui.validators.get(o))?(u=u.formItemValidatorMethod||u.itemValidatorMethod)?e=u(a):"development"===process.env.NODE_ENV&&(0,_log.warnLog)("vxe.error.notValidators",[o]):"development"===process.env.NODE_ENV&&(0,_log.errLog)("vxe.error.notValidators",[o]):e=o(a),e&&(_xeUtils.default.isError(e)?n.push(new Rule({type:"custom",trigger:l,content:e.message,rule:new Rule(t)})):e.catch&&d.push(e.catch(e=>{n.push(new Rule({type:"custom",trigger:l,content:e?e.message:t.content||t.message,rule:new Rule(t)}))})))}else{var u="array"===i,a=_xeUtils.default.isArray(m);let e=!0;e=u||a?!a||!m.length:_xeUtils.default.isString(m)?(0,_utils.eqEmptyValue)(m.trim()):(0,_utils.eqEmptyValue)(m),(r?e||validErrorRuleValue(t,m):!e&&validErrorRuleValue(t,m))&&n.push(new Rule(t))}})}}return Promise.all(d).then(()=>{n.length&&(r[s]=n.map(e=>({$form:h,rule:e,data:f,field:s,property:s})))})})).then(()=>{if(!_xeUtils.default.isEmpty(r))return Promise.reject(r)})},q=(t,e,i)=>{var{data:l,rules:r}=n;const o=p.value,a={},u=[],s=[];return clearTimeout(f.meTimeout),l&&r?(t.forEach(t=>{const i=t["field"];i&&!(0,_util.isHiddenItem)(h,t)&&(0,_util.isActiveItem)(h,t)&&s.push(I(e||"all",i).then(()=>{t.errRule=null}).catch(e=>{e=e[i];return a[i]||(a[i]=[]),a[i].push(e),u.push(i),t.errRule=e[0].rule,Promise.reject(e)}))}),Promise.all(s).then(()=>{i&&i()}).catch(()=>new Promise(e=>{f.meTimeout=setTimeout(()=>{t.forEach(e=>{e.errRule&&(e.showError=!0)})},20),!1!==o.autoPos&&(0,_vue.nextTick)(()=>{T(u)}),i?(i(a),e()):e(a)}))):(i&&i(),Promise.resolve())};const w=t=>{var e=n["readonly"];t.preventDefault(),n.preventSubmit||(E(),e?i.dispatchEvent("submit",{data:n.data},t):q(x()).then(e=>{e?i.dispatchEvent("submit-invalid",{data:n.data,errMap:e},t):i.dispatchEvent("submit",{data:n.data},t)}))},R=()=>{var e=f["tooltipStore"],t=g.value;return e.visible&&(Object.assign(e,{item:null,visible:!1}),t)&&t.close(),(0,_vue.nextTick)()};const O=(e,i,t)=>i?I(e?["blur"].includes(e.type)?"blur":"change":"all",i,t).then(()=>{E(i)}).catch(e=>{var e=e[i],t=y(i);e&&t&&(t.showError=!0,t.errRule=e[0].rule)}):(0,_vue.nextTick)();i={dispatchEvent(e,t,i){l(e,(0,_ui.createEvent)(i,{$form:h,$grid:u},t))},reset:S,validate:e=>{var t=n["readonly"];return E(),t?(0,_vue.nextTick)():q(x(),"",e)},validateField:(e,t)=>{var i=n["readonly"];if(i)return(0,_vue.nextTick)();let l=[];return e&&(l=_xeUtils.default.isArray(e)?e:[e]),q(l.map(e=>(0,_util.handleFieldOrItem)(h,e)),"",t)},clearValidate:E,updateStatus:(e,t)=>{e=e.field;return O(new Event("change"),e,t)},toggleCollapse:C,getItems:x,getItemByField:y,closeTooltip:R};r={callSlot:(e,t)=>e&&(_xeUtils.default.isString(e)&&(e=d[e]||null),_xeUtils.default.isFunction(e))?(0,_vn.getSlotVNs)(e(t)):[],triggerItemEvent:O,toggleCollapseEvent:e=>{C();var t=b();i.dispatchEvent("toggle-collapse",{status:t,collapse:t,data:n.data},e),i.dispatchEvent("collapse",{status:t,collapse:t,data:n.data},e)},triggerTitleTipEvent:(e,t)=>{var t=t["item"],i=f["tooltipStore"],l=g.value,e=e.currentTarget.children[0],r=(e.textContent||"").trim(),o=e.scrollWidth>e.clientWidth;clearTimeout(f.stTimeout),i.item!==t&&R(),r&&o&&(Object.assign(i,{item:t,visible:!0}),l)&&l.open(e,r)},handleTitleTipLeaveEvent:()=>{var e=_.value;let t=g.value;t&&t.setActived(!1),e.enterable?f.stTimeout=setTimeout(()=>{(t=g.value)&&!t.isActived()&&R()},e.leaveDelay):R()}};Object.assign(h,i,r);const V=(0,_vue.ref)(0),N=((0,_vue.watch)(()=>m.staticItems.length,()=>{V.value++}),(0,_vue.watch)(()=>m.staticItems,()=>{V.value++}),(0,_vue.watch)(V,()=>{m.formItems=m.staticItems}),(0,_vue.ref)(0));return(0,_vue.watch)(()=>n.items?n.items.length:-1,()=>{N.value++}),(0,_vue.watch)(()=>n.items,()=>{N.value++}),(0,_vue.watch)(N,()=>{s(n.items||[])}),(0,_vue.watch)(()=>n.collapseStatus,e=>{m.collapseAll=!!e}),(0,_vue.watch)(()=>n.readonly,()=>{E()}),(0,_vue.watch)(()=>n.disabled,()=>{E()}),(0,_vue.onMounted)(()=>{(0,_vue.nextTick)(()=>{"development"===process.env.NODE_ENV&&n.customLayout&&n.items&&(0,_log.errLog)("vxe.error.errConflicts",["custom-layout","items"])})}),n.items&&s(n.items),(0,_vue.provide)("$xeForm",h),(0,_vue.provide)("$xeFormGroup",null),(0,_vue.provide)("$xeFormItem",null),h.renderVN=()=>{var{loading:e,border:t,className:i,data:l,customLayout:r}=n,o=m["formItems"],a=c.value,u=_.value,s=d.default;return(0,_vue.h)("form",{ref:v,class:["vxe-form",i?_xeUtils.default.isFunction(i)?i({items:o,data:l,$form:h}):i:"",{["size--"+a]:a,"is--border":t,"custom--layout":r,"is--loading":e}],onSubmit:w,onReset:U},[(0,_vue.h)("div",{class:"vxe-form--wrapper vxe-form--item-row"},r?s?s({}):[]:o.map((e,t)=>(0,_vue.h)(_formConfigItem.default,{key:t,itemConfig:e}))),(0,_vue.h)("div",{class:"vxe-form-slots",ref:"hideItem"},!r&&s?s({}):[]),(0,_vue.h)(_loading.default,{class:"vxe-form--loading",modelValue:e}),(0,_vue.h)(_tooltip.default,Object.assign({ref:g},u))])},h},render(){return this.renderVN()}});
|
package/lib/form/src/render.js
CHANGED
|
@@ -34,6 +34,7 @@ function renderSuffixIcon(titleSuffix) {
|
|
|
34
34
|
const getItemClass = ($xeForm, item, isGroup) => {
|
|
35
35
|
const formProps = $xeForm.props;
|
|
36
36
|
const formReactData = $xeForm.reactData;
|
|
37
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
37
38
|
const {
|
|
38
39
|
data,
|
|
39
40
|
rules,
|
|
@@ -78,7 +79,7 @@ const getItemClass = ($xeForm, item, isGroup) => {
|
|
|
78
79
|
property: field,
|
|
79
80
|
item,
|
|
80
81
|
$form: $xeForm,
|
|
81
|
-
$grid: $
|
|
82
|
+
$grid: $xeGrid
|
|
82
83
|
};
|
|
83
84
|
const hasGroup = children && children.length > 0;
|
|
84
85
|
let isRequired = false;
|
|
@@ -108,6 +109,7 @@ const getItemClass = ($xeForm, item, isGroup) => {
|
|
|
108
109
|
exports.getItemClass = getItemClass;
|
|
109
110
|
const getItemContentClass = ($xeForm, item, isGroup) => {
|
|
110
111
|
const formProps = $xeForm.props;
|
|
112
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
111
113
|
const {
|
|
112
114
|
data,
|
|
113
115
|
readonly,
|
|
@@ -133,7 +135,7 @@ const getItemContentClass = ($xeForm, item, isGroup) => {
|
|
|
133
135
|
property: field,
|
|
134
136
|
item,
|
|
135
137
|
$form: $xeForm,
|
|
136
|
-
$grid: $
|
|
138
|
+
$grid: $xeGrid
|
|
137
139
|
};
|
|
138
140
|
const hasGroup = children && children.length > 0;
|
|
139
141
|
return [isGroup || hasGroup ? 'vxe-form--group-content vxe-form--item-row' : '', 'vxe-form--item-content', align ? `align--${align}` : '', verticalAlign ? `vertical-align--${verticalAlign}` : '', itemContentClassName ? _xeUtils.default.isFunction(itemContentClassName) ? itemContentClassName(params) : itemContentClassName : '', contentClassName ? _xeUtils.default.isFunction(contentClassName) ? contentClassName(params) : contentClassName : ''];
|
|
@@ -141,6 +143,7 @@ const getItemContentClass = ($xeForm, item, isGroup) => {
|
|
|
141
143
|
exports.getItemContentClass = getItemContentClass;
|
|
142
144
|
function renderTitle($xeForm, item, isGroup) {
|
|
143
145
|
const formProps = $xeForm.props;
|
|
146
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
144
147
|
const {
|
|
145
148
|
data,
|
|
146
149
|
readonly,
|
|
@@ -188,7 +191,7 @@ function renderTitle($xeForm, item, isGroup) {
|
|
|
188
191
|
property: field,
|
|
189
192
|
item,
|
|
190
193
|
$form: $xeForm,
|
|
191
|
-
$grid: $
|
|
194
|
+
$grid: $xeGrid
|
|
192
195
|
};
|
|
193
196
|
const titleSlot = slots ? slots.title : null;
|
|
194
197
|
const extraSlot = slots ? slots.extra : null;
|
|
@@ -237,6 +240,7 @@ function renderTitle($xeForm, item, isGroup) {
|
|
|
237
240
|
const renderItemContent = ($xeForm, item) => {
|
|
238
241
|
const formProps = $xeForm.props;
|
|
239
242
|
const formReactData = $xeForm.reactData;
|
|
243
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
240
244
|
const {
|
|
241
245
|
computeCollapseOpts,
|
|
242
246
|
computeValidOpts
|
|
@@ -269,7 +273,7 @@ const renderItemContent = ($xeForm, item) => {
|
|
|
269
273
|
property: field,
|
|
270
274
|
item,
|
|
271
275
|
$form: $xeForm,
|
|
272
|
-
$grid: $
|
|
276
|
+
$grid: $xeGrid
|
|
273
277
|
};
|
|
274
278
|
let contentVNs = [];
|
|
275
279
|
const rftContent = compConf ? compConf.renderFormItemContent || compConf.renderItemContent : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.renderItemContent=exports.getItemContentClass=exports.getItemClass=void 0,exports.renderTitle=renderTitle;var _vue=require("vue"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip")),_icon=_interopRequireDefault(require("../../icon/src/icon")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function renderPrefixIcon(e){return(0,_vue.h)("span",{class:"vxe-form--item-title-prefix"},[(0,_vue.h)(_icon.default,{class:e.icon||(0,_ui.getIcon)().FORM_PREFIX,status:e.iconStatus})])}function renderSuffixIcon(e){return(0,_vue.h)("span",{class:"vxe-form--item-title-suffix"},[(0,_vue.h)(_icon.default,{class:e.icon||(0,_ui.getIcon)().FORM_SUFFIX,status:e.iconStatus})])}const getItemClass=(e,t,l)=>{var{data:i,rules:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.renderItemContent=exports.getItemContentClass=exports.getItemClass=void 0,exports.renderTitle=renderTitle;var _vue=require("vue"),_ui=require("../../ui"),_utils=require("../../ui/src/utils"),_dom=require("../../ui/src/dom"),_vn=require("../../ui/src/vn"),_util=require("./util"),_tooltip=_interopRequireDefault(require("../../tooltip/src/tooltip")),_icon=_interopRequireDefault(require("../../icon/src/icon")),_xeUtils=_interopRequireDefault(require("xe-utils"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function renderPrefixIcon(e){return(0,_vue.h)("span",{class:"vxe-form--item-title-prefix"},[(0,_vue.h)(_icon.default,{class:e.icon||(0,_ui.getIcon)().FORM_PREFIX,status:e.iconStatus})])}function renderSuffixIcon(e){return(0,_vue.h)("span",{class:"vxe-form--item-title-suffix"},[(0,_vue.h)(_icon.default,{class:e.icon||(0,_ui.getIcon)().FORM_SUFFIX,status:e.iconStatus})])}const getItemClass=(e,t,l)=>{var i=e.props,n=e.reactData,s=e.xeGrid,{data:i,rules:r,readonly:o,disabled:a,span:u,titleBackground:d,titleBold:m,titleColon:c,titleAsterisk:f,vertical:v,padding:_}=i,n=n["collapseAll"],{folding:g,field:x,itemRender:p,showError:h,className:C,vertical:I,padding:N,children:q,showContent:b}=t,p=(0,_utils.isEnableConf)(p)?_ui.renderer.get(p.name):null,p=p?p.formItemClassName||p.itemClassName:"",u=t.span||u,_=_xeUtils.default.eqNull(N)?_:N,N=_xeUtils.default.eqNull(I)?v:I,v=_xeUtils.default.eqNull(t.titleBackground)?d:t.titleBackground,I=_xeUtils.default.eqNull(t.titleBold)?m:t.titleBold,d=_xeUtils.default.eqNull(t.titleColon)?c:t.titleColon,m=_xeUtils.default.eqNull(t.titleAsterisk)?f:t.titleAsterisk,c={data:i,disabled:a,readonly:o,field:x,property:x,item:t,$form:e,$grid:s},f=q&&0<q.length;let U=!1,F=!1;return!o&&r&&(i=r[x])&&i.length&&(F=!0,U=i.some(e=>e.required)),[l||f?"vxe-form--group":"","vxe-form--item",t.id,u?`vxe-form--item-col_${u} is--span`:"",C?_xeUtils.default.isFunction(C)?C(c):C:"",p?_xeUtils.default.isFunction(p)?p(c):p:"",{"is--colon":d,"is--tbg":v,"is--bold":I,"is--padding":_,"is--vertical":N,"is--asterisk":m,"hide--content":!1===b,"is--valid":F,"is--required":U,"is--hidden":g&&n,"is--active":(0,_util.isActiveItem)(e,t),"is--error":h}]},getItemContentClass=(exports.getItemClass=getItemClass,(e,t,l)=>{var i=e.props,n=e.xeGrid,{data:i,readonly:s,disabled:r,align:o,verticalAlign:a}=i,{field:u,itemRender:d,contentClassName:m,children:c}=t,d=(0,_utils.isEnableConf)(d)?_ui.renderer.get(d.name):null,d=d?d.formItemContentClassName||d.itemContentClassName:"",o=_xeUtils.default.eqNull(t.align)?o:t.align,a=_xeUtils.default.eqNull(t.verticalAlign)?a:t.verticalAlign,i={data:i,disabled:r,readonly:s,field:u,property:u,item:t,$form:e,$grid:n},r=c&&0<c.length;return[l||r?"vxe-form--group-content vxe-form--item-row":"","vxe-form--item-content",o?"align--"+o:"",a?"vertical-align--"+a:"",d?_xeUtils.default.isFunction(d)?d(i):d:"",m?_xeUtils.default.isFunction(m)?m(i):m:""]});function renderTitle(t,e,l){var i=t.props,n=t.xeGrid,{data:i,readonly:s,disabled:r,titleAlign:o,titleWidth:a,titleOverflow:u,vertical:d}=i;const{slots:m,title:c,field:f,itemRender:v,titleOverflow:_,vertical:g,showTitle:x,titleClassName:p,titleStyle:h,titlePrefix:C,titleSuffix:I,children:N,showContent:q}=e;var b=t.getComputeMaps()["computeTooltipOpts"],b=b.value,U=(0,_utils.isEnableConf)(v)?_ui.renderer.get(v.name):null,F=U?U.formItemTitleClassName||U.itemTitleClassName:"",O=U?U.formItemTitleStyle||U.itemTitleStyle:null,d=_xeUtils.default.eqNull(g)?d:g,o=_xeUtils.default.eqNull(e.titleAlign)?o:e.titleAlign,d=d?null:_xeUtils.default.eqNull(e.titleWidth)?a:e.titleWidth,a=_xeUtils.default.eqNull(_)?u:_,u="title"===a,T=!0===a||"tooltip"===a,a=u||T||"ellipsis"===a;const y={data:i,disabled:r,readonly:s,field:f,property:f,item:e,$form:t,$grid:n};var i=m?m.title:null,r=m?m.extra:null,s=!1!==x&&(c||i),n=N&&0<N.length,S=[],U=(C&&S.push(C.content||C.message?(0,_vue.h)(_tooltip.default,Object.assign(Object.assign(Object.assign({},b),C),{content:(0,_utils.getFuncText)(C.content||C.message)}),{default:()=>renderPrefixIcon(C)}):renderPrefixIcon(C)),U?U.renderFormItemTitle||U.renderItemTitle:null),i=(S.push((0,_vue.h)("span",{class:"vxe-form--item-title-label"},i?t.callSlot(i,y):U?(0,_vn.getSlotVNs)(U(v,y)):(0,_utils.getFuncText)(e.title))),[]),U=(I&&i.push(I.content||I.message?(0,_vue.h)(_tooltip.default,Object.assign(Object.assign(Object.assign({},b),I),{content:(0,_utils.getFuncText)(I.content||I.message)}),{default:()=>renderSuffixIcon(I)}):renderSuffixIcon(I)),T?{onMouseenter(e){t.triggerTitleTipEvent(e,y)},onMouseleave:t.handleTitleTipLeaveEvent}:{});return s?(0,_vue.h)("div",Object.assign({class:[l||n?"vxe-form--group-title":"","vxe-form--item-title",o?"align--"+o:"",a?"is--ellipsis":"",F?_xeUtils.default.isFunction(F)?F(y):F:"",p?_xeUtils.default.isFunction(p)?p(y):p:""],style:Object.assign({},_xeUtils.default.isFunction(O)?O(y):O,_xeUtils.default.isFunction(h)?h(y):h,d&&!1!==q?{width:(0,_dom.toCssUnit)(d)}:null),title:u?(0,_utils.getFuncText)(c):null},U),[(0,_vue.h)("div",{class:"vxe-form--item-title-content"},S),(0,_vue.h)("div",{class:"vxe-form--item-title-postfix"},i),r?(0,_vue.h)("div",{class:"vxe-form--item-title-extra"},t.callSlot(r,y)):(0,_vue.createCommentVNode)()]):(0,_vue.createCommentVNode)()}exports.getItemContentClass=getItemContentClass;const renderItemContent=(e,t)=>{var l=e.props,i=e.reactData,n=e.xeGrid,{computeCollapseOpts:s,computeValidOpts:r}=e.getComputeMaps(),{data:l,readonly:o,disabled:a}=l,i=i["collapseAll"],{slots:u,field:d,itemRender:m,collapseNode:c,errRule:f}=t,v=u?u.default:null,u=u?u.valid:null,s=s.value,r=r.value,_=(0,_utils.isEnableConf)(m)?_ui.renderer.get(m.name):null,a={data:l,disabled:a,readonly:o,field:d,property:d,item:t,$form:e,$grid:n};let g=[];o=_?_.renderFormItemContent||_.renderItemContent:null;return v?g=e.callSlot(v,a):o?g=(0,_vn.getSlotVNs)(o(m,a)):d&&(t=_xeUtils.default.get(l,d),g=[(0,_utils.eqEmptyValue)(t)?"":""+t]),c&&g.push((0,_vue.h)("div",{class:"vxe-form--item-trigger-node",onClick:e.toggleCollapseEvent},[(0,_vue.h)("span",{class:"vxe-form--item-trigger-text"},i?s.unfoldButtonText||(0,_ui.getI18n)("vxe.form.unfolding"):s.foldButtonText||(0,_ui.getI18n)("vxe.form.folding")),(0,_vue.h)("i",{class:["vxe-form--item-trigger-icon",i?s.foldIcon||(0,_ui.getIcon)().FORM_FOLDING:s.unfoldIcon||(0,_ui.getIcon)().FORM_UNFOLDING]})])),f&&r.showMessage&&(n=Object.assign(Object.assign({},a),{rule:f}),g.push((0,_vue.h)("div",{class:"vxe-form-item--valid-error-tip",style:f.maxWidth?{width:(0,_dom.toCssUnit)(f.maxWidth)}:null},[(0,_vue.h)("div",{class:"vxe-form-item--valid-error-wrapper vxe-form-item--valid-error-theme-"+(r.theme||"normal")},[u?e.callSlot(u,n):[(0,_vue.h)("span",{class:"vxe-form--item--valid-error-msg"},f.content||f.message)]])]))),(0,_vue.h)("div",{class:"vxe-form--item-inner"},g)};exports.renderItemContent=renderItemContent;
|
package/lib/form/src/util.js
CHANGED
|
@@ -43,6 +43,7 @@ function isHiddenItem($xeForm, formItem) {
|
|
|
43
43
|
return visible === false || folding && collapseAll;
|
|
44
44
|
}
|
|
45
45
|
function isActiveItem($xeForm, formItem) {
|
|
46
|
+
const $xeGrid = $xeForm.xeGrid;
|
|
46
47
|
let {
|
|
47
48
|
visibleMethod,
|
|
48
49
|
itemRender,
|
|
@@ -70,7 +71,7 @@ function isActiveItem($xeForm, formItem) {
|
|
|
70
71
|
property: field,
|
|
71
72
|
item: formItem,
|
|
72
73
|
$form: $xeForm,
|
|
73
|
-
$grid: $
|
|
74
|
+
$grid: $xeGrid
|
|
74
75
|
});
|
|
75
76
|
}
|
|
76
77
|
function watchItem(props, formItem) {
|
package/lib/form/src/util.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.assembleItem=assembleItem,exports.createItem=createItem,exports.destroyItem=destroyItem,exports.handleFieldOrItem=handleFieldOrItem,exports.isActiveItem=isActiveItem,exports.isFormItem=isFormItem,exports.isHiddenItem=isHiddenItem,exports.watchItem=watchItem;var _vue=require("vue"),_ui=require("../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_itemInfo=require("./itemInfo"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function isFormItem(e){return e instanceof _itemInfo.ItemInfo}function createItem(e,t){return isFormItem(t)?t:new _itemInfo.ItemInfo(e,t)}function handleFieldOrItem(e,t){return t?_xeUtils.default.isString(t)?e.getItemByField(t):t:null}function isHiddenItem(e,t){var e=e["reactData"],e=e["collapseAll"],{folding:t,visible:i}=t;return!1===i||t&&e}function isActiveItem(e,t){let{visibleMethod:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.assembleItem=assembleItem,exports.createItem=createItem,exports.destroyItem=destroyItem,exports.handleFieldOrItem=handleFieldOrItem,exports.isActiveItem=isActiveItem,exports.isFormItem=isFormItem,exports.isHiddenItem=isHiddenItem,exports.watchItem=watchItem;var _vue=require("vue"),_ui=require("../../ui"),_xeUtils=_interopRequireDefault(require("xe-utils")),_itemInfo=require("./itemInfo"),_utils=require("../../ui/src/utils");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function isFormItem(e){return e instanceof _itemInfo.ItemInfo}function createItem(e,t){return isFormItem(t)?t:new _itemInfo.ItemInfo(e,t)}function handleFieldOrItem(e,t){return t?_xeUtils.default.isString(t)?e.getItemByField(t):t:null}function isHiddenItem(e,t){var e=e["reactData"],e=e["collapseAll"],{folding:t,visible:i}=t;return!1===i||t&&e}function isActiveItem(e,t){var i,r=e.xeGrid;let{visibleMethod:s,itemRender:n,visible:l,field:m}=t;return!1===l?l:(i=(i=(0,_utils.isEnableConf)(n)?_ui.renderer.get(n.name):null)?i.formItemVisibleMethod||i.itemVisibleMethod:null,!(s=!s&&i?i:s)||(i=e.props["data"],s({data:i,field:m,property:m,item:t,$form:e,$grid:r})))}function watchItem(e,i){Object.keys(e).forEach(t=>{(0,_vue.watch)(()=>e[t],e=>{i.update(t,e)})})}function assembleItem(e,t,i,r){var s=e["reactData"],e=e.props["customLayout"],n=s["staticItems"];e?n.some(e=>e.id===i.id)||n.push(i):t&&(e=t.parentNode,r=(r=r?r.formItem:null)?r.children:n,e)&&(r.splice(_xeUtils.default.arrayIndexOf(e.children,t),0,i),s.staticItems=n.slice(0))}function destroyItem(e,t){var e=e["reactData"],i=e["staticItems"],r=_xeUtils.default.findIndexOf(i,e=>e.id===t.id);-1<r&&i.splice(r,1),e.staticItems=i.slice(0)}
|
package/lib/icon/style/style.css
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
@font-face {
|
|
6
6
|
font-family: "vxeiconfont";
|
|
7
|
-
src: url("data:application/x-font-woff2;charset=utf-8;base64,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") format("woff2"),url("./iconfont.1742786108652.woff") format("woff"),url("./iconfont.1742786108652.ttf") format("truetype");
|
|
7
|
+
src: url("data:application/x-font-woff2;charset=utf-8;base64,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") format("woff2"),url("./iconfont.1742881828559.woff") format("woff"),url("./iconfont.1742881828559.ttf") format("truetype");
|
|
8
8
|
}
|
|
9
9
|
@keyframes rollCircle {
|
|
10
10
|
0% {
|