bkui-vue 0.0.1-beta.19 → 0.0.1-beta.21
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/README.md +7 -3
- package/README_EN.md +7 -3
- package/dist/bkui-vue.cjs.js +1429 -365
- package/dist/bkui-vue.esm.js +1427 -364
- package/dist/bkui-vue.umd.js +1429 -365
- package/dist/style.css +376 -85
- package/lib/button/button.css +9 -0
- package/lib/button/button.d.ts +25 -1
- package/lib/button/button.less +18 -10
- package/lib/button/button.variable.css +9 -0
- package/lib/button/index.d.ts +42 -4
- package/lib/button/index.js +1 -1
- package/lib/code-diff/code-diff.css +114 -0
- package/lib/code-diff/code-diff.d.ts +71 -0
- package/lib/code-diff/code-diff.less +144 -0
- package/lib/code-diff/code-diff.variable.css +207 -0
- package/lib/code-diff/index.d.ts +6 -0
- package/lib/components.d.ts +1 -0
- package/lib/date-picker/date-picker.d.ts +20 -130
- package/lib/date-picker/index.js +1 -1
- package/lib/date-picker/interface.d.ts +1 -1
- package/lib/date-picker/props.d.ts +111 -0
- package/lib/directives/clickoutside.d.ts +3 -23
- package/lib/directives/index.js +2 -2
- package/lib/icon/arrows-right.d.ts +4 -0
- package/lib/icon/arrows-right.js +15 -0
- package/lib/icon/bk.d.ts +4 -0
- package/lib/icon/bk.js +15 -0
- package/lib/icon/index.d.ts +4 -0
- package/lib/icon/index.js +1 -1
- package/lib/icon/qq.d.ts +4 -0
- package/lib/icon/qq.js +15 -0
- package/lib/icon/weixin.d.ts +4 -0
- package/lib/icon/weixin.js +15 -0
- package/lib/input/index.d.ts +58 -4
- package/lib/input/index.js +2 -2
- package/lib/input/input.css +19 -2
- package/lib/input/input.d.ts +31 -1
- package/lib/input/input.less +25 -3
- package/lib/input/input.variable.css +19 -2
- package/lib/loading/index.d.ts +31 -9
- package/lib/loading/index.js +1 -1
- package/lib/loading/loading.css +98 -71
- package/lib/loading/loading.d.ts +23 -8
- package/lib/loading/loading.less +62 -49
- package/lib/loading/loading.variable.css +98 -71
- package/lib/shared/index.js +1 -1
- package/lib/shared/vue-types.d.ts +4 -0
- package/lib/styles/index.d.ts +1 -0
- package/lib/styles/index.js +1 -1
- package/lib/table/index.d.ts +42 -1
- package/lib/table/index.js +1 -1
- package/lib/table/props.d.ts +13 -0
- package/lib/table/render.d.ts +9 -0
- package/lib/table/table.d.ts +19 -0
- package/lib/table/utils.d.ts +8 -0
- package/lib/tag/index.d.ts +189 -22
- package/lib/tag/index.js +1 -1
- package/lib/tag/tag.css +91 -0
- package/lib/tag/tag.d.ts +83 -7
- package/lib/tag/tag.less +103 -2
- package/lib/tag/tag.variable.css +91 -0
- package/lib/transfer/index.d.ts +27 -0
- package/lib/transfer/index.js +1 -0
- package/lib/transfer/transfer.css +158 -0
- package/lib/transfer/transfer.d.ts +185 -0
- package/lib/transfer/transfer.less +171 -0
- package/lib/transfer/transfer.variable.css +251 -0
- package/lib/tree/index.d.ts +22 -3
- package/lib/tree/index.js +1 -1
- package/lib/tree/props.d.ts +11 -0
- package/lib/tree/tree.css +1 -12
- package/lib/tree/tree.d.ts +10 -1
- package/lib/tree/tree.less +10 -24
- package/lib/tree/tree.variable.css +1 -12
- package/lib/tree/util.d.ts +20 -3
- package/package.json +8 -4
@@ -0,0 +1,171 @@
|
|
1
|
+
@import '../styles/themes/themes.less';
|
2
|
+
|
3
|
+
/* 边框色 */
|
4
|
+
@borderInlineColor: #dde4eb;
|
5
|
+
|
6
|
+
/* 按钮、表单边框颜色、禁用时文本颜色 */
|
7
|
+
@newGreyColor: #c4c6cc;
|
8
|
+
|
9
|
+
/* 表格头部背景色、禁用底色 */
|
10
|
+
@newGreyColor2: #f0f1f5;
|
11
|
+
|
12
|
+
/* 大面积背景色 */
|
13
|
+
@newGreyColor3: #fafbfd;
|
14
|
+
|
15
|
+
/* 重点表示、强调、链接以及带有明确指示性 */
|
16
|
+
@newMainColor: #3a84ff;
|
17
|
+
|
18
|
+
/* 正常尺寸图标 */
|
19
|
+
@iconNormalSize: 22px;
|
20
|
+
|
21
|
+
.@{bk-prefix}-transfer {
|
22
|
+
position: relative;
|
23
|
+
display: flex;
|
24
|
+
font-size: 14px;
|
25
|
+
flex-direction: row;
|
26
|
+
justify-content: center;
|
27
|
+
|
28
|
+
.transfer {
|
29
|
+
position: absolute;
|
30
|
+
top: 50%;
|
31
|
+
left: 50%;
|
32
|
+
width: 30px;
|
33
|
+
height: 30px;
|
34
|
+
background: url('@bkui-vue/styles/images/transfer.png') no-repeat center center;
|
35
|
+
transform: translate(-50%, -50%);
|
36
|
+
}
|
37
|
+
|
38
|
+
.source-list,
|
39
|
+
.target-list {
|
40
|
+
height: 400px;
|
41
|
+
min-width: 200px;
|
42
|
+
overflow: hidden;
|
43
|
+
background-color: #fff;
|
44
|
+
border: 1px solid @borderInlineColor;
|
45
|
+
border-radius: 2px;
|
46
|
+
flex: 1;
|
47
|
+
|
48
|
+
.slot-header {
|
49
|
+
position: relative;
|
50
|
+
height: 43px;
|
51
|
+
padding: 0 20px;
|
52
|
+
line-height: 43px;
|
53
|
+
background-color: @newGreyColor3;
|
54
|
+
border-bottom: 1px solid @borderInlineColor;
|
55
|
+
|
56
|
+
.slot-content {
|
57
|
+
position: relative;
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
61
|
+
.header {
|
62
|
+
position: relative;
|
63
|
+
height: 43px;
|
64
|
+
padding: 0 20px;
|
65
|
+
line-height: 43px;
|
66
|
+
background-color: @newGreyColor3;
|
67
|
+
border-bottom: 1px solid @borderInlineColor;
|
68
|
+
|
69
|
+
span {
|
70
|
+
position: absolute;
|
71
|
+
right: 10px;
|
72
|
+
font-size: 12px;
|
73
|
+
color: @newMainColor;
|
74
|
+
cursor: pointer;
|
75
|
+
|
76
|
+
&.disabled {
|
77
|
+
color: @newGreyColor;
|
78
|
+
cursor: not-allowed;
|
79
|
+
}
|
80
|
+
}
|
81
|
+
}
|
82
|
+
|
83
|
+
.empty {
|
84
|
+
position: relative;
|
85
|
+
top: 40%;
|
86
|
+
width: 100%;
|
87
|
+
color: @newGreyColor;
|
88
|
+
text-align: center;
|
89
|
+
cursor: default;
|
90
|
+
}
|
91
|
+
|
92
|
+
.content {
|
93
|
+
position: relative;
|
94
|
+
max-height: calc(100% - 50px);
|
95
|
+
padding: 0;
|
96
|
+
margin: 6px 0;
|
97
|
+
overflow-y: auto;
|
98
|
+
|
99
|
+
&.is-search {
|
100
|
+
max-height: calc(100% - 86px);
|
101
|
+
}
|
102
|
+
|
103
|
+
li {
|
104
|
+
&.custom-item,
|
105
|
+
.item-content {
|
106
|
+
position: relative;
|
107
|
+
display: flex;
|
108
|
+
height: 40px;
|
109
|
+
padding: 0 20px;
|
110
|
+
line-height: 40px;
|
111
|
+
list-style: none;
|
112
|
+
cursor: pointer;
|
113
|
+
align-items: center;
|
114
|
+
|
115
|
+
&:hover {
|
116
|
+
color: @newMainColor;
|
117
|
+
background-color: #eef6fe;
|
118
|
+
}
|
119
|
+
|
120
|
+
.content-text {
|
121
|
+
overflow: hidden;
|
122
|
+
text-overflow: ellipsis;
|
123
|
+
white-space: nowrap;
|
124
|
+
flex: 1;
|
125
|
+
}
|
126
|
+
|
127
|
+
.icon-wrapper {
|
128
|
+
display: none;
|
129
|
+
flex: 22px 0 0;
|
130
|
+
|
131
|
+
&.hover {
|
132
|
+
display: inline-block;
|
133
|
+
}
|
134
|
+
}
|
135
|
+
}
|
136
|
+
}
|
137
|
+
|
138
|
+
&::-webkit-scrollbar {
|
139
|
+
width: 4px;
|
140
|
+
// background-color: color(transparent lightness(80%));
|
141
|
+
}
|
142
|
+
|
143
|
+
&::-webkit-scrollbar-thumb {
|
144
|
+
height: 5px;
|
145
|
+
background-color: #e6e9ea;
|
146
|
+
border-radius: 2px;
|
147
|
+
}
|
148
|
+
|
149
|
+
.bk-icon {
|
150
|
+
font-size: @iconNormalSize;
|
151
|
+
}
|
152
|
+
}
|
153
|
+
}
|
154
|
+
|
155
|
+
.target-list {
|
156
|
+
margin-left: 33px;
|
157
|
+
}
|
158
|
+
|
159
|
+
.transfer-search-input {
|
160
|
+
height: 36px;
|
161
|
+
line-height: 34px;
|
162
|
+
border: none;
|
163
|
+
border-bottom: 1px solid @newGreyColor2;
|
164
|
+
outline: none;
|
165
|
+
|
166
|
+
&.is-focused {
|
167
|
+
border-color: @newGreyColor2;
|
168
|
+
box-shadow: 0px 0px 3px 0px transparent;
|
169
|
+
}
|
170
|
+
}
|
171
|
+
}
|
@@ -0,0 +1,251 @@
|
|
1
|
+
:root {
|
2
|
+
--bk-prefix: bk;
|
3
|
+
--popover-max-height: 216px;
|
4
|
+
--primary-color: #3a84ff;
|
5
|
+
--success-color: #2dcb56;
|
6
|
+
--warning-color: #ff9c01;
|
7
|
+
--danger-color: #ea3636;
|
8
|
+
--default-color: #63656e;
|
9
|
+
--gray-color: #979ba5;
|
10
|
+
--light-gray: #c4c6cc;
|
11
|
+
--white-color: white;
|
12
|
+
--disable-color: #dcdee5;
|
13
|
+
--font-size-base: 12px;
|
14
|
+
--font-size-medium: 14px;
|
15
|
+
--font-size-large: 16px;
|
16
|
+
--line-height-base: 16px;
|
17
|
+
--line-height-medium: 16px;
|
18
|
+
--line-height-large: 18px;
|
19
|
+
--component-size-small: 26px;
|
20
|
+
--component-size-base: 32px;
|
21
|
+
--component-size-large: 38px;
|
22
|
+
--border-width-base: 1px;
|
23
|
+
--border-style-base: solid;
|
24
|
+
--border-radius-base: 2px;
|
25
|
+
--input-disabled-bg: #fafbfd;
|
26
|
+
--input-disabled-border: var(--disable-color);
|
27
|
+
--input-height-base: var(--component-size-base);
|
28
|
+
--input-color: var(--default-color);
|
29
|
+
--input-bg: white;
|
30
|
+
--input-border-color: var(--light-gray);
|
31
|
+
--input-broder-radius: 3px;
|
32
|
+
--input-shadow-color: #a3c5fd;
|
33
|
+
--input-horizontal-padding: 10px;
|
34
|
+
--input-block-color: #f4f6fa;
|
35
|
+
--input-icon-size: var(--font-size-large);
|
36
|
+
--input-maxlength-color: #979ba5;
|
37
|
+
--button-primary-hover-color: #5594fa;
|
38
|
+
--button-danger-hover-color: #ff5656;
|
39
|
+
--button-success-hover-color: #45e35f;
|
40
|
+
--button-warning-hover-color: #ffb848;
|
41
|
+
--button-default-hover-border-color: #979ba5;
|
42
|
+
--button-primary-active-color: #2c77f4;
|
43
|
+
--button-danger-active-color: #db2626;
|
44
|
+
--button-success-active-color: #1ab943;
|
45
|
+
--button-warning-active-color: #eb9000;
|
46
|
+
--fixed-navbar-background: #fff;
|
47
|
+
--fixed-navbar-boxshadow-color: rgba(0, 0, 0, 0.1);
|
48
|
+
--switch-default-color: #fff;
|
49
|
+
--switch-grey-color: #c4c6cc;
|
50
|
+
--breadcrumb-black-color: #979ba5;
|
51
|
+
--breadcrumb-primary-hover-color: #0082ff;
|
52
|
+
--breadcrumb-fn-main-color: #63656e;
|
53
|
+
--link-default-hover-color: #979ba5;
|
54
|
+
--link-primary-hover-color: #699df4;
|
55
|
+
--link-success-hover-color: #45e35f;
|
56
|
+
--link-warning-hover-color: #ffb848;
|
57
|
+
--link-danger-hover-color: #ff5656;
|
58
|
+
--link-default-disabled-color: #dcdee5;
|
59
|
+
--link-primary-disabled-color: #a3c5fd;
|
60
|
+
--link-success-disabled-color: #94f5a4;
|
61
|
+
--link-warning-disabled-color: #ffd695;
|
62
|
+
--link-danger-disabled-color: #fd9c9c;
|
63
|
+
--message-color: var(--default-color);
|
64
|
+
--message-primary-bg-color: #f0f8ff;
|
65
|
+
--message-primary-border-color: #e1ecff;
|
66
|
+
--message-warning-bg-color: #fff4e2;
|
67
|
+
--message-warning-border-color: #ffe8c3;
|
68
|
+
--message-success-bg-color: #f2fff4;
|
69
|
+
--message-success-border-color: #dcffe2;
|
70
|
+
--message-danger-bg-color: #ffeded;
|
71
|
+
--message-danger-border-color: #ffdddd;
|
72
|
+
--slider-default-bg: #dcdee5;
|
73
|
+
--slider-disable-bar-bg: #979ba5;
|
74
|
+
--menu-bg-color: #182132;
|
75
|
+
--submenu-bg-color: #151d2c;
|
76
|
+
--menu-active-bg-color: linear-gradient(90deg, #3f87ff 0%, #3a84ff 100%);
|
77
|
+
--menu-color: #96a2b9;
|
78
|
+
--menu-group-color: var(--default-color);
|
79
|
+
--menu-width: 260px;
|
80
|
+
--menu-collapse-width: 60px;
|
81
|
+
--menu-active-color: white;
|
82
|
+
--nav-header-bg-color: #182132;
|
83
|
+
--nav-bg-color: #182132;
|
84
|
+
--date-picker-disabled-bg: #fafbfd;
|
85
|
+
--date-picker-dropdown-mb: 4px;
|
86
|
+
--date-picker-dropdown-bg: #fff;
|
87
|
+
--table-bg-color: var(--white-color);
|
88
|
+
--table-border-color: #dcdee5;
|
89
|
+
--table-head-bg-color: #fafbfd;
|
90
|
+
--table-head-font-color: #313238;
|
91
|
+
--table-body-font-color: #575961;
|
92
|
+
--table-row-hover-bg-color: #f5f7fa;
|
93
|
+
}
|
94
|
+
/* 边框色 */
|
95
|
+
/* 按钮、表单边框颜色、禁用时文本颜色 */
|
96
|
+
/* 表格头部背景色、禁用底色 */
|
97
|
+
/* 大面积背景色 */
|
98
|
+
/* 重点表示、强调、链接以及带有明确指示性 */
|
99
|
+
/* 正常尺寸图标 */
|
100
|
+
.bk-transfer {
|
101
|
+
position: relative;
|
102
|
+
display: flex;
|
103
|
+
font-size: 14px;
|
104
|
+
flex-direction: row;
|
105
|
+
justify-content: center;
|
106
|
+
}
|
107
|
+
.bk-transfer .transfer {
|
108
|
+
position: absolute;
|
109
|
+
top: 50%;
|
110
|
+
left: 50%;
|
111
|
+
width: 30px;
|
112
|
+
height: 30px;
|
113
|
+
background: url('@bkui-vue/styles/images/transfer.png') no-repeat center center;
|
114
|
+
transform: translate(-50%, -50%);
|
115
|
+
}
|
116
|
+
.bk-transfer .source-list,
|
117
|
+
.bk-transfer .target-list {
|
118
|
+
height: 400px;
|
119
|
+
min-width: 200px;
|
120
|
+
overflow: hidden;
|
121
|
+
background-color: #fff;
|
122
|
+
border: 1px solid #dde4eb;
|
123
|
+
border-radius: 2px;
|
124
|
+
flex: 1;
|
125
|
+
}
|
126
|
+
.bk-transfer .source-list .slot-header,
|
127
|
+
.bk-transfer .target-list .slot-header {
|
128
|
+
position: relative;
|
129
|
+
height: 43px;
|
130
|
+
padding: 0 20px;
|
131
|
+
line-height: 43px;
|
132
|
+
background-color: #fafbfd;
|
133
|
+
border-bottom: 1px solid #dde4eb;
|
134
|
+
}
|
135
|
+
.bk-transfer .source-list .slot-header .slot-content,
|
136
|
+
.bk-transfer .target-list .slot-header .slot-content {
|
137
|
+
position: relative;
|
138
|
+
}
|
139
|
+
.bk-transfer .source-list .header,
|
140
|
+
.bk-transfer .target-list .header {
|
141
|
+
position: relative;
|
142
|
+
height: 43px;
|
143
|
+
padding: 0 20px;
|
144
|
+
line-height: 43px;
|
145
|
+
background-color: #fafbfd;
|
146
|
+
border-bottom: 1px solid #dde4eb;
|
147
|
+
}
|
148
|
+
.bk-transfer .source-list .header span,
|
149
|
+
.bk-transfer .target-list .header span {
|
150
|
+
position: absolute;
|
151
|
+
right: 10px;
|
152
|
+
font-size: 12px;
|
153
|
+
color: #3a84ff;
|
154
|
+
cursor: pointer;
|
155
|
+
}
|
156
|
+
.bk-transfer .source-list .header span.disabled,
|
157
|
+
.bk-transfer .target-list .header span.disabled {
|
158
|
+
color: #c4c6cc;
|
159
|
+
cursor: not-allowed;
|
160
|
+
}
|
161
|
+
.bk-transfer .source-list .empty,
|
162
|
+
.bk-transfer .target-list .empty {
|
163
|
+
position: relative;
|
164
|
+
top: 40%;
|
165
|
+
width: 100%;
|
166
|
+
color: #c4c6cc;
|
167
|
+
text-align: center;
|
168
|
+
cursor: default;
|
169
|
+
}
|
170
|
+
.bk-transfer .source-list .content,
|
171
|
+
.bk-transfer .target-list .content {
|
172
|
+
position: relative;
|
173
|
+
max-height: calc(100% - 50px);
|
174
|
+
padding: 0;
|
175
|
+
margin: 6px 0;
|
176
|
+
overflow-y: auto;
|
177
|
+
}
|
178
|
+
.bk-transfer .source-list .content.is-search,
|
179
|
+
.bk-transfer .target-list .content.is-search {
|
180
|
+
max-height: calc(100% - 86px);
|
181
|
+
}
|
182
|
+
.bk-transfer .source-list .content li.custom-item,
|
183
|
+
.bk-transfer .target-list .content li.custom-item,
|
184
|
+
.bk-transfer .source-list .content li .item-content,
|
185
|
+
.bk-transfer .target-list .content li .item-content {
|
186
|
+
position: relative;
|
187
|
+
display: flex;
|
188
|
+
height: 40px;
|
189
|
+
padding: 0 20px;
|
190
|
+
line-height: 40px;
|
191
|
+
list-style: none;
|
192
|
+
cursor: pointer;
|
193
|
+
align-items: center;
|
194
|
+
}
|
195
|
+
.bk-transfer .source-list .content li.custom-item:hover,
|
196
|
+
.bk-transfer .target-list .content li.custom-item:hover,
|
197
|
+
.bk-transfer .source-list .content li .item-content:hover,
|
198
|
+
.bk-transfer .target-list .content li .item-content:hover {
|
199
|
+
color: #3a84ff;
|
200
|
+
background-color: #eef6fe;
|
201
|
+
}
|
202
|
+
.bk-transfer .source-list .content li.custom-item .content-text,
|
203
|
+
.bk-transfer .target-list .content li.custom-item .content-text,
|
204
|
+
.bk-transfer .source-list .content li .item-content .content-text,
|
205
|
+
.bk-transfer .target-list .content li .item-content .content-text {
|
206
|
+
overflow: hidden;
|
207
|
+
text-overflow: ellipsis;
|
208
|
+
white-space: nowrap;
|
209
|
+
flex: 1;
|
210
|
+
}
|
211
|
+
.bk-transfer .source-list .content li.custom-item .icon-wrapper,
|
212
|
+
.bk-transfer .target-list .content li.custom-item .icon-wrapper,
|
213
|
+
.bk-transfer .source-list .content li .item-content .icon-wrapper,
|
214
|
+
.bk-transfer .target-list .content li .item-content .icon-wrapper {
|
215
|
+
display: none;
|
216
|
+
flex: 22px 0 0;
|
217
|
+
}
|
218
|
+
.bk-transfer .source-list .content li.custom-item .icon-wrapper.hover,
|
219
|
+
.bk-transfer .target-list .content li.custom-item .icon-wrapper.hover,
|
220
|
+
.bk-transfer .source-list .content li .item-content .icon-wrapper.hover,
|
221
|
+
.bk-transfer .target-list .content li .item-content .icon-wrapper.hover {
|
222
|
+
display: inline-block;
|
223
|
+
}
|
224
|
+
.bk-transfer .source-list .content::-webkit-scrollbar,
|
225
|
+
.bk-transfer .target-list .content::-webkit-scrollbar {
|
226
|
+
width: 4px;
|
227
|
+
}
|
228
|
+
.bk-transfer .source-list .content::-webkit-scrollbar-thumb,
|
229
|
+
.bk-transfer .target-list .content::-webkit-scrollbar-thumb {
|
230
|
+
height: 5px;
|
231
|
+
background-color: #e6e9ea;
|
232
|
+
border-radius: 2px;
|
233
|
+
}
|
234
|
+
.bk-transfer .source-list .content .bk-icon,
|
235
|
+
.bk-transfer .target-list .content .bk-icon {
|
236
|
+
font-size: 22px;
|
237
|
+
}
|
238
|
+
.bk-transfer .target-list {
|
239
|
+
margin-left: 33px;
|
240
|
+
}
|
241
|
+
.bk-transfer .transfer-search-input {
|
242
|
+
height: 36px;
|
243
|
+
line-height: 34px;
|
244
|
+
border: none;
|
245
|
+
border-bottom: 1px solid #f0f1f5;
|
246
|
+
outline: none;
|
247
|
+
}
|
248
|
+
.bk-transfer .transfer-search-input.is-focused {
|
249
|
+
border-color: #f0f1f5;
|
250
|
+
box-shadow: 0px 0px 3px 0px transparent;
|
251
|
+
}
|
package/lib/tree/index.d.ts
CHANGED
@@ -41,6 +41,10 @@ declare const BkTree: {
|
|
41
41
|
prefixIcon: import("vue-types").VueTypeDef<any> & {
|
42
42
|
default: any;
|
43
43
|
};
|
44
|
+
async: import("vue-types").VueTypeShape<{
|
45
|
+
callback: (item: any, cb: any) => Promise<any>;
|
46
|
+
cache: Boolean;
|
47
|
+
}>;
|
44
48
|
}>> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "data" | "lineHeight" | "prefixIcon" | "children" | "indent" | "levelLine" | "virtualRender">;
|
45
49
|
$attrs: {
|
46
50
|
[x: string]: unknown;
|
@@ -86,11 +90,15 @@ declare const BkTree: {
|
|
86
90
|
prefixIcon: import("vue-types").VueTypeDef<any> & {
|
87
91
|
default: any;
|
88
92
|
};
|
93
|
+
async: import("vue-types").VueTypeShape<{
|
94
|
+
callback: (item: any, cb: any) => Promise<any>;
|
95
|
+
cache: Boolean;
|
96
|
+
}>;
|
89
97
|
}>>, {
|
90
98
|
renderData: import("vue").ComputedRef<any[]>;
|
91
99
|
flatData: {
|
92
100
|
data: any[];
|
93
|
-
schema:
|
101
|
+
schema: any[] | Map<string, any>;
|
94
102
|
levelLineSchema: {};
|
95
103
|
};
|
96
104
|
hanldeTreeNodeClick: (item: any) => void;
|
@@ -98,6 +106,7 @@ declare const BkTree: {
|
|
98
106
|
getRootIcon: (item: any) => JSX.Element;
|
99
107
|
getVirtualLines: (node: any) => JSX.Element[];
|
100
108
|
getNodePrefixIcon: (item: any) => string | JSX.Element;
|
109
|
+
getLoadingIcon: (item: any) => "" | JSX.Element;
|
101
110
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, {
|
102
111
|
data: any[];
|
103
112
|
lineHeight: number;
|
@@ -157,11 +166,15 @@ declare const BkTree: {
|
|
157
166
|
prefixIcon: import("vue-types").VueTypeDef<any> & {
|
158
167
|
default: any;
|
159
168
|
};
|
169
|
+
async: import("vue-types").VueTypeShape<{
|
170
|
+
callback: (item: any, cb: any) => Promise<any>;
|
171
|
+
cache: Boolean;
|
172
|
+
}>;
|
160
173
|
}>> & import("vue").ShallowUnwrapRef<{
|
161
174
|
renderData: import("vue").ComputedRef<any[]>;
|
162
175
|
flatData: {
|
163
176
|
data: any[];
|
164
|
-
schema:
|
177
|
+
schema: any[] | Map<string, any>;
|
165
178
|
levelLineSchema: {};
|
166
179
|
};
|
167
180
|
hanldeTreeNodeClick: (item: any) => void;
|
@@ -169,6 +182,7 @@ declare const BkTree: {
|
|
169
182
|
getRootIcon: (item: any) => JSX.Element;
|
170
183
|
getVirtualLines: (node: any) => JSX.Element[];
|
171
184
|
getNodePrefixIcon: (item: any) => string | JSX.Element;
|
185
|
+
getLoadingIcon: (item: any) => "" | JSX.Element;
|
172
186
|
}> & {} & {} & import("vue").ComponentCustomProperties;
|
173
187
|
__isFragment?: never;
|
174
188
|
__isTeleport?: never;
|
@@ -204,11 +218,15 @@ declare const BkTree: {
|
|
204
218
|
prefixIcon: import("vue-types").VueTypeDef<any> & {
|
205
219
|
default: any;
|
206
220
|
};
|
221
|
+
async: import("vue-types").VueTypeShape<{
|
222
|
+
callback: (item: any, cb: any) => Promise<any>;
|
223
|
+
cache: Boolean;
|
224
|
+
}>;
|
207
225
|
}>>, {
|
208
226
|
renderData: import("vue").ComputedRef<any[]>;
|
209
227
|
flatData: {
|
210
228
|
data: any[];
|
211
|
-
schema:
|
229
|
+
schema: any[] | Map<string, any>;
|
212
230
|
levelLineSchema: {};
|
213
231
|
};
|
214
232
|
hanldeTreeNodeClick: (item: any) => void;
|
@@ -216,6 +234,7 @@ declare const BkTree: {
|
|
216
234
|
getRootIcon: (item: any) => JSX.Element;
|
217
235
|
getVirtualLines: (node: any) => JSX.Element[];
|
218
236
|
getNodePrefixIcon: (item: any) => string | JSX.Element;
|
237
|
+
getLoadingIcon: (item: any) => "" | JSX.Element;
|
219
238
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, {
|
220
239
|
data: any[];
|
221
240
|
lineHeight: number;
|
package/lib/tree/index.js
CHANGED
@@ -1 +1 @@
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("crypto"),require("../icon/"),require("../shared"),require("../virtual-render")):"function"==typeof define&&define.amd?define(["exports","vue","crypto","../icon/","../shared","../virtual-render"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).bkuiVue={},e.Vue,e.require$$0,e._,e.Shared,e["@bkui-vue/virtual-render"])}(this,(function(e,t,n,r,o,i){"use strict";function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=l(n),u=l(i);function s(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var c={exports:{}};!function(e){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.__esModule=!0,e.exports.default=e.exports}(c);var p=s(c.exports),d={exports:{}};!function(e){function t(n){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(n)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports}(d);var f=s(d.exports),v={exports:{}},h={exports:{}},_={exports:{}};!function(e){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r},e.exports.__esModule=!0,e.exports.default=e.exports}(_),function(e){var t=_.exports;e.exports=function(e){if(Array.isArray(e))return t(e)},e.exports.__esModule=!0,e.exports.default=e.exports}(h);var y={exports:{}};!function(e){e.exports=function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)},e.exports.__esModule=!0,e.exports.default=e.exports}(y);var x={exports:{}};!function(e){var t=_.exports;e.exports=function(e,n){if(e){if("string"==typeof e)return t(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?t(e,n):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports}(x);var b={exports:{}};!function(e){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports}(b),function(e){var t=h.exports,n=y.exports,r=x.exports,o=b.exports;e.exports=function(e){return t(e)||n(e)||r(e)||o()},e.exports.__esModule=!0,e.exports.default=e.exports}(v);for(var g=s(v.exports),m=a.default,O=function(){return m.randomBytes(16)},j=[],T=0;T<256;++T)j[T]=(T+256).toString(16).substr(1);var N,P,w=function(e,t){var n=t||0,r=j;return[r[e[n++]],r[e[n++]],r[e[n++]],r[e[n++]],"-",r[e[n++]],r[e[n++]],"-",r[e[n++]],r[e[n++]],"-",r[e[n++]],r[e[n++]],"-",r[e[n++]],r[e[n++]],r[e[n++]],r[e[n++]],r[e[n++]],r[e[n++]]].join("")},S=O,I=w,C=0,L=0;var k=function(e,t,n){var r=t&&n||0,o=t||[],i=(e=e||{}).node||N,l=void 0!==e.clockseq?e.clockseq:P;if(null==i||null==l){var a=S();null==i&&(i=N=[1|a[0],a[1],a[2],a[3],a[4],a[5]]),null==l&&(l=P=16383&(a[6]<<8|a[7]))}var u=void 0!==e.msecs?e.msecs:(new Date).getTime(),s=void 0!==e.nsecs?e.nsecs:L+1,c=u-C+(s-L)/1e4;if(c<0&&void 0===e.clockseq&&(l=l+1&16383),(c<0||u>C)&&void 0===e.nsecs&&(s=0),s>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");C=u,L=s,P=l;var p=(1e4*(268435455&(u+=122192928e5))+s)%4294967296;o[r++]=p>>>24&255,o[r++]=p>>>16&255,o[r++]=p>>>8&255,o[r++]=255&p;var d=u/4294967296*1e4&268435455;o[r++]=d>>>8&255,o[r++]=255&d,o[r++]=d>>>24&15|16,o[r++]=d>>>16&255,o[r++]=l>>>8|128,o[r++]=255&l;for(var f=0;f<6;++f)o[r+f]=i[f];return t||I(o)},R=O,A=w;var M=function(e,t,n){var r=t&&n||0;"string"==typeof e&&(t="binary"===e?new Array(16):null,e=null);var o=(e=e||{}).random||(e.rng||R)();if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,t)for(var i=0;i<16;++i)t[r+i]=o[i];return t||A(o)},V=k,q=M,D=q;D.v1=V,D.v4=q;var H=D,$=void 0,E="1px dashed #c3cdd7",F=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,n=e.data,r=e.children,o=[],i=0,l={};function a(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=0;s<e.length;s++){var c=e[s];if(Array.isArray(c))a(c,t,n,u);else{var d=Object.assign({},c);if("object"===f(d)&&null!==d){var v=H.v4(),h=null!==u?"".concat(u,"-").concat(s):"".concat(s),_=p({__depth:t,__index:s,__uuid:v,__parentId:n,__parentPath:u,__hasChild:!!(c[r]||[]).length,__path:h,__isRoot:null===n,__order:i},r,null);Object.assign(d,_),Object.assign(l,p({},h,{__isOpen:!1,__showLines:0,__isRoot:null===n})),i+=1,o.push(d),Object.prototype.hasOwnProperty.call(c,r)&&a(c[r],t+1,v,h)}}}}return a(t||n),[o,l]},B=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],l=e[t];return"boolean"==typeof l?l?r:o:U(n,e,t,i)},U=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=t[n];if("string"==typeof o)return"object"===f(e)&&null!==e?(Object.prototype.hasOwnProperty.call(e,o)||console.error("cannot find node label with key ".concat(o)),e[o]):o;if("function"==typeof o){var i=o.apply($,[e].concat(g(r)));return"string"==typeof i?i:void console.error("props label with function return value is not string, please check and return string")}},W=function(e,t){return U(e,t,"label")},z=function(e,t){return{"--level-line":B(t,"levelLine",e,E,null,["tree"]),"--lineHeight":"".concat(t.lineHeight,"px"),"--indent":"".concat(t.indent,"px"),padding:0}},G=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=n[e.__path]||{},o=r.childNodeCount,i=void 0===o?0:o,l=r.isLeaf,a=void 0!==l&&l,u=r.lastNode,s=void 0===u?null:u,c=a?0:(n[s]||{childNodeCount:0}).childNodeCount;return Object.assign({"--depth":e.__depth,paddingLeft:0,"--lines":i-c},"function"==typeof t.levelLine?{"--level-line":B(t,"levelLine",e,E,null,["node"])}:{})},J=function(e,t,n){return{"is-root":e.__isRoot,"bk-tree-node":!0,"is-open":t[e.__path].__isOpen,"is-virtual-render":n.virtualRender}},K={data:o.PropTypes.arrayOf(o.PropTypes.any).def([]),label:o.PropTypes.oneOfType([o.PropTypes.func.def(void 0),o.PropTypes.string.def("label")]),children:o.PropTypes.string.def("children"),indent:o.PropTypes.number.def(18),lineHeight:o.PropTypes.number.def(32),levelLine:o.PropTypes.oneOfType([o.PropTypes.bool.def(!1),o.PropTypes.func.def(void 0),o.PropTypes.string.def("1px dashed #c3cdd7")]).def(!1),virtualRender:o.PropTypes.bool.def(!1),prefixIcon:o.PropTypes.oneOfType([o.PropTypes.func.def((function(){})),o.PropTypes.bool.def(!1)]).def(!0)},Q=t.defineComponent({name:"BkTree",props:K,setup:function(e){var n=F(e),o=t.reactive({data:n[0],schema:n[1],levelLineSchema:{}});t.watch((function(){return[e.data]}),(function(t){var n=F(e,t);o.data=n[0],o.schema=n[1],c()}),{deep:!0}),t.watch((function(){return[e.levelLine]}),(function(){c()}));var i=t.computed((function(){return o.data.filter((function(e){return v(e)}))})),l=t.computed((function(){return i.value.map((function(e){return e.__path}))})),a=function(e){return"object"===f(e)?(o.schema[e.__path]||{}).__isOpen:"string"==typeof e&&(o.schema[e]||{}).__isOpen},u=function(e){return a(e)?t.createVNode(r.FolderShapeOpen,{class:"bk-tree-icon"},null):t.createVNode(r.Folder,{class:"bk-tree-icon"},null)},s=function(e){if("string"==typeof e)return e;if("object"===f(e)&&null!==e){var n=e.node,r=e.className,o=e.text,i=e.style;return t.h(n,{class:r,style:i},o)}return null},c=function(){e.levelLine?setTimeout((function(){for(var e=i.value.length,t={},n=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];Object.prototype.hasOwnProperty.call(t,e)||Object.assign(t,p({},e,Object.assign(Object.assign({childNodeCount:0,isLastNode:!1},null!==n?{lastNode:n}:{}),null!==r?{isLeaf:r}:{})))};e>0;e--){var r=i.value[e-1],a=d(r),u=!l.value.includes("".concat(r.__path,"-0"));n(r.__path,null,u),n(a,r.__path);var s=t[a],c=t[r.__path],f=c.childNodeCount,v=void 0===f?0:f;c.childNodeCount=v+1,c.isLastNode=s.lastNode===r.__path,s.childNodeCount+=c.childNodeCount}o.levelLineSchema=t})):o.levelLineSchema={}},d=function(e){if(e.__isRoot)return null;var t="-".concat(e.__index).length;return String.prototype.substring.call(e.__path,0,e.__path.length-t)},v=function(e){return e.__isRoot||a(e)||a(d(e))};return c(),{renderData:i,flatData:o,hanldeTreeNodeClick:function(e){if(e.__hasChild){var t=!a(e);Object.assign(e,{__isOpen:t}),i.value.filter((function(t){return String.prototype.startsWith.call(t.__path,e.__path)})).forEach((function(e){return Object.assign(o.schema[e.__path],{__isOpen:t})})),c()}},getActionIcon:function(n){var o=null;return"function"==typeof e.prefixIcon&&"default"!==(o=e.prefixIcon(n.__isRoot,n.__hasChild,a(n),"action",n))?s(o):("default"===o||"boolean"==typeof e.prefixIcon&&e.prefixIcon)&&n.__hasChild?a(n)?t.createVNode(r.DownShape,null,null):t.createVNode(r.RightShape,null,null):null},getRootIcon:u,getVirtualLines:function(n){if(!e.virtualRender)return null;var r=n.__depth+1;return new Array(r).fill("").map((function(e,t){return t})).filter((function(e){return function(e,t){if(t.__isRoot)return!1;var n="".concat(t.__path).split("-").slice(0,e+1);if(n.join("-")===t.__path)return!0;var r=n.pop(),i=parseInt(r,10);n.push("".concat(i+1));var l=n.join("-");return Object.prototype.hasOwnProperty.call(o.schema,l)}(e,n)})).filter((function(e){return e>0})).map((function(e){return t.createVNode("span",{class:"node-virtual-line",style:(n=r-e,{"--depth":n})},null);var n}))},getNodePrefixIcon:function(n){var o=null;return"function"==typeof e.prefixIcon&&"default"!==(o=e.prefixIcon(n.__isRoot,n.__hasChild,a(n),"node_type",n))?s(o):"default"===o||"boolean"==typeof e.prefixIcon&&e.prefixIcon?n.__isRoot?u(n):t.createVNode(r.TextFile,{class:"bk-tree-icon"},null):null}}},render:function(){var e=this,n=this.$props,r=function(r){return t.createVNode("div",{class:J(r,e.flatData.schema,n),style:G(r,n,e.flatData.levelLineSchema),onClick:function(){return e.hanldeTreeNodeClick(r)}},[[e.getActionIcon(r),e.getNodePrefixIcon(r)],t.createVNode("span",null,[W(r,n)]),e.getVirtualLines(r)])};return t.createVNode(u.default,{class:"bk-tree",style:z(null,n),list:this.renderData,lineHeight:n.lineHeight,enabled:n.virtualRender},{default:function(e){return(e.data||[]).map(r)}})}}),X=o.withInstall(Q);e.default=X,Object.defineProperty(e,"__esModule",{value:!0})}));
|
1
|
+
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("vue"),require("crypto"),require("../icon/"),require("../shared"),require("../virtual-render")):"function"==typeof define&&define.amd?define(["exports","vue","crypto","../icon/","../shared","../virtual-render"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).bkuiVue={},e.Vue,e.require$$0,e._,e.Shared,e["@bkui-vue/virtual-render"])}(this,(function(e,n,t,r,o,i){"use strict";function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=u(t),a=u(i);function c(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var s={exports:{}};!function(e){function n(t){return e.exports=n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,n(t)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(s);var f=c(s.exports),p={exports:{}};!function(e){e.exports=function(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e},e.exports.__esModule=!0,e.exports.default=e.exports}(p);var d=c(p.exports),v={exports:{}},y={exports:{}},h={exports:{}};!function(e){e.exports=function(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r},e.exports.__esModule=!0,e.exports.default=e.exports}(h),function(e){var n=h.exports;e.exports=function(e){if(Array.isArray(e))return n(e)},e.exports.__esModule=!0,e.exports.default=e.exports}(y);var _={exports:{}};!function(e){e.exports=function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)},e.exports.__esModule=!0,e.exports.default=e.exports}(_);var x={exports:{}};!function(e){var n=h.exports;e.exports=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports}(x);var b={exports:{}};!function(e){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports}(b),function(e){var n=y.exports,t=_.exports,r=x.exports,o=b.exports;e.exports=function(e){return n(e)||t(e)||r(e)||o()},e.exports.__esModule=!0,e.exports.default=e.exports}(v);for(var g=c(v.exports),m=l.default,O=function(){return m.randomBytes(16)},T=[],j=0;j<256;++j)T[j]=(j+256).toString(16).substr(1);var P,I,w=function(e,n){var t=n||0,r=T;return[r[e[t++]],r[e[t++]],r[e[t++]],r[e[t++]],"-",r[e[t++]],r[e[t++]],"-",r[e[t++]],r[e[t++]],"-",r[e[t++]],r[e[t++]],"-",r[e[t++]],r[e[t++]],r[e[t++]],r[e[t++]],r[e[t++]],r[e[t++]]].join("")},A=O,S=w,k=0,N=0;var M=function(e,n,t){var r=n&&t||0,o=n||[],i=(e=e||{}).node||P,u=void 0!==e.clockseq?e.clockseq:I;if(null==i||null==u){var l=A();null==i&&(i=P=[1|l[0],l[1],l[2],l[3],l[4],l[5]]),null==u&&(u=I=16383&(l[6]<<8|l[7]))}var a=void 0!==e.msecs?e.msecs:(new Date).getTime(),c=void 0!==e.nsecs?e.nsecs:N+1,s=a-k+(c-N)/1e4;if(s<0&&void 0===e.clockseq&&(u=u+1&16383),(s<0||a>k)&&void 0===e.nsecs&&(c=0),c>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");k=a,N=c,I=u;var f=(1e4*(268435455&(a+=122192928e5))+c)%4294967296;o[r++]=f>>>24&255,o[r++]=f>>>16&255,o[r++]=f>>>8&255,o[r++]=255&f;var p=a/4294967296*1e4&268435455;o[r++]=p>>>8&255,o[r++]=255&p,o[r++]=p>>>24&15|16,o[r++]=p>>>16&255,o[r++]=u>>>8|128,o[r++]=255&u;for(var d=0;d<6;++d)o[r+d]=i[d];return n||S(o)},V=O,L=w;var q=function(e,n,t){var r=n&&t||0;"string"==typeof e&&(n="binary"===e?new Array(16):null,e=null);var o=(e=e||{}).random||(e.rng||V)();if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,n)for(var i=0;i<16;++i)n[r+i]=o[i];return n||L(o)},C=M,D=q,R=D;R.v1=C,R.v4=D;var H=R,$=void 0,E="1px dashed #c3cdd7",F=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=e.data,o=e.children,i=[],u=0,l=new Map;function a(e){return(t||[]).some((function(n){return n.__uuid===e&&n.__isOpen}))}function c(e){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=0;s<e.length;s++){var p=e[s];if(Array.isArray(p))c(p,n,t,r);else if("object"===f(p)&&null!==p){var v=p.__uuid||H.v4(),y=a(v),h=null!==r?"".concat(r,"-").concat(s):"".concat(s),_=d({__depth:n,__index:s,__uuid:v,__parentId:t,__parentPath:r,__hasChild:!!(p[o]||[]).length,__path:h,__isRoot:null===t,__order:u,__isOpen:y},o,null);Object.assign(p,{__uuid:v}),l.set(v,_),u+=1,i.push(Object.assign(Object.assign({},p),d({},o,null))),Object.prototype.hasOwnProperty.call(p,o)&&c(p[o]||[],n+1,v,h)}}}return c(n||r),[i,l]},B=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],u=e[n];return"boolean"==typeof u?u?r:o:U(t,e,n,i)},U=function(e,n,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=n[t];if("string"==typeof o)return"object"===f(e)&&null!==e?(Object.prototype.hasOwnProperty.call(e,o)||console.error("cannot find node label with key ".concat(o)),e[o]):o;if("function"==typeof o){var i=o.apply($,[e].concat(g(r)));return"string"==typeof i?i:void console.error("props label with function return value is not string, please check and return string")}},W=function(e,n){return U(e,n,"label")},z=function(e,n){return e.get(n)||{}},G=function(e,n,t){var r;return null===(r=z(e,n))||void 0===r?void 0:r[t]},J=function(e,n){return{"--level-line":B(n,"levelLine",e,E,null,["tree"]),"--lineHeight":"".concat(n.lineHeight,"px"),"--indent":"".concat(n.indent,"px"),padding:0}},K=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=t.schema,o=G(r,e.__uuid,"__depth");return Object.assign({"--depth":o,paddingLeft:0},"function"==typeof n.levelLine?{"--level-line":B(n,"levelLine",e,E,null,["node"])}:{})},Q=function(e,n,t){var r=z(n,e.__uuid)||{};return{"is-root":r.__isRoot,"bk-tree-node":!0,"is-open":r.__isOpen,"is-virtual-render":t.virtualRender,"level-line":t.levelLine}},X=function(e,n,t,r){var o=e.split("-").reduce((function(e,n){var r=Number(n);return Array.isArray(e)?e[r]:e[t][r]}),n);Object.assign(o,r||{})},Y={data:o.PropTypes.arrayOf(o.PropTypes.any).def([]),label:o.PropTypes.oneOfType([o.PropTypes.func.def(void 0),o.PropTypes.string.def("label")]),children:o.PropTypes.string.def("children"),indent:o.PropTypes.number.def(18),lineHeight:o.PropTypes.number.def(32),levelLine:o.PropTypes.oneOfType([o.PropTypes.bool.def(!1),o.PropTypes.func.def(void 0),o.PropTypes.string.def("1px dashed #c3cdd7")]).def(!1),virtualRender:o.PropTypes.bool.def(!1),prefixIcon:o.PropTypes.oneOfType([o.PropTypes.func.def((function(){})),o.PropTypes.bool.def(!1)]).def(!0),async:o.PropTypes.shape({callback:o.PropTypes.func.def(null),cache:o.PropTypes.bool.def(!0)})},Z=n.defineComponent({name:"Tree",props:Y,setup:function(e){var t=F(e),o=n.reactive({data:t[0],schema:t[1],levelLineSchema:{}});n.watch((function(){return[e.data]}),(function(n){console.log("props.data changed");var t=F(e,n,i.value);o.data=t[0],o.schema=t[1]}),{deep:!0});var i=n.computed((function(){return Array.from(o.schema.values())})),u=function(e){return o.schema.get(e)},l=function(e,n){var t;return null===(t=u(e.__uuid))||void 0===t?void 0:t[n]},a=function(e,n,t){return o.schema.set(e.__uuid,Object.assign(Object.assign({},u(e.__uuid)),d({},n,t)))},c=function(e){return l(e,"__path")},s=function(e){return l(e,"__isRoot")},p=function(e){return l(e,"__hasChild")},v=n.computed((function(){return o.data.filter((function(e){return b(e)}))})),y=function(e){var n;return"object"===f(e)?l(e,"__isOpen"):"string"==typeof e&&(null===(n=u(e))||void 0===n?void 0:n.__isOpen)},h=function(e){return y(e)?n.createVNode(r.FolderShapeOpen,{class:"bk-tree-icon"},null):n.createVNode(r.Folder,{class:"bk-tree-icon"},null)},_=function(e){if("string"==typeof e)return e;if("object"===f(e)&&null!==e){var t=e.node,r=e.className,o=e.text,i=e.style;return n.h(t,{class:r,style:i},o)}return null},x=function(n,t){if("object"===f(n)&&null!==n){a(t,"__isOpen",!0);var r=Array.isArray(n)?n:[n];!function(e,n,t,r,o){X(e,n,t,d({},r,o))}(c(t),e.data,e.children,e.children,r)}},b=function(e){return s(e)||y(e)||y(l(e,"__parentId"))};return{renderData:v,flatData:o,hanldeTreeNodeClick:function(n){if(n.async){var t=e.async||{},r=t.callback,o=void 0===r?null:r,i=t.cache,u=void 0===i||i;"function"!=typeof o||n.cached?console.error("async need to set prop: asyncLoad with function wich will return promise object"):(Object.assign(n,{loading:!0}),o(n,(function(e){return x(e,n)})).then((function(e){return x(e,n)})).catch((function(e){return console.error("load remote data error:",e)})).finally((function(){X(c(n),e.data,e.children,Object.assign({loading:!1},u?{cached:!0}:{}))})))}p(n)&&function(e){var n=!y(e);a(e,"__isOpen",n),n||v.value.filter((function(n){return String.prototype.startsWith.call(c(n),c(e))})).forEach((function(e){return a(e,"__isOpen",n)}))}(n)},getActionIcon:function(t){var o=null;return"function"==typeof e.prefixIcon&&"default"!==(o=e.prefixIcon(s(t),p(t)||t.async,y(t),"action",t))?_(o):("default"===o||"boolean"==typeof e.prefixIcon&&e.prefixIcon)&&(p(t)||t.async)?y(t)?n.createVNode(r.DownShape,null,null):n.createVNode(r.RightShape,null,null):null},getRootIcon:h,getVirtualLines:function(t){if(!e.levelLine)return null;var r=l(t,"__depth")+1;return new Array(r).fill("").map((function(e,n){return n})).filter((function(e){return function(e,n){if(s(n))return!1;var t=c(n),r="".concat(t).split("-").slice(0,e+1);if(r.join("-")===t)return!0;var o=r.pop(),u=parseInt(o,10);r.push("".concat(u+1));var l=r.join("-");return i.value.some((function(e){return e.__path===l}))}(e,t)})).filter((function(e){return e>0})).map((function(e){return n.createVNode("span",{class:"node-virtual-line",style:(t=r-e,{"--depth":t})},null);var t}))},getNodePrefixIcon:function(t){var o=null;return"function"==typeof e.prefixIcon&&"default"!==(o=e.prefixIcon(s(t),p(t)||t.async,y(t),"node_type",t))?_(o):"default"===o||"boolean"==typeof e.prefixIcon&&e.prefixIcon?s(t)?h(t):n.createVNode(r.TextFile,{class:"bk-tree-icon"},null):null},getLoadingIcon:function(e){return e.loading?n.createVNode(r.Spinner,null,null):""}}},render:function(){var e=this,t=this.$props,r=function(r){return n.createVNode("div",{class:Q(r,e.flatData.schema,t),style:K(r,t,e.flatData),onClick:function(){return e.hanldeTreeNodeClick(r)}},[[e.getActionIcon(r),e.getNodePrefixIcon(r),e.getLoadingIcon(r)],n.createVNode("span",null,[W(r,t)]),e.getVirtualLines(r)])};return n.createVNode(a.default,{class:"bk-tree",style:J(null,t),list:this.renderData,lineHeight:t.lineHeight,enabled:t.virtualRender,throttleDelay:0},{default:function(e){return(e.data||[]).map(r)}})}}),ee=o.withInstall(Z);e.default=ee,Object.defineProperty(e,"__esModule",{value:!0})}));
|
package/lib/tree/props.d.ts
CHANGED
@@ -66,5 +66,16 @@ export declare const treeProps: {
|
|
66
66
|
prefixIcon: import("vue-types").VueTypeDef<any> & {
|
67
67
|
default: any;
|
68
68
|
};
|
69
|
+
/**
|
70
|
+
* 异步加载节点数据配置
|
71
|
+
* @param callback 请求数据回调函数,函数返回 Promise
|
72
|
+
* @param cache 是否缓存请求结果,默认为True,只有在第一次才会发起请求,若设置为false则每次都会发起请求
|
73
|
+
*/
|
74
|
+
async: import("vue-types").VueTypeShape<AsyncOption>;
|
75
|
+
};
|
76
|
+
declare type AsyncOption = {
|
77
|
+
callback: (item: any, cb: any) => Promise<any>;
|
78
|
+
cache: Boolean;
|
69
79
|
};
|
70
80
|
export declare type TreePropTypes = Readonly<ExtractPropTypes<typeof treeProps>>;
|
81
|
+
export {};
|
package/lib/tree/tree.css
CHANGED
@@ -5,21 +5,10 @@
|
|
5
5
|
line-height: var(--lineHeight);
|
6
6
|
cursor: pointer;
|
7
7
|
}
|
8
|
-
.bk-tree .bk-tree-node.is-open:not(.is-virtual-render)::after {
|
9
|
-
position: absolute;
|
10
|
-
top: calc(var(--lineHeight) / 2 + 6px);
|
11
|
-
left: 6px;
|
12
|
-
z-index: 1;
|
13
|
-
width: 0;
|
14
|
-
height: calc(var(--lines) * var(--lineHeight) - 6px);
|
15
|
-
pointer-events: none;
|
16
|
-
border-left: var(--level-line);
|
17
|
-
content: '';
|
18
|
-
}
|
19
8
|
.bk-tree .bk-tree-node:not(.is-root) {
|
20
9
|
margin-left: calc(var(--depth)*var(--indent));
|
21
10
|
}
|
22
|
-
.bk-tree .bk-tree-node:not(.is-root)::before {
|
11
|
+
.bk-tree .bk-tree-node:not(.is-root).level-line::before {
|
23
12
|
position: absolute;
|
24
13
|
top: calc(50% + 1px);
|
25
14
|
left: calc(0px - var(--indent) + 6px);
|
package/lib/tree/tree.d.ts
CHANGED
@@ -31,11 +31,15 @@ declare const _default: import("vue").DefineComponent<{
|
|
31
31
|
prefixIcon: import("vue-types").VueTypeDef<any> & {
|
32
32
|
default: any;
|
33
33
|
};
|
34
|
+
async: import("vue-types").VueTypeShape<{
|
35
|
+
callback: (item: any, cb: any) => Promise<any>;
|
36
|
+
cache: Boolean;
|
37
|
+
}>;
|
34
38
|
}, {
|
35
39
|
renderData: import("vue").ComputedRef<any[]>;
|
36
40
|
flatData: {
|
37
41
|
data: any[];
|
38
|
-
schema:
|
42
|
+
schema: any[] | Map<string, any>;
|
39
43
|
levelLineSchema: {};
|
40
44
|
};
|
41
45
|
hanldeTreeNodeClick: (item: any) => void;
|
@@ -43,6 +47,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
43
47
|
getRootIcon: (item: any) => JSX.Element;
|
44
48
|
getVirtualLines: (node: any) => JSX.Element[];
|
45
49
|
getNodePrefixIcon: (item: any) => string | JSX.Element;
|
50
|
+
getLoadingIcon: (item: any) => "" | JSX.Element;
|
46
51
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
47
52
|
data: import("vue-types").VueTypeDef<any[]> & {
|
48
53
|
default: () => any[];
|
@@ -74,6 +79,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
74
79
|
prefixIcon: import("vue-types").VueTypeDef<any> & {
|
75
80
|
default: any;
|
76
81
|
};
|
82
|
+
async: import("vue-types").VueTypeShape<{
|
83
|
+
callback: (item: any, cb: any) => Promise<any>;
|
84
|
+
cache: Boolean;
|
85
|
+
}>;
|
77
86
|
}>>, {
|
78
87
|
data: any[];
|
79
88
|
lineHeight: number;
|
package/lib/tree/tree.less
CHANGED
@@ -6,38 +6,24 @@
|
|
6
6
|
line-height: var(--lineHeight);
|
7
7
|
cursor: pointer;
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
&:not(.is-root) {
|
10
|
+
margin-left: calc(var(--depth)*var(--indent));
|
11
|
+
|
12
|
+
&.level-line {
|
13
|
+
&::before {
|
12
14
|
position: absolute;
|
13
|
-
top: calc(
|
14
|
-
left: 6px;
|
15
|
+
top: calc(50% + 1px);
|
16
|
+
left: calc(0px - var(--indent) + 6px);
|
15
17
|
z-index: 1;
|
16
|
-
width:
|
17
|
-
height:
|
18
|
+
width: calc(var(--indent) - 6px);
|
19
|
+
height: 0;
|
18
20
|
pointer-events: none;
|
19
|
-
border-
|
21
|
+
border-bottom: var(--level-line);
|
20
22
|
content: '';
|
21
23
|
}
|
22
24
|
}
|
23
25
|
}
|
24
26
|
|
25
|
-
&:not(.is-root) {
|
26
|
-
margin-left: calc(var(--depth)*var(--indent));
|
27
|
-
|
28
|
-
&::before {
|
29
|
-
position: absolute;
|
30
|
-
top: calc(50% + 1px);
|
31
|
-
left: calc(0px - var(--indent) + 6px);
|
32
|
-
z-index: 1;
|
33
|
-
width: calc(var(--indent) - 6px);
|
34
|
-
height: 0;
|
35
|
-
pointer-events: none;
|
36
|
-
border-bottom: var(--level-line);
|
37
|
-
content: '';
|
38
|
-
}
|
39
|
-
}
|
40
|
-
|
41
27
|
.node-virtual-line {
|
42
28
|
display: inline-block;
|
43
29
|
position: absolute;
|