Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit c48e64a

Browse files
authored
News (#40)
* Clear Button Feature * Test Coverage * New Tests
1 parent a687050 commit c48e64a

File tree

11 files changed

+523
-90
lines changed

11 files changed

+523
-90
lines changed

‎.github/workflows/ci.yml‎

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,16 @@ on:
99
jobs:
1010
ci:
1111
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
node-version: [12.x]
1215

1316
steps:
1417
- uses: actions/checkout@v2
15-
18+
- uses: actions/setup-node@v2-beta
19+
with:
20+
node-version: ${{ matrix.node-version }}
21+
1622
- name: Install dependencies
1723
run: yarn install
1824

@@ -22,5 +28,13 @@ jobs:
2228
- name: Run linter
2329
run: yarn lint
2430

31+
- name: full-icu install
32+
run: yarn global add full-icu
33+
34+
- name: set NODE_ICU_DATA path
35+
run: echo "NODE_ICU_DATA=`node-full-icu-path 2>/dev/null`" >> $GITHUB_ENV
36+
- name: 'Echo $GITHUB_ENV'
37+
run: echo "NODE_ICU_DATA=" >> $GITHUB_ENV
38+
2539
- name: Run tests
26-
run: yarn test:unit
40+
run: yarn test:unit

‎.gitignore‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,7 @@ yarn-error.log*
2222

2323
# dependencies lock
2424
yarn.lock
25-
package-lock.json
25+
package-lock.json
26+
27+
# test
28+
coverage

‎development/Example.vue‎

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
:disabled-end-date="example.disabledEndDate"
3434
:disabled="example.disabled || false"
3535
:circle="example.circle || false"
36+
:show-clear-button="example.showClearButton || false"
3637
/>
3738
<blockquote class="exam-props">
3839
<textarea :value="JSON.stringify(example, null, 2)" readonly>
@@ -59,6 +60,7 @@
5960
:disabled-end-date="example.disabledEndDate"
6061
:disabled="example.disabled || false"
6162
:circle="example.circle || false"
63+
:show-clear-button="example.showClearButton || false"
6264
/>
6365
<blockquote class="exam-props">
6466
<textarea :value="JSON.stringify(example, null, 2)" readonly>
@@ -91,6 +93,16 @@ export default {
9193
value: null,
9294
firstDayOfWeek: 'monday'
9395
},
96+
{
97+
title: 'With Clear Button',
98+
inputClass: 'exampleDatePicker',
99+
lang: 'tr',
100+
position: 'bottom',
101+
range: false,
102+
showClearButton: true,
103+
value: new Date(),
104+
firstDayOfWeek: 'monday'
105+
},
94106
{
95107
title: 'Range',
96108
inputClass: 'exampleDatePicker',

‎jest.config.js‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,7 @@ module.exports = {
22
preset: '@vue/cli-plugin-unit-jest',
33
transformIgnorePatterns: [
44
'node_modules/(?!@ngrx|(?!deck.gl)|ng-dynamic)'
5-
]
5+
],
6+
collectCoverage: true,
7+
collectCoverageFrom: ['./src/**/*.{js,vue}']
68
}

‎src/components/calendar.vue‎

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<button
77
type="button"
88
class="viewButton"
9-
@click="changeViewMode('years')"
9+
@click="changeViewMode(MODE_ENUMS.YEAR)"
1010
>
1111
{{ viewButtonText }}
1212
</button>
@@ -43,7 +43,7 @@
4343
</button>
4444
</div>
4545
<div class="viewmode">
46-
<div class="years" v-show="viewMode === 'years'">
46+
<div class="years" v-show="viewMode === MODE_ENUMS.YEAR">
4747
<button
4848
v-for="y in years"
4949
:key="y.year"
@@ -55,7 +55,7 @@
5555
{{ y.year }}
5656
</button>
5757
</div>
58-
<div class="months" v-show="viewMode === 'months'">
58+
<div class="months" v-show="viewMode === MODE_ENUMS.MONTH">
5959
<button
6060
v-for="month in months"
6161
:key="month.index"
@@ -73,6 +73,8 @@
7373
</template>
7474

7575
<script>
76+
import { MODE_ENUMS } from '@/utils/modes'
77+
7678
export default {
7779
props: {
7880
calendar: {
@@ -122,12 +124,15 @@ export default {
122124
} else return this.selectedDate
123125
},
124126
isDayMode () {
125-
return this.viewMode === 'days'
127+
return this.viewMode === MODE_ENUMS.DAY
126128
},
127129
yearsRange () {
128130
const years = this.calendar.years
129131
return years[0] + this.rangeSeperator + years[years.length - 1]
130132
},
133+
MODE_ENUMS () {
134+
return MODE_ENUMS
135+
},
131136
dayViewText () {
132137
return (
133138
this.calendar.months[this.currentDate.month].name +
@@ -138,10 +143,10 @@ export default {
138143
viewButtonText () {
139144
let text
140145
switch (this.viewMode) {
141-
case 'years':
146+
case MODE_ENUMS.YEAR:
142147
text = this.yearsRange
143148
break
144-
case 'months':
149+
case MODE_ENUMS.MONTH:
145150
text = this.currentDate.year
146151
break
147152
default:
@@ -206,31 +211,31 @@ export default {
206211
},
207212
prev () {
208213
switch (this.viewMode) {
209-
case 'days':
214+
case MODE_ENUMS.DAY:
210215
this.$emit('prevMonth', this.pickerType)
211216
break
212-
case 'months':
217+
case MODE_ENUMS.MONTH:
213218
this.$emit('setUniqYear', {
214219
year: this.currentDate.year - 1,
215220
picker: this.pickerType
216221
})
217222
break
218-
case 'years':
223+
case MODE_ENUMS.YEAR:
219224
this.$emit('setYears', { route: 'prev', picker: this.pickerType })
220225
}
221226
},
222227
next () {
223228
switch (this.viewMode) {
224-
case 'days':
229+
case MODE_ENUMS.DAY:
225230
this.$emit('nextMonth', this.pickerType)
226231
break
227-
case 'months':
232+
case MODE_ENUMS.MONTH:
228233
this.$emit('setUniqYear', {
229234
year: this.currentDate.year + 1,
230235
picker: this.pickerType
231236
})
232237
break
233-
case 'years':
238+
case MODE_ENUMS.YEAR:
234239
this.$emit('setYears', { route: 'next', picker: this.pickerType })
235240
}
236241
},

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /