bi-element-ui 1.4.4 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/about.798bca83.css +1 -0
- package/dist/css/chunk-vendors.32e08f47.css +22 -0
- package/dist/css/index.7de03914.css +1 -0
- package/dist/index.html +1 -1
- package/dist/js/about.8c4bb832.js +2 -0
- package/dist/js/chunk-vendors.30e16d8a.js +393 -0
- package/dist/js/index.fe38e2ac.js +11 -0
- package/lib/bi-element-ui.common.js +150608 -142193
- package/lib/bi-element-ui.css +2 -2
- package/lib/bi-element-ui.umd.js +150608 -142193
- package/lib/bi-element-ui.umd.min.js +79 -77
- package/lib/img/birthday-cake.198adecd.svg +180 -0
- package/package.json +4 -3
- package/pnpm-lock.yaml +175 -146
- package/src/App.vue +104 -15
- package/src/main.js +1 -1
- package/src/router/index.js +10 -0
- package/src/utils/index.js +15 -0
- package/src/utils/request.js +1 -0
- package/src/views/Date.vue +52 -7
- package/src/views/Fireworks.vue +253 -0
- package/src/views/Layout.vue +3 -1
- package/src/views/img/hb.png +0 -0
- package/src/views/img/mini-cake.svg +40 -0
- package/src/views/img/sd.png +0 -0
- package/src/views/img/xc.png +0 -0
- package/src/views/img/yd.png +0 -0
- package/src/views/textEditor.vue +35 -0
- package/dist/css/about.f927ac1d.css +0 -1
- package/dist/css/chunk-vendors.bce393fb.css +0 -1
- package/dist/css/index.9da9fdde.css +0 -1
- package/dist/js/about.49a721d0.js +0 -2
- package/dist/js/chunk-vendors.008a0caf.js +0 -313
- package/dist/js/index.e9532c02.js +0 -11
package/src/App.vue
CHANGED
@@ -1,16 +1,52 @@
|
|
1
1
|
<template>
|
2
2
|
<div id="app">
|
3
3
|
<el-container id="example">
|
4
|
-
<el-aside
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
4
|
+
<el-aside
|
5
|
+
width="200px"
|
6
|
+
class="sidebar-container"
|
7
|
+
>
|
8
|
+
<el-menu
|
9
|
+
:default-active="$route.path"
|
10
|
+
class="el-menu-vertical"
|
11
|
+
router
|
12
|
+
>
|
13
|
+
<el-menu-item index="/">
|
14
|
+
<i class="el-icon-s-home"></i>
|
15
|
+
<span>例子展示</span>
|
16
|
+
</el-menu-item>
|
17
|
+
<el-menu-item index="/date">
|
18
|
+
<i class="el-icon-date"></i>
|
19
|
+
<span>date</span>
|
20
|
+
</el-menu-item>
|
21
|
+
<el-menu-item index="/scene">
|
22
|
+
<i class="el-icon-menu"></i>
|
23
|
+
<span>场景使用</span>
|
24
|
+
</el-menu-item>
|
25
|
+
<el-menu-item index="/table">
|
26
|
+
<i class="el-icon-document"></i>
|
27
|
+
<span>Table</span>
|
28
|
+
</el-menu-item>
|
29
|
+
<el-menu-item index="/showData">
|
30
|
+
<i class="el-icon-data-line"></i>
|
31
|
+
<span>Data</span>
|
32
|
+
</el-menu-item>
|
33
|
+
<el-menu-item index="/layout">
|
34
|
+
<i class="el-icon-s-grid"></i>
|
35
|
+
<span>布局</span>
|
36
|
+
</el-menu-item>
|
37
|
+
<el-menu-item index="/log">
|
38
|
+
<i class="el-icon-notebook-2"></i>
|
39
|
+
<span>日志</span>
|
40
|
+
</el-menu-item>
|
41
|
+
<el-menu-item index="/textEditor">
|
42
|
+
<i class="el-icon-edit-outline"></i>
|
43
|
+
<span>图文编辑</span>
|
44
|
+
</el-menu-item>
|
45
|
+
<el-menu-item index="/fireworks">
|
46
|
+
<i class="el-icon-magic-stick"></i>
|
47
|
+
<span>烟花</span>
|
48
|
+
</el-menu-item>
|
49
|
+
</el-menu>
|
14
50
|
</el-aside>
|
15
51
|
<el-main>
|
16
52
|
<router-view />
|
@@ -26,20 +62,73 @@
|
|
26
62
|
-webkit-font-smoothing: antialiased;
|
27
63
|
-moz-osx-font-smoothing: grayscale;
|
28
64
|
color: #2c3e50;
|
65
|
+
height: 100vh;
|
29
66
|
}
|
30
67
|
|
31
|
-
#
|
68
|
+
#example {
|
69
|
+
height: 100%;
|
70
|
+
}
|
71
|
+
|
72
|
+
.sidebar-container {
|
73
|
+
position: fixed;
|
74
|
+
top: 0;
|
75
|
+
left: 0;
|
76
|
+
height: 100vh;
|
77
|
+
background-color: #fff;
|
78
|
+
z-index: 1001;
|
79
|
+
overflow-y: auto;
|
80
|
+
transition: width 0.28s;
|
81
|
+
}
|
82
|
+
|
83
|
+
.el-menu-vertical {
|
84
|
+
height: 100%;
|
32
85
|
margin-top: 30px;
|
86
|
+
border-right: none;
|
87
|
+
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
88
|
+
border-radius: 4px;
|
33
89
|
|
34
|
-
|
35
|
-
display: block;
|
36
|
-
padding: 20px 25px;
|
90
|
+
.el-menu-item {
|
37
91
|
font-weight: bold;
|
38
92
|
color: #2c3e50;
|
93
|
+
margin: 4px;
|
94
|
+
border-radius: 4px;
|
95
|
+
transition: all 0.3s ease;
|
96
|
+
display: flex;
|
97
|
+
align-items: center;
|
98
|
+
display: flex;
|
99
|
+
align-items: center;
|
100
|
+
|
101
|
+
i {
|
102
|
+
margin-right: 10px;
|
103
|
+
font-size: 18px;
|
104
|
+
transition: all 0.3s ease;
|
105
|
+
margin-top: -8px;
|
106
|
+
}
|
39
107
|
|
40
|
-
&.
|
108
|
+
&.is-active {
|
41
109
|
color: #42b983;
|
110
|
+
background-color: #f0f9f4;
|
111
|
+
transform: translateX(4px);
|
112
|
+
|
113
|
+
i {
|
114
|
+
color: #42b983;
|
115
|
+
transform: scale(1.2);
|
116
|
+
}
|
117
|
+
}
|
118
|
+
|
119
|
+
&:hover {
|
120
|
+
background-color: #f5f7fa;
|
121
|
+
transform: translateX(4px);
|
122
|
+
|
123
|
+
i {
|
124
|
+
transform: scale(1.2);
|
125
|
+
}
|
42
126
|
}
|
43
127
|
}
|
44
128
|
}
|
129
|
+
|
130
|
+
.el-main {
|
131
|
+
margin-left: 200px;
|
132
|
+
padding: 20px;
|
133
|
+
}
|
45
134
|
</style>
|
package/src/main.js
CHANGED
package/src/router/index.js
CHANGED
@@ -39,6 +39,16 @@ const routes = [
|
|
39
39
|
path: '/log',
|
40
40
|
name: 'log',
|
41
41
|
component: () => import(/* webpackChunkName: "about" */ '../views/Log.vue')
|
42
|
+
},
|
43
|
+
{
|
44
|
+
path: '/textEditor',
|
45
|
+
name: 'textEditor',
|
46
|
+
component: () => import(/* webpackChunkName: "about" */ '../views/textEditor.vue')
|
47
|
+
},
|
48
|
+
{
|
49
|
+
path: '/fireworks',
|
50
|
+
name: 'Fireworks',
|
51
|
+
component: () => import(/* webpackChunkName: "fireworks" */ '../views/Fireworks.vue')
|
42
52
|
}
|
43
53
|
]
|
44
54
|
|
package/src/utils/index.js
CHANGED
@@ -294,3 +294,18 @@ export function pathResolve(...paths) {
|
|
294
294
|
// 3. 返回最终的绝对路径
|
295
295
|
return '/' + stack.join('/')
|
296
296
|
}
|
297
|
+
// base64toFile
|
298
|
+
export function base64toFile(dataurl, filename = 'file') {
|
299
|
+
const arr = dataurl.split(',')
|
300
|
+
const mime = arr[0].match(/:(.*?);/)[1]
|
301
|
+
const suffix = mime.split('/')[1]
|
302
|
+
const bstr = atob(arr[1])
|
303
|
+
let n = bstr.length
|
304
|
+
const u8arr = new Uint8Array(n)
|
305
|
+
while (n--) {
|
306
|
+
u8arr[n] = bstr.charCodeAt(n)
|
307
|
+
}
|
308
|
+
return new File([u8arr], `${filename}.${suffix}`, {
|
309
|
+
type: mime
|
310
|
+
})
|
311
|
+
}
|
package/src/utils/request.js
CHANGED
@@ -15,6 +15,7 @@ console.log(process.env.VUE_APP_BASE_API)
|
|
15
15
|
service.interceptors.request.use(
|
16
16
|
(config) => {
|
17
17
|
// do something before request is sent
|
18
|
+
config.headers['Content-Type'] = 'application/json'
|
18
19
|
config.headers['AuthKey'] = 'authtpe84dzfl3iq62'
|
19
20
|
config.headers['Login-Env'] = getUa()
|
20
21
|
config.headers['Login-Device'] = JSON.stringify(browserType())
|
package/src/views/Date.vue
CHANGED
@@ -2,29 +2,73 @@
|
|
2
2
|
<div class="free-table">
|
3
3
|
<div class="example-table-box">
|
4
4
|
<p>基础日期-{{ date }}</p>
|
5
|
-
<
|
5
|
+
<BiSuperDate
|
6
|
+
v-model="superDate"
|
7
|
+
type="date"
|
8
|
+
placeholder="选择日期"
|
9
|
+
></BiSuperDate>
|
10
|
+
</div>
|
11
|
+
<div class="example-table-box">
|
12
|
+
<p>基础日期-{{ date }}</p>
|
13
|
+
<BiDatePicker
|
14
|
+
v-model="date"
|
15
|
+
type="date"
|
16
|
+
placeholder="选择日期"
|
17
|
+
></BiDatePicker>
|
6
18
|
</div>
|
7
19
|
<div class="example-table-box">
|
8
20
|
<p>基础周-{{ date1 }}</p>
|
9
|
-
<BiDatePicker
|
21
|
+
<BiDatePicker
|
22
|
+
v-model="date1"
|
23
|
+
type="week"
|
24
|
+
placeholder="选择周"
|
25
|
+
></BiDatePicker>
|
10
26
|
</div>
|
11
27
|
<div class="example-table-box">
|
12
28
|
<p>基础月-{{ date2 }}</p>
|
13
|
-
<BiDatePicker
|
29
|
+
<BiDatePicker
|
30
|
+
v-model="date2"
|
31
|
+
type="month"
|
32
|
+
placeholder="选择周"
|
33
|
+
></BiDatePicker>
|
14
34
|
</div>
|
15
35
|
<div class="example-table-box">
|
16
36
|
<p>范围日期-{{ date3 }}</p>
|
17
|
-
<BiDatePicker
|
37
|
+
<BiDatePicker
|
38
|
+
v-model="date3"
|
39
|
+
type="daterange"
|
40
|
+
placeholder="选择日期1"
|
41
|
+
:picker-option="pickerOptions1"
|
42
|
+
></BiDatePicker>
|
18
43
|
<p>范围日期-{{ date7 }}</p>
|
19
|
-
<BiDatePicker
|
44
|
+
<BiDatePicker
|
45
|
+
v-model="date7"
|
46
|
+
type="daterange"
|
47
|
+
placeholder="选择日期2"
|
48
|
+
:picker-option="pickerOptions2"
|
49
|
+
></BiDatePicker>
|
20
50
|
</div>
|
21
51
|
<div class="example-table-box">
|
22
52
|
<p>范围月-{{ date5 }}</p>
|
23
|
-
<BiDatePicker
|
53
|
+
<BiDatePicker
|
54
|
+
v-model="date5"
|
55
|
+
type="monthrange"
|
56
|
+
placeholder="选择日期"
|
57
|
+
format="yyyy-MM"
|
58
|
+
></BiDatePicker>
|
24
59
|
</div>
|
25
60
|
<div class="example-table-box">
|
26
61
|
<p>范围日期时间-{{ date6 }}</p>
|
27
|
-
<BiDatePicker
|
62
|
+
<BiDatePicker
|
63
|
+
v-model="date6"
|
64
|
+
type="datetimerange"
|
65
|
+
format="yyyy-MM-dd HH:mm:ss"
|
66
|
+
value-format="yyyy-MM-dd HH:mm:ss"
|
67
|
+
:default-time="['00:00:00', '23:59:59']"
|
68
|
+
range-separator="至"
|
69
|
+
start-placeholder="开始日期"
|
70
|
+
end-placeholder="结束日期"
|
71
|
+
></BiDatePicker>
|
28
72
|
</div>
|
29
73
|
</div>
|
30
74
|
</template>
|
@@ -39,6 +83,7 @@ export default {
|
|
39
83
|
},
|
40
84
|
data() {
|
41
85
|
return {
|
86
|
+
superDate: [],
|
42
87
|
date: '',
|
43
88
|
date1: '',
|
44
89
|
date2: '',
|
@@ -0,0 +1,253 @@
|
|
1
|
+
<template>
|
2
|
+
<div class="page-content">
|
3
|
+
<!-- 生日蛋糕SVG动画 -->
|
4
|
+
<div class="birthday-cake-container">
|
5
|
+
<object
|
6
|
+
data="./img/birthday-cake.svg"
|
7
|
+
type="image/svg+xml"
|
8
|
+
width="200"
|
9
|
+
height="240"
|
10
|
+
></object>
|
11
|
+
</div>
|
12
|
+
|
13
|
+
<div class="action-buttons">
|
14
|
+
<el-button
|
15
|
+
:disabled="isLaunching"
|
16
|
+
@click="handleSingleLaunch"
|
17
|
+
>
|
18
|
+
✨ 放个小烟花
|
19
|
+
</el-button>
|
20
|
+
<el-button
|
21
|
+
:disabled="isLaunching"
|
22
|
+
@click="handleImageLaunch(bp)"
|
23
|
+
>
|
24
|
+
🎉 打开幸运红包
|
25
|
+
</el-button>
|
26
|
+
<el-button
|
27
|
+
:disabled="isLaunching"
|
28
|
+
@click="handleImageLaunch(yd)"
|
29
|
+
>
|
30
|
+
🎉 打开红包雨
|
31
|
+
</el-button>
|
32
|
+
<el-button
|
33
|
+
:disabled="isLaunching"
|
34
|
+
@click="handleImageLaunch(xc)"
|
35
|
+
>
|
36
|
+
🎉 打开小丑红包
|
37
|
+
</el-button>
|
38
|
+
<el-button
|
39
|
+
:disabled="isLaunching"
|
40
|
+
type="primary"
|
41
|
+
@click="handleBirthdayFireworks"
|
42
|
+
>
|
43
|
+
🎂 生日庆祝模式
|
44
|
+
</el-button>
|
45
|
+
<el-button
|
46
|
+
:disabled="isLaunching"
|
47
|
+
type="warning"
|
48
|
+
@click="handleCakeFireworks"
|
49
|
+
>
|
50
|
+
🍰 蛋糕烟花秀
|
51
|
+
</el-button>
|
52
|
+
<el-button
|
53
|
+
:disabled="isLaunching"
|
54
|
+
@click="handleMultipleLaunch('')"
|
55
|
+
>
|
56
|
+
🎆 璀璨烟火秀
|
57
|
+
</el-button>
|
58
|
+
<el-button
|
59
|
+
:disabled="isLaunching"
|
60
|
+
@click="handleImageLaunch(sd)"
|
61
|
+
>
|
62
|
+
❄️ 飘点小雪花
|
63
|
+
</el-button>
|
64
|
+
<el-button
|
65
|
+
:disabled="isLaunching"
|
66
|
+
@click="handleMultipleLaunch(sd)"
|
67
|
+
>
|
68
|
+
❄️ 浪漫暴风雪
|
69
|
+
</el-button>
|
70
|
+
</div>
|
71
|
+
|
72
|
+
<el-descriptions
|
73
|
+
title="礼花组件说明"
|
74
|
+
direction="vertical"
|
75
|
+
:column="1"
|
76
|
+
border
|
77
|
+
style="margin-top: 50px"
|
78
|
+
>
|
79
|
+
<el-descriptions-item label="显示时机">
|
80
|
+
礼花效果组件全局注册了,在节假日的时候,会自动显示,你可以通过配置文件来控制显示时机
|
81
|
+
</el-descriptions-item>
|
82
|
+
<el-descriptions-item label="礼花样式">
|
83
|
+
默认显示几何图形,可以配置图片,图片需要提前在 packages/Fireworks/imgs 文件夹中预先定义。蛋糕模式会在canvas中央显示大蛋糕背景,使用彩色几何图形作为烟花粒子。
|
84
|
+
</el-descriptions-item>
|
85
|
+
<el-descriptions-item label="节日配置">
|
86
|
+
可以根据项目需要配置节日和对应的礼花样式
|
87
|
+
</el-descriptions-item>
|
88
|
+
<el-descriptions-item label="快捷键">
|
89
|
+
command + shift + p 或者 ctrl + shift + p
|
90
|
+
</el-descriptions-item>
|
91
|
+
<el-descriptions-item label="蛋糕模式">
|
92
|
+
点击"🍰 蛋糕烟花秀"按钮可体验特殊的蛋糕模式:大蛋糕固定显示在屏幕中央,彩色几何图形作为烟花粒子绽放。
|
93
|
+
</el-descriptions-item>
|
94
|
+
</el-descriptions>
|
95
|
+
|
96
|
+
<!-- 烟花组件 -->
|
97
|
+
<BiFireworks />
|
98
|
+
</div>
|
99
|
+
</template>
|
100
|
+
|
101
|
+
<script>
|
102
|
+
import bp from './img/hb.png'
|
103
|
+
import sd from './img/sd.png'
|
104
|
+
import yd from './img/yd.png'
|
105
|
+
import xc from './img/xc.png'
|
106
|
+
|
107
|
+
export default {
|
108
|
+
name: 'FireworksView',
|
109
|
+
data() {
|
110
|
+
return {
|
111
|
+
bp,
|
112
|
+
sd,
|
113
|
+
xc,
|
114
|
+
yd,
|
115
|
+
timerRef: null,
|
116
|
+
isLaunching: false
|
117
|
+
}
|
118
|
+
},
|
119
|
+
beforeDestroy() {
|
120
|
+
if (this.timerRef) {
|
121
|
+
clearInterval(this.timerRef)
|
122
|
+
this.timerRef = null
|
123
|
+
}
|
124
|
+
},
|
125
|
+
methods: {
|
126
|
+
triggerFireworks(count, src) {
|
127
|
+
// 清除之前的定时器
|
128
|
+
if (this.timerRef) {
|
129
|
+
clearInterval(this.timerRef)
|
130
|
+
this.timerRef = null
|
131
|
+
}
|
132
|
+
|
133
|
+
this.isLaunching = true // 开始发射时设置状态
|
134
|
+
|
135
|
+
let fired = 0
|
136
|
+
this.timerRef = setInterval(() => {
|
137
|
+
this.$root.$emit('triggerFireworks', src)
|
138
|
+
fired++
|
139
|
+
|
140
|
+
// 达到指定次数后清除定时器
|
141
|
+
if (fired >= count) {
|
142
|
+
clearInterval(this.timerRef)
|
143
|
+
this.timerRef = null
|
144
|
+
this.isLaunching = false // 发射完成后解除禁用
|
145
|
+
}
|
146
|
+
}, 1000)
|
147
|
+
},
|
148
|
+
|
149
|
+
// 简化后的处理函数
|
150
|
+
handleSingleLaunch() {
|
151
|
+
this.$root.$emit('triggerFireworks')
|
152
|
+
},
|
153
|
+
|
154
|
+
handleMultipleLaunch(src) {
|
155
|
+
this.triggerFireworks(10, src)
|
156
|
+
},
|
157
|
+
|
158
|
+
handleImageLaunch(src) {
|
159
|
+
this.$root.$emit('triggerFireworks', src)
|
160
|
+
},
|
161
|
+
|
162
|
+
handleBirthdayFireworks() {
|
163
|
+
// 生日庆祝模式:多阶段烟花表演
|
164
|
+
this.isLaunching = true
|
165
|
+
|
166
|
+
// 第一阶段:蛋糕烟花
|
167
|
+
this.$root.$emit('triggerFireworks', 'cake-mode')
|
168
|
+
|
169
|
+
// 第二阶段:红包雨
|
170
|
+
setTimeout(() => {
|
171
|
+
this.$root.$emit('triggerFireworks', this.bp)
|
172
|
+
}, 800)
|
173
|
+
|
174
|
+
// 第三阶段:更多蛋糕
|
175
|
+
setTimeout(() => {
|
176
|
+
this.$root.$emit('triggerFireworks', 'cake-mode')
|
177
|
+
}, 1600)
|
178
|
+
|
179
|
+
// 第四阶段:混合烟花
|
180
|
+
setTimeout(() => {
|
181
|
+
this.$root.$emit('triggerFireworks', this.yd)
|
182
|
+
}, 2400)
|
183
|
+
|
184
|
+
// 第五阶段:大结局
|
185
|
+
setTimeout(() => {
|
186
|
+
this.$root.$emit('triggerFireworks')
|
187
|
+
this.$root.$emit('triggerFireworks', this.xc)
|
188
|
+
}, 3200)
|
189
|
+
|
190
|
+
// 重置状态
|
191
|
+
setTimeout(() => {
|
192
|
+
this.isLaunching = false
|
193
|
+
}, 4000)
|
194
|
+
},
|
195
|
+
|
196
|
+
handleCakeFireworks() {
|
197
|
+
// 蛋糕烟花秀:专门展示蛋糕模式效果
|
198
|
+
this.isLaunching = true
|
199
|
+
|
200
|
+
// 连续发射多轮蛋糕烟花,展示大蛋糕背景效果
|
201
|
+
this.$root.$emit('triggerFireworks', 'cake-mode')
|
202
|
+
|
203
|
+
// setTimeout(() => {
|
204
|
+
// this.$root.$emit('triggerFireworks', 'cake-mode')
|
205
|
+
// }, 1000)
|
206
|
+
|
207
|
+
// setTimeout(() => {
|
208
|
+
// this.$root.$emit('triggerFireworks', 'cake-mode')
|
209
|
+
// }, 2000)
|
210
|
+
|
211
|
+
// 重置状态
|
212
|
+
setTimeout(() => {
|
213
|
+
this.isLaunching = false
|
214
|
+
}, 3000)
|
215
|
+
}
|
216
|
+
}
|
217
|
+
}
|
218
|
+
</script>
|
219
|
+
|
220
|
+
<style lang="scss" scoped>
|
221
|
+
.page-content {
|
222
|
+
padding: 20px;
|
223
|
+
text-align: center;
|
224
|
+
}
|
225
|
+
|
226
|
+
.birthday-cake-container {
|
227
|
+
margin: 20px auto;
|
228
|
+
display: flex;
|
229
|
+
justify-content: center;
|
230
|
+
align-items: center;
|
231
|
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
232
|
+
border-radius: 15px;
|
233
|
+
padding: 20px;
|
234
|
+
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
|
235
|
+
max-width: 240px;
|
236
|
+
margin-bottom: 30px;
|
237
|
+
|
238
|
+
object {
|
239
|
+
border-radius: 10px;
|
240
|
+
background: rgba(255, 255, 255, 0.1);
|
241
|
+
backdrop-filter: blur(10px);
|
242
|
+
}
|
243
|
+
}
|
244
|
+
|
245
|
+
.action-buttons {
|
246
|
+
margin-bottom: 20px;
|
247
|
+
}
|
248
|
+
|
249
|
+
.action-buttons .el-button {
|
250
|
+
margin-right: 10px;
|
251
|
+
margin-bottom: 10px;
|
252
|
+
}
|
253
|
+
</style>
|
package/src/views/Layout.vue
CHANGED
@@ -4,7 +4,9 @@
|
|
4
4
|
|
5
5
|
<BiNavbarTool
|
6
6
|
:token="token"
|
7
|
+
user-id="67"
|
7
8
|
:avatar="avatar"
|
9
|
+
:task-center="true"
|
8
10
|
/>
|
9
11
|
</header>
|
10
12
|
|
@@ -19,7 +21,7 @@
|
|
19
21
|
export default {
|
20
22
|
data() {
|
21
23
|
return {
|
22
|
-
token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
|
24
|
+
token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIxNTc1NzE4NTMyMiIsImxvZ2luX2VudiI6IiIsImlhdCI6MTc0NzgwNjEyMCwiZXhwIjoxNzQ4NDEwOTIwLCJuYmYiOjE3NDc4MDYxMjAsInN1YiI6InRva2Vu6K6k6K-BIiwianRpIjoiMDA2NDE3YmVlNDQyZjU2ZTQ5YzBiNDcyM2RkMDRkOTIifQ.fzpMThSA7SoscLOk_wiymMO3NYLFgjYR_zPuS5Ar_98',
|
23
25
|
avatar: 'https://static-legacy.dingtalk.com/media/lADPBbCc1SE7SD7NAuzNAug_744_748.jpg?imageView2/1/w/80/h/80'
|
24
26
|
}
|
25
27
|
},
|
Binary file
|
@@ -0,0 +1,40 @@
|
|
1
|
+
<svg width="30" height="30" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<defs>
|
3
|
+
<radialGradient id="miniCakeGradient" cx="50%" cy="50%" r="50%">
|
4
|
+
<stop offset="0%" style="stop-color:#FFB6C1;stop-opacity:1" />
|
5
|
+
<stop offset="100%" style="stop-color:#FF69B4;stop-opacity:1" />
|
6
|
+
</radialGradient>
|
7
|
+
<radialGradient id="miniFlameGradient" cx="50%" cy="80%" r="60%">
|
8
|
+
<stop offset="0%" style="stop-color:#FFF8DC;stop-opacity:1" />
|
9
|
+
<stop offset="30%" style="stop-color:#FFD700;stop-opacity:1" />
|
10
|
+
<stop offset="80%" style="stop-color:#FF8C00;stop-opacity:1" />
|
11
|
+
<stop offset="100%" style="stop-color:#FF4500;stop-opacity:0.9" />
|
12
|
+
</radialGradient>
|
13
|
+
</defs>
|
14
|
+
|
15
|
+
<!-- 蛋糕底部 -->
|
16
|
+
<ellipse cx="15" cy="25" rx="12" ry="3" fill="#90EE90"/>
|
17
|
+
<rect x="3" y="22" width="24" height="6" fill="#98FB98"/>
|
18
|
+
|
19
|
+
<!-- 蛋糕顶部 -->
|
20
|
+
<ellipse cx="15" cy="18" rx="8" ry="2" fill="url(#miniCakeGradient)"/>
|
21
|
+
<rect x="7" y="16" width="16" height="4" fill="url(#miniCakeGradient)"/>
|
22
|
+
|
23
|
+
<!-- 蜡烛 -->
|
24
|
+
<rect x="14" y="12" width="2" height="6" fill="#FFE4B5" stroke="#D2691E" stroke-width="0.3"/>
|
25
|
+
|
26
|
+
<!-- 火焰 -->
|
27
|
+
<ellipse cx="15" cy="9.5" rx="1.2" ry="2.5" fill="url(#miniFlameGradient)">
|
28
|
+
<animate attributeName="ry" values="2.5;3;2;2.5" dur="0.8s" repeatCount="indefinite"/>
|
29
|
+
<animate attributeName="opacity" values="0.9;1;0.8;0.9" dur="0.8s" repeatCount="indefinite"/>
|
30
|
+
</ellipse>
|
31
|
+
|
32
|
+
<!-- 火焰内核 -->
|
33
|
+
<ellipse cx="15" cy="10" rx="0.5" ry="1" fill="#FFD700" opacity="0.8">
|
34
|
+
<animate attributeName="opacity" values="0.8;0.4;0.8" dur="0.8s" repeatCount="indefinite"/>
|
35
|
+
</ellipse>
|
36
|
+
|
37
|
+
<!-- 装饰点 -->
|
38
|
+
<circle cx="12" cy="18" r="1" fill="#DC143C"/>
|
39
|
+
<circle cx="18" cy="18" r="1" fill="#DC143C"/>
|
40
|
+
</svg>
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,35 @@
|
|
1
|
+
<template>
|
2
|
+
<div>
|
3
|
+
<BiTextEditor
|
4
|
+
:remark.sync="ruleForm.content"
|
5
|
+
domid="textEditor33"
|
6
|
+
:contenteditable="true"
|
7
|
+
@resultReamrk="resultReamrk"
|
8
|
+
/>
|
9
|
+
<BiTextEditor
|
10
|
+
:remark.sync="ruleForm.remark"
|
11
|
+
domid="textEditor55"
|
12
|
+
:contenteditable="true"
|
13
|
+
@resultReamrk="resultReamrk"
|
14
|
+
/>
|
15
|
+
</div>
|
16
|
+
</template>
|
17
|
+
<script>
|
18
|
+
export default {
|
19
|
+
data() {
|
20
|
+
return {
|
21
|
+
ruleForm: {
|
22
|
+
content: '',
|
23
|
+
remark: ''
|
24
|
+
}
|
25
|
+
}
|
26
|
+
},
|
27
|
+
methods: {
|
28
|
+
resultReamrk(val) {
|
29
|
+
console.log(val)
|
30
|
+
}
|
31
|
+
}
|
32
|
+
}
|
33
|
+
</script>
|
34
|
+
<style lang="scss" scoped>
|
35
|
+
</style>
|
@@ -1 +0,0 @@
|
|
1
|
-
.example-table-box[data-v-49a6bb0c]{margin:25px 50px}.example-table-box p[data-v-49a6bb0c]{text-align:left;font-weight:700}.box[data-v-ac1da312]{background:#ccc;height:200px;padding:10px 50px}header[data-v-ac1da312]{height:50px;background:#fff}.bi-column-container[data-v-3ffbf407]{display:flex;justify-content:space-between}.bi-column-container .checkbox-container .checkbox-title[data-v-3ffbf407]{cursor:pointer;height:34px;line-height:22px;font-size:14px;font-weight:500;background-color:#f5f5f5;color:#333;position:relative;padding-left:12px;margin-bottom:12px;border-radius:4px;align-items:center;display:flex}.bi-column-container .checkbox-container .el-checkbox-group[data-v-3ffbf407]{display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:0;padding-left:12px}.bi-column-container .checkbox-container .el-checkbox-group .el-checkbox[data-v-3ffbf407]{width:210px!important;display:block;float:left;margin:0!important;min-height:32px;max-height:52px;line-height:20px}.bi-column-container .column-container[data-v-3ffbf407]{margin-left:20px;width:230px;flex:0 0 230px}.bi-column-container .column-container .column-title[data-v-3ffbf407]{display:flex;justify-content:space-between}.bi-column-container .column-container .column-title .el-button[data-v-3ffbf407]{padding:0}.bi-column-container .column-container .column-group-title[data-v-3ffbf407]{font-size:14px;color:#8c8c8c;margin:5px 0}.bi-column-container .column-container .column-configurable .selected-column-item[data-v-3ffbf407]{cursor:move;height:26px;background:#f0f0f0;border-radius:4px;line-height:28px;padding:0 8px;margin-top:0;display:flex;align-items:center;color:#666;font-size:14px}.bi-column-container .column-container .column-configurable .selected-column-item[data-v-3ffbf407]:not(:first-child){margin-top:8px}.bi-column-container .column-container .column-configurable .selected-column-item .column-name[data-v-3ffbf407]{flex-grow:2;margin-left:8px}.bi-column-container .column-container .column-configurable .selected-column-item .column-close[data-v-3ffbf407]{cursor:pointer}.bi-column-dialog .el-card__header{background-color:#f8f9fa;box-sizing:border-box;line-height:22px;padding:8px 12px;font-weight:600;color:#333}.bi-column-dialog .el-card__body{padding:12px 16px;height:395px;box-sizing:border-box;overflow-y:auto}.example-table-box[data-v-3caabf88]{margin:25px 50px;position:relative}.example-table-box p[data-v-3caabf88]{text-align:left;font-weight:700}
|