pickadate-rails4 3.5.6.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +63 -0
- data/Rakefile +26 -0
- data/assets/javascripts/pickadate/legacy.js +140 -0
- data/assets/javascripts/pickadate/picker.date.js +1354 -0
- data/assets/javascripts/pickadate/picker.js +1163 -0
- data/assets/javascripts/pickadate/picker.time.js +1013 -0
- data/assets/javascripts/pickadate/translations/NAMING.md +19 -0
- data/assets/javascripts/pickadate/translations/ar.js +16 -0
- data/assets/javascripts/pickadate/translations/bg_BG.js +17 -0
- data/assets/javascripts/pickadate/translations/bs_BA.js +17 -0
- data/assets/javascripts/pickadate/translations/ca_ES.js +18 -0
- data/assets/javascripts/pickadate/translations/cs_CZ.js +17 -0
- data/assets/javascripts/pickadate/translations/da_DK.js +18 -0
- data/assets/javascripts/pickadate/translations/de_DE.js +18 -0
- data/assets/javascripts/pickadate/translations/el_GR.js +17 -0
- data/assets/javascripts/pickadate/translations/es_ES.js +18 -0
- data/assets/javascripts/pickadate/translations/et_EE.js +17 -0
- data/assets/javascripts/pickadate/translations/eu_ES.js +17 -0
- data/assets/javascripts/pickadate/translations/fa_ir.js +19 -0
- data/assets/javascripts/pickadate/translations/fi_FI.js +17 -0
- data/assets/javascripts/pickadate/translations/fr_FR.js +22 -0
- data/assets/javascripts/pickadate/translations/gl_ES.js +17 -0
- data/assets/javascripts/pickadate/translations/he_IL.js +16 -0
- data/assets/javascripts/pickadate/translations/hi_IN.js +20 -0
- data/assets/javascripts/pickadate/translations/hr_HR.js +17 -0
- data/assets/javascripts/pickadate/translations/hu_HU.js +17 -0
- data/assets/javascripts/pickadate/translations/id_ID.js +17 -0
- data/assets/javascripts/pickadate/translations/is_IS.js +17 -0
- data/assets/javascripts/pickadate/translations/it_IT.js +24 -0
- data/assets/javascripts/pickadate/translations/ja_JP.js +17 -0
- data/assets/javascripts/pickadate/translations/ko_KR.js +17 -0
- data/assets/javascripts/pickadate/translations/lt_LT.js +24 -0
- data/assets/javascripts/pickadate/translations/lv_LV.js +13 -0
- data/assets/javascripts/pickadate/translations/nb_NO.js +18 -0
- data/assets/javascripts/pickadate/translations/ne_NP.js +17 -0
- data/assets/javascripts/pickadate/translations/nl_NL.js +18 -0
- data/assets/javascripts/pickadate/translations/no_NO.js +13 -0
- data/assets/javascripts/pickadate/translations/pl_PL.js +18 -0
- data/assets/javascripts/pickadate/translations/pt_BR.js +17 -0
- data/assets/javascripts/pickadate/translations/pt_PT.js +17 -0
- data/assets/javascripts/pickadate/translations/ro_RO.js +17 -0
- data/assets/javascripts/pickadate/translations/ru_RU.js +18 -0
- data/assets/javascripts/pickadate/translations/sk_SK.js +18 -0
- data/assets/javascripts/pickadate/translations/sl_SI.js +18 -0
- data/assets/javascripts/pickadate/translations/sv_SE.js +22 -0
- data/assets/javascripts/pickadate/translations/th_TH.js +16 -0
- data/assets/javascripts/pickadate/translations/tr_TR.js +18 -0
- data/assets/javascripts/pickadate/translations/uk_UA.js +17 -0
- data/assets/javascripts/pickadate/translations/vi_VN.js +15 -0
- data/assets/javascripts/pickadate/translations/zh_CN.js +18 -0
- data/assets/javascripts/pickadate/translations/zh_TW.js +18 -0
- data/assets/stylesheets/pickadate/classic.css +99 -0
- data/assets/stylesheets/pickadate/classic.date.css +301 -0
- data/assets/stylesheets/pickadate/classic.time.css +132 -0
- data/assets/stylesheets/pickadate/default.css +168 -0
- data/assets/stylesheets/pickadate/default.date.css +301 -0
- data/assets/stylesheets/pickadate/default.time.css +126 -0
- data/assets/stylesheets/pickadate/rtl.css +29 -0
- data/lib/pickadate-rails.rb +7 -0
- data/lib/pickadate-rails/version.rb +3 -0
- data/pickadate-rails.gemspec +25 -0
- metadata +152 -0
@@ -0,0 +1,301 @@
|
|
1
|
+
/* ==========================================================================
|
2
|
+
$BASE-DATE-PICKER
|
3
|
+
========================================================================== */
|
4
|
+
/**
|
5
|
+
* The picker box.
|
6
|
+
*/
|
7
|
+
.picker__box {
|
8
|
+
padding: 0 1em;
|
9
|
+
}
|
10
|
+
/**
|
11
|
+
* The header containing the month and year stuff.
|
12
|
+
*/
|
13
|
+
.picker__header {
|
14
|
+
text-align: center;
|
15
|
+
position: relative;
|
16
|
+
margin-top: .75em;
|
17
|
+
}
|
18
|
+
/**
|
19
|
+
* The month and year labels.
|
20
|
+
*/
|
21
|
+
.picker__month,
|
22
|
+
.picker__year {
|
23
|
+
font-weight: 500;
|
24
|
+
display: inline-block;
|
25
|
+
margin-left: .25em;
|
26
|
+
margin-right: .25em;
|
27
|
+
}
|
28
|
+
.picker__year {
|
29
|
+
color: #999999;
|
30
|
+
font-size: .8em;
|
31
|
+
font-style: italic;
|
32
|
+
}
|
33
|
+
/**
|
34
|
+
* The month and year selectors.
|
35
|
+
*/
|
36
|
+
.picker__select--month,
|
37
|
+
.picker__select--year {
|
38
|
+
border: 1px solid #b7b7b7;
|
39
|
+
height: 2em;
|
40
|
+
padding: .5em;
|
41
|
+
margin-left: .25em;
|
42
|
+
margin-right: .25em;
|
43
|
+
}
|
44
|
+
@media (min-width: 24.5em) {
|
45
|
+
.picker__select--month,
|
46
|
+
.picker__select--year {
|
47
|
+
margin-top: -0.5em;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
.picker__select--month {
|
51
|
+
width: 35%;
|
52
|
+
}
|
53
|
+
.picker__select--year {
|
54
|
+
width: 22.5%;
|
55
|
+
}
|
56
|
+
.picker__select--month:focus,
|
57
|
+
.picker__select--year:focus {
|
58
|
+
border-color: #0089ec;
|
59
|
+
}
|
60
|
+
/**
|
61
|
+
* The month navigation buttons.
|
62
|
+
*/
|
63
|
+
.picker__nav--prev,
|
64
|
+
.picker__nav--next {
|
65
|
+
position: absolute;
|
66
|
+
padding: .5em 1.25em;
|
67
|
+
width: 1em;
|
68
|
+
height: 1em;
|
69
|
+
box-sizing: content-box;
|
70
|
+
top: -0.25em;
|
71
|
+
}
|
72
|
+
@media (min-width: 24.5em) {
|
73
|
+
.picker__nav--prev,
|
74
|
+
.picker__nav--next {
|
75
|
+
top: -0.33em;
|
76
|
+
}
|
77
|
+
}
|
78
|
+
.picker__nav--prev {
|
79
|
+
left: -1em;
|
80
|
+
padding-right: 1.25em;
|
81
|
+
}
|
82
|
+
@media (min-width: 24.5em) {
|
83
|
+
.picker__nav--prev {
|
84
|
+
padding-right: 1.5em;
|
85
|
+
}
|
86
|
+
}
|
87
|
+
.picker__nav--next {
|
88
|
+
right: -1em;
|
89
|
+
padding-left: 1.25em;
|
90
|
+
}
|
91
|
+
@media (min-width: 24.5em) {
|
92
|
+
.picker__nav--next {
|
93
|
+
padding-left: 1.5em;
|
94
|
+
}
|
95
|
+
}
|
96
|
+
.picker__nav--prev:before,
|
97
|
+
.picker__nav--next:before {
|
98
|
+
content: " ";
|
99
|
+
border-top: .5em solid transparent;
|
100
|
+
border-bottom: .5em solid transparent;
|
101
|
+
border-right: 0.75em solid #000000;
|
102
|
+
width: 0;
|
103
|
+
height: 0;
|
104
|
+
display: block;
|
105
|
+
margin: 0 auto;
|
106
|
+
}
|
107
|
+
.picker__nav--next:before {
|
108
|
+
border-right: 0;
|
109
|
+
border-left: 0.75em solid #000000;
|
110
|
+
}
|
111
|
+
.picker__nav--prev:hover,
|
112
|
+
.picker__nav--next:hover {
|
113
|
+
cursor: pointer;
|
114
|
+
color: #000000;
|
115
|
+
background: #b1dcfb;
|
116
|
+
}
|
117
|
+
.picker__nav--disabled,
|
118
|
+
.picker__nav--disabled:hover,
|
119
|
+
.picker__nav--disabled:before,
|
120
|
+
.picker__nav--disabled:before:hover {
|
121
|
+
cursor: default;
|
122
|
+
background: none;
|
123
|
+
border-right-color: #f5f5f5;
|
124
|
+
border-left-color: #f5f5f5;
|
125
|
+
}
|
126
|
+
/**
|
127
|
+
* The calendar table of dates
|
128
|
+
*/
|
129
|
+
.picker__table {
|
130
|
+
text-align: center;
|
131
|
+
border-collapse: collapse;
|
132
|
+
border-spacing: 0;
|
133
|
+
table-layout: fixed;
|
134
|
+
font-size: inherit;
|
135
|
+
width: 100%;
|
136
|
+
margin-top: .75em;
|
137
|
+
margin-bottom: .5em;
|
138
|
+
}
|
139
|
+
@media (min-height: 33.875em) {
|
140
|
+
.picker__table {
|
141
|
+
margin-bottom: .75em;
|
142
|
+
}
|
143
|
+
}
|
144
|
+
.picker__table td {
|
145
|
+
margin: 0;
|
146
|
+
padding: 0;
|
147
|
+
}
|
148
|
+
/**
|
149
|
+
* The weekday labels
|
150
|
+
*/
|
151
|
+
.picker__weekday {
|
152
|
+
width: 14.285714286%;
|
153
|
+
font-size: .75em;
|
154
|
+
padding-bottom: .25em;
|
155
|
+
color: #999999;
|
156
|
+
font-weight: 500;
|
157
|
+
/* Increase the spacing a tad */
|
158
|
+
}
|
159
|
+
@media (min-height: 33.875em) {
|
160
|
+
.picker__weekday {
|
161
|
+
padding-bottom: .5em;
|
162
|
+
}
|
163
|
+
}
|
164
|
+
/**
|
165
|
+
* The days on the calendar
|
166
|
+
*/
|
167
|
+
.picker__day {
|
168
|
+
padding: .3125em 0;
|
169
|
+
font-weight: 200;
|
170
|
+
border: 1px solid transparent;
|
171
|
+
}
|
172
|
+
.picker__day--today {
|
173
|
+
position: relative;
|
174
|
+
}
|
175
|
+
.picker__day--today:before {
|
176
|
+
content: " ";
|
177
|
+
position: absolute;
|
178
|
+
top: 2px;
|
179
|
+
right: 2px;
|
180
|
+
width: 0;
|
181
|
+
height: 0;
|
182
|
+
border-top: 0.5em solid #0059bc;
|
183
|
+
border-left: .5em solid transparent;
|
184
|
+
}
|
185
|
+
.picker__day--disabled:before {
|
186
|
+
border-top-color: #aaaaaa;
|
187
|
+
}
|
188
|
+
.picker__day--outfocus {
|
189
|
+
color: #dddddd;
|
190
|
+
}
|
191
|
+
.picker__day--infocus:hover,
|
192
|
+
.picker__day--outfocus:hover {
|
193
|
+
cursor: pointer;
|
194
|
+
color: #000000;
|
195
|
+
background: #b1dcfb;
|
196
|
+
}
|
197
|
+
.picker__day--highlighted {
|
198
|
+
border-color: #0089ec;
|
199
|
+
}
|
200
|
+
.picker__day--highlighted:hover,
|
201
|
+
.picker--focused .picker__day--highlighted {
|
202
|
+
cursor: pointer;
|
203
|
+
color: #000000;
|
204
|
+
background: #b1dcfb;
|
205
|
+
}
|
206
|
+
.picker__day--selected,
|
207
|
+
.picker__day--selected:hover,
|
208
|
+
.picker--focused .picker__day--selected {
|
209
|
+
background: #0089ec;
|
210
|
+
color: #ffffff;
|
211
|
+
}
|
212
|
+
.picker__day--disabled,
|
213
|
+
.picker__day--disabled:hover,
|
214
|
+
.picker--focused .picker__day--disabled {
|
215
|
+
background: #f5f5f5;
|
216
|
+
border-color: #f5f5f5;
|
217
|
+
color: #dddddd;
|
218
|
+
cursor: default;
|
219
|
+
}
|
220
|
+
.picker__day--highlighted.picker__day--disabled,
|
221
|
+
.picker__day--highlighted.picker__day--disabled:hover {
|
222
|
+
background: #bbbbbb;
|
223
|
+
}
|
224
|
+
/**
|
225
|
+
* The footer containing the "today", "clear", and "close" buttons.
|
226
|
+
*/
|
227
|
+
.picker__footer {
|
228
|
+
text-align: center;
|
229
|
+
}
|
230
|
+
.picker__button--today,
|
231
|
+
.picker__button--clear,
|
232
|
+
.picker__button--close {
|
233
|
+
border: 1px solid #ffffff;
|
234
|
+
background: #ffffff;
|
235
|
+
font-size: .8em;
|
236
|
+
padding: .66em 0;
|
237
|
+
font-weight: bold;
|
238
|
+
width: 33%;
|
239
|
+
display: inline-block;
|
240
|
+
vertical-align: bottom;
|
241
|
+
}
|
242
|
+
.picker__button--today:hover,
|
243
|
+
.picker__button--clear:hover,
|
244
|
+
.picker__button--close:hover {
|
245
|
+
cursor: pointer;
|
246
|
+
color: #000000;
|
247
|
+
background: #b1dcfb;
|
248
|
+
border-bottom-color: #b1dcfb;
|
249
|
+
}
|
250
|
+
.picker__button--today:focus,
|
251
|
+
.picker__button--clear:focus,
|
252
|
+
.picker__button--close:focus {
|
253
|
+
background: #b1dcfb;
|
254
|
+
border-color: #0089ec;
|
255
|
+
outline: none;
|
256
|
+
}
|
257
|
+
.picker__button--today:before,
|
258
|
+
.picker__button--clear:before,
|
259
|
+
.picker__button--close:before {
|
260
|
+
position: relative;
|
261
|
+
display: inline-block;
|
262
|
+
height: 0;
|
263
|
+
}
|
264
|
+
.picker__button--today:before,
|
265
|
+
.picker__button--clear:before {
|
266
|
+
content: " ";
|
267
|
+
margin-right: .45em;
|
268
|
+
}
|
269
|
+
.picker__button--today:before {
|
270
|
+
top: -0.05em;
|
271
|
+
width: 0;
|
272
|
+
border-top: 0.66em solid #0059bc;
|
273
|
+
border-left: .66em solid transparent;
|
274
|
+
}
|
275
|
+
.picker__button--clear:before {
|
276
|
+
top: -0.25em;
|
277
|
+
width: .66em;
|
278
|
+
border-top: 3px solid #ee2200;
|
279
|
+
}
|
280
|
+
.picker__button--close:before {
|
281
|
+
content: "\D7";
|
282
|
+
top: -0.1em;
|
283
|
+
vertical-align: top;
|
284
|
+
font-size: 1.1em;
|
285
|
+
margin-right: .35em;
|
286
|
+
color: #777777;
|
287
|
+
}
|
288
|
+
.picker__button--today[disabled],
|
289
|
+
.picker__button--today[disabled]:hover {
|
290
|
+
background: #f5f5f5;
|
291
|
+
border-color: #f5f5f5;
|
292
|
+
color: #dddddd;
|
293
|
+
cursor: default;
|
294
|
+
}
|
295
|
+
.picker__button--today[disabled]:before {
|
296
|
+
border-top-color: #aaaaaa;
|
297
|
+
}
|
298
|
+
|
299
|
+
/* ==========================================================================
|
300
|
+
$DEFAULT-DATE-PICKER
|
301
|
+
========================================================================== */
|
@@ -0,0 +1,126 @@
|
|
1
|
+
/* ==========================================================================
|
2
|
+
$BASE-TIME-PICKER
|
3
|
+
========================================================================== */
|
4
|
+
/**
|
5
|
+
* The list of times.
|
6
|
+
*/
|
7
|
+
.picker__list {
|
8
|
+
list-style: none;
|
9
|
+
padding: 0.75em 0 4.2em;
|
10
|
+
margin: 0;
|
11
|
+
}
|
12
|
+
/**
|
13
|
+
* The times on the clock.
|
14
|
+
*/
|
15
|
+
.picker__list-item {
|
16
|
+
border-bottom: 1px solid #dddddd;
|
17
|
+
border-top: 1px solid #dddddd;
|
18
|
+
margin-bottom: -1px;
|
19
|
+
position: relative;
|
20
|
+
background: #ffffff;
|
21
|
+
padding: .75em 1.25em;
|
22
|
+
}
|
23
|
+
@media (min-height: 46.75em) {
|
24
|
+
.picker__list-item {
|
25
|
+
padding: .5em 1em;
|
26
|
+
}
|
27
|
+
}
|
28
|
+
/* Hovered time */
|
29
|
+
.picker__list-item:hover {
|
30
|
+
cursor: pointer;
|
31
|
+
color: #000000;
|
32
|
+
background: #b1dcfb;
|
33
|
+
border-color: #0089ec;
|
34
|
+
z-index: 10;
|
35
|
+
}
|
36
|
+
/* Highlighted and hovered/focused time */
|
37
|
+
.picker__list-item--highlighted {
|
38
|
+
border-color: #0089ec;
|
39
|
+
z-index: 10;
|
40
|
+
}
|
41
|
+
.picker__list-item--highlighted:hover,
|
42
|
+
.picker--focused .picker__list-item--highlighted {
|
43
|
+
cursor: pointer;
|
44
|
+
color: #000000;
|
45
|
+
background: #b1dcfb;
|
46
|
+
}
|
47
|
+
/* Selected and hovered/focused time */
|
48
|
+
.picker__list-item--selected,
|
49
|
+
.picker__list-item--selected:hover,
|
50
|
+
.picker--focused .picker__list-item--selected {
|
51
|
+
background: #0089ec;
|
52
|
+
color: #ffffff;
|
53
|
+
z-index: 10;
|
54
|
+
}
|
55
|
+
/* Disabled time */
|
56
|
+
.picker__list-item--disabled,
|
57
|
+
.picker__list-item--disabled:hover,
|
58
|
+
.picker--focused .picker__list-item--disabled {
|
59
|
+
background: #f5f5f5;
|
60
|
+
border-color: #f5f5f5;
|
61
|
+
color: #dddddd;
|
62
|
+
cursor: default;
|
63
|
+
border-color: #dddddd;
|
64
|
+
z-index: auto;
|
65
|
+
}
|
66
|
+
/**
|
67
|
+
* The clear button
|
68
|
+
*/
|
69
|
+
.picker--time .picker__button--clear {
|
70
|
+
display: block;
|
71
|
+
width: 80%;
|
72
|
+
margin: 1em auto 0;
|
73
|
+
padding: 1em 1.25em;
|
74
|
+
background: none;
|
75
|
+
border: 0;
|
76
|
+
font-weight: 500;
|
77
|
+
font-size: .67em;
|
78
|
+
text-align: center;
|
79
|
+
text-transform: uppercase;
|
80
|
+
color: #666;
|
81
|
+
}
|
82
|
+
.picker--time .picker__button--clear:hover,
|
83
|
+
.picker--time .picker__button--clear:focus {
|
84
|
+
color: #000000;
|
85
|
+
background: #b1dcfb;
|
86
|
+
background: #ee2200;
|
87
|
+
border-color: #ee2200;
|
88
|
+
cursor: pointer;
|
89
|
+
color: #ffffff;
|
90
|
+
outline: none;
|
91
|
+
}
|
92
|
+
.picker--time .picker__button--clear:before {
|
93
|
+
top: -0.25em;
|
94
|
+
color: #666;
|
95
|
+
font-size: 1.25em;
|
96
|
+
font-weight: bold;
|
97
|
+
}
|
98
|
+
.picker--time .picker__button--clear:hover:before,
|
99
|
+
.picker--time .picker__button--clear:focus:before {
|
100
|
+
color: #ffffff;
|
101
|
+
border-color: #ffffff;
|
102
|
+
}
|
103
|
+
|
104
|
+
/* ==========================================================================
|
105
|
+
$DEFAULT-TIME-PICKER
|
106
|
+
========================================================================== */
|
107
|
+
/**
|
108
|
+
* The frame the bounds the time picker.
|
109
|
+
*/
|
110
|
+
.picker--time .picker__frame {
|
111
|
+
min-width: 256px;
|
112
|
+
max-width: 320px;
|
113
|
+
}
|
114
|
+
/**
|
115
|
+
* The picker box.
|
116
|
+
*/
|
117
|
+
.picker--time .picker__box {
|
118
|
+
font-size: 1em;
|
119
|
+
background: #f2f2f2;
|
120
|
+
padding: 0;
|
121
|
+
}
|
122
|
+
@media (min-height: 40.125em) {
|
123
|
+
.picker--time .picker__box {
|
124
|
+
margin-bottom: 5em;
|
125
|
+
}
|
126
|
+
}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
/*!
|
2
|
+
* Styling for RTL (right-to-left) languages using pickadate.js
|
3
|
+
*/
|
4
|
+
/**
|
5
|
+
* Switch the direction - only really necessary if
|
6
|
+
* it hasn’t already been applied higher up in the DOM.
|
7
|
+
*/
|
8
|
+
.picker {
|
9
|
+
direction: rtl;
|
10
|
+
}
|
11
|
+
/**
|
12
|
+
* Flip around the “next” and “previous” buttons.
|
13
|
+
*/
|
14
|
+
.picker__nav--next {
|
15
|
+
right: auto;
|
16
|
+
left: -1em;
|
17
|
+
}
|
18
|
+
.picker__nav--prev {
|
19
|
+
left: auto;
|
20
|
+
right: -1em;
|
21
|
+
}
|
22
|
+
.picker__nav--next:before {
|
23
|
+
border-left: 0;
|
24
|
+
border-right: 0.75em solid #000000;
|
25
|
+
}
|
26
|
+
.picker__nav--prev:before {
|
27
|
+
border-right: 0;
|
28
|
+
border-left: 0.75em solid #000000;
|
29
|
+
}
|