From c6e3f5ecb4dc4509ffe28bc21fec618cf1bf8cd0 Mon Sep 17 00:00:00 2001 From: Lionel Bijaoui Date: Fri, 12 Aug 2016 15:54:26 +0200 Subject: [PATCH 1/2] :new: new: new field type: Cleave. Reorganization of dev index file. --- dev/index.html | 10 ++-- dev/schema.js | 33 ++++++++++++ src/fields/fieldCleave.vue | 103 +++++++++++++++++++++++++++++++++++++ 3 files changed, 143 insertions(+), 3 deletions(-) create mode 100644 src/fields/fieldCleave.vue diff --git a/dev/index.html b/dev/index.html index a0212314..135e41e9 100644 --- a/dev/index.html +++ b/dev/index.html @@ -12,19 +12,23 @@ - + - + + + + + - +
diff --git a/dev/schema.js b/dev/schema.js index 5b18de9d..d932cc47 100644 --- a/dev/schema.js +++ b/dev/schema.js @@ -191,6 +191,39 @@ module.exports = { styleClasses: "half-width" //validator: validators.regexp }, { + type: "cleave", + label: "Mobile (Cleave.js field)", + model: "mobile", + cleaveOptions: { + // Credit Card + creditCard: false, + onCreditCardTypeChanged(type){ + console.log("onCreditCardTypeChanged", type); + }, + // Phone + phone: false, + phoneRegionCode: 'AU', + // Date + date: false, + datePattern: ['d', 'm', 'Y'], + // Numerals + numeral: false, + numeralThousandsGroupStyle: 'thousand', + numeralDecimalScale: 2, + numeralDecimalMark: '.', + // General + blocks: [0, 2, 3, 4], + delimiter: ' ', + delimiters: ['(', ') ', '-', '-'], + // prefix: '(', + numericOnly: true, + uppercase: false, + lowercase: false + }, + + styleClasses: "half-width", + validator: validators.required + }, { type: "masked", label: "Mobile (masked field)", model: "mobile", diff --git a/src/fields/fieldCleave.vue b/src/fields/fieldCleave.vue new file mode 100644 index 00000000..0d9754df --- /dev/null +++ b/src/fields/fieldCleave.vue @@ -0,0 +1,103 @@ + + + + + From b0e3e96d38cd017520e642d006358f4b9d8f8e08 Mon Sep 17 00:00:00 2001 From: Lionel Bijaoui Date: Fri, 12 Aug 2016 17:19:39 +0200 Subject: [PATCH 2/2] :new: new: new field type: Pikaday. --- dev/index.html | 2 + dev/schema.js | 52 ++++++++++++++++++- src/fields/fieldPikaday.vue | 100 ++++++++++++++++++++++++++++++++++++ 3 files changed, 152 insertions(+), 2 deletions(-) create mode 100644 src/fields/fieldPikaday.vue diff --git a/dev/index.html b/dev/index.html index 135e41e9..f6d32c4d 100644 --- a/dev/index.html +++ b/dev/index.html @@ -11,6 +11,7 @@ + @@ -28,6 +29,7 @@ + diff --git a/dev/schema.js b/dev/schema.js index d932cc47..3ae9c6f8 100644 --- a/dev/schema.js +++ b/dev/schema.js @@ -288,9 +288,57 @@ module.exports = { model.age = moment().year() - moment(newVal).year(); } - }, + }, { + type: "pikaday", + label: "DOB (pikaday field)", + model: "dob", + required: true, + placeholder: "User's birth of date", + min: moment("1900-01-01").toDate(), + max: moment("2016-01-01").toDate(), + validator: [ + validators.date + ], + pikadayOptions: { + bound: true, + position: 'bottom left', + reposition: true, + // container: , + format: 'YYYY-MM-DD HH:mm:ss', + // formatStrict: , + // defaultDate: , + // setDefaultDate: , + firstDay: 1, + // minDate: , + // maxDate: , + disableWeekends: false, + // disableDayFn: , + // yearRange: , + showWeekNumber: false, + isRTL: false, + i18n: { + previousMonth : 'Previous Month', + nextMonth : 'Next Month', + months : ['January','February','March','April','May','June','July','August','September','October','November','December'], + weekdays : ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'], + weekdaysShort : ['Sun','Mon','Tue','Wed','Thu','Fri','Sat'] + }, + // yearSuffix: , + showMonthAfterYear: false, + showDaysInNextAndPreviousMonths: false, + // numberOfMonths: , + // mainCalendar: , + theme: null, + // onSelect: , + // onOpen: , + // onClose: , + // onDraw: , + }, + onChanged(model, newVal, oldVal, field) { + model.age = moment().year() - moment(newVal).year(); + } - { + },{ type: "dateTime", label: "DT", model: "dt", diff --git a/src/fields/fieldPikaday.vue b/src/fields/fieldPikaday.vue new file mode 100644 index 00000000..9b917425 --- /dev/null +++ b/src/fields/fieldPikaday.vue @@ -0,0 +1,100 @@ + + + + + +