meixioacomponent 1.1.49 → 1.1.51

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 (25) hide show
  1. package/lib/meixioacomponent.common.js +337 -52
  2. package/lib/meixioacomponent.umd.js +337 -52
  3. package/lib/meixioacomponent.umd.min.js +7 -7
  4. package/package.json +1 -1
  5. package/packages/components/base/baseArea/api.js +7 -0
  6. package/packages/components/base/baseArea/areaConfig.js +4 -3
  7. package/packages/components/base/baseArea/baseAreaV2.vue +157 -0
  8. package/packages/components/base/baseArea/index.js +2 -1
  9. package/packages/components/base/elDatePicker/basic/date-table.vue +441 -441
  10. package/packages/components/base/elDatePicker/basic/month-table.vue +269 -269
  11. package/packages/components/base/elDatePicker/basic/time-spinner.vue +304 -304
  12. package/packages/components/base/elDatePicker/basic/year-table.vue +111 -111
  13. package/packages/components/base/elDatePicker/index.js +6 -6
  14. package/packages/components/base/elDatePicker/index.vue +27 -27
  15. package/packages/components/base/elDatePicker/panel/date-range.vue +680 -680
  16. package/packages/components/base/elDatePicker/panel/date.vue +609 -609
  17. package/packages/components/base/elDatePicker/panel/month-range.vue +289 -289
  18. package/packages/components/base/elDatePicker/panel/time-range.vue +248 -248
  19. package/packages/components/base/elDatePicker/panel/time-select.vue +178 -178
  20. package/packages/components/base/elDatePicker/panel/time.vue +186 -186
  21. package/packages/components/base/elDatePicker/picker/date-picker.js +55 -55
  22. package/packages/components/base/elDatePicker/picker/time-picker.js +39 -39
  23. package/packages/components/base/elDatePicker/picker/time-select.js +21 -21
  24. package/packages/components/base/elDatePicker/picker.vue +956 -956
  25. package/packages/components/proForm/proForm/pro_form.vue +6 -4
@@ -1,186 +1,186 @@
1
- <template>
2
- <transition name="el-zoom-in-top" @after-leave="$emit('dodestroy')">
3
- <div
4
- v-show="visible"
5
- class="el-time-panel el-popper"
6
- :class="popperClass">
7
- <div class="el-time-panel__content" :class="{ 'has-seconds': showSeconds }">
8
- <time-spinner
9
- ref="spinner"
10
- @change="handleChange"
11
- :arrow-control="useArrow"
12
- :show-seconds="showSeconds"
13
- :am-pm-mode="amPmMode"
14
- @select-range="setSelectionRange"
15
- :date="date">
16
- </time-spinner>
17
- </div>
18
- <div class="el-time-panel__footer">
19
- <button
20
- type="button"
21
- class="el-time-panel__btn cancel"
22
- @click="handleCancel">{{ t('el.datepicker.cancel') }}</button>
23
- <button
24
- type="button"
25
- class="el-time-panel__btn"
26
- :class="{confirm: !disabled}"
27
- @click="handleConfirm()">{{ t('el.datepicker.confirm') }}</button>
28
- </div>
29
- </div>
30
- </transition>
31
- </template>
32
-
33
- <script type="text/babel">
34
- import { limitTimeRange, isDate, clearMilliseconds, timeWithinRange } from 'element-ui/src/utils/date-util';
35
- import Locale from 'element-ui/src/mixins/locale';
36
- import TimeSpinner from '../basic/time-spinner';
37
-
38
- export default {
39
- mixins: [Locale],
40
-
41
- components: {
42
- TimeSpinner
43
- },
44
-
45
- props: {
46
- visible: Boolean,
47
- timeArrowControl: Boolean
48
- },
49
-
50
- watch: {
51
- visible(val) {
52
- if (val) {
53
- this.oldValue = this.value;
54
- this.$nextTick(() => this.$refs.spinner.emitSelectRange('hours'));
55
- } else {
56
- this.needInitAdjust = true;
57
- }
58
- },
59
-
60
- value(newVal) {
61
- let date;
62
- if (newVal instanceof Date) {
63
- date = limitTimeRange(newVal, this.selectableRange, this.format);
64
- } else if (!newVal) {
65
- date = this.defaultValue ? new Date(this.defaultValue) : new Date();
66
- }
67
-
68
- this.date = date;
69
- if (this.visible && this.needInitAdjust) {
70
- this.$nextTick(_ => this.adjustSpinners());
71
- this.needInitAdjust = false;
72
- }
73
- },
74
-
75
- selectableRange(val) {
76
- this.$refs.spinner.selectableRange = val;
77
- },
78
-
79
- defaultValue(val) {
80
- if (!isDate(this.value)) {
81
- this.date = val ? new Date(val) : new Date();
82
- }
83
- }
84
- },
85
-
86
- data() {
87
- return {
88
- popperClass: '',
89
- format: 'HH:mm:ss',
90
- value: '',
91
- defaultValue: null,
92
- date: new Date(),
93
- oldValue: new Date(),
94
- selectableRange: [],
95
- selectionRange: [0, 2],
96
- disabled: false,
97
- arrowControl: false,
98
- needInitAdjust: true
99
- };
100
- },
101
-
102
- computed: {
103
- showSeconds() {
104
- return (this.format || '').indexOf('ss') !== -1;
105
- },
106
- useArrow() {
107
- return this.arrowControl || this.timeArrowControl || false;
108
- },
109
- amPmMode() {
110
- if ((this.format || '').indexOf('A') !== -1) return 'A';
111
- if ((this.format || '').indexOf('a') !== -1) return 'a';
112
- return '';
113
- }
114
- },
115
-
116
- methods: {
117
- handleCancel() {
118
- this.$emit('pick', this.oldValue, false);
119
- },
120
-
121
- handleChange(date) {
122
- // this.visible avoids edge cases, when use scrolls during panel closing animation
123
- if (this.visible) {
124
- this.date = clearMilliseconds(date);
125
- // if date is out of range, do not emit
126
- if (this.isValidValue(this.date)) {
127
- this.$emit('pick', this.date, true);
128
- }
129
- }
130
- },
131
-
132
- setSelectionRange(start, end) {
133
- this.$emit('select-range', start, end);
134
- this.selectionRange = [start, end];
135
- },
136
-
137
- handleConfirm(visible = false, first) {
138
- if (first) return;
139
- const date = clearMilliseconds(limitTimeRange(this.date, this.selectableRange, this.format));
140
- this.$emit('pick', date, visible, first);
141
- },
142
-
143
- handleKeydown(event) {
144
- const keyCode = event.keyCode;
145
- const mapping = { 38: -1, 40: 1, 37: -1, 39: 1 };
146
-
147
- // Left or Right
148
- if (keyCode === 37 || keyCode === 39) {
149
- const step = mapping[keyCode];
150
- this.changeSelectionRange(step);
151
- event.preventDefault();
152
- return;
153
- }
154
-
155
- // Up or Down
156
- if (keyCode === 38 || keyCode === 40) {
157
- const step = mapping[keyCode];
158
- this.$refs.spinner.scrollDown(step);
159
- event.preventDefault();
160
- return;
161
- }
162
- },
163
-
164
- isValidValue(date) {
165
- return timeWithinRange(date, this.selectableRange, this.format);
166
- },
167
-
168
- adjustSpinners() {
169
- return this.$refs.spinner.adjustSpinners();
170
- },
171
-
172
- changeSelectionRange(step) {
173
- const list = [0, 3].concat(this.showSeconds ? [6] : []);
174
- const mapping = ['hours', 'minutes'].concat(this.showSeconds ? ['seconds'] : []);
175
- const index = list.indexOf(this.selectionRange[0]);
176
- const next = (index + step + list.length) % list.length;
177
- this.$refs.spinner.emitSelectRange(mapping[next]);
178
- }
179
- },
180
-
181
- mounted() {
182
- this.$nextTick(() => this.handleConfirm(true, true));
183
- this.$emit('mounted');
184
- }
185
- };
186
- </script>
1
+ <template>
2
+ <transition name="el-zoom-in-top" @after-leave="$emit('dodestroy')">
3
+ <div
4
+ v-show="visible"
5
+ class="el-time-panel el-popper"
6
+ :class="popperClass">
7
+ <div class="el-time-panel__content" :class="{ 'has-seconds': showSeconds }">
8
+ <time-spinner
9
+ ref="spinner"
10
+ @change="handleChange"
11
+ :arrow-control="useArrow"
12
+ :show-seconds="showSeconds"
13
+ :am-pm-mode="amPmMode"
14
+ @select-range="setSelectionRange"
15
+ :date="date">
16
+ </time-spinner>
17
+ </div>
18
+ <div class="el-time-panel__footer">
19
+ <button
20
+ type="button"
21
+ class="el-time-panel__btn cancel"
22
+ @click="handleCancel">{{ t('el.datepicker.cancel') }}</button>
23
+ <button
24
+ type="button"
25
+ class="el-time-panel__btn"
26
+ :class="{confirm: !disabled}"
27
+ @click="handleConfirm()">{{ t('el.datepicker.confirm') }}</button>
28
+ </div>
29
+ </div>
30
+ </transition>
31
+ </template>
32
+
33
+ <script type="text/babel">
34
+ import { limitTimeRange, isDate, clearMilliseconds, timeWithinRange } from 'element-ui/src/utils/date-util';
35
+ import Locale from 'element-ui/src/mixins/locale';
36
+ import TimeSpinner from '../basic/time-spinner';
37
+
38
+ export default {
39
+ mixins: [Locale],
40
+
41
+ components: {
42
+ TimeSpinner
43
+ },
44
+
45
+ props: {
46
+ visible: Boolean,
47
+ timeArrowControl: Boolean
48
+ },
49
+
50
+ watch: {
51
+ visible(val) {
52
+ if (val) {
53
+ this.oldValue = this.value;
54
+ this.$nextTick(() => this.$refs.spinner.emitSelectRange('hours'));
55
+ } else {
56
+ this.needInitAdjust = true;
57
+ }
58
+ },
59
+
60
+ value(newVal) {
61
+ let date;
62
+ if (newVal instanceof Date) {
63
+ date = limitTimeRange(newVal, this.selectableRange, this.format);
64
+ } else if (!newVal) {
65
+ date = this.defaultValue ? new Date(this.defaultValue) : new Date();
66
+ }
67
+
68
+ this.date = date;
69
+ if (this.visible && this.needInitAdjust) {
70
+ this.$nextTick(_ => this.adjustSpinners());
71
+ this.needInitAdjust = false;
72
+ }
73
+ },
74
+
75
+ selectableRange(val) {
76
+ this.$refs.spinner.selectableRange = val;
77
+ },
78
+
79
+ defaultValue(val) {
80
+ if (!isDate(this.value)) {
81
+ this.date = val ? new Date(val) : new Date();
82
+ }
83
+ }
84
+ },
85
+
86
+ data() {
87
+ return {
88
+ popperClass: '',
89
+ format: 'HH:mm:ss',
90
+ value: '',
91
+ defaultValue: null,
92
+ date: new Date(),
93
+ oldValue: new Date(),
94
+ selectableRange: [],
95
+ selectionRange: [0, 2],
96
+ disabled: false,
97
+ arrowControl: false,
98
+ needInitAdjust: true
99
+ };
100
+ },
101
+
102
+ computed: {
103
+ showSeconds() {
104
+ return (this.format || '').indexOf('ss') !== -1;
105
+ },
106
+ useArrow() {
107
+ return this.arrowControl || this.timeArrowControl || false;
108
+ },
109
+ amPmMode() {
110
+ if ((this.format || '').indexOf('A') !== -1) return 'A';
111
+ if ((this.format || '').indexOf('a') !== -1) return 'a';
112
+ return '';
113
+ }
114
+ },
115
+
116
+ methods: {
117
+ handleCancel() {
118
+ this.$emit('pick', this.oldValue, false);
119
+ },
120
+
121
+ handleChange(date) {
122
+ // this.visible avoids edge cases, when use scrolls during panel closing animation
123
+ if (this.visible) {
124
+ this.date = clearMilliseconds(date);
125
+ // if date is out of range, do not emit
126
+ if (this.isValidValue(this.date)) {
127
+ this.$emit('pick', this.date, true);
128
+ }
129
+ }
130
+ },
131
+
132
+ setSelectionRange(start, end) {
133
+ this.$emit('select-range', start, end);
134
+ this.selectionRange = [start, end];
135
+ },
136
+
137
+ handleConfirm(visible = false, first) {
138
+ if (first) return;
139
+ const date = clearMilliseconds(limitTimeRange(this.date, this.selectableRange, this.format));
140
+ this.$emit('pick', date, visible, first);
141
+ },
142
+
143
+ handleKeydown(event) {
144
+ const keyCode = event.keyCode;
145
+ const mapping = { 38: -1, 40: 1, 37: -1, 39: 1 };
146
+
147
+ // Left or Right
148
+ if (keyCode === 37 || keyCode === 39) {
149
+ const step = mapping[keyCode];
150
+ this.changeSelectionRange(step);
151
+ event.preventDefault();
152
+ return;
153
+ }
154
+
155
+ // Up or Down
156
+ if (keyCode === 38 || keyCode === 40) {
157
+ const step = mapping[keyCode];
158
+ this.$refs.spinner.scrollDown(step);
159
+ event.preventDefault();
160
+ return;
161
+ }
162
+ },
163
+
164
+ isValidValue(date) {
165
+ return timeWithinRange(date, this.selectableRange, this.format);
166
+ },
167
+
168
+ adjustSpinners() {
169
+ return this.$refs.spinner.adjustSpinners();
170
+ },
171
+
172
+ changeSelectionRange(step) {
173
+ const list = [0, 3].concat(this.showSeconds ? [6] : []);
174
+ const mapping = ['hours', 'minutes'].concat(this.showSeconds ? ['seconds'] : []);
175
+ const index = list.indexOf(this.selectionRange[0]);
176
+ const next = (index + step + list.length) % list.length;
177
+ this.$refs.spinner.emitSelectRange(mapping[next]);
178
+ }
179
+ },
180
+
181
+ mounted() {
182
+ this.$nextTick(() => this.handleConfirm(true, true));
183
+ this.$emit('mounted');
184
+ }
185
+ };
186
+ </script>
@@ -1,55 +1,55 @@
1
-
2
-
3
- import Picker from '../picker';
4
- import DatePanel from '../panel/date';
5
- import DateRangePanel from '../panel/date-range';
6
- import MonthRangePanel from '../panel/month-range';
7
-
8
- const getPanel = function (type) {
9
- if (type === 'daterange' || type === 'datetimerange') {
10
- return DateRangePanel;
11
- } else if (type === 'monthrange') {
12
- return MonthRangePanel;
13
- }
14
- return DatePanel;
15
- };
16
-
17
- export default {
18
-
19
- data(){
20
- return{
21
- mxType:'date'
22
- }
23
- },
24
- mixins: [Picker],
25
-
26
- name: 'ElDatePicker',
27
-
28
-
29
- props: {
30
- type: {
31
- type: String, default: 'date'
32
- }, timeArrowControl: Boolean
33
- },
34
-
35
- watch: {
36
- type(type) {
37
- if (this.picker) {
38
- this.unmountPicker();
39
- this.panel = getPanel(type);
40
- this.mountPicker();
41
- } else {
42
- this.panel = getPanel(type);
43
- }
44
- }
45
- },
46
-
47
- created() {
48
- if(this.type==='date'){
49
- this.mxType = 'datetime'
50
- }else if(this.type==='daterange'){
51
- this.mxType ='datetimerange'
52
- }
53
- this.panel = getPanel(this.mxType);
54
- }
55
- };
1
+
2
+
3
+ import Picker from '../picker';
4
+ import DatePanel from '../panel/date';
5
+ import DateRangePanel from '../panel/date-range';
6
+ import MonthRangePanel from '../panel/month-range';
7
+
8
+ const getPanel = function (type) {
9
+ if (type === 'daterange' || type === 'datetimerange') {
10
+ return DateRangePanel;
11
+ } else if (type === 'monthrange') {
12
+ return MonthRangePanel;
13
+ }
14
+ return DatePanel;
15
+ };
16
+
17
+ export default {
18
+
19
+ data(){
20
+ return{
21
+ mxType:'date'
22
+ }
23
+ },
24
+ mixins: [Picker],
25
+
26
+ name: 'ElDatePicker',
27
+
28
+
29
+ props: {
30
+ type: {
31
+ type: String, default: 'date'
32
+ }, timeArrowControl: Boolean
33
+ },
34
+
35
+ watch: {
36
+ type(type) {
37
+ if (this.picker) {
38
+ this.unmountPicker();
39
+ this.panel = getPanel(type);
40
+ this.mountPicker();
41
+ } else {
42
+ this.panel = getPanel(type);
43
+ }
44
+ }
45
+ },
46
+
47
+ created() {
48
+ if(this.type==='date'){
49
+ this.mxType = 'datetime'
50
+ }else if(this.type==='daterange'){
51
+ this.mxType ='datetimerange'
52
+ }
53
+ this.panel = getPanel(this.mxType);
54
+ }
55
+ };
@@ -1,39 +1,39 @@
1
- import Picker from '../picker';
2
- import TimePanel from '../panel/time';
3
- import TimeRangePanel from '../panel/time-range';
4
-
5
- export default {
6
- mixins: [Picker],
7
-
8
- name: 'ElTimePicker',
9
-
10
- props: {
11
- isRange: Boolean,
12
- arrowControl: Boolean
13
- },
14
-
15
- data() {
16
- return {
17
- type: ''
18
- };
19
- },
20
-
21
- watch: {
22
- isRange(isRange) {
23
- if (this.picker) {
24
- this.unmountPicker();
25
- this.type = isRange ? 'timerange' : 'time';
26
- this.panel = isRange ? TimeRangePanel : TimePanel;
27
- this.mountPicker();
28
- } else {
29
- this.type = isRange ? 'timerange' : 'time';
30
- this.panel = isRange ? TimeRangePanel : TimePanel;
31
- }
32
- }
33
- },
34
-
35
- created() {
36
- this.type = this.isRange ? 'timerange' : 'time';
37
- this.panel = this.isRange ? TimeRangePanel : TimePanel;
38
- }
39
- };
1
+ import Picker from '../picker';
2
+ import TimePanel from '../panel/time';
3
+ import TimeRangePanel from '../panel/time-range';
4
+
5
+ export default {
6
+ mixins: [Picker],
7
+
8
+ name: 'ElTimePicker',
9
+
10
+ props: {
11
+ isRange: Boolean,
12
+ arrowControl: Boolean
13
+ },
14
+
15
+ data() {
16
+ return {
17
+ type: ''
18
+ };
19
+ },
20
+
21
+ watch: {
22
+ isRange(isRange) {
23
+ if (this.picker) {
24
+ this.unmountPicker();
25
+ this.type = isRange ? 'timerange' : 'time';
26
+ this.panel = isRange ? TimeRangePanel : TimePanel;
27
+ this.mountPicker();
28
+ } else {
29
+ this.type = isRange ? 'timerange' : 'time';
30
+ this.panel = isRange ? TimeRangePanel : TimePanel;
31
+ }
32
+ }
33
+ },
34
+
35
+ created() {
36
+ this.type = this.isRange ? 'timerange' : 'time';
37
+ this.panel = this.isRange ? TimeRangePanel : TimePanel;
38
+ }
39
+ };
@@ -1,21 +1,21 @@
1
- import Picker from '../picker';
2
- import Panel from '../panel/time-select';
3
-
4
- export default {
5
- mixins: [Picker],
6
-
7
- name: 'ElTimeSelect',
8
-
9
- componentName: 'ElTimeSelect',
10
-
11
- props: {
12
- type: {
13
- type: String,
14
- default: 'time-select'
15
- }
16
- },
17
-
18
- beforeCreate() {
19
- this.panel = Panel;
20
- }
21
- };
1
+ import Picker from '../picker';
2
+ import Panel from '../panel/time-select';
3
+
4
+ export default {
5
+ mixins: [Picker],
6
+
7
+ name: 'ElTimeSelect',
8
+
9
+ componentName: 'ElTimeSelect',
10
+
11
+ props: {
12
+ type: {
13
+ type: String,
14
+ default: 'time-select'
15
+ }
16
+ },
17
+
18
+ beforeCreate() {
19
+ this.panel = Panel;
20
+ }
21
+ };