Skip to content

Commit

Permalink
Fix empty delimiter strip issue
Browse files Browse the repository at this point in the history
  • Loading branch information
nosir committed Jul 31, 2016
1 parent ef7a2c4 commit 09aaaee
Show file tree
Hide file tree
Showing 8 changed files with 17 additions and 11 deletions.
2 changes: 1 addition & 1 deletion bower.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"form",
"input"
],
"version": "0.6.0",
"version": "0.6.1",
"author": {
"name": "Max Huang",
"email": "[email protected]",
Expand Down
4 changes: 3 additions & 1 deletion dist/cleave-react.js
Original file line number Diff line number Diff line change
Expand Up @@ -753,7 +753,9 @@ return /******/ (function(modules) { // webpackBootstrap
stripDelimiters: function stripDelimiters(value, delimiter, delimiters) {
// single delimiter
if (delimiters.length === 0) {
return value.replace(new RegExp('\\' + delimiter, 'g'), '');
var delimiterRE = delimiter ? new RegExp('\\' + delimiter, 'g') : '';

return value.replace(delimiterRE, '');
}

// multiple delimiters
Expand Down
4 changes: 2 additions & 2 deletions dist/cleave-react.min.js

Large diffs are not rendered by default.

6 changes: 4 additions & 2 deletions dist/cleave.js
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ Cleave.prototype = {
// case 2: last character is not delimiter which is:
// 12|34* -> hit backspace -> 1|34*
// note: no need to apply this for numeral mode
if (!pps.numeral && pps.backspace && !Cleave.Util.isDelimiter(value.slice(-1), pps.delimiter, pps.delimiters)) {
if (!pps.numeral && pps.backspace && !Util.isDelimiter(value.slice(-1), pps.delimiter, pps.delimiters)) {
value = Util.headStr(value, value.length - 1);
}

Expand Down Expand Up @@ -305,7 +305,9 @@ var Util = {
stripDelimiters: function (value, delimiter, delimiters) {
// single delimiter
if (delimiters.length === 0) {
return value.replace(new RegExp('\\' + delimiter, 'g'), '');
var delimiterRE = delimiter ? new RegExp('\\' + delimiter, 'g') : '';

return value.replace(delimiterRE, '');
}

// multiple delimiters
Expand Down
4 changes: 2 additions & 2 deletions dist/cleave.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"form",
"input"
],
"version": "0.6.0",
"version": "0.6.1",
"author": {
"name": "Max Huang",
"url": "http://github.com/nosir",
Expand Down
2 changes: 1 addition & 1 deletion src/Cleave.js
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ Cleave.prototype = {
// case 2: last character is not delimiter which is:
// 12|34* -> hit backspace -> 1|34*
// note: no need to apply this for numeral mode
if (!pps.numeral && pps.backspace && !Cleave.Util.isDelimiter(value.slice(-1), pps.delimiter, pps.delimiters)) {
if (!pps.numeral && pps.backspace && !Util.isDelimiter(value.slice(-1), pps.delimiter, pps.delimiters)) {
value = Util.headStr(value, value.length - 1);
}

Expand Down
4 changes: 3 additions & 1 deletion src/utils/Util.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,9 @@ var Util = {
stripDelimiters: function (value, delimiter, delimiters) {
// single delimiter
if (delimiters.length === 0) {
return value.replace(new RegExp('\\' + delimiter, 'g'), '');
var delimiterRE = delimiter ? new RegExp('\\' + delimiter, 'g') : '';

return value.replace(delimiterRE, '');
}

// multiple delimiters
Expand Down

0 comments on commit 09aaaee

Please sign in to comment.