Skip to content

Commit 5991625

Browse files
authored
Merge pull request #42 from icebob/independent
⭐ Merge independent component #31
2 parents 31a578d + 1228b64 commit 5991625

12 files changed

+405
-44312
lines changed

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,5 @@ docs/_book/
55
npm-debug.log
66
selenium-debug.log
77
test/unit/coverage
8-
test/e2e/reports
8+
test/e2e/reports
9+
stats.json

dev/index.html

+12-3
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,27 @@
1010
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.8.0/spectrum.css">
1111
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.1.4/css/ion.rangeSlider.css">
1212
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.1.4/css/ion.rangeSlider.skinHTML5.css">
13-
13+
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/8.5.1/nouislider.min.css">
14+
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.4.0/css/pikaday.min.css">
15+
16+
1417
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.3/jquery.js"></script>
1518
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.13.0/moment.min.js"></script>
16-
19+
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.3.0/lodash.min.js"></script>
20+
<!-- jQuery dependent -->
1721
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.js"></script>
1822
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.10.0/js/bootstrap-select.min.js"></script>
1923
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.37/js/bootstrap-datetimepicker.min.js"></script>
2024
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.8.0/spectrum.js"></script>
2125
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery.maskedinput/1.4.1/jquery.maskedinput.js"></script>
2226
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.1.4/js/ion.rangeSlider.js"></script>
27+
<!-- Vanilla libs -->
2328
<script type="text/javascript" src="https://rawgit.com/monterail/vue-multiselect/master/lib/vue-multiselect.min.js"></script>
24-
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.3.0/lodash.min.js"></script>
29+
<script type="text/javascript" src="https://rawgit.com/nosir/cleave.js/master/dist/cleave.min.js"></script>
30+
<script type="text/javascript" src="https://nosir.github.io/cleave.js/lib/cleave-phone.i18n.js"></script>
31+
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/noUiSlider/8.5.1/nouislider.js"></script>
32+
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.4.0/pikaday.min.js"></script>
33+
2534
</head>
2635
<body>
2736
<div class="container-fluid"></div>

dev/schema.js

+105-3
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,39 @@ module.exports = {
191191
styleClasses: "half-width"
192192
//validator: validators.regexp
193193
}, {
194+
type: "cleave",
195+
label: "Mobile (Cleave.js field)",
196+
model: "mobile",
197+
cleaveOptions: {
198+
// Credit Card
199+
creditCard: false,
200+
onCreditCardTypeChanged(type){
201+
console.log("onCreditCardTypeChanged", type);
202+
},
203+
// Phone
204+
phone: false,
205+
phoneRegionCode: 'AU',
206+
// Date
207+
date: false,
208+
datePattern: ['d', 'm', 'Y'],
209+
// Numerals
210+
numeral: false,
211+
numeralThousandsGroupStyle: 'thousand',
212+
numeralDecimalScale: 2,
213+
numeralDecimalMark: '.',
214+
// General
215+
blocks: [0, 2, 3, 4],
216+
delimiter: ' ',
217+
delimiters: ['(', ') ', '-', '-'],
218+
// prefix: '(',
219+
numericOnly: true,
220+
uppercase: false,
221+
lowercase: false
222+
},
223+
224+
styleClasses: "half-width",
225+
validator: validators.required
226+
}, {
194227
type: "masked",
195228
label: "Mobile (masked field)",
196229
model: "mobile",
@@ -255,9 +288,57 @@ module.exports = {
255288
model.age = moment().year() - moment(newVal).year();
256289
}
257290

258-
},
291+
}, {
292+
type: "pikaday",
293+
label: "DOB (pikaday field)",
294+
model: "dob",
295+
required: true,
296+
placeholder: "User's birth of date",
297+
min: moment("1900-01-01").toDate(),
298+
max: moment("2016-01-01").toDate(),
299+
validator: [
300+
validators.date
301+
],
302+
pikadayOptions: {
303+
bound: true,
304+
position: 'bottom left',
305+
reposition: true,
306+
// container: ,
307+
format: 'YYYY-MM-DD HH:mm:ss',
308+
// formatStrict: ,
309+
// defaultDate: ,
310+
// setDefaultDate: ,
311+
firstDay: 1,
312+
// minDate: ,
313+
// maxDate: ,
314+
disableWeekends: false,
315+
// disableDayFn: ,
316+
// yearRange: ,
317+
showWeekNumber: false,
318+
isRTL: false,
319+
i18n: {
320+
previousMonth : 'Previous Month',
321+
nextMonth : 'Next Month',
322+
months : ['January','February','March','April','May','June','July','August','September','October','November','December'],
323+
weekdays : ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'],
324+
weekdaysShort : ['Sun','Mon','Tue','Wed','Thu','Fri','Sat']
325+
},
326+
// yearSuffix: ,
327+
showMonthAfterYear: false,
328+
showDaysInNextAndPreviousMonths: false,
329+
// numberOfMonths: ,
330+
// mainCalendar: ,
331+
theme: null,
332+
// onSelect: ,
333+
// onOpen: ,
334+
// onClose: ,
335+
// onDraw: ,
336+
},
337+
onChanged(model, newVal, oldVal, field) {
338+
model.age = moment().year() - moment(newVal).year();
339+
}
259340

260-
{
341+
},{
261342
type: "dateTime",
262343
label: "DT",
263344
model: "dt",
@@ -298,6 +379,27 @@ module.exports = {
298379
valueOff: "male"
299380
},
300381

382+
{
383+
type: "noUiSlider",
384+
label: "Rank (noUiSlider field)",
385+
model: "rank",
386+
multi: true,
387+
min: 1,
388+
max: 10,
389+
required: true,
390+
sliderOptions: {
391+
// connect: "lower", // "lower", "upper", true, false
392+
// margin: 2 //number
393+
// limit: 2 //number
394+
step:1,
395+
// orientation:"horizontal", //"vertical", "horizontal"
396+
// direction: "ltr", //"ltr", "rtl"
397+
// tooltips: false, // false, true, formatter, array[formatter or false]
398+
// animate: true,
399+
},
400+
// validator: validators.integer
401+
},
402+
301403
{
302404
type: "slider",
303405
label: "Rank (slider field)",
@@ -309,7 +411,7 @@ module.exports = {
309411
sliderOptions: {
310412
grid: true
311413
},
312-
validator: validators.integer
414+
// validator: validators.integer
313415
},
314416

315417
{

0 commit comments

Comments
 (0)