Skip to content

Commit

Permalink
[ISSUE-261] Add delimiter lazy show mode
Browse files Browse the repository at this point in the history
  • Loading branch information
nosir committed Jan 14, 2018
1 parent 0f13b22 commit eed4f21
Show file tree
Hide file tree
Showing 18 changed files with 239 additions and 48 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": "1.0.10",
"version": "1.1.0",
"author": {
"name": "Max Huang",
"email": "[email protected]",
Expand Down
29 changes: 23 additions & 6 deletions dist/cleave-angular.js
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,11 @@ return /******/ (function(modules) { // webpackBootstrap
value = Util.headStr(value, pps.maxLength);

// apply blocks
pps.result = Util.getFormattedValue(value, pps.blocks, pps.blocksLength, pps.delimiter, pps.delimiters);
pps.result = Util.getFormattedValue(
value,
pps.blocks, pps.blocksLength,
pps.delimiter, pps.delimiters, pps.delimiterLazyShow
);

owner.updateValueState();
},
Expand Down Expand Up @@ -982,7 +986,7 @@ return /******/ (function(modules) { // webpackBootstrap
return index;
},

getFormattedValue: function (value, blocks, blocksLength, delimiter, delimiters) {
getFormattedValue: function (value, blocks, blocksLength, delimiter, delimiters, delimiterLazyShow) {
var result = '',
multipleDelimiters = delimiters.length > 0,
currentDelimiter;
Expand All @@ -997,12 +1001,24 @@ return /******/ (function(modules) { // webpackBootstrap
var sub = value.slice(0, length),
rest = value.slice(length);

result += sub;
if (multipleDelimiters) {
currentDelimiter = delimiters[delimiterLazyShow ? (index - 1) : index] || currentDelimiter;
} else {
currentDelimiter = delimiter;
}

currentDelimiter = multipleDelimiters ? (delimiters[index] || currentDelimiter) : delimiter;
if (delimiterLazyShow) {
if (index > 0) {
result += currentDelimiter;
}

result += sub;
} else {
result += sub;

if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
}
}

// update remaining string
Expand Down Expand Up @@ -1097,6 +1113,7 @@ return /******/ (function(modules) { // webpackBootstrap
(opts.phone ? ' ' :
' ')));
target.delimiterLength = target.delimiter.length;
target.delimiterLazyShow = !!opts.delimiterLazyShow;
target.delimiters = opts.delimiters || [];

target.blocks = opts.blocks || [];
Expand Down
4 changes: 2 additions & 2 deletions dist/cleave-angular.min.js

Large diffs are not rendered by default.

25 changes: 19 additions & 6 deletions dist/cleave-react-node.js
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ return /******/ (function(modules) { // webpackBootstrap
value = pps.maxLength > 0 ? Util.headStr(value, pps.maxLength) : value;

// apply blocks
pps.result = Util.getFormattedValue(value, pps.blocks, pps.blocksLength, pps.delimiter, pps.delimiters);
pps.result = Util.getFormattedValue(value, pps.blocks, pps.blocksLength, pps.delimiter, pps.delimiters, pps.delimiterLazyShow);

owner.updateValueState();
},
Expand Down Expand Up @@ -2230,7 +2230,7 @@ return /******/ (function(modules) { // webpackBootstrap
}return index;
},

getFormattedValue: function getFormattedValue(value, blocks, blocksLength, delimiter, delimiters) {
getFormattedValue: function getFormattedValue(value, blocks, blocksLength, delimiter, delimiters, delimiterLazyShow) {
var result = '',
multipleDelimiters = delimiters.length > 0,
currentDelimiter;
Expand All @@ -2245,12 +2245,24 @@ return /******/ (function(modules) { // webpackBootstrap
var sub = value.slice(0, length),
rest = value.slice(length);

result += sub;
if (multipleDelimiters) {
currentDelimiter = delimiters[delimiterLazyShow ? index - 1 : index] || currentDelimiter;
} else {
currentDelimiter = delimiter;
}

currentDelimiter = multipleDelimiters ? delimiters[index] || currentDelimiter : delimiter;
if (delimiterLazyShow) {
if (index > 0) {
result += currentDelimiter;
}

result += sub;
} else {
result += sub;

if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
}
}

// update remaining string
Expand Down Expand Up @@ -2342,6 +2354,7 @@ return /******/ (function(modules) { // webpackBootstrap

target.delimiter = opts.delimiter || opts.delimiter === '' ? opts.delimiter : opts.date ? '/' : opts.numeral ? ',' : opts.phone ? ' ' : ' ';
target.delimiterLength = target.delimiter.length;
target.delimiterLazyShow = !!opts.delimiterLazyShow;
target.delimiters = opts.delimiters || [];

target.blocks = opts.blocks || [];
Expand Down
4 changes: 2 additions & 2 deletions dist/cleave-react-node.min.js

Large diffs are not rendered by default.

25 changes: 19 additions & 6 deletions dist/cleave-react.js
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ return /******/ (function(modules) { // webpackBootstrap
value = pps.maxLength > 0 ? Util.headStr(value, pps.maxLength) : value;

// apply blocks
pps.result = Util.getFormattedValue(value, pps.blocks, pps.blocksLength, pps.delimiter, pps.delimiters);
pps.result = Util.getFormattedValue(value, pps.blocks, pps.blocksLength, pps.delimiter, pps.delimiters, pps.delimiterLazyShow);

owner.updateValueState();
},
Expand Down Expand Up @@ -2424,7 +2424,7 @@ return /******/ (function(modules) { // webpackBootstrap
}return index;
},

getFormattedValue: function getFormattedValue(value, blocks, blocksLength, delimiter, delimiters) {
getFormattedValue: function getFormattedValue(value, blocks, blocksLength, delimiter, delimiters, delimiterLazyShow) {
var result = '',
multipleDelimiters = delimiters.length > 0,
currentDelimiter;
Expand All @@ -2439,12 +2439,24 @@ return /******/ (function(modules) { // webpackBootstrap
var sub = value.slice(0, length),
rest = value.slice(length);

result += sub;
if (multipleDelimiters) {
currentDelimiter = delimiters[delimiterLazyShow ? index - 1 : index] || currentDelimiter;
} else {
currentDelimiter = delimiter;
}

currentDelimiter = multipleDelimiters ? delimiters[index] || currentDelimiter : delimiter;
if (delimiterLazyShow) {
if (index > 0) {
result += currentDelimiter;
}

result += sub;
} else {
result += sub;

if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
}
}

// update remaining string
Expand Down Expand Up @@ -2536,6 +2548,7 @@ return /******/ (function(modules) { // webpackBootstrap

target.delimiter = opts.delimiter || opts.delimiter === '' ? opts.delimiter : opts.date ? '/' : opts.numeral ? ',' : opts.phone ? ' ' : ' ';
target.delimiterLength = target.delimiter.length;
target.delimiterLazyShow = !!opts.delimiterLazyShow;
target.delimiters = opts.delimiters || [];

target.blocks = opts.blocks || [];
Expand Down
4 changes: 2 additions & 2 deletions dist/cleave-react.min.js

Large diffs are not rendered by default.

29 changes: 23 additions & 6 deletions dist/cleave.js
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,11 @@ return /******/ (function(modules) { // webpackBootstrap
value = Util.headStr(value, pps.maxLength);

// apply blocks
pps.result = Util.getFormattedValue(value, pps.blocks, pps.blocksLength, pps.delimiter, pps.delimiters);
pps.result = Util.getFormattedValue(
value,
pps.blocks, pps.blocksLength,
pps.delimiter, pps.delimiters, pps.delimiterLazyShow
);

owner.updateValueState();
},
Expand Down Expand Up @@ -982,7 +986,7 @@ return /******/ (function(modules) { // webpackBootstrap
return index;
},

getFormattedValue: function (value, blocks, blocksLength, delimiter, delimiters) {
getFormattedValue: function (value, blocks, blocksLength, delimiter, delimiters, delimiterLazyShow) {
var result = '',
multipleDelimiters = delimiters.length > 0,
currentDelimiter;
Expand All @@ -997,12 +1001,24 @@ return /******/ (function(modules) { // webpackBootstrap
var sub = value.slice(0, length),
rest = value.slice(length);

result += sub;
if (multipleDelimiters) {
currentDelimiter = delimiters[delimiterLazyShow ? (index - 1) : index] || currentDelimiter;
} else {
currentDelimiter = delimiter;
}

currentDelimiter = multipleDelimiters ? (delimiters[index] || currentDelimiter) : delimiter;
if (delimiterLazyShow) {
if (index > 0) {
result += currentDelimiter;
}

result += sub;
} else {
result += sub;

if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
if (sub.length === length && index < blocksLength - 1) {
result += currentDelimiter;
}
}

// update remaining string
Expand Down Expand Up @@ -1097,6 +1113,7 @@ return /******/ (function(modules) { // webpackBootstrap
(opts.phone ? ' ' :
' ')));
target.delimiterLength = target.delimiter.length;
target.delimiterLazyShow = !!opts.delimiterLazyShow;
target.delimiters = opts.delimiters || [];

target.blocks = opts.blocks || [];
Expand Down
Loading

0 comments on commit eed4f21

Please sign in to comment.