@vtx/components 2.4.1 → 2.5.2
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/CHANGELOG.md +110 -0
- package/lib/vtx-datagrid/Alert.js +45 -0
- package/lib/vtx-datagrid/Alert.js.map +1 -0
- package/lib/vtx-datagrid/index.js +63 -17
- package/lib/vtx-datagrid/index.js.map +1 -1
- package/lib/vtx-datagrid/style/css.js +4 -0
- package/lib/vtx-datagrid/style/css.js.map +1 -1
- package/lib/vtx-datagrid/style/index.css +22 -1
- package/lib/vtx-datagrid/style/index.js +4 -0
- package/lib/vtx-datagrid/style/index.js.map +1 -1
- package/lib/vtx-datagrid/style/index.less +25 -1
- package/lib/vtx-form-layout/Card.js +83 -0
- package/lib/vtx-form-layout/Card.js.map +1 -0
- package/lib/vtx-form-layout/Divider.js +22 -0
- package/lib/vtx-form-layout/Divider.js.map +1 -0
- package/lib/vtx-form-layout/FormItem.js +26 -12
- package/lib/vtx-form-layout/FormItem.js.map +1 -1
- package/lib/vtx-form-layout/Pane.js +34 -0
- package/lib/vtx-form-layout/Pane.js.map +1 -0
- package/lib/vtx-form-layout/Row.js +25 -0
- package/lib/vtx-form-layout/Row.js.map +1 -0
- package/lib/vtx-form-layout/demo/Modal.css +42 -0
- package/lib/vtx-form-layout/demo/Modal.less +41 -0
- package/lib/vtx-form-layout/index.js +30 -7
- package/lib/vtx-form-layout/index.js.map +1 -1
- package/lib/vtx-form-layout/style/css.js +4 -0
- package/lib/vtx-form-layout/style/css.js.map +1 -1
- package/lib/vtx-form-layout/style/index.css +126 -0
- package/lib/vtx-form-layout/style/index.js +4 -0
- package/lib/vtx-form-layout/style/index.js.map +1 -1
- package/lib/vtx-form-layout/style/index.less +140 -0
- package/lib/vtx-image/Preview.js +3 -0
- package/lib/vtx-image/Preview.js.map +1 -1
- package/lib/vtx-input/index.js +13 -2
- package/lib/vtx-input/index.js.map +1 -1
- package/lib/vtx-input/style/index.css +7 -1
- package/lib/vtx-input/style/index.less +5 -1
- package/lib/vtx-modal/Title.js +32 -0
- package/lib/vtx-modal/Title.js.map +1 -0
- package/lib/vtx-modal/index.js +10 -0
- package/lib/vtx-modal/index.js.map +1 -1
- package/lib/vtx-modal/style/index.css +11 -0
- package/lib/vtx-modal/style/index.less +16 -0
- package/lib/vtx-page-layout/Basic.js +0 -1
- package/lib/vtx-page-layout/Basic.js.map +1 -1
- package/lib/vtx-page-layout/Pane.js +50 -0
- package/lib/vtx-page-layout/Pane.js.map +1 -0
- package/lib/vtx-page-layout/TableLayout.js +165 -0
- package/lib/vtx-page-layout/TableLayout.js.map +1 -0
- package/lib/vtx-page-layout/index.js +6 -0
- package/lib/vtx-page-layout/index.js.map +1 -1
- package/lib/vtx-page-layout/style/index.css +52 -3
- package/lib/vtx-page-layout/style/index.less +55 -1
- package/lib/vtx-rps-frame/index.js +1 -1
- package/lib/vtx-rps-frame/index.js.map +1 -1
- package/lib/vtx-scrollable-row/index.js +227 -0
- package/lib/vtx-scrollable-row/index.js.map +1 -0
- package/lib/vtx-scrollable-row/style/css.js +6 -0
- package/lib/vtx-scrollable-row/style/css.js.map +1 -0
- package/lib/vtx-scrollable-row/style/index.css +111 -0
- package/lib/vtx-scrollable-row/style/index.js +6 -0
- package/lib/vtx-scrollable-row/style/index.js.map +1 -0
- package/lib/vtx-scrollable-row/style/index.less +111 -0
- package/lib/vtx-search/VtxCol.js +2 -2
- package/lib/vtx-search/VtxCol.js.map +1 -1
- package/lib/vtx-search/VtxRow.js +6 -3
- package/lib/vtx-search/VtxRow.js.map +1 -1
- package/lib/vtx-search/index.js +42 -38
- package/lib/vtx-search/index.js.map +1 -1
- package/lib/vtx-search/style/css.js +2 -0
- package/lib/vtx-search/style/css.js.map +1 -1
- package/lib/vtx-search/style/index.css +25 -24
- package/lib/vtx-search/style/index.js +2 -0
- package/lib/vtx-search/style/index.js.map +1 -1
- package/lib/vtx-search/style/index.less +27 -25
- package/lib/vtx-select/index.js +2 -1
- package/lib/vtx-select/index.js.map +1 -1
- package/lib/vtx-split-pane/SplitPane.js +1 -0
- package/lib/vtx-split-pane/SplitPane.js.map +1 -1
- package/lib/vtx-statistics-column/Back.js +29 -0
- package/lib/vtx-statistics-column/Back.js.map +1 -0
- package/lib/vtx-statistics-column/Item.js +68 -0
- package/lib/vtx-statistics-column/Item.js.map +1 -0
- package/lib/vtx-statistics-column/Total.js +68 -0
- package/lib/vtx-statistics-column/Total.js.map +1 -0
- package/lib/vtx-statistics-column/context.js +12 -0
- package/lib/vtx-statistics-column/context.js.map +1 -0
- package/lib/vtx-statistics-column/index.js +63 -0
- package/lib/vtx-statistics-column/index.js.map +1 -0
- package/lib/vtx-statistics-column/style/css.js +4 -0
- package/lib/vtx-statistics-column/style/css.js.map +1 -0
- package/lib/vtx-statistics-column/style/index.css +55 -0
- package/lib/vtx-statistics-column/style/index.js +4 -0
- package/lib/vtx-statistics-column/style/index.js.map +1 -0
- package/lib/vtx-statistics-column/style/index.less +61 -0
- package/lib/vtx-upload/index.js +3 -3
- package/lib/vtx-upload/index.js.map +1 -1
- package/lib/vtx-ztree/style/index.css +5 -5
- package/lib/vtx-ztree/style/index.less +5 -5
- package/lib/vtx-ztree-select/index.js +4 -8
- package/lib/vtx-ztree-select/index.js.map +1 -1
- package/lib/vtx-ztree-select/style/index.css +20 -1
- package/lib/vtx-ztree-select/style/index.less +28 -2
- package/package.json +3 -2
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
.vtx-search {
|
|
2
|
-
position:
|
|
3
|
-
top: 0;
|
|
4
|
-
right: 0;
|
|
5
|
-
left: 0;
|
|
2
|
+
position: relative;
|
|
6
3
|
z-index: 1000;
|
|
7
|
-
padding-top:
|
|
8
|
-
padding-right:
|
|
9
|
-
padding-bottom:
|
|
10
|
-
padding-left:
|
|
4
|
+
padding-top: 8px;
|
|
5
|
+
padding-right: 24px;
|
|
6
|
+
padding-bottom: 8px;
|
|
7
|
+
padding-left: 24px;
|
|
11
8
|
overflow: hidden;
|
|
12
9
|
background: #ffffff;
|
|
13
10
|
-webkit-transition-duration: 0.3s;
|
|
@@ -18,7 +15,7 @@
|
|
|
18
15
|
.vtx-search-label_h {
|
|
19
16
|
display: inline-block;
|
|
20
17
|
overflow: hidden;
|
|
21
|
-
line-height:
|
|
18
|
+
line-height: 48px;
|
|
22
19
|
white-space: nowrap;
|
|
23
20
|
text-overflow: ellipsis;
|
|
24
21
|
vertical-align: top;
|
|
@@ -28,13 +25,16 @@
|
|
|
28
25
|
display: inline-block;
|
|
29
26
|
-webkit-box-sizing: border-box;
|
|
30
27
|
box-sizing: border-box;
|
|
31
|
-
height:
|
|
32
|
-
padding-top:
|
|
33
|
-
padding-bottom:
|
|
34
|
-
padding-left:
|
|
35
|
-
line-height:
|
|
28
|
+
height: 48px;
|
|
29
|
+
padding-top: 8px;
|
|
30
|
+
padding-bottom: 8px;
|
|
31
|
+
padding-left: 12px;
|
|
32
|
+
line-height: 1.5;
|
|
36
33
|
vertical-align: top;
|
|
37
34
|
}
|
|
35
|
+
.vtx-search .vtx-search-item__v {
|
|
36
|
+
padding: 8px 0;
|
|
37
|
+
}
|
|
38
38
|
.vtx-search-label_v {
|
|
39
39
|
overflow: hidden;
|
|
40
40
|
line-height: 21px;
|
|
@@ -47,32 +47,33 @@
|
|
|
47
47
|
-webkit-box-sizing: border-box;
|
|
48
48
|
box-sizing: border-box;
|
|
49
49
|
height: 42px;
|
|
50
|
-
padding-top:
|
|
51
|
-
padding-bottom:
|
|
50
|
+
padding-top: 8px;
|
|
51
|
+
padding-bottom: 8px;
|
|
52
52
|
line-height: 32px;
|
|
53
53
|
vertical-align: top;
|
|
54
54
|
}
|
|
55
|
-
.vtx-search-colon {
|
|
56
|
-
position: absolute;
|
|
57
|
-
left: 0;
|
|
58
|
-
width: 15px;
|
|
59
|
-
}
|
|
60
55
|
.vtx-search-list {
|
|
61
56
|
width: 100%;
|
|
62
57
|
}
|
|
63
58
|
.vtx-search-element {
|
|
64
59
|
display: inline-block;
|
|
65
|
-
|
|
66
|
-
|
|
60
|
+
/* stylelint-disable */
|
|
61
|
+
width: calc(100% - 200px - 24px);
|
|
62
|
+
margin-right: 24px;
|
|
67
63
|
}
|
|
68
64
|
.vtx-search-buttons {
|
|
69
65
|
display: inline-block;
|
|
70
66
|
-webkit-box-sizing: border-box;
|
|
71
67
|
box-sizing: border-box;
|
|
72
|
-
width:
|
|
68
|
+
width: 200px;
|
|
73
69
|
height: 100%;
|
|
74
70
|
vertical-align: top;
|
|
75
71
|
}
|
|
72
|
+
.vtx-search .vtx-search-more {
|
|
73
|
+
height: 32px;
|
|
74
|
+
color: #1890ff;
|
|
75
|
+
line-height: 32px;
|
|
76
|
+
}
|
|
76
77
|
.vtx-row {
|
|
77
78
|
overflow: hidden;
|
|
78
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["vtx-search/style/index.js"],"names":[],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import 'antd/es/row/style/css';\nimport 'antd/es/col/style/css';\nimport 'antd/es/tooltip/style/css';\nimport 'antd/es/button/style/css';\nimport './index.less';\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["vtx-search/style/index.js"],"names":[],"mappings":";;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA","sourcesContent":["import 'antd/es/row/style/css';\nimport 'antd/es/col/style/css';\nimport 'antd/es/tooltip/style/css';\nimport 'antd/es/button/style/css';\nimport 'antd/es/icon/style/css';\nimport './index.less';\n"],"file":"index.js"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
@toggleSpeed: 0.3s; // 展开速度
|
|
2
2
|
@prefix-cls: vtx-search;
|
|
3
3
|
|
|
4
|
+
@buttons-width: 200px;
|
|
5
|
+
|
|
4
6
|
.@{prefix-cls} {
|
|
5
|
-
position:
|
|
6
|
-
top: 0;
|
|
7
|
-
right: 0;
|
|
8
|
-
left: 0;
|
|
7
|
+
position: relative;
|
|
9
8
|
z-index: 1000;
|
|
10
|
-
padding-top:
|
|
11
|
-
padding-right:
|
|
12
|
-
padding-bottom:
|
|
13
|
-
padding-left:
|
|
9
|
+
padding-top: 8px;
|
|
10
|
+
padding-right: 24px;
|
|
11
|
+
padding-bottom: 8px;
|
|
12
|
+
padding-left: 24px;
|
|
14
13
|
overflow: hidden;
|
|
15
14
|
background: rgb(255, 255, 255);
|
|
16
15
|
transition-duration: @toggleSpeed;
|
|
@@ -18,7 +17,7 @@
|
|
|
18
17
|
&-label_h {
|
|
19
18
|
display: inline-block;
|
|
20
19
|
overflow: hidden;
|
|
21
|
-
line-height:
|
|
20
|
+
line-height: 48px;
|
|
22
21
|
white-space: nowrap;
|
|
23
22
|
text-overflow: ellipsis;
|
|
24
23
|
vertical-align: top;
|
|
@@ -27,14 +26,16 @@
|
|
|
27
26
|
position: relative;
|
|
28
27
|
display: inline-block;
|
|
29
28
|
box-sizing: border-box;
|
|
30
|
-
height:
|
|
31
|
-
padding-top:
|
|
32
|
-
padding-bottom:
|
|
33
|
-
padding-left:
|
|
34
|
-
line-height:
|
|
29
|
+
height: 48px;
|
|
30
|
+
padding-top: 8px;
|
|
31
|
+
padding-bottom: 8px;
|
|
32
|
+
padding-left: 12px;
|
|
33
|
+
line-height: 1.5;
|
|
35
34
|
vertical-align: top;
|
|
36
35
|
}
|
|
37
|
-
|
|
36
|
+
.vtx-search-item__v {
|
|
37
|
+
padding: 8px 0;
|
|
38
|
+
}
|
|
38
39
|
&-label_v {
|
|
39
40
|
overflow: hidden;
|
|
40
41
|
line-height: 21px;
|
|
@@ -46,31 +47,32 @@
|
|
|
46
47
|
position: relative;
|
|
47
48
|
box-sizing: border-box;
|
|
48
49
|
height: 42px;
|
|
49
|
-
padding-top:
|
|
50
|
-
padding-bottom:
|
|
50
|
+
padding-top: 8px;
|
|
51
|
+
padding-bottom: 8px;
|
|
51
52
|
line-height: 32px;
|
|
52
53
|
vertical-align: top;
|
|
53
54
|
}
|
|
54
|
-
&-colon {
|
|
55
|
-
position: absolute;
|
|
56
|
-
left: 0;
|
|
57
|
-
width: 15px;
|
|
58
|
-
}
|
|
59
55
|
&-list {
|
|
60
56
|
width: 100%;
|
|
61
57
|
}
|
|
62
58
|
&-element {
|
|
63
59
|
display: inline-block;
|
|
64
|
-
|
|
65
|
-
|
|
60
|
+
/* stylelint-disable */
|
|
61
|
+
width: calc(100% - @buttons-width - 24px);
|
|
62
|
+
margin-right: 24px;
|
|
66
63
|
}
|
|
67
64
|
&-buttons {
|
|
68
65
|
display: inline-block;
|
|
69
66
|
box-sizing: border-box;
|
|
70
|
-
width:
|
|
67
|
+
width: @buttons-width;
|
|
71
68
|
height: 100%;
|
|
72
69
|
vertical-align: top;
|
|
73
70
|
}
|
|
71
|
+
.vtx-search-more {
|
|
72
|
+
height: 32px;
|
|
73
|
+
color: #1890ff;
|
|
74
|
+
line-height: 32px;
|
|
75
|
+
}
|
|
74
76
|
}
|
|
75
77
|
|
|
76
78
|
.vtx-row {
|
package/lib/vtx-select/index.js
CHANGED
|
@@ -130,7 +130,8 @@ var VtxSelect = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
130
130
|
var newProps = _objectSpread({
|
|
131
131
|
showSearch: true,
|
|
132
132
|
optionFilterProp: 'children',
|
|
133
|
-
placeholder: '请选择'
|
|
133
|
+
placeholder: '请选择',
|
|
134
|
+
allowClear: true
|
|
134
135
|
}, props);
|
|
135
136
|
|
|
136
137
|
if (mode === 'multiple') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["vtx-select/index.jsx"],"names":["VtxSelect","props","ref","popWidth","setPopWidth","elRef","elId","Date","now","value","mode","size","onChange","maxTagCount","maxTagTextLength","maxTagPlaceholder","showAll","selectStyle","selectAll","defaultBindBodyToPopupContainer","current","clientWidth","newChildren","children","Array","isArray","getContent","length","map","item","index","name","getChildren","margin","e","preventDefault","valueClone","splice","options","filter","ite","includes","substring","Empty","PRESENTED_IMAGE_SIMPLE","newProps","showSearch","optionFilterProp","placeholder","dropdownRender","menu","valueLength","target","checked","keys","key","style","paddingRight","triggerNode","document","body","width","list","i","Option","Select","OptGroup","propTypes","PropTypes","oneOfType","string","array","number","object","func","bool","node"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,SAAS,gBAAG,uBAAW,UAACC,KAAD,EAAQC,GAAR,EAAgB;AAAA;;AAAA,kBACT,qBAAS,CAAT,CADS;AAAA;AAAA,MAClCC,QADkC;AAAA,MACxBC,WADwB;;AAEzC,MAAMC,KAAK,GAAG,oBAAd;AACA,MAAMC,IAAI,GAAG,wCAAqBC,IAAI,CAACC,GAAL,EAArB,EAAb;AAHyC,MAMrCC,KANqC,GAiBrCR,KAjBqC,CAMrCQ,KANqC;AAAA,MAOrCC,IAPqC,GAiBrCT,KAjBqC,CAOrCS,IAPqC;AAAA,oBAiBrCT,KAjBqC,CAQrCU,IARqC;AAAA,MAQrCA,IARqC,4BAQ9B,SAR8B;AAAA,MASrCC,SATqC,GAiBrCX,KAjBqC,CASrCW,QATqC;AAAA,2BAiBrCX,KAjBqC,CAUrCY,WAVqC;AAAA,MAUrCA,WAVqC,mCAUvB,CAVuB;AAAA,8BAiBrCZ,KAjBqC,CAWrCa,gBAXqC;AAAA,MAWrCA,gBAXqC,sCAWlB,CAXkB;AAAA,8BAiBrCb,KAjBqC,CAYrCc,iBAZqC;AAAA,MAYrCA,iBAZqC,sCAYjB,KAZiB;AAAA,uBAiBrCd,KAjBqC,CAarCe,OAbqC;AAAA,MAarCA,OAbqC,+BAa3B,IAb2B;AAAA,MAcrCC,WAdqC,GAiBrChB,KAjBqC,CAcrCgB,WAdqC;AAAA,yBAiBrChB,KAjBqC,CAerCiB,SAfqC;AAAA,MAerCA,SAfqC,iCAezB,IAfyB;AAAA,8BAiBrCjB,KAjBqC,CAgBrCkB,+BAhBqC;AAAA,MAgBrCA,+BAhBqC,sCAgBH,IAhBG;AAmBzC,8BAAgB,YAAM;AAClBT,IAAAA,IAAI,KAAK,UAAT,IAAuBN,WAAW,CAACC,KAAK,CAACe,OAAN,CAAcC,WAAf,CAAlC;AACH,GAFD,EAEG,mBAAChB,KAAK,CAACe,OAAP,mDAAC,eAAeC,WAAhB,CAFH;AAIA,MAAMC,WAAW,GAAGrB,KAAK,CAACsB,QAAN,GACdC,KAAK,CAACC,OAAN,CAAcxB,KAAK,CAACsB,QAApB,IACItB,KAAK,CAACsB,QADV,GAEI,CAACtB,KAAK,CAACsB,QAAP,CAHU,GAId,EAJN;;AAMA,MAAMG,UAAU,GAAG,SAAbA,UAAa;AAAA,wBACf;AAAK,MAAA,SAAS,EAAC;AAAf,OACKF,KAAK,CAACC,OAAN,CAAchB,KAAd,KAAwBA,KAAK,CAACkB,MAA9B,GACGlB,KAAK,CAACmB,GAAN,CAAU,UAACC,IAAD,EAAOC,KAAP,EAAiB;AACvB,UAAIC,IAAI,GAAGC,WAAW,CAACV,WAAD,EAAcO,IAAd,CAAtB;AACA,0BACI,gCAAC,eAAD;AACI,QAAA,KAAK,EAAE;AAAEI,UAAAA,MAAM,EAAE;AAAV,SADX;AAEI,QAAA,GAAG,EAAEH,KAFT;AAGI,QAAA,QAAQ,MAHZ;AAII,QAAA,OAAO,EAAE,iBAAAI,CAAC,EAAI;AACVA,UAAAA,CAAC,CAACC,cAAF;;AACA,cAAIC,UAAU,sBAAO3B,KAAP,CAAd;;AACA2B,UAAAA,UAAU,CAACC,MAAX,CAAkBP,KAAlB,EAAyB,CAAzB;AACA,cAAIQ,OAAO,GAAGhB,WAAW,CAACiB,MAAZ,CAAmB,UAAAC,GAAG;AAAA,mBAChCJ,UAAU,CAACK,QAAX,CAAoBD,GAAG,CAACvC,KAAJ,CAAUQ,KAA9B,CADgC;AAAA,WAAtB,CAAd;;AAGAG,UAAAA,SAAQ,CAACwB,UAAD,EAAaE,OAAb,CAAR;AACH;AAZL,sBAcI,gCAAC,mBAAD;AAAS,QAAA,KAAK,EAAEP;AAAhB,SACKA,IAAI,CAACJ,MAAL,GAAcb,gBAAd,aACQiB,IAAI,CAACW,SAAL,CAAe,CAAf,EAAkB5B,gBAAlB,CADR,WAEKiB,IAHV,CAdJ,CADJ;AAsBH,KAxBD,CADH,gBA2BG,gCAAC,iBAAD;AAAO,MAAA,KAAK,EAAEY,kBAAMC;AAApB,MA5BR,CADe;AAAA,GAAnB;;AAkCA,MAAIC,QAAQ;AACRC,IAAAA,UAAU,EAAE,IADJ;AAERC,IAAAA,gBAAgB,EAAE,UAFV;AAGRC,IAAAA,WAAW,EAAE;AAHL,KAIL/C,KAJK,CAAZ;;AAOA,MAAIS,IAAI,KAAK,UAAb,EAAyB;AACrBmC,IAAAA,QAAQ,mCACDA,QADC;AAEJhC,MAAAA,WAAW,EAAEA,WAFT;AAGJC,MAAAA,gBAAgB,EAAEA,gBAHd;AAIJC,MAAAA,iBAAiB,EAAEA;AAJf,MAAR;;AAMA,QAAIG,SAAJ,EAAe;AACX2B,MAAAA,QAAQ,mCACDA,QADC;AAEJI,QAAAA,cAAc,EAAE,wBAAAC,IAAI,EAAI;AACpB,cAAMC,WAAW,GAAG3B,KAAK,CAACC,OAAN,CAAchB,KAAd,KAAwBA,KAAK,CAACkB,MAA9B,GAAuClB,KAAK,CAACkB,MAA7C,GAAsD,CAA1E;AACA,8BACI,0DACI;AACI,YAAA,SAAS,EAAC,sBADd;AAEI,YAAA,WAAW,EAAE,qBAAAO,CAAC;AAAA,qBAAIA,CAAC,CAACC,cAAF,EAAJ;AAAA;AAFlB,0BAII,gCAAC,oBAAD;AACI,YAAA,aAAa,EAAEgB,WAAW,IAAIA,WAAW,GAAG7B,WAAW,CAACK,MAD5D;AAEI,YAAA,OAAO,EAAEwB,WAAW,IAAIA,WAAW,KAAK7B,WAAW,CAACK,MAFxD;AAGI,YAAA,QAAQ,EAAE,kBAAAO,CAAC,EAAI;AACX,kBAAIA,CAAC,CAACkB,MAAF,CAASC,OAAb,EAAsB;AAClB,oBAAMC,IAAI,GAAGhC,WAAW,CAACM,GAAZ,CAAgB,UAAAC,IAAI;AAAA,yBAAIA,IAAI,CAAC0B,GAAT;AAAA,iBAApB,CAAb;AACA3C,gBAAAA,SAAQ,IAAIA,SAAQ,CAAC0C,IAAD,EAAOhC,WAAP,CAApB;AACH,eAHD,MAGO;AACHV,gBAAAA,SAAQ,IAAIA,SAAQ,CAAC,EAAD,EAAK,EAAL,CAApB;AACH;AACJ;AAVL,4BAJJ,CADJ,eAoBI,gCAAC,mBAAD;AAAS,YAAA,KAAK,EAAE;AAAEqB,cAAAA,MAAM,EAAE;AAAV;AAAhB,YApBJ,EAqBKiB,IArBL,CADJ;AAyBH;AA7BG,QAAR;AA+BH;AACJ;;AAED,sBACI;AACI,IAAA,SAAS,EAAE,4BAAW;AAClB,oBAAcxC,IAAI,KAAK,UADL;AAElB,0BAAoBA,IAAI,IAAI,UAAR,IAAsBA,IAAI,IAAI;AAFhC,KAAX,CADf;AAKI,IAAA,EAAE,EAAEJ,IAAI,CAACc,OALb;AAMI,IAAA,GAAG,EAAEf,KANT;AAOI,IAAA,KAAK,kCACEJ,KAAK,CAACuD,KADR;AAEDC,MAAAA,YAAY,EAAE,CAAC/C,IAAI,IAAI,UAAR,IAAsBA,IAAI,IAAI,MAA/B,KAA0CM,OAA1C,GAAoD,EAApD,GAAyD;AAFtE;AAPT,kBAYI,gCAAC,kBAAD;AACI,IAAA,GAAG,EAAEd,GADT;AAEI,IAAA,iBAAiB,EAAE,2BAAAwD,WAAW,EAAI;AAC9B,aAAOvC,+BAA+B,GAAGwC,QAAQ,CAACC,IAAZ,GAAmBF,WAAzD;AACH;AAJL,KAKQb,QALR;AAMI,IAAA,KAAK;AAAIgB,MAAAA,KAAK,EAAE;AAAX,OAAsB5C,WAAtB;AANT,MAQKhB,KAAK,CAACsB,QARX,CAZJ,EAsBK,CAACb,IAAI,IAAI,UAAR,IAAsBA,IAAI,IAAI,MAA/B,KAA0CM,OAA1C,gBACG,gCAAC,mBAAD;AACI,IAAA,OAAO,EAAEU,UAAU,EADvB;AAEI,IAAA,SAAS,EAAC,aAFd;AAGI,IAAA,OAAO,EAAC,OAHZ;AAII,IAAA,YAAY,EAAE;AAAEmC,MAAAA,KAAK,EAAE1D;AAAT;AAJlB,kBAMI,gCAAC,kBAAD;AAAQ,IAAA,SAAS,EAAC,kBAAlB;AAAqC,IAAA,IAAI,EAAC,MAA1C;AAAiD,IAAA,IAAI,EAAEQ;AAAvD,IANJ,CADH,GASG,IA/BR,CADJ;AAmCH,CAnJiB,CAAlB;;AAqJA,SAASqB,WAAT,GAAuC;AAAA,MAAlB8B,IAAkB,uEAAX,EAAW;AAAA,MAAPrD,KAAO;AACnC,MAAIsB,IAAI,GAAG,EAAX;;AACA,OAAK,IAAIgC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGD,IAAI,CAACnC,MAAzB,EAAiCoC,CAAC,EAAlC,EAAsC;AAClC,QAAID,IAAI,CAACC,CAAD,CAAJ,CAAQR,GAAR,KAAgB9C,KAApB,EAA2B;AACvBsB,MAAAA,IAAI,GAAG+B,IAAI,CAACC,CAAD,CAAJ,CAAQ9D,KAAR,CAAcsB,QAArB;AACA;AACH;AACJ;;AACD,SAAOQ,IAAP;AACH;;AAED/B,SAAS,CAACgE,MAAV,GAAmBC,mBAAOD,MAA1B;AACAhE,SAAS,CAACkE,QAAV,GAAqBD,mBAAOC,QAA5B;AAEAlE,SAAS,CAACmE,SAAV,GAAsB;AAClB1D,EAAAA,KAAK,EAAE2D,sBAAUC,SAAV,CAAoB,CACvBD,sBAAUE,MADa,EAEvBF,sBAAUG,KAFa,EAGvBH,sBAAUI,MAHa,EAIvBJ,sBAAUK,MAJa,CAApB,CADW;AAOlB/D,EAAAA,IAAI,EAAE0D,sBAAUE,MAPE;AAQlB3D,EAAAA,IAAI,EAAEyD,sBAAUE,MARE;AASlBd,EAAAA,KAAK,EAAEY,sBAAUK,MATC;AAUlBxD,EAAAA,WAAW,EAAEmD,sBAAUK,MAVL;AAWlB7D,EAAAA,QAAQ,EAAEwD,sBAAUM,IAXF;AAYlBvD,EAAAA,+BAA+B,EAAEiD,sBAAUO,IAZzB;AAalB9D,EAAAA,WAAW,EAAEuD,sBAAUI,MAbL;AAclB1D,EAAAA,gBAAgB,EAAEsD,sBAAUI,MAdV;AAelBzD,EAAAA,iBAAiB,EAAEqD,sBAAUC,SAAV,CAAoB,CAACD,sBAAUM,IAAX,EAAiBN,sBAAUQ,IAA3B,CAApB,CAfD;AAgBlB5D,EAAAA,OAAO,EAAEoD,sBAAUO,IAhBD;AAiBlBpD,EAAAA,QAAQ,EAAE6C,sBAAUQ,IAjBF;AAkBlB1D,EAAAA,SAAS,EAAEkD,sBAAUO;AAlBH,CAAtB;eAqBe3E,S","sourcesContent":["import React, { useState, useLayoutEffect, useRef, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Select from 'antd/es/select';\nimport Tag from 'antd/es/tag';\nimport Button from 'antd/es/button';\nimport Empty from 'antd/es/empty';\nimport Popover from 'antd/es/popover';\nimport Tooltip from 'antd/es/tooltip';\nimport Checkbox from 'antd/es/checkbox';\nimport Divider from 'antd/es/divider';\n\nconst VtxSelect = forwardRef((props, ref) => {\n const [popWidth, setPopWidth] = useState(0);\n const elRef = useRef();\n const elId = useRef(`vtx-select-${Date.now()}`);\n\n const {\n value,\n mode,\n size = 'default', //同步button大小\n onChange,\n maxTagCount = 2,\n maxTagTextLength = 5,\n maxTagPlaceholder = '...',\n showAll = true, //是否显示全部选项\n selectStyle,\n selectAll = true,\n defaultBindBodyToPopupContainer = true,\n } = props;\n\n useLayoutEffect(() => {\n mode === 'multiple' && setPopWidth(elRef.current.clientWidth);\n }, [elRef.current?.clientWidth]);\n\n const newChildren = props.children\n ? Array.isArray(props.children)\n ? props.children\n : [props.children]\n : [];\n\n const getContent = () => (\n <div className=\"vtx-all-list\">\n {Array.isArray(value) && value.length ? (\n value.map((item, index) => {\n let name = getChildren(newChildren, item);\n return (\n <Tag\n style={{ margin: '4px' }}\n key={index}\n closable\n onClose={e => {\n e.preventDefault();\n let valueClone = [...value];\n valueClone.splice(index, 1);\n let options = newChildren.filter(ite =>\n valueClone.includes(ite.props.value),\n );\n onChange(valueClone, options);\n }}\n >\n <Tooltip title={name}>\n {name.length > maxTagTextLength\n ? `${name.substring(0, maxTagTextLength)}...`\n : name}\n </Tooltip>\n </Tag>\n );\n })\n ) : (\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n )}\n </div>\n );\n\n let newProps = {\n showSearch: true,\n optionFilterProp: 'children',\n placeholder: '请选择',\n ...props,\n };\n\n if (mode === 'multiple') {\n newProps = {\n ...newProps,\n maxTagCount: maxTagCount,\n maxTagTextLength: maxTagTextLength,\n maxTagPlaceholder: maxTagPlaceholder,\n };\n if (selectAll) {\n newProps = {\n ...newProps,\n dropdownRender: menu => {\n const valueLength = Array.isArray(value) && value.length ? value.length : 0;\n return (\n <div>\n <div\n className=\"vtx-multi-select-all\"\n onMouseDown={e => e.preventDefault()}\n >\n <Checkbox\n indeterminate={valueLength && valueLength < newChildren.length}\n checked={valueLength && valueLength === newChildren.length}\n onChange={e => {\n if (e.target.checked) {\n const keys = newChildren.map(item => item.key);\n onChange && onChange(keys, newChildren);\n } else {\n onChange && onChange([], []);\n }\n }}\n >\n 全选\n </Checkbox>\n </div>\n <Divider style={{ margin: '4px 0' }} />\n {menu}\n </div>\n );\n },\n };\n }\n }\n\n return (\n <div\n className={classnames({\n 'vtx-select': mode !== 'multiple',\n 'vtx-multi-select': mode == 'multiple' || mode == 'tags',\n })}\n id={elId.current}\n ref={elRef}\n style={{\n ...props.style,\n paddingRight: (mode == 'multiple' || mode == 'tags') && showAll ? 32 : 0,\n }}\n >\n <Select\n ref={ref}\n getPopupContainer={triggerNode => {\n return defaultBindBodyToPopupContainer ? document.body : triggerNode;\n }}\n {...newProps}\n style={{ width: '100%', ...selectStyle }}\n >\n {props.children}\n </Select>\n {(mode == 'multiple' || mode == 'tags') && showAll ? (\n <Popover\n content={getContent()}\n placement=\"bottomRight\"\n trigger=\"click\"\n overlayStyle={{ width: popWidth }}\n >\n <Button className=\"vtx-select-count\" icon=\"more\" size={size} />\n </Popover>\n ) : null}\n </div>\n );\n});\n\nfunction getChildren(list = [], value) {\n let name = '';\n for (let i = 0; i < list.length; i++) {\n if (list[i].key === value) {\n name = list[i].props.children;\n break;\n }\n }\n return name;\n}\n\nVtxSelect.Option = Select.Option;\nVtxSelect.OptGroup = Select.OptGroup;\n\nVtxSelect.propTypes = {\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n PropTypes.number,\n PropTypes.object,\n ]),\n mode: PropTypes.string,\n size: PropTypes.string,\n style: PropTypes.object,\n selectStyle: PropTypes.object,\n onChange: PropTypes.func,\n defaultBindBodyToPopupContainer: PropTypes.bool,\n maxTagCount: PropTypes.number,\n maxTagTextLength: PropTypes.number,\n maxTagPlaceholder: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n showAll: PropTypes.bool,\n children: PropTypes.node,\n selectAll: PropTypes.bool,\n};\n\nexport default VtxSelect;\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["vtx-select/index.jsx"],"names":["VtxSelect","props","ref","popWidth","setPopWidth","elRef","elId","Date","now","value","mode","size","onChange","maxTagCount","maxTagTextLength","maxTagPlaceholder","showAll","selectStyle","selectAll","defaultBindBodyToPopupContainer","current","clientWidth","newChildren","children","Array","isArray","getContent","length","map","item","index","name","getChildren","margin","e","preventDefault","valueClone","splice","options","filter","ite","includes","substring","Empty","PRESENTED_IMAGE_SIMPLE","newProps","showSearch","optionFilterProp","placeholder","allowClear","dropdownRender","menu","valueLength","target","checked","keys","key","style","paddingRight","triggerNode","document","body","width","list","i","Option","Select","OptGroup","propTypes","PropTypes","oneOfType","string","array","number","object","func","bool","node"],"mappings":"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","sourcesContent":["import React, { useState, useLayoutEffect, useRef, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Select from 'antd/es/select';\nimport Tag from 'antd/es/tag';\nimport Button from 'antd/es/button';\nimport Empty from 'antd/es/empty';\nimport Popover from 'antd/es/popover';\nimport Tooltip from 'antd/es/tooltip';\nimport Checkbox from 'antd/es/checkbox';\nimport Divider from 'antd/es/divider';\n\nconst VtxSelect = forwardRef((props, ref) => {\n const [popWidth, setPopWidth] = useState(0);\n const elRef = useRef();\n const elId = useRef(`vtx-select-${Date.now()}`);\n\n const {\n value,\n mode,\n size = 'default', //同步button大小\n onChange,\n maxTagCount = 2,\n maxTagTextLength = 5,\n maxTagPlaceholder = '...',\n showAll = true, //是否显示全部选项\n selectStyle,\n selectAll = true,\n defaultBindBodyToPopupContainer = true,\n } = props;\n\n useLayoutEffect(() => {\n mode === 'multiple' && setPopWidth(elRef.current.clientWidth);\n }, [elRef.current?.clientWidth]);\n\n const newChildren = props.children\n ? Array.isArray(props.children)\n ? props.children\n : [props.children]\n : [];\n\n const getContent = () => (\n <div className=\"vtx-all-list\">\n {Array.isArray(value) && value.length ? (\n value.map((item, index) => {\n let name = getChildren(newChildren, item);\n return (\n <Tag\n style={{ margin: '4px' }}\n key={index}\n closable\n onClose={e => {\n e.preventDefault();\n let valueClone = [...value];\n valueClone.splice(index, 1);\n let options = newChildren.filter(ite =>\n valueClone.includes(ite.props.value),\n );\n onChange(valueClone, options);\n }}\n >\n <Tooltip title={name}>\n {name.length > maxTagTextLength\n ? `${name.substring(0, maxTagTextLength)}...`\n : name}\n </Tooltip>\n </Tag>\n );\n })\n ) : (\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n )}\n </div>\n );\n\n let newProps = {\n showSearch: true,\n optionFilterProp: 'children',\n placeholder: '请选择',\n allowClear: true,\n ...props,\n };\n\n if (mode === 'multiple') {\n newProps = {\n ...newProps,\n maxTagCount: maxTagCount,\n maxTagTextLength: maxTagTextLength,\n maxTagPlaceholder: maxTagPlaceholder,\n };\n if (selectAll) {\n newProps = {\n ...newProps,\n dropdownRender: menu => {\n const valueLength = Array.isArray(value) && value.length ? value.length : 0;\n return (\n <div>\n <div\n className=\"vtx-multi-select-all\"\n onMouseDown={e => e.preventDefault()}\n >\n <Checkbox\n indeterminate={valueLength && valueLength < newChildren.length}\n checked={valueLength && valueLength === newChildren.length}\n onChange={e => {\n if (e.target.checked) {\n const keys = newChildren.map(item => item.key);\n onChange && onChange(keys, newChildren);\n } else {\n onChange && onChange([], []);\n }\n }}\n >\n 全选\n </Checkbox>\n </div>\n <Divider style={{ margin: '4px 0' }} />\n {menu}\n </div>\n );\n },\n };\n }\n }\n\n return (\n <div\n className={classnames({\n 'vtx-select': mode !== 'multiple',\n 'vtx-multi-select': mode == 'multiple' || mode == 'tags',\n })}\n id={elId.current}\n ref={elRef}\n style={{\n ...props.style,\n paddingRight: (mode == 'multiple' || mode == 'tags') && showAll ? 32 : 0,\n }}\n >\n <Select\n ref={ref}\n getPopupContainer={triggerNode => {\n return defaultBindBodyToPopupContainer ? document.body : triggerNode;\n }}\n {...newProps}\n style={{ width: '100%', ...selectStyle }}\n >\n {props.children}\n </Select>\n {(mode == 'multiple' || mode == 'tags') && showAll ? (\n <Popover\n content={getContent()}\n placement=\"bottomRight\"\n trigger=\"click\"\n overlayStyle={{ width: popWidth }}\n >\n <Button className=\"vtx-select-count\" icon=\"more\" size={size} />\n </Popover>\n ) : null}\n </div>\n );\n});\n\nfunction getChildren(list = [], value) {\n let name = '';\n for (let i = 0; i < list.length; i++) {\n if (list[i].key === value) {\n name = list[i].props.children;\n break;\n }\n }\n return name;\n}\n\nVtxSelect.Option = Select.Option;\nVtxSelect.OptGroup = Select.OptGroup;\n\nVtxSelect.propTypes = {\n value: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.array,\n PropTypes.number,\n PropTypes.object,\n ]),\n mode: PropTypes.string,\n size: PropTypes.string,\n style: PropTypes.object,\n selectStyle: PropTypes.object,\n onChange: PropTypes.func,\n defaultBindBodyToPopupContainer: PropTypes.bool,\n maxTagCount: PropTypes.number,\n maxTagTextLength: PropTypes.number,\n maxTagPlaceholder: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),\n showAll: PropTypes.bool,\n children: PropTypes.node,\n selectAll: PropTypes.bool,\n};\n\nexport default VtxSelect;\n"],"file":"index.js"}
|
|
@@ -110,6 +110,7 @@ function VtxSplitPane(props) {
|
|
|
110
110
|
document.removeEventListener('mouseup', onMouseUp);
|
|
111
111
|
document.removeEventListener('mousemove', onMouseMove);
|
|
112
112
|
document.removeEventListener('touchmove', onTouchMove);
|
|
113
|
+
window.onresize = '';
|
|
113
114
|
};
|
|
114
115
|
}, [primary]);
|
|
115
116
|
(0, _react.useLayoutEffect)(function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["vtx-split-pane/SplitPane.jsx"],"names":["unFocus","document","window","selection","empty","getSelection","removeAllRanges","e","getDefaultSize","defaultSize","minSize","maxSize","draggedSize","min","max","Infinity","Math","undefined","removeNullChildren","children","React","Children","toArray","filter","c","VtxSplitPane","props","size","initPrimary","primary","active","position","resized","splitPane","pane1","pane2","resizerRef","paneSize","setPaneSize","primaryShow","setPrimaryShow","setPrimary","addEventListener","onMouseUp","onMouseMove","onTouchMove","removeEventListener","initialSize","splitPaneWidth","current","clientWidth","resizerWidth","offsetWidth","onresize","onMouseDown","event","eventWithTouches","Object","assign","touches","clientX","clientY","onTouchStart","allowResize","onDragStarted","initPosition","onChange","step","isPrimaryFirst","ref","ref2","node","node2","getBoundingClientRect","width","positionDelta","abs","sizeDelta","pane1Order","parseInt","getComputedStyle","order","pane2Order","newMaxSize","newSize","newPosition","onDragFinished","className","onResizerClick","onResizerDoubleClick","resizerClassName","resizerStyle","style","showSwitch","showToggle","notNullChildren","pane1Size","pane2Size","dragging","disabled","left","right","prev","propTypes","PropTypes","bool","arrayOf","isRequired","string","oneOf","oneOfType","number","func","object","defaultProps"],"mappings":"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","sourcesContent":["import React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Button from 'antd/es/button';\nimport Tooltip from 'antd/es/tooltip';\nimport Pane from './Pane';\nimport Resizer from './Resizer';\n\nfunction unFocus(document, window) {\n if (document.selection) {\n document.selection.empty();\n } else {\n try {\n window.getSelection().removeAllRanges();\n // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\n\nfunction getDefaultSize(defaultSize, minSize, maxSize, draggedSize) {\n if (typeof draggedSize === 'number') {\n const min = typeof minSize === 'number' ? minSize : 0;\n const max = typeof maxSize === 'number' && maxSize >= 0 ? maxSize : Infinity;\n return Math.max(min, Math.min(max, draggedSize));\n }\n if (defaultSize !== undefined) {\n return defaultSize;\n }\n return minSize;\n}\n\nfunction removeNullChildren(children) {\n return React.Children.toArray(children).filter(c => c);\n}\n\nfunction VtxSplitPane(props) {\n const { size, primary: initPrimary, defaultSize, minSize, maxSize } = props;\n\n const active = useRef(false),\n position = useRef(),\n draggedSize = useRef(),\n resized = useRef(false);\n\n const splitPane = useRef(),\n pane1 = useRef(),\n pane2 = useRef(),\n resizerRef = useRef();\n\n const [paneSize, setPaneSize] = useState({\n pane1: 0,\n pane2: 0,\n });\n\n const [primaryShow, setPrimaryShow] = useState(true);\n const [primary, setPrimary] = useState(initPrimary);\n\n useEffect(() => {\n document.addEventListener('mouseup', onMouseUp);\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('touchmove', onTouchMove);\n return () => {\n document.removeEventListener('mouseup', onMouseUp);\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('touchmove', onTouchMove);\n };\n }, [primary]);\n\n useLayoutEffect(() => {\n const initialSize =\n size !== undefined ? size : getDefaultSize(defaultSize, minSize, maxSize, null);\n let splitPaneWidth = splitPane.current.clientWidth,\n resizerWidth = resizerRef.current.offsetWidth + 1; // +1避免因为小数问题\n setPaneSize({\n pane1: primary === 'first' ? initialSize : splitPaneWidth - initialSize - resizerWidth,\n pane2: primary === 'second' ? initialSize : splitPaneWidth - initialSize - resizerWidth,\n });\n }, [primary]);\n\n /**\n * 监听窗口变化,自适应大小\n */\n window.onresize = () => {\n let splitPaneWidth = splitPane.current.clientWidth,\n resizerWidth = resizerRef.current.offsetWidth + 1;\n setPaneSize({\n pane1:\n primary === 'first'\n ? paneSize.pane1\n : splitPaneWidth - resizerWidth - paneSize.pane2,\n pane2:\n primary === 'first'\n ? splitPaneWidth - resizerWidth - paneSize.pane1\n : paneSize.pane2,\n });\n };\n\n function onMouseDown(event) {\n const eventWithTouches = Object.assign({}, event, {\n touches: [{ clientX: event.clientX, clientY: event.clientY }],\n });\n onTouchStart(eventWithTouches);\n }\n\n function onTouchStart(event) {\n const { allowResize, onDragStarted } = props;\n if (allowResize) {\n unFocus(document, window);\n const initPosition = event.touches[0].clientX;\n if (typeof onDragStarted === 'function') {\n onDragStarted();\n }\n active.current = true;\n position.current = initPosition;\n }\n }\n\n function onMouseMove(event) {\n const eventWithTouches = Object.assign({}, event, {\n touches: [{ clientX: event.clientX, clientY: event.clientY }],\n });\n onTouchMove(eventWithTouches);\n }\n function onTouchMove(event) {\n const { allowResize, maxSize, minSize, onChange, step } = props;\n if (allowResize && active.current) {\n unFocus(document, window);\n const isPrimaryFirst = primary === 'first';\n const ref = isPrimaryFirst ? pane1.current : pane2.current;\n const ref2 = isPrimaryFirst ? pane2.current : pane1.current;\n if (ref) {\n const node = ref;\n const node2 = ref2;\n if (node.getBoundingClientRect) {\n const width = node.getBoundingClientRect().width;\n const current = event.touches[0].clientX;\n const size = width;\n let positionDelta = position.current - current;\n\n if (step) {\n if (Math.abs(positionDelta) < step) {\n return;\n }\n // Integer division\n // eslint-disable-next-line no-bitwise\n positionDelta = ~~(positionDelta / step) * step;\n }\n\n let sizeDelta = isPrimaryFirst ? positionDelta : -positionDelta;\n\n const pane1Order = parseInt(window.getComputedStyle(node).order);\n const pane2Order = parseInt(window.getComputedStyle(node2).order);\n if (pane1Order > pane2Order) {\n sizeDelta = -sizeDelta;\n }\n\n let newMaxSize = maxSize;\n if (maxSize !== undefined && maxSize <= 0) {\n newMaxSize = splitPane.getBoundingClientRect().width + maxSize;\n }\n\n let newSize = size - sizeDelta;\n const newPosition = position.current - positionDelta;\n\n if (newSize < minSize) {\n newSize = minSize;\n } else if (maxSize !== undefined && newSize > newMaxSize) {\n newSize = newMaxSize;\n } else {\n position.current = newPosition;\n resized.current = true;\n }\n\n if (onChange) onChange(newSize);\n\n draggedSize.current = newSize;\n\n let splitPaneWidth = splitPane.current.clientWidth,\n resizerWidth = resizerRef.current.offsetWidth + 1;\n\n setPaneSize({\n pane1: isPrimaryFirst ? newSize : splitPaneWidth - newSize - resizerWidth,\n pane2: isPrimaryFirst ? splitPaneWidth - newSize - resizerWidth : newSize,\n });\n }\n }\n }\n }\n\n function onMouseUp() {\n const { allowResize, onDragFinished } = props;\n if (allowResize && active.current) {\n if (typeof onDragFinished === 'function') {\n onDragFinished(draggedSize.current);\n }\n active.current = false;\n }\n }\n\n const {\n allowResize,\n children,\n className,\n onResizerClick,\n onResizerDoubleClick,\n resizerClassName,\n resizerStyle,\n style,\n showSwitch,\n showToggle,\n } = props;\n\n const notNullChildren = removeNullChildren(children);\n\n /**\n * 收缩面板宽度变化,并能还原到原先的位置\n */\n const pane1Size =\n primary === 'first'\n ? primaryShow\n ? paneSize.pane1\n : 0\n : primaryShow\n ? paneSize.pane1\n : paneSize.pane1 + paneSize.pane2;\n const pane2Size =\n primary === 'first'\n ? primaryShow\n ? paneSize.pane2\n : paneSize.pane1 + paneSize.pane2\n : primaryShow\n ? paneSize.pane2\n : 0;\n\n // 是否在拖动\n const dragging = active.current;\n return (\n <div className={classnames('vtx-split-pane', className)} ref={splitPane} style={style}>\n <Pane ref={pane1} key=\"pane1\" size={pane1Size} dragging={dragging}>\n {primary === 'first' ? notNullChildren[0] : notNullChildren[1]}\n </Pane>\n <Resizer\n ref={resizerRef}\n onClick={e => {\n if (!primaryShow) {\n setPrimaryShow(true);\n }\n onResizerClick && onResizerClick(e);\n }}\n className={classnames({ disabled: !allowResize }, resizerClassName)}\n onDoubleClick={onResizerDoubleClick}\n onMouseDown={onMouseDown}\n onTouchStart={onTouchStart}\n onTouchEnd={onMouseUp}\n key=\"resizer\"\n primary={primary}\n primaryShow={primaryShow}\n style={resizerStyle || {}}\n >\n <Tooltip placement=\"right\" title={primaryShow ? '收起' : '展开'}>\n {showToggle && (\n <Button\n className=\"vtx-split-pane-resizer-toggle\"\n style={primary === 'first' ? { left: 0 } : { right: 0 }}\n shape=\"circle\"\n size=\"small\"\n icon={\n primary === 'first'\n ? primaryShow\n ? 'left'\n : 'right'\n : primaryShow\n ? 'right'\n : 'left'\n }\n onClick={() => {\n setPrimaryShow(!primaryShow);\n }}\n ></Button>\n )}\n </Tooltip>\n {showSwitch && (\n <Button\n className=\"vtx-split-pane-resizer-switch\"\n shape=\"circle\"\n icon=\"swap\"\n style={primary === 'first' ? { left: 0 } : { right: 0 }}\n size=\"small\"\n onClick={() => {\n setPrimary(prev => {\n if (prev === 'first') {\n return 'second';\n }\n if (prev === 'second') {\n return 'first';\n }\n });\n }}\n />\n )}\n </Resizer>\n <Pane ref={pane2} key=\"pane2\" size={pane2Size} dragging={dragging}>\n {primary === 'first' ? notNullChildren[1] : notNullChildren[0]}\n </Pane>\n </div>\n );\n}\n\nVtxSplitPane.propTypes = {\n allowResize: PropTypes.bool,\n children: PropTypes.arrayOf(PropTypes.node).isRequired,\n className: PropTypes.string,\n primary: PropTypes.oneOf(['first', 'second']),\n minSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n maxSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n // eslint-disable-next-line react/no-unused-prop-types\n defaultSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onDragStarted: PropTypes.func,\n onDragFinished: PropTypes.func,\n onChange: PropTypes.func,\n onResizerClick: PropTypes.func,\n onResizerDoubleClick: PropTypes.func,\n style: PropTypes.object,\n resizerStyle: PropTypes.object,\n resizerClassName: PropTypes.string,\n step: PropTypes.number,\n showToggle: PropTypes.bool,\n showSwitch: PropTypes.bool,\n};\nVtxSplitPane.defaultProps = {\n allowResize: true,\n minSize: 50,\n primary: 'first',\n showToggle: true,\n showSwitch: false,\n};\nexport default VtxSplitPane;\n"],"file":"SplitPane.js"}
|
|
1
|
+
{"version":3,"sources":["vtx-split-pane/SplitPane.jsx"],"names":["unFocus","document","window","selection","empty","getSelection","removeAllRanges","e","getDefaultSize","defaultSize","minSize","maxSize","draggedSize","min","max","Infinity","Math","undefined","removeNullChildren","children","React","Children","toArray","filter","c","VtxSplitPane","props","size","initPrimary","primary","active","position","resized","splitPane","pane1","pane2","resizerRef","paneSize","setPaneSize","primaryShow","setPrimaryShow","setPrimary","addEventListener","onMouseUp","onMouseMove","onTouchMove","removeEventListener","onresize","initialSize","splitPaneWidth","current","clientWidth","resizerWidth","offsetWidth","onMouseDown","event","eventWithTouches","Object","assign","touches","clientX","clientY","onTouchStart","allowResize","onDragStarted","initPosition","onChange","step","isPrimaryFirst","ref","ref2","node","node2","getBoundingClientRect","width","positionDelta","abs","sizeDelta","pane1Order","parseInt","getComputedStyle","order","pane2Order","newMaxSize","newSize","newPosition","onDragFinished","className","onResizerClick","onResizerDoubleClick","resizerClassName","resizerStyle","style","showSwitch","showToggle","notNullChildren","pane1Size","pane2Size","dragging","disabled","left","right","prev","propTypes","PropTypes","bool","arrayOf","isRequired","string","oneOf","oneOfType","number","func","object","defaultProps"],"mappings":"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","sourcesContent":["import React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport Button from 'antd/es/button';\nimport Tooltip from 'antd/es/tooltip';\nimport Pane from './Pane';\nimport Resizer from './Resizer';\n\nfunction unFocus(document, window) {\n if (document.selection) {\n document.selection.empty();\n } else {\n try {\n window.getSelection().removeAllRanges();\n // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\n\nfunction getDefaultSize(defaultSize, minSize, maxSize, draggedSize) {\n if (typeof draggedSize === 'number') {\n const min = typeof minSize === 'number' ? minSize : 0;\n const max = typeof maxSize === 'number' && maxSize >= 0 ? maxSize : Infinity;\n return Math.max(min, Math.min(max, draggedSize));\n }\n if (defaultSize !== undefined) {\n return defaultSize;\n }\n return minSize;\n}\n\nfunction removeNullChildren(children) {\n return React.Children.toArray(children).filter(c => c);\n}\n\nfunction VtxSplitPane(props) {\n const { size, primary: initPrimary, defaultSize, minSize, maxSize } = props;\n\n const active = useRef(false),\n position = useRef(),\n draggedSize = useRef(),\n resized = useRef(false);\n\n const splitPane = useRef(),\n pane1 = useRef(),\n pane2 = useRef(),\n resizerRef = useRef();\n\n const [paneSize, setPaneSize] = useState({\n pane1: 0,\n pane2: 0,\n });\n\n const [primaryShow, setPrimaryShow] = useState(true);\n const [primary, setPrimary] = useState(initPrimary);\n\n useEffect(() => {\n document.addEventListener('mouseup', onMouseUp);\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('touchmove', onTouchMove);\n return () => {\n document.removeEventListener('mouseup', onMouseUp);\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('touchmove', onTouchMove);\n window.onresize = '';\n };\n }, [primary]);\n\n useLayoutEffect(() => {\n const initialSize =\n size !== undefined ? size : getDefaultSize(defaultSize, minSize, maxSize, null);\n let splitPaneWidth = splitPane.current.clientWidth,\n resizerWidth = resizerRef.current.offsetWidth + 1; // +1避免因为小数问题\n setPaneSize({\n pane1: primary === 'first' ? initialSize : splitPaneWidth - initialSize - resizerWidth,\n pane2: primary === 'second' ? initialSize : splitPaneWidth - initialSize - resizerWidth,\n });\n }, [primary]);\n\n /**\n * 监听窗口变化,自适应大小\n */\n window.onresize = () => {\n let splitPaneWidth = splitPane.current.clientWidth,\n resizerWidth = resizerRef.current.offsetWidth + 1;\n setPaneSize({\n pane1:\n primary === 'first'\n ? paneSize.pane1\n : splitPaneWidth - resizerWidth - paneSize.pane2,\n pane2:\n primary === 'first'\n ? splitPaneWidth - resizerWidth - paneSize.pane1\n : paneSize.pane2,\n });\n };\n\n function onMouseDown(event) {\n const eventWithTouches = Object.assign({}, event, {\n touches: [{ clientX: event.clientX, clientY: event.clientY }],\n });\n onTouchStart(eventWithTouches);\n }\n\n function onTouchStart(event) {\n const { allowResize, onDragStarted } = props;\n if (allowResize) {\n unFocus(document, window);\n const initPosition = event.touches[0].clientX;\n if (typeof onDragStarted === 'function') {\n onDragStarted();\n }\n active.current = true;\n position.current = initPosition;\n }\n }\n\n function onMouseMove(event) {\n const eventWithTouches = Object.assign({}, event, {\n touches: [{ clientX: event.clientX, clientY: event.clientY }],\n });\n onTouchMove(eventWithTouches);\n }\n function onTouchMove(event) {\n const { allowResize, maxSize, minSize, onChange, step } = props;\n if (allowResize && active.current) {\n unFocus(document, window);\n const isPrimaryFirst = primary === 'first';\n const ref = isPrimaryFirst ? pane1.current : pane2.current;\n const ref2 = isPrimaryFirst ? pane2.current : pane1.current;\n if (ref) {\n const node = ref;\n const node2 = ref2;\n if (node.getBoundingClientRect) {\n const width = node.getBoundingClientRect().width;\n const current = event.touches[0].clientX;\n const size = width;\n let positionDelta = position.current - current;\n\n if (step) {\n if (Math.abs(positionDelta) < step) {\n return;\n }\n // Integer division\n // eslint-disable-next-line no-bitwise\n positionDelta = ~~(positionDelta / step) * step;\n }\n\n let sizeDelta = isPrimaryFirst ? positionDelta : -positionDelta;\n\n const pane1Order = parseInt(window.getComputedStyle(node).order);\n const pane2Order = parseInt(window.getComputedStyle(node2).order);\n if (pane1Order > pane2Order) {\n sizeDelta = -sizeDelta;\n }\n\n let newMaxSize = maxSize;\n if (maxSize !== undefined && maxSize <= 0) {\n newMaxSize = splitPane.getBoundingClientRect().width + maxSize;\n }\n\n let newSize = size - sizeDelta;\n const newPosition = position.current - positionDelta;\n\n if (newSize < minSize) {\n newSize = minSize;\n } else if (maxSize !== undefined && newSize > newMaxSize) {\n newSize = newMaxSize;\n } else {\n position.current = newPosition;\n resized.current = true;\n }\n\n if (onChange) onChange(newSize);\n\n draggedSize.current = newSize;\n\n let splitPaneWidth = splitPane.current.clientWidth,\n resizerWidth = resizerRef.current.offsetWidth + 1;\n\n setPaneSize({\n pane1: isPrimaryFirst ? newSize : splitPaneWidth - newSize - resizerWidth,\n pane2: isPrimaryFirst ? splitPaneWidth - newSize - resizerWidth : newSize,\n });\n }\n }\n }\n }\n\n function onMouseUp() {\n const { allowResize, onDragFinished } = props;\n if (allowResize && active.current) {\n if (typeof onDragFinished === 'function') {\n onDragFinished(draggedSize.current);\n }\n active.current = false;\n }\n }\n\n const {\n allowResize,\n children,\n className,\n onResizerClick,\n onResizerDoubleClick,\n resizerClassName,\n resizerStyle,\n style,\n showSwitch,\n showToggle,\n } = props;\n\n const notNullChildren = removeNullChildren(children);\n\n /**\n * 收缩面板宽度变化,并能还原到原先的位置\n */\n const pane1Size =\n primary === 'first'\n ? primaryShow\n ? paneSize.pane1\n : 0\n : primaryShow\n ? paneSize.pane1\n : paneSize.pane1 + paneSize.pane2;\n const pane2Size =\n primary === 'first'\n ? primaryShow\n ? paneSize.pane2\n : paneSize.pane1 + paneSize.pane2\n : primaryShow\n ? paneSize.pane2\n : 0;\n\n // 是否在拖动\n const dragging = active.current;\n return (\n <div className={classnames('vtx-split-pane', className)} ref={splitPane} style={style}>\n <Pane ref={pane1} key=\"pane1\" size={pane1Size} dragging={dragging}>\n {primary === 'first' ? notNullChildren[0] : notNullChildren[1]}\n </Pane>\n <Resizer\n ref={resizerRef}\n onClick={e => {\n if (!primaryShow) {\n setPrimaryShow(true);\n }\n onResizerClick && onResizerClick(e);\n }}\n className={classnames({ disabled: !allowResize }, resizerClassName)}\n onDoubleClick={onResizerDoubleClick}\n onMouseDown={onMouseDown}\n onTouchStart={onTouchStart}\n onTouchEnd={onMouseUp}\n key=\"resizer\"\n primary={primary}\n primaryShow={primaryShow}\n style={resizerStyle || {}}\n >\n <Tooltip placement=\"right\" title={primaryShow ? '收起' : '展开'}>\n {showToggle && (\n <Button\n className=\"vtx-split-pane-resizer-toggle\"\n style={primary === 'first' ? { left: 0 } : { right: 0 }}\n shape=\"circle\"\n size=\"small\"\n icon={\n primary === 'first'\n ? primaryShow\n ? 'left'\n : 'right'\n : primaryShow\n ? 'right'\n : 'left'\n }\n onClick={() => {\n setPrimaryShow(!primaryShow);\n }}\n ></Button>\n )}\n </Tooltip>\n {showSwitch && (\n <Button\n className=\"vtx-split-pane-resizer-switch\"\n shape=\"circle\"\n icon=\"swap\"\n style={primary === 'first' ? { left: 0 } : { right: 0 }}\n size=\"small\"\n onClick={() => {\n setPrimary(prev => {\n if (prev === 'first') {\n return 'second';\n }\n if (prev === 'second') {\n return 'first';\n }\n });\n }}\n />\n )}\n </Resizer>\n <Pane ref={pane2} key=\"pane2\" size={pane2Size} dragging={dragging}>\n {primary === 'first' ? notNullChildren[1] : notNullChildren[0]}\n </Pane>\n </div>\n );\n}\n\nVtxSplitPane.propTypes = {\n allowResize: PropTypes.bool,\n children: PropTypes.arrayOf(PropTypes.node).isRequired,\n className: PropTypes.string,\n primary: PropTypes.oneOf(['first', 'second']),\n minSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n maxSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n // eslint-disable-next-line react/no-unused-prop-types\n defaultSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n onDragStarted: PropTypes.func,\n onDragFinished: PropTypes.func,\n onChange: PropTypes.func,\n onResizerClick: PropTypes.func,\n onResizerDoubleClick: PropTypes.func,\n style: PropTypes.object,\n resizerStyle: PropTypes.object,\n resizerClassName: PropTypes.string,\n step: PropTypes.number,\n showToggle: PropTypes.bool,\n showSwitch: PropTypes.bool,\n};\nVtxSplitPane.defaultProps = {\n allowResize: true,\n minSize: 50,\n primary: 'first',\n showToggle: true,\n showSwitch: false,\n};\nexport default VtxSplitPane;\n"],"file":"SplitPane.js"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
13
|
+
|
|
14
|
+
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
15
|
+
|
|
16
|
+
function Back(props) {
|
|
17
|
+
var _props$text = props.text,
|
|
18
|
+
text = _props$text === void 0 ? '返回上一级' : _props$text;
|
|
19
|
+
return /*#__PURE__*/_react["default"].createElement("div", _extends({
|
|
20
|
+
className: "vtx-statistics-column-back"
|
|
21
|
+
}, props), text);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
Back.propTypes = {
|
|
25
|
+
text: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].node])
|
|
26
|
+
};
|
|
27
|
+
var _default = Back;
|
|
28
|
+
exports["default"] = _default;
|
|
29
|
+
//# sourceMappingURL=Back.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["vtx-statistics-column/Back.jsx"],"names":["Back","props","text","propTypes","PropTypes","oneOfType","string","node"],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAEA,SAASA,IAAT,CAAcC,KAAd,EAAqB;AAAA,oBACUA,KADV,CACTC,IADS;AAAA,MACTA,IADS,4BACF,OADE;AAEjB,sBACI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAgDD,KAAhD,GACKC,IADL,CADJ;AAKH;;AAEDF,IAAI,CAACG,SAAL,GAAiB;AACbD,EAAAA,IAAI,EAAEE,sBAAUC,SAAV,CAAoB,CAACD,sBAAUE,MAAX,EAAmBF,sBAAUG,IAA7B,CAApB;AADO,CAAjB;eAIeP,I","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nfunction Back(props) {\n const { text = '返回上一级' } = props;\n return (\n <div className=\"vtx-statistics-column-back\" {...props}>\n {text}\n </div>\n );\n}\n\nBack.propTypes = {\n text: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n};\n\nexport default Back;\n"],"file":"Back.js"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
12
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
+
|
|
14
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
|
+
|
|
16
|
+
var _context = require("./context");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
19
|
+
|
|
20
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
21
|
+
|
|
22
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
+
|
|
24
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
25
|
+
|
|
26
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
27
|
+
|
|
28
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
29
|
+
|
|
30
|
+
function Item(props) {
|
|
31
|
+
var label = props.label,
|
|
32
|
+
value = props.value,
|
|
33
|
+
className = props.className,
|
|
34
|
+
style = props.style;
|
|
35
|
+
|
|
36
|
+
var _useContext = (0, _react.useContext)(_context.StoreCtx),
|
|
37
|
+
cols = _useContext.cols,
|
|
38
|
+
isTiled = _useContext.isTiled;
|
|
39
|
+
|
|
40
|
+
var newStyle = {};
|
|
41
|
+
|
|
42
|
+
if (isTiled) {
|
|
43
|
+
newStyle = {
|
|
44
|
+
width: "".concat(100 / cols, "%")
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
49
|
+
className: (0, _classnames["default"])('vtx-statistics-column-item', {
|
|
50
|
+
'vtx-statistics-column-item-space': !isTiled
|
|
51
|
+
}, className),
|
|
52
|
+
style: _objectSpread(_objectSpread({}, newStyle), style)
|
|
53
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
54
|
+
className: "vtx-statistics-column-item--label"
|
|
55
|
+
}, label), /*#__PURE__*/_react["default"].createElement("div", {
|
|
56
|
+
className: "vtx-statistics-column-item--value"
|
|
57
|
+
}, value));
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
Item.propTypes = {
|
|
61
|
+
label: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].node]).isRequired,
|
|
62
|
+
value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string, _propTypes["default"].node]),
|
|
63
|
+
className: _propTypes["default"].string,
|
|
64
|
+
style: _propTypes["default"].object
|
|
65
|
+
};
|
|
66
|
+
var _default = Item;
|
|
67
|
+
exports["default"] = _default;
|
|
68
|
+
//# sourceMappingURL=Item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["vtx-statistics-column/Item.jsx"],"names":["Item","props","label","value","className","style","StoreCtx","cols","isTiled","newStyle","width","propTypes","PropTypes","oneOfType","string","node","isRequired","number","object"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;AAEA,SAASA,IAAT,CAAcC,KAAd,EAAqB;AAAA,MACTC,KADS,GAC0BD,KAD1B,CACTC,KADS;AAAA,MACFC,KADE,GAC0BF,KAD1B,CACFE,KADE;AAAA,MACKC,SADL,GAC0BH,KAD1B,CACKG,SADL;AAAA,MACgBC,KADhB,GAC0BJ,KAD1B,CACgBI,KADhB;;AAAA,oBAES,uBAAWC,iBAAX,CAFT;AAAA,MAETC,IAFS,eAETA,IAFS;AAAA,MAEHC,OAFG,eAEHA,OAFG;;AAIjB,MAAIC,QAAQ,GAAG,EAAf;;AACA,MAAID,OAAJ,EAAa;AACTC,IAAAA,QAAQ,GAAG;AACPC,MAAAA,KAAK,YAAK,MAAMH,IAAX;AADE,KAAX;AAGH;;AAED,sBACI;AACI,IAAA,SAAS,EAAE,4BACP,4BADO,EAEP;AAAE,0CAAoC,CAACC;AAAvC,KAFO,EAGPJ,SAHO,CADf;AAMI,IAAA,KAAK,kCAAOK,QAAP,GAAoBJ,KAApB;AANT,kBAQI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoDH,KAApD,CARJ,eASI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoDC,KAApD,CATJ,CADJ;AAaH;;AAEDH,IAAI,CAACW,SAAL,GAAiB;AACbT,EAAAA,KAAK,EAAEU,sBAAUC,SAAV,CAAoB,CAACD,sBAAUE,MAAX,EAAmBF,sBAAUG,IAA7B,CAApB,EAAwDC,UADlD;AAEbb,EAAAA,KAAK,EAAES,sBAAUC,SAAV,CAAoB,CAACD,sBAAUK,MAAX,EAAmBL,sBAAUE,MAA7B,EAAqCF,sBAAUG,IAA/C,CAApB,CAFM;AAGbX,EAAAA,SAAS,EAAEQ,sBAAUE,MAHR;AAIbT,EAAAA,KAAK,EAAEO,sBAAUM;AAJJ,CAAjB;eAOelB,I","sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { StoreCtx } from './context';\n\nfunction Item(props) {\n const { label, value, className, style } = props;\n const { cols, isTiled } = useContext(StoreCtx);\n\n let newStyle = {};\n if (isTiled) {\n newStyle = {\n width: `${100 / cols}%`,\n };\n }\n\n return (\n <div\n className={classnames(\n 'vtx-statistics-column-item',\n { 'vtx-statistics-column-item-space': !isTiled },\n className,\n )}\n style={{ ...newStyle, ...style }}\n >\n <div className=\"vtx-statistics-column-item--label\">{label}</div>\n <div className=\"vtx-statistics-column-item--value\">{value}</div>\n </div>\n );\n}\n\nItem.propTypes = {\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.node]).isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string, PropTypes.node]),\n className: PropTypes.string,\n style: PropTypes.object,\n};\n\nexport default Item;\n"],"file":"Item.js"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
12
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
|
+
|
|
14
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
|
+
|
|
16
|
+
var _context = require("./context");
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
19
|
+
|
|
20
|
+
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
|
|
21
|
+
|
|
22
|
+
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
+
|
|
24
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
25
|
+
|
|
26
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
27
|
+
|
|
28
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
29
|
+
|
|
30
|
+
function Total(props) {
|
|
31
|
+
var label = props.label,
|
|
32
|
+
value = props.value,
|
|
33
|
+
className = props.className,
|
|
34
|
+
style = props.style;
|
|
35
|
+
|
|
36
|
+
var _useContext = (0, _react.useContext)(_context.StoreCtx),
|
|
37
|
+
cols = _useContext.cols,
|
|
38
|
+
isTiled = _useContext.isTiled;
|
|
39
|
+
|
|
40
|
+
var newStyle = {};
|
|
41
|
+
|
|
42
|
+
if (isTiled) {
|
|
43
|
+
newStyle = {
|
|
44
|
+
width: "".concat(100 / cols, "%")
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
49
|
+
className: (0, _classnames["default"])('vtx-statistics-column-item', 'vtx-statistics-column-item-total', {
|
|
50
|
+
'vtx-statistics-column-item-space': !isTiled
|
|
51
|
+
}, className),
|
|
52
|
+
style: _objectSpread(_objectSpread({}, newStyle), style)
|
|
53
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
54
|
+
className: "vtx-statistics-column-item--label"
|
|
55
|
+
}, label), /*#__PURE__*/_react["default"].createElement("div", {
|
|
56
|
+
className: "vtx-statistics-column-item--value"
|
|
57
|
+
}, value));
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
Total.propTypes = {
|
|
61
|
+
label: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].node]).isRequired,
|
|
62
|
+
value: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string, _propTypes["default"].node]),
|
|
63
|
+
className: _propTypes["default"].string,
|
|
64
|
+
style: _propTypes["default"].object
|
|
65
|
+
};
|
|
66
|
+
var _default = Total;
|
|
67
|
+
exports["default"] = _default;
|
|
68
|
+
//# sourceMappingURL=Total.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["vtx-statistics-column/Total.jsx"],"names":["Total","props","label","value","className","style","StoreCtx","cols","isTiled","newStyle","width","propTypes","PropTypes","oneOfType","string","node","isRequired","number","object"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;AAEA,SAASA,KAAT,CAAeC,KAAf,EAAsB;AAAA,MACVC,KADU,GACyBD,KADzB,CACVC,KADU;AAAA,MACHC,KADG,GACyBF,KADzB,CACHE,KADG;AAAA,MACIC,SADJ,GACyBH,KADzB,CACIG,SADJ;AAAA,MACeC,KADf,GACyBJ,KADzB,CACeI,KADf;;AAAA,oBAEQ,uBAAWC,iBAAX,CAFR;AAAA,MAEVC,IAFU,eAEVA,IAFU;AAAA,MAEJC,OAFI,eAEJA,OAFI;;AAIlB,MAAIC,QAAQ,GAAG,EAAf;;AACA,MAAID,OAAJ,EAAa;AACTC,IAAAA,QAAQ,GAAG;AACPC,MAAAA,KAAK,YAAK,MAAMH,IAAX;AADE,KAAX;AAGH;;AAED,sBACI;AACI,IAAA,SAAS,EAAE,4BACP,4BADO,EAEP,kCAFO,EAGP;AAAE,0CAAoC,CAACC;AAAvC,KAHO,EAIPJ,SAJO,CADf;AAOI,IAAA,KAAK,kCAAOK,QAAP,GAAoBJ,KAApB;AAPT,kBASI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoDH,KAApD,CATJ,eAUI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoDC,KAApD,CAVJ,CADJ;AAcH;;AAEDH,KAAK,CAACW,SAAN,GAAkB;AACdT,EAAAA,KAAK,EAAEU,sBAAUC,SAAV,CAAoB,CAACD,sBAAUE,MAAX,EAAmBF,sBAAUG,IAA7B,CAApB,EAAwDC,UADjD;AAEdb,EAAAA,KAAK,EAAES,sBAAUC,SAAV,CAAoB,CAACD,sBAAUK,MAAX,EAAmBL,sBAAUE,MAA7B,EAAqCF,sBAAUG,IAA/C,CAApB,CAFO;AAGdX,EAAAA,SAAS,EAAEQ,sBAAUE,MAHP;AAIdT,EAAAA,KAAK,EAAEO,sBAAUM;AAJH,CAAlB;eAOelB,K","sourcesContent":["import React, { useContext } from 'react';\nimport PropTypes from 'prop-types';\nimport classnames from 'classnames';\nimport { StoreCtx } from './context';\n\nfunction Total(props) {\n const { label, value, className, style } = props;\n const { cols, isTiled } = useContext(StoreCtx);\n\n let newStyle = {};\n if (isTiled) {\n newStyle = {\n width: `${100 / cols}%`,\n };\n }\n\n return (\n <div\n className={classnames(\n 'vtx-statistics-column-item',\n 'vtx-statistics-column-item-total',\n { 'vtx-statistics-column-item-space': !isTiled },\n className,\n )}\n style={{ ...newStyle, ...style }}\n >\n <div className=\"vtx-statistics-column-item--label\">{label}</div>\n <div className=\"vtx-statistics-column-item--value\">{value}</div>\n </div>\n );\n}\n\nTotal.propTypes = {\n label: PropTypes.oneOfType([PropTypes.string, PropTypes.node]).isRequired,\n value: PropTypes.oneOfType([PropTypes.number, PropTypes.string, PropTypes.node]),\n className: PropTypes.string,\n style: PropTypes.object,\n};\n\nexport default Total;\n"],"file":"Total.js"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.StoreCtx = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = require("react");
|
|
9
|
+
|
|
10
|
+
var StoreCtx = /*#__PURE__*/(0, _react.createContext)({});
|
|
11
|
+
exports.StoreCtx = StoreCtx;
|
|
12
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["vtx-statistics-column/context.js"],"names":["StoreCtx"],"mappings":";;;;;;;AAAA;;AAEO,IAAMA,QAAQ,gBAAG,0BAAc,EAAd,CAAjB","sourcesContent":["import { createContext } from 'react';\n\nexport const StoreCtx = createContext({});\n"],"file":"context.js"}
|