Skip to content

Commit 866174b

Browse files
committed
fix: overflow of v-list-item
check if selection is a sequence before converting to AnySegment
1 parent 99cf40e commit 866174b

File tree

5 files changed

+25
-2
lines changed

5 files changed

+25
-2
lines changed

core/src/fields/any.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11

22
// *
33
import { AnySegment } from '../types'
4+
import util from '../util'
45

56
function strToArray (str) {
67
if (str !== '*') {
@@ -24,6 +25,9 @@ function arrayToStr (arr, field) {
2425
return null
2526
}
2627
}
28+
if (!util.isSquence(items.map(item => item.value))) {
29+
return null
30+
}
2731
return new AnySegment()
2832
}
2933

core/src/util.js

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,15 @@ function populate (obj, map) {
158158
return res
159159
}
160160

161+
function isSquence (numbers) {
162+
for (let i = 1; i < numbers.length; i++) {
163+
if (numbers[i - 1] + 1 !== numbers[i]) {
164+
return false
165+
}
166+
}
167+
return true
168+
}
169+
161170
export default {
162171
range,
163172
Range,
@@ -167,5 +176,6 @@ export default {
167176
deepMerge,
168177
isObject,
169178
traverse,
170-
populate
179+
populate,
180+
isSquence
171181
}

docs/src/.vuepress/client.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import '@vue-js-cron/element-plus/dist/element-plus.css'
44
import CronLight from '@vue-js-cron/light'
55
import '@vue-js-cron/light/dist/light.css'
66
import CronVuetify from '@vue-js-cron/vuetify'
7+
import '@vue-js-cron/vuetify/dist/vuetify.css'
78

89
import { createVuetify } from 'vuetify'
910
import * as components from 'vuetify/components'

docs/src/guide/getting-started.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ Then you need to register `vue-js-cron/vuetify` with `app.use()`
7070

7171
```js
7272
import cronVuetify from '@vue-js-cron/vuetify'
73+
import '@vue-js-cron/vuetify/dist/vuetify.css'
7374

7475
app.use(cronVuetify)
7576
```

vuetify/src/components/CustomSelect.vue

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,9 @@
1717
<v-list class="pa-0 ma-0">
1818
<v-row v-for="(itemRow, index) in itemRows" :key="index" no-gutters>
1919
<v-col v-for="(item, index) in itemRow" :key="index">
20-
<v-list-item v-if="item" @click="select(item)" :active="isSelected(item)">{{item.text}}</v-list-item>
20+
<v-list-item v-if="item" class="vcron-v-item" @click="select(item)" :active="isSelected(item)">
21+
<v-list-item-text>{{item.text}}</v-list-item-text>
22+
</v-list-item>
2123
</v-col>
2224
</v-row>
2325
</v-list>
@@ -50,4 +52,9 @@ export default {
5052
</script>
5153

5254
<style>
55+
56+
.vcron-v-item div {
57+
overflow: visible;
58+
}
59+
5360
</style>

0 commit comments

Comments
 (0)