From cc3f7806d633e99cee33c94201ec160d9b08049c Mon Sep 17 00:00:00 2001 From: Luiz Kota Date: Wed, 10 Oct 2018 10:28:37 -0300 Subject: [PATCH 1/2] Adding babelrc to fix build process; Fix dist out of date --- .babelrc | 3 + dist/js/DatPayment.js | 457 ++-- package-lock.json | 4930 +++++++++++++++++++++++++++++++++++++++++ package.json | 4 +- 4 files changed, 5213 insertions(+), 181 deletions(-) create mode 100644 .babelrc create mode 100644 package-lock.json diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..c13c5f6 --- /dev/null +++ b/.babelrc @@ -0,0 +1,3 @@ +{ + "presets": ["es2015"] +} diff --git a/dist/js/DatPayment.js b/dist/js/DatPayment.js index 3a6da27..c0e9fcc 100644 --- a/dist/js/DatPayment.js +++ b/dist/js/DatPayment.js @@ -43,9 +43,10 @@ var card = /************************************************************************/ /******/ ([ /* 0 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { - /* WEBPACK VAR INJECTION */(function(global) {var Card, QJ, extend, payment; + /* WEBPACK VAR INJECTION */(function(global) {var Card, QJ, extend, payment, + bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; }; __webpack_require__(1); @@ -60,7 +61,7 @@ var card = Card.prototype.initializedDataAttr = "data-jp-card-initialized"; - Card.prototype.cardTemplate = '' + '
' + '' + '
'; + Card.prototype.cardTemplate = '' + '
' + '' + '
'; Card.prototype.template = function(tpl, data) { return tpl.replace(/\{\{(.*?)\}\}/g, function(match, key, str) { @@ -96,6 +97,9 @@ var card = expiry: '••/••', name: 'Full Name' }, + masks: { + cardNumber: false + }, classes: { valid: 'jp-card-valid', invalid: 'jp-card-invalid' @@ -104,6 +108,7 @@ var card = }; function Card(opts) { + this.maskCardNumber = bind(this.maskCardNumber, this); var toInitialize; this.options = extend(true, this.defaults, opts); if (!this.options.form) { @@ -151,7 +156,7 @@ var card = } if (this.options.width) { $cardContainer = QJ(this.options.cardSelectors.cardContainer)[0]; - baseWidth = parseInt($cardContainer.clientWidth); + baseWidth = parseInt($cardContainer.clientWidth || window.getComputedStyle($cardContainer).width); $cardContainer.style.transform = "scale(" + (this.options.width / baseWidth) + ")"; } if (typeof navigator !== "undefined" && navigator !== null ? navigator.userAgent : void 0) { @@ -169,10 +174,14 @@ var card = }; Card.prototype.attachHandlers = function() { - var expiryFilters; + var expiryFilters, numberInputFilters; + numberInputFilters = [this.validToggler('cardNumber')]; + if (this.options.masks.cardNumber) { + numberInputFilters.push(this.maskCardNumber); + } bindVal(this.$numberInput, this.$numberDisplay, { fill: false, - filters: this.validToggler('cardNumber') + filters: numberInputFilters }); QJ.on(this.$numberInput, 'payment.cardType', this.handle('setCardType')); expiryFilters = [ @@ -272,6 +281,22 @@ var card = return QJ.toggleClass(el, this.options.classes.invalid, !test); }; + Card.prototype.maskCardNumber = function(val, el, out) { + var mask, numbers; + mask = this.options.masks.cardNumber; + numbers = val.split(' '); + if (numbers.length >= 3) { + numbers.forEach(function(item, idx) { + if (idx !== numbers.length - 1) { + return numbers[idx] = numbers[idx].replace(/\d/g, mask); + } + }); + return numbers.join(' '); + } else { + return val.replace(/\d/g, mask); + } + }; + Card.prototype.handlers = { setCardType: function($el, e) { var cardType; @@ -370,9 +395,9 @@ var card = /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()))) -/***/ }, +/***/ }), /* 1 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { // style-loader: Adds some css to the DOM by adding a