bi-element-ui 1.1.97 → 1.1.99

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.
Files changed (49) hide show
  1. package/.browserslistrc +3 -3
  2. package/.eslintignore +1 -1
  3. package/.prettierrc +8 -8
  4. package/.prettierrc.json +8 -8
  5. package/.vscode/extensions.json +3 -3
  6. package/.vscode/settings.json +2 -2
  7. package/README.md +148 -148
  8. package/cypress.json +3 -3
  9. package/lib/bi-element-ui.common.js +114885 -114885
  10. package/lib/bi-element-ui.css +2 -2
  11. package/lib/bi-element-ui.umd.js +114885 -114885
  12. package/lib/bi-element-ui.umd.min.js +47 -47
  13. package/package-lock2.json +17309 -17309
  14. package/package.json +1 -1
  15. package/pnpm-lock.yaml +13329 -0
  16. package/src/App.vue +2 -0
  17. package/src/components/BiDatePicker/datePickerOption.js +163 -163
  18. package/src/components/BiDatePicker/index.vue +59 -59
  19. package/src/components/BiTable/columu.vue +81 -81
  20. package/src/components/BiTable/forced.js +63 -63
  21. package/src/components/BiTable/index.js +6 -6
  22. package/src/components/BiTable/render.vue +13 -13
  23. package/src/components/BiTable/table.vue +179 -179
  24. package/src/components/BiTableColumn/Group.vue +275 -275
  25. package/src/components/BiTableColumn/api.js +16 -16
  26. package/src/components/BiTooltipIcon/index.vue +63 -63
  27. package/src/components/EditBtn.vue +15 -15
  28. package/src/components/FreeButton/index.vue +50 -50
  29. package/src/components/Pagination/index.vue +91 -91
  30. package/src/components/Pagination/scrollTo.js +65 -65
  31. package/src/main.js +3 -1
  32. package/src/router/index.js +49 -44
  33. package/src/store/index.js +11 -11
  34. package/src/utils/auth.js +66 -0
  35. package/src/utils/index.js +296 -0
  36. package/src/utils/request.js +81 -0
  37. package/src/views/Date.vue +96 -96
  38. package/src/views/Home.vue +11 -8
  39. package/src/views/Layout.vue +34 -34
  40. package/src/views/Log.vue +18 -0
  41. package/src/views/Scene.vue +111 -111
  42. package/src/views/showData.vue +2 -2
  43. package/tests/e2e/.eslintrc.js +10 -10
  44. package/tests/e2e/plugins/index.js +25 -25
  45. package/tests/e2e/specs/test.js +8 -8
  46. package/tests/e2e/support/commands.js +25 -25
  47. package/tests/e2e/support/index.js +20 -20
  48. package/tests/unit/example.spec.js +13 -13
  49. package//345/211/215/347/253/257ui/346/240/267/345/274/217/350/247/204/350/214/203.md +101 -101
package/src/App.vue CHANGED
@@ -9,12 +9,14 @@
9
9
  <router-link to="/table">Table</router-link>
10
10
  <router-link to="/showData">Data</router-link>
11
11
  <router-link to="/layout">布局</router-link>
12
+ <router-link to="/log">日志</router-link>
12
13
  </div>
13
14
  </el-aside>
14
15
  <el-main>
15
16
  <router-view />
16
17
  </el-main>
17
18
  </el-container>
19
+ <BiLogDialog />
18
20
  </div>
19
21
  </template>
20
22
 
@@ -1,163 +1,163 @@
1
- import moment from 'moment'
2
- const pickerOptions = {
3
- daterange: {
4
- shortcuts: [
5
- {
6
- text: '今天',
7
- onClick(picker) {
8
- const end = moment().format('YYYY-MM-DD 23:59:59')
9
- const start = moment().format('YYYY-MM-DD 00:00:00')
10
- // const end = new Date()
11
- // const start = new Date()
12
- picker.$emit('pick', [start, end])
13
- }
14
- },
15
- {
16
- text: '昨天',
17
- onClick(picker) {
18
- const end = moment().subtract(1, 'days').format('YYYY-MM-DD 23:59:59')
19
- const start = moment().subtract(1, 'days').format('YYYY-MM-DD 00:00:00')
20
- picker.$emit('pick', [start, end])
21
- }
22
- },
23
- {
24
- text: '近一周',
25
- onClick(picker) {
26
- const end = moment().format('YYYY-MM-DD 23:59:59')
27
- const start = moment().subtract(7, 'days').format('YYYY-MM-DD 00:00:00')
28
- picker.$emit('pick', [start, end])
29
- }
30
- },
31
- {
32
- text: '近一月',
33
- onClick(picker) {
34
- const end = moment().format('YYYY-MM-DD 23:59:59')
35
- const start = moment().subtract(30, 'days').format('YYYY-MM-DD 00:00:00')
36
- picker.$emit('pick', [start, end])
37
- }
38
- },
39
- {
40
- text: '上个月',
41
- onClick(picker) {
42
- const start = moment().startOf('month').subtract(1, 'month').format('YYYY-MM-DD 00:00:00')
43
- const end = moment().endOf('month').subtract(1, 'month').format('YYYY-MM-DD 23:59:59')
44
- picker.$emit('pick', [start, end])
45
- }
46
- },
47
- {
48
- text: '本月',
49
- onClick(picker) {
50
- const start = moment().startOf('month').format('YYYY-MM-DD 00:00:00')
51
- const end = moment().endOf('month').format('YYYY-MM-DD 23:59:59')
52
- picker.$emit('pick', [start, end])
53
- }
54
- }
55
- ]
56
- },
57
- monthrange: {
58
- shortcuts: [
59
- {
60
- text: '本月',
61
- onClick(picker) {
62
- const start = moment().startOf('month').format('YYYY-MM-DD')
63
- const end = moment().endOf('month').format('YYYY-MM-DD')
64
- picker.$emit('pick', [start, end])
65
- }
66
- },
67
- {
68
- text: '最近三个月',
69
- onClick(picker) {
70
- const start = moment().subtract(2, 'month').startOf('month').format('YYYY-MM-DD')
71
- const end = moment().endOf('month').format('YYYY-MM-DD')
72
- picker.$emit('pick', [start, end])
73
- }
74
- },
75
- {
76
- text: '最近六个月',
77
- onClick(picker) {
78
- const start = moment().subtract(5, 'month').startOf('month').format('YYYY-MM-DD')
79
- const end = moment().endOf('month').format('YYYY-MM-DD')
80
- picker.$emit('pick', [start, end])
81
- }
82
- },
83
- {
84
- text: '最近一年',
85
- onClick(picker) {
86
- const start = moment().subtract(11, 'month').startOf('month').format('YYYY-MM-DD')
87
- const end = moment().endOf('month').format('YYYY-MM-DD')
88
- picker.$emit('pick', [start, end])
89
- }
90
- },
91
- {
92
- text: '今年',
93
- onClick(picker) {
94
- const start = moment().startOf('year').startOf('month').format('YYYY-MM-DD')
95
- const end = moment().endOf('month').format('YYYY-MM-DD')
96
- picker.$emit('pick', [start, end])
97
- }
98
- }
99
- ]
100
- },
101
- datetimerange: {
102
- shortcuts: [
103
- {
104
- text: '今天',
105
- onClick(picker) {
106
- const end = moment().format('YYYY-MM-DD 23:59:59')
107
- const start = moment().format('YYYY-MM-DD 00:00:00')
108
- // const end = new Date()
109
- // const start = new Date()
110
- picker.$emit('pick', [start, end])
111
- }
112
- },
113
- {
114
- text: '昨天',
115
- onClick(picker) {
116
- const end = moment().subtract(1, 'days').format('YYYY-MM-DD 23:59:59')
117
- const start = moment().subtract(1, 'days').format('YYYY-MM-DD 00:00:00')
118
- picker.$emit('pick', [start, end])
119
- }
120
- },
121
- {
122
- text: '近一周',
123
- onClick(picker) {
124
- const end = moment().format('YYYY-MM-DD 23:59:59')
125
- const start = moment().subtract(7, 'days').format('YYYY-MM-DD 00:00:00')
126
- picker.$emit('pick', [start, end])
127
- }
128
- },
129
- {
130
- text: '近一月',
131
- onClick(picker) {
132
- const end = moment().format('YYYY-MM-DD 23:59:59')
133
- const start = moment().subtract(30, 'days').format('YYYY-MM-DD 00:00:00')
134
- picker.$emit('pick', [start, end])
135
- }
136
- },
137
- {
138
- text: '上个月',
139
- onClick(picker) {
140
- if (picker.value !== null) {
141
- const end = moment(picker.value[1]).subtract(1, 'months').endOf('month').format('YYYY-MM-DD 23:59:59')
142
- const start = moment(picker.value[0]).subtract(1, 'months').startOf('month').format('YYYY-MM-DD 00:00:00')
143
- picker.$emit('pick', [start, end])
144
- } else {
145
- const end = moment().subtract(1, 'months').endOf('month').format('YYYY-MM-DD 23:59:59')
146
- const start = moment().subtract(1, 'months').startOf('month').format('YYYY-MM-DD 00:00:00')
147
- picker.$emit('pick', [start, end])
148
- }
149
- }
150
- },
151
- {
152
- text: '本月',
153
- onClick(picker) {
154
- const end = moment().endOf('month').format('YYYY-MM-DD 23:59:59')
155
- const start = moment().startOf('month').format('YYYY-MM-DD 00:00:00')
156
- picker.$emit('pick', [start, end])
157
- }
158
- }
159
- ]
160
- }
161
- }
162
-
163
- export default pickerOptions
1
+ import moment from 'moment'
2
+ const pickerOptions = {
3
+ daterange: {
4
+ shortcuts: [
5
+ {
6
+ text: '今天',
7
+ onClick(picker) {
8
+ const end = moment().format('YYYY-MM-DD 23:59:59')
9
+ const start = moment().format('YYYY-MM-DD 00:00:00')
10
+ // const end = new Date()
11
+ // const start = new Date()
12
+ picker.$emit('pick', [start, end])
13
+ }
14
+ },
15
+ {
16
+ text: '昨天',
17
+ onClick(picker) {
18
+ const end = moment().subtract(1, 'days').format('YYYY-MM-DD 23:59:59')
19
+ const start = moment().subtract(1, 'days').format('YYYY-MM-DD 00:00:00')
20
+ picker.$emit('pick', [start, end])
21
+ }
22
+ },
23
+ {
24
+ text: '近一周',
25
+ onClick(picker) {
26
+ const end = moment().format('YYYY-MM-DD 23:59:59')
27
+ const start = moment().subtract(7, 'days').format('YYYY-MM-DD 00:00:00')
28
+ picker.$emit('pick', [start, end])
29
+ }
30
+ },
31
+ {
32
+ text: '近一月',
33
+ onClick(picker) {
34
+ const end = moment().format('YYYY-MM-DD 23:59:59')
35
+ const start = moment().subtract(30, 'days').format('YYYY-MM-DD 00:00:00')
36
+ picker.$emit('pick', [start, end])
37
+ }
38
+ },
39
+ {
40
+ text: '上个月',
41
+ onClick(picker) {
42
+ const start = moment().startOf('month').subtract(1, 'month').format('YYYY-MM-DD 00:00:00')
43
+ const end = moment().endOf('month').subtract(1, 'month').format('YYYY-MM-DD 23:59:59')
44
+ picker.$emit('pick', [start, end])
45
+ }
46
+ },
47
+ {
48
+ text: '本月',
49
+ onClick(picker) {
50
+ const start = moment().startOf('month').format('YYYY-MM-DD 00:00:00')
51
+ const end = moment().endOf('month').format('YYYY-MM-DD 23:59:59')
52
+ picker.$emit('pick', [start, end])
53
+ }
54
+ }
55
+ ]
56
+ },
57
+ monthrange: {
58
+ shortcuts: [
59
+ {
60
+ text: '本月',
61
+ onClick(picker) {
62
+ const start = moment().startOf('month').format('YYYY-MM-DD')
63
+ const end = moment().endOf('month').format('YYYY-MM-DD')
64
+ picker.$emit('pick', [start, end])
65
+ }
66
+ },
67
+ {
68
+ text: '最近三个月',
69
+ onClick(picker) {
70
+ const start = moment().subtract(2, 'month').startOf('month').format('YYYY-MM-DD')
71
+ const end = moment().endOf('month').format('YYYY-MM-DD')
72
+ picker.$emit('pick', [start, end])
73
+ }
74
+ },
75
+ {
76
+ text: '最近六个月',
77
+ onClick(picker) {
78
+ const start = moment().subtract(5, 'month').startOf('month').format('YYYY-MM-DD')
79
+ const end = moment().endOf('month').format('YYYY-MM-DD')
80
+ picker.$emit('pick', [start, end])
81
+ }
82
+ },
83
+ {
84
+ text: '最近一年',
85
+ onClick(picker) {
86
+ const start = moment().subtract(11, 'month').startOf('month').format('YYYY-MM-DD')
87
+ const end = moment().endOf('month').format('YYYY-MM-DD')
88
+ picker.$emit('pick', [start, end])
89
+ }
90
+ },
91
+ {
92
+ text: '今年',
93
+ onClick(picker) {
94
+ const start = moment().startOf('year').startOf('month').format('YYYY-MM-DD')
95
+ const end = moment().endOf('month').format('YYYY-MM-DD')
96
+ picker.$emit('pick', [start, end])
97
+ }
98
+ }
99
+ ]
100
+ },
101
+ datetimerange: {
102
+ shortcuts: [
103
+ {
104
+ text: '今天',
105
+ onClick(picker) {
106
+ const end = moment().format('YYYY-MM-DD 23:59:59')
107
+ const start = moment().format('YYYY-MM-DD 00:00:00')
108
+ // const end = new Date()
109
+ // const start = new Date()
110
+ picker.$emit('pick', [start, end])
111
+ }
112
+ },
113
+ {
114
+ text: '昨天',
115
+ onClick(picker) {
116
+ const end = moment().subtract(1, 'days').format('YYYY-MM-DD 23:59:59')
117
+ const start = moment().subtract(1, 'days').format('YYYY-MM-DD 00:00:00')
118
+ picker.$emit('pick', [start, end])
119
+ }
120
+ },
121
+ {
122
+ text: '近一周',
123
+ onClick(picker) {
124
+ const end = moment().format('YYYY-MM-DD 23:59:59')
125
+ const start = moment().subtract(7, 'days').format('YYYY-MM-DD 00:00:00')
126
+ picker.$emit('pick', [start, end])
127
+ }
128
+ },
129
+ {
130
+ text: '近一月',
131
+ onClick(picker) {
132
+ const end = moment().format('YYYY-MM-DD 23:59:59')
133
+ const start = moment().subtract(30, 'days').format('YYYY-MM-DD 00:00:00')
134
+ picker.$emit('pick', [start, end])
135
+ }
136
+ },
137
+ {
138
+ text: '上个月',
139
+ onClick(picker) {
140
+ if (picker.value !== null) {
141
+ const end = moment(picker.value[1]).subtract(1, 'months').endOf('month').format('YYYY-MM-DD 23:59:59')
142
+ const start = moment(picker.value[0]).subtract(1, 'months').startOf('month').format('YYYY-MM-DD 00:00:00')
143
+ picker.$emit('pick', [start, end])
144
+ } else {
145
+ const end = moment().subtract(1, 'months').endOf('month').format('YYYY-MM-DD 23:59:59')
146
+ const start = moment().subtract(1, 'months').startOf('month').format('YYYY-MM-DD 00:00:00')
147
+ picker.$emit('pick', [start, end])
148
+ }
149
+ }
150
+ },
151
+ {
152
+ text: '本月',
153
+ onClick(picker) {
154
+ const end = moment().endOf('month').format('YYYY-MM-DD 23:59:59')
155
+ const start = moment().startOf('month').format('YYYY-MM-DD 00:00:00')
156
+ picker.$emit('pick', [start, end])
157
+ }
158
+ }
159
+ ]
160
+ }
161
+ }
162
+
163
+ export default pickerOptions
@@ -1,59 +1,59 @@
1
- <template>
2
- <el-date-picker v-if="true" v-model="date" :picker-options="componentPickerOptions" :format="format" :value-format="valueFormat" v-bind="$attrs" v-on="$listeners"> </el-date-picker>
3
- <el-date-picker v-else v-model="date" type="date" placeholder="选择日期"> </el-date-picker>
4
- </template>
5
-
6
- <script>
7
- import datePickerOption from './datePickerOption'
8
- export default {
9
- name: 'BiDatepicker',
10
- props: {
11
- pickerOption: {
12
- type: Object,
13
- default: () => {
14
- return {}
15
- }
16
- },
17
- format: {
18
- type: String,
19
- default: 'yyyy-MM-dd'
20
- },
21
- valueFormat: {
22
- type: String,
23
- default: 'yyyy-MM-dd'
24
- },
25
- value: {
26
- type: String || Array,
27
- default: ''
28
- }
29
- },
30
- computed: {
31
- date: {
32
- get() {
33
- return this.value
34
- },
35
- set(val) {
36
- this.$emit('input', val)
37
- }
38
- },
39
- componentPickerOptions() {
40
- const type = this.$attrs.type
41
- if (type === 'daterange') {
42
- return Object.assign(datePickerOption.daterange, this.pickerOption)
43
- } else if (type === 'monthrange') {
44
- return Object.assign(datePickerOption.monthrange, this.pickerOption)
45
- } else if (type === 'datetimerange') {
46
- return Object.assign(datePickerOption.datetimerange, this.pickerOption)
47
- } else {
48
- return this.pickerOption
49
- }
50
- }
51
- },
52
- methods: {}
53
- }
54
- </script>
55
- <style>
56
- .free-button {
57
- margin: 10px 0;
58
- }
59
- </style>
1
+ <template>
2
+ <el-date-picker v-if="true" v-model="date" :picker-options="componentPickerOptions" :format="format" :value-format="valueFormat" v-bind="$attrs" v-on="$listeners"> </el-date-picker>
3
+ <el-date-picker v-else v-model="date" type="date" placeholder="选择日期"> </el-date-picker>
4
+ </template>
5
+
6
+ <script>
7
+ import datePickerOption from './datePickerOption'
8
+ export default {
9
+ name: 'BiDatepicker',
10
+ props: {
11
+ pickerOption: {
12
+ type: Object,
13
+ default: () => {
14
+ return {}
15
+ }
16
+ },
17
+ format: {
18
+ type: String,
19
+ default: 'yyyy-MM-dd'
20
+ },
21
+ valueFormat: {
22
+ type: String,
23
+ default: 'yyyy-MM-dd'
24
+ },
25
+ value: {
26
+ type: String || Array,
27
+ default: ''
28
+ }
29
+ },
30
+ computed: {
31
+ date: {
32
+ get() {
33
+ return this.value
34
+ },
35
+ set(val) {
36
+ this.$emit('input', val)
37
+ }
38
+ },
39
+ componentPickerOptions() {
40
+ const type = this.$attrs.type
41
+ if (type === 'daterange') {
42
+ return Object.assign(datePickerOption.daterange, this.pickerOption)
43
+ } else if (type === 'monthrange') {
44
+ return Object.assign(datePickerOption.monthrange, this.pickerOption)
45
+ } else if (type === 'datetimerange') {
46
+ return Object.assign(datePickerOption.datetimerange, this.pickerOption)
47
+ } else {
48
+ return this.pickerOption
49
+ }
50
+ }
51
+ },
52
+ methods: {}
53
+ }
54
+ </script>
55
+ <style>
56
+ .free-button {
57
+ margin: 10px 0;
58
+ }
59
+ </style>
@@ -1,81 +1,81 @@
1
- <template>
2
- <el-table-column v-bind="column" v-on="$listeners">
3
- <template slot="header" slot-scope="scope">
4
- <bi-render v-if="column.renderHeader" :scope="scope" :render="column.renderHeader" />
5
- <span v-else>{{ scope.column.label }}</span>
6
- </template>
7
-
8
- <template slot-scope="scope">
9
- <component :is="column.component" v-if="column.component" v-bind="getCptBind(scope, column)" v-on="column.listeners" />
10
-
11
- <!-- 嵌套表格 -->
12
- <template v-else-if="column.children">
13
- <free-column v-for="col in column.children" :key="col.prop" :column="col" />
14
- </template>
15
-
16
- <bi-render v-else :scope="scope" :render="column.render" />
17
- </template>
18
- </el-table-column>
19
- </template>
20
-
21
- <script>
22
- import BiRender from './render'
23
- import CellForced from './forced'
24
-
25
- export default {
26
- name: 'BiColumn',
27
- components: {
28
- BiRender
29
- },
30
- props: {
31
- column: {
32
- type: Object,
33
- default: () => {}
34
- }
35
- },
36
- watch: {
37
- column: {
38
- handler: 'renderColumn',
39
- immediate: true
40
- }
41
- },
42
- methods: {
43
- renderColumn() {
44
- const { column } = this
45
- // 多选:selection / 索引:index / 展开的按钮:expand
46
- if (column.type) {
47
- column.renderHeader = CellForced[column.type].renderHeader
48
- column.render = column.render || CellForced[column.type].renderCell
49
- }
50
- // 格式化内容
51
- if (column.formatter) {
52
- column.render = (h, scope) => {
53
- return <span>{scope.column.formatter(scope.row, scope.column, scope.row[scope.column.property], scope.$index)}</span>
54
- }
55
- }
56
- // 渲染成text
57
- if (!column.render) {
58
- column.render = (h, scope) => {
59
- return <span>{scope.row[scope.column.property]}</span>
60
- }
61
- }
62
-
63
- return column
64
- },
65
-
66
- getColBind(col) {
67
- const bind = Object.assign({}, this.$attrs, col)
68
- delete bind.component
69
- delete bind.listeners
70
- delete bind.propsHandler
71
- return bind
72
- },
73
-
74
- getCptBind({ row, column }, col) {
75
- const props = { row, col, column }
76
- const handler = col.propsHandler
77
- return (handler && handler(props)) || props
78
- }
79
- }
80
- }
81
- </script>
1
+ <template>
2
+ <el-table-column v-bind="column" v-on="$listeners">
3
+ <template slot="header" slot-scope="scope">
4
+ <bi-render v-if="column.renderHeader" :scope="scope" :render="column.renderHeader" />
5
+ <span v-else>{{ scope.column.label }}</span>
6
+ </template>
7
+
8
+ <template slot-scope="scope">
9
+ <component :is="column.component" v-if="column.component" v-bind="getCptBind(scope, column)" v-on="column.listeners" />
10
+
11
+ <!-- 嵌套表格 -->
12
+ <template v-else-if="column.children">
13
+ <free-column v-for="col in column.children" :key="col.prop" :column="col" />
14
+ </template>
15
+
16
+ <bi-render v-else :scope="scope" :render="column.render" />
17
+ </template>
18
+ </el-table-column>
19
+ </template>
20
+
21
+ <script>
22
+ import BiRender from './render'
23
+ import CellForced from './forced'
24
+
25
+ export default {
26
+ name: 'BiColumn',
27
+ components: {
28
+ BiRender
29
+ },
30
+ props: {
31
+ column: {
32
+ type: Object,
33
+ default: () => {}
34
+ }
35
+ },
36
+ watch: {
37
+ column: {
38
+ handler: 'renderColumn',
39
+ immediate: true
40
+ }
41
+ },
42
+ methods: {
43
+ renderColumn() {
44
+ const { column } = this
45
+ // 多选:selection / 索引:index / 展开的按钮:expand
46
+ if (column.type) {
47
+ column.renderHeader = CellForced[column.type].renderHeader
48
+ column.render = column.render || CellForced[column.type].renderCell
49
+ }
50
+ // 格式化内容
51
+ if (column.formatter) {
52
+ column.render = (h, scope) => {
53
+ return <span>{scope.column.formatter(scope.row, scope.column, scope.row[scope.column.property], scope.$index)}</span>
54
+ }
55
+ }
56
+ // 渲染成text
57
+ if (!column.render) {
58
+ column.render = (h, scope) => {
59
+ return <span>{scope.row[scope.column.property]}</span>
60
+ }
61
+ }
62
+
63
+ return column
64
+ },
65
+
66
+ getColBind(col) {
67
+ const bind = Object.assign({}, this.$attrs, col)
68
+ delete bind.component
69
+ delete bind.listeners
70
+ delete bind.propsHandler
71
+ return bind
72
+ },
73
+
74
+ getCptBind({ row, column }, col) {
75
+ const props = { row, col, column }
76
+ const handler = col.propsHandler
77
+ return (handler && handler(props)) || props
78
+ }
79
+ }
80
+ }
81
+ </script>