Socket
Socket
Sign inDemoInstall

text-mask-addons

Package Overview
Dependencies
0
Maintainers
1
Versions
29
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.3.0 to 0.4.0

dist/createNumberMask.js

2

dist/createCurrencyMask.js

@@ -1,1 +0,1 @@

!function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.createCurrencyMask=o():e.createCurrencyMask=o()}(this,function(){return function(e){function o(r){if(t[r])return t[r].exports;var n=t[r]={exports:{},id:r,loaded:!1};return e[r].call(n.exports,n,n.exports,o),n.loaded=!0,n.exports}var t={};return o.m=e,o.c=t,o.p="",o(0)}([function(e,o){"use strict";function t(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],o=e.prefix,t=void 0===o?u:o,l=e.suffix,s=void 0===l?f:l,v=e.includeThousandsSeparator,y=void 0===v||v,m=e.thousandsSeparatorSymbol,b=void 0===m?d:m,x=e.allowDecimal,S=void 0!==x&&x,g=e.decimalSymbol,h=void 0===g?a:g,j=e.decimalLimit,M=void 0===j?2:j,k=e.requireFraction,C=void 0!==k&&k;return function(e){var o=e.length;if(e===f||e[0]===t[0]&&1===o)return""+t+c+s;var u=e.lastIndexOf(h),d=u!==-1,a=void 0,l=void 0,v=void 0;if(a=e,d&&(S||C)?(a=e.slice(0,u),l=r(e.slice(u+1,o))):a=e,a=r(a),v=y?n(a,b):a,d&&S||C===!0)if(v+=e[u-1]===h?"":"[]",v+=h+"[]",l)("undefined"==typeof M?"undefined":i(M))===p&&(l=l.slice(0,M)),v+=l;else if(C===!0)for(var m=0;m<M;m++)v+=c;return""+t+v+s}}function r(e){return e.replace(l,f).replace(s,c)}function n(e,o){return e.replace(/\B(?=(\d{3})+(?!\d))/g,o)}Object.defineProperty(o,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};o["default"]=t;var u="$",f="",d=",",c="1",a=".",l=/\D+/g,s=/\d/g,p="number"}])});
!function(e,o){"object"==typeof exports&&"object"==typeof module?module.exports=o():"function"==typeof define&&define.amd?define([],o):"object"==typeof exports?exports.createNumberMask=o():e.createNumberMask=o()}(this,function(){return function(e){function o(r){if(t[r])return t[r].exports;var n=t[r]={exports:{},id:r,loaded:!1};return e[r].call(n.exports,n,n.exports,o),n.loaded=!0,n.exports}var t={};return o.m=e,o.c=t,o.p="",o(0)}([function(e,o){"use strict";function t(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],o=e.prefix,t=void 0===o?u:o,l=e.suffix,s=void 0===l?f:l,v=e.includeThousandsSeparator,y=void 0===v||v,m=e.thousandsSeparatorSymbol,b=void 0===m?d:m,x=e.allowDecimal,S=void 0!==x&&x,g=e.decimalSymbol,h=void 0===g?a:g,j=e.decimalLimit,M=void 0===j?2:j,k=e.requireDecimal,C=void 0!==k&&k;return function(e){var o=e.length;if(e===f||e[0]===t[0]&&1===o)return""+t+c+s;var u=e.lastIndexOf(h),d=u!==-1,a=void 0,l=void 0,v=void 0;if(a=e,d&&(S||C)?(a=e.slice(0,u),l=r(e.slice(u+1,o))):a=e,a=r(a),v=y?n(a,b):a,d&&S||C===!0)if(v+=e[u-1]===h?"":"[]",v+=h+"[]",l)("undefined"==typeof M?"undefined":i(M))===p&&(l=l.slice(0,M)),v+=l;else if(C===!0)for(var m=0;m<M;m++)v+=c;return""+t+v+s}}function r(e){return e.replace(l,f).replace(s,c)}function n(e,o){return e.replace(/\B(?=(\d{3})+(?!\d))/g,o)}Object.defineProperty(o,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol?"symbol":typeof e};o["default"]=t;var u="$",f="",d=",",c="1",a=".",l=/\D+/g,s=/\d/g,p="number"}])});

@@ -1,1 +0,1 @@

{"errors":[],"warnings":[],"version":"1.13.1","hash":"8fee24219a697238dc2c","publicPath":"","assetsByChunkName":{"createCurrencyMask":"createCurrencyMask.js","autoCorrectedMmddyyyyPipe":"autoCorrectedMmddyyyyPipe.js"},"assets":[{"name":"createCurrencyMask.js","size":1644,"chunks":[0],"chunkNames":["createCurrencyMask"],"emitted":true},{"name":"autoCorrectedMmddyyyyPipe.js","size":1027,"chunks":[1],"chunkNames":["autoCorrectedMmddyyyyPipe"],"emitted":true},{"name":"stats.json","size":0,"chunks":[],"chunkNames":[]}],"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":3469,"names":["createCurrencyMask"],"files":["createCurrencyMask.js"],"hash":"adb757bea804df1e7313","parents":[],"modules":[{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createCurrencyMask.js","name":"./addons/src/createCurrencyMask.js","index":1,"index2":1,"size":3469,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj; };\n\nexports.default = createCurrencyMask;\nvar dollarSign = '$';\nvar emptyString = '';\nvar comma = ',';\nvar one = '1';\nvar period = '.';\nvar noneDigitsRegExp = /\\D+/g;\nvar digitsRegExp = /\\d/g;\nvar number = 'number';\n\nfunction createCurrencyMask() {\n var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n var _ref$prefix = _ref.prefix;\n var prefix = _ref$prefix === undefined ? dollarSign : _ref$prefix;\n var _ref$suffix = _ref.suffix;\n var suffix = _ref$suffix === undefined ? emptyString : _ref$suffix;\n var _ref$includeThousands = _ref.includeThousandsSeparator;\n var includeThousandsSeparator = _ref$includeThousands === undefined ? true : _ref$includeThousands;\n var _ref$thousandsSeparat = _ref.thousandsSeparatorSymbol;\n var thousandsSeparatorSymbol = _ref$thousandsSeparat === undefined ? comma : _ref$thousandsSeparat;\n var _ref$allowDecimal = _ref.allowDecimal;\n var allowDecimal = _ref$allowDecimal === undefined ? false : _ref$allowDecimal;\n var _ref$decimalSymbol = _ref.decimalSymbol;\n var decimalSymbol = _ref$decimalSymbol === undefined ? period : _ref$decimalSymbol;\n var _ref$decimalLimit = _ref.decimalLimit;\n var decimalLimit = _ref$decimalLimit === undefined ? 2 : _ref$decimalLimit;\n var _ref$requireFraction = _ref.requireFraction;\n var requireFraction = _ref$requireFraction === undefined ? false : _ref$requireFraction;\n\n return function (rawValue) {\n var rawValueLength = rawValue.length;\n\n if (rawValue === emptyString || rawValue[0] === prefix[0] && rawValueLength === 1) {\n return '' + prefix + one + suffix;\n }\n\n var indexOfLastDecimal = rawValue.lastIndexOf(decimalSymbol);\n var hasDecimal = indexOfLastDecimal !== -1;\n\n var integer = void 0;\n var fraction = void 0;\n var numberMask = void 0;\n\n integer = rawValue;\n\n if (hasDecimal && (allowDecimal || requireFraction)) {\n integer = rawValue.slice(0, indexOfLastDecimal);\n fraction = convertToMask(rawValue.slice(indexOfLastDecimal + 1, rawValueLength));\n } else {\n integer = rawValue;\n }\n\n integer = convertToMask(integer);\n\n numberMask = includeThousandsSeparator ? addThousandsSeparator(integer, thousandsSeparatorSymbol) : integer;\n\n if (hasDecimal && allowDecimal || requireFraction === true) {\n numberMask += rawValue[indexOfLastDecimal - 1] === decimalSymbol ? '' : '[]';\n numberMask += decimalSymbol + '[]';\n\n if (fraction) {\n if ((typeof decimalLimit === 'undefined' ? 'undefined' : _typeof(decimalLimit)) === number) {\n fraction = fraction.slice(0, decimalLimit);\n }\n numberMask += fraction;\n } else if (requireFraction === true) {\n for (var i = 0; i < decimalLimit; i++) {\n numberMask += one;\n }\n }\n }\n\n return '' + prefix + numberMask + suffix;\n };\n}\n\nfunction convertToMask(strNumber) {\n return strNumber.replace(noneDigitsRegExp, emptyString).replace(digitsRegExp, one);\n}\n\n// http://stackoverflow.com/a/10899795/604296\nfunction addThousandsSeparator(n, thousandsSeparatorSymbol) {\n return n.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandsSeparatorSymbol);\n}"}],"filteredModules":0,"origins":[{"moduleId":0,"module":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createCurrencyMask.js","moduleIdentifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createCurrencyMask.js","moduleName":"./addons/src/createCurrencyMask.js","loc":"","name":"createCurrencyMask","reasons":[]}]},{"id":1,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":1597,"names":["autoCorrectedMmddyyyyPipe"],"files":["autoCorrectedMmddyyyyPipe.js"],"hash":"9e662bdd77d08496784e","parents":[],"modules":[{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","name":"./addons/src/autoCorrectedMmddyyyyPipe.js","index":0,"index2":0,"size":1597,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[1],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = autoCorrectedMmddyyyyPipe;\nfunction autoCorrectedMmddyyyyPipe(conformedValue) {\n var conformedValueArr = conformedValue.split('');\n var indexesOfPipedChars = [];\n\n var month1stDigit = parseDigit(conformedValue[0]);\n var month2ndDigit = parseDigit(conformedValue[1]);\n var day1stDigit = parseDigit(conformedValue[3]);\n var day2ndDigit = parseDigit(conformedValue[4]);\n var year1stDigit = parseDigit(conformedValue[6]);\n\n if (month1stDigit > 1) {\n conformedValueArr.splice(0, 2, 0, month1stDigit);\n\n indexesOfPipedChars.push(0);\n }\n\n if (month1stDigit === 1 && month2ndDigit > 2 || month1stDigit === 0 && month2ndDigit === 0) {\n return false;\n }\n\n if (day1stDigit > 3) {\n conformedValueArr.splice(3, 2, 0, day1stDigit);\n\n indexesOfPipedChars.push(3);\n }\n\n if (day1stDigit === 3 && day2ndDigit > 1 || day1stDigit === 0 && day2ndDigit === 0) {\n return false;\n }\n\n if (year1stDigit === 0) {\n conformedValueArr.splice(6, 3, 2, 0, year1stDigit);\n\n indexesOfPipedChars.push(6, 7);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars: indexesOfPipedChars\n };\n}\n\nvar digitsNumbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\nvar digitsStrings = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\nvar allDigits = digitsNumbers.concat(digitsStrings);\nfunction parseDigit(value) {\n var digit = allDigits.find(function (digit) {\n return digit === value;\n });\n\n if (digit === undefined) {\n return value;\n } else {\n return Number(digit);\n }\n}"}],"filteredModules":0,"origins":[{"moduleId":0,"module":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","moduleIdentifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","moduleName":"./addons/src/autoCorrectedMmddyyyyPipe.js","loc":"","name":"autoCorrectedMmddyyyyPipe","reasons":[]}]}],"modules":[{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","name":"./addons/src/autoCorrectedMmddyyyyPipe.js","index":0,"index2":0,"size":1597,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[1],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = autoCorrectedMmddyyyyPipe;\nfunction autoCorrectedMmddyyyyPipe(conformedValue) {\n var conformedValueArr = conformedValue.split('');\n var indexesOfPipedChars = [];\n\n var month1stDigit = parseDigit(conformedValue[0]);\n var month2ndDigit = parseDigit(conformedValue[1]);\n var day1stDigit = parseDigit(conformedValue[3]);\n var day2ndDigit = parseDigit(conformedValue[4]);\n var year1stDigit = parseDigit(conformedValue[6]);\n\n if (month1stDigit > 1) {\n conformedValueArr.splice(0, 2, 0, month1stDigit);\n\n indexesOfPipedChars.push(0);\n }\n\n if (month1stDigit === 1 && month2ndDigit > 2 || month1stDigit === 0 && month2ndDigit === 0) {\n return false;\n }\n\n if (day1stDigit > 3) {\n conformedValueArr.splice(3, 2, 0, day1stDigit);\n\n indexesOfPipedChars.push(3);\n }\n\n if (day1stDigit === 3 && day2ndDigit > 1 || day1stDigit === 0 && day2ndDigit === 0) {\n return false;\n }\n\n if (year1stDigit === 0) {\n conformedValueArr.splice(6, 3, 2, 0, year1stDigit);\n\n indexesOfPipedChars.push(6, 7);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars: indexesOfPipedChars\n };\n}\n\nvar digitsNumbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\nvar digitsStrings = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\nvar allDigits = digitsNumbers.concat(digitsStrings);\nfunction parseDigit(value) {\n var digit = allDigits.find(function (digit) {\n return digit === value;\n });\n\n if (digit === undefined) {\n return value;\n } else {\n return Number(digit);\n }\n}"},{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createCurrencyMask.js","name":"./addons/src/createCurrencyMask.js","index":1,"index2":1,"size":3469,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj; };\n\nexports.default = createCurrencyMask;\nvar dollarSign = '$';\nvar emptyString = '';\nvar comma = ',';\nvar one = '1';\nvar period = '.';\nvar noneDigitsRegExp = /\\D+/g;\nvar digitsRegExp = /\\d/g;\nvar number = 'number';\n\nfunction createCurrencyMask() {\n var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n var _ref$prefix = _ref.prefix;\n var prefix = _ref$prefix === undefined ? dollarSign : _ref$prefix;\n var _ref$suffix = _ref.suffix;\n var suffix = _ref$suffix === undefined ? emptyString : _ref$suffix;\n var _ref$includeThousands = _ref.includeThousandsSeparator;\n var includeThousandsSeparator = _ref$includeThousands === undefined ? true : _ref$includeThousands;\n var _ref$thousandsSeparat = _ref.thousandsSeparatorSymbol;\n var thousandsSeparatorSymbol = _ref$thousandsSeparat === undefined ? comma : _ref$thousandsSeparat;\n var _ref$allowDecimal = _ref.allowDecimal;\n var allowDecimal = _ref$allowDecimal === undefined ? false : _ref$allowDecimal;\n var _ref$decimalSymbol = _ref.decimalSymbol;\n var decimalSymbol = _ref$decimalSymbol === undefined ? period : _ref$decimalSymbol;\n var _ref$decimalLimit = _ref.decimalLimit;\n var decimalLimit = _ref$decimalLimit === undefined ? 2 : _ref$decimalLimit;\n var _ref$requireFraction = _ref.requireFraction;\n var requireFraction = _ref$requireFraction === undefined ? false : _ref$requireFraction;\n\n return function (rawValue) {\n var rawValueLength = rawValue.length;\n\n if (rawValue === emptyString || rawValue[0] === prefix[0] && rawValueLength === 1) {\n return '' + prefix + one + suffix;\n }\n\n var indexOfLastDecimal = rawValue.lastIndexOf(decimalSymbol);\n var hasDecimal = indexOfLastDecimal !== -1;\n\n var integer = void 0;\n var fraction = void 0;\n var numberMask = void 0;\n\n integer = rawValue;\n\n if (hasDecimal && (allowDecimal || requireFraction)) {\n integer = rawValue.slice(0, indexOfLastDecimal);\n fraction = convertToMask(rawValue.slice(indexOfLastDecimal + 1, rawValueLength));\n } else {\n integer = rawValue;\n }\n\n integer = convertToMask(integer);\n\n numberMask = includeThousandsSeparator ? addThousandsSeparator(integer, thousandsSeparatorSymbol) : integer;\n\n if (hasDecimal && allowDecimal || requireFraction === true) {\n numberMask += rawValue[indexOfLastDecimal - 1] === decimalSymbol ? '' : '[]';\n numberMask += decimalSymbol + '[]';\n\n if (fraction) {\n if ((typeof decimalLimit === 'undefined' ? 'undefined' : _typeof(decimalLimit)) === number) {\n fraction = fraction.slice(0, decimalLimit);\n }\n numberMask += fraction;\n } else if (requireFraction === true) {\n for (var i = 0; i < decimalLimit; i++) {\n numberMask += one;\n }\n }\n }\n\n return '' + prefix + numberMask + suffix;\n };\n}\n\nfunction convertToMask(strNumber) {\n return strNumber.replace(noneDigitsRegExp, emptyString).replace(digitsRegExp, one);\n}\n\n// http://stackoverflow.com/a/10899795/604296\nfunction addThousandsSeparator(n, thousandsSeparatorSymbol) {\n return n.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandsSeparatorSymbol);\n}"}],"filteredModules":0,"children":[]}
{"errors":[],"warnings":[],"version":"1.13.1","hash":"93b17ed036a872067d98","publicPath":"","assetsByChunkName":{"createNumberMask":"createNumberMask.js","autoCorrectedMmddyyyyPipe":"autoCorrectedMmddyyyyPipe.js"},"assets":[{"name":"createNumberMask.js","size":1639,"chunks":[0],"chunkNames":["createNumberMask"],"emitted":true},{"name":"autoCorrectedMmddyyyyPipe.js","size":1027,"chunks":[1],"chunkNames":["autoCorrectedMmddyyyyPipe"],"emitted":true},{"name":"stats.json","size":0,"chunks":[],"chunkNames":[]}],"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":3425,"names":["createNumberMask"],"files":["createNumberMask.js"],"hash":"fc41b77b6825f0060d79","parents":[],"modules":[{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createNumberMask.js","name":"./addons/src/createNumberMask.js","index":1,"index2":1,"size":3425,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj; };\n\nexports.default = createNumberMask;\nvar dollarSign = '$';\nvar emptyString = '';\nvar comma = ',';\nvar one = '1';\nvar period = '.';\nvar noneDigitsRegExp = /\\D+/g;\nvar digitsRegExp = /\\d/g;\nvar number = 'number';\n\nfunction createNumberMask() {\n var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n var _ref$prefix = _ref.prefix;\n var prefix = _ref$prefix === undefined ? dollarSign : _ref$prefix;\n var _ref$suffix = _ref.suffix;\n var suffix = _ref$suffix === undefined ? emptyString : _ref$suffix;\n var _ref$includeThousands = _ref.includeThousandsSeparator;\n var includeThousandsSeparator = _ref$includeThousands === undefined ? true : _ref$includeThousands;\n var _ref$thousandsSeparat = _ref.thousandsSeparatorSymbol;\n var thousandsSeparatorSymbol = _ref$thousandsSeparat === undefined ? comma : _ref$thousandsSeparat;\n var _ref$allowDecimal = _ref.allowDecimal;\n var allowDecimal = _ref$allowDecimal === undefined ? false : _ref$allowDecimal;\n var _ref$decimalSymbol = _ref.decimalSymbol;\n var decimalSymbol = _ref$decimalSymbol === undefined ? period : _ref$decimalSymbol;\n var _ref$decimalLimit = _ref.decimalLimit;\n var decimalLimit = _ref$decimalLimit === undefined ? 2 : _ref$decimalLimit;\n var _ref$requireDecimal = _ref.requireDecimal;\n var requireDecimal = _ref$requireDecimal === undefined ? false : _ref$requireDecimal;\n\n return function numberMask(rawValue) {\n var rawValueLength = rawValue.length;\n\n if (rawValue === emptyString || rawValue[0] === prefix[0] && rawValueLength === 1) {\n return '' + prefix + one + suffix;\n }\n\n var indexOfLastDecimal = rawValue.lastIndexOf(decimalSymbol);\n var hasDecimal = indexOfLastDecimal !== -1;\n\n var integer = void 0;\n var fraction = void 0;\n var mask = void 0;\n\n integer = rawValue;\n\n if (hasDecimal && (allowDecimal || requireDecimal)) {\n integer = rawValue.slice(0, indexOfLastDecimal);\n fraction = convertToMask(rawValue.slice(indexOfLastDecimal + 1, rawValueLength));\n } else {\n integer = rawValue;\n }\n\n integer = convertToMask(integer);\n\n mask = includeThousandsSeparator ? addThousandsSeparator(integer, thousandsSeparatorSymbol) : integer;\n\n if (hasDecimal && allowDecimal || requireDecimal === true) {\n mask += rawValue[indexOfLastDecimal - 1] === decimalSymbol ? '' : '[]';\n mask += decimalSymbol + '[]';\n\n if (fraction) {\n if ((typeof decimalLimit === 'undefined' ? 'undefined' : _typeof(decimalLimit)) === number) {\n fraction = fraction.slice(0, decimalLimit);\n }\n mask += fraction;\n } else if (requireDecimal === true) {\n for (var i = 0; i < decimalLimit; i++) {\n mask += one;\n }\n }\n }\n\n return '' + prefix + mask + suffix;\n };\n}\n\nfunction convertToMask(strNumber) {\n return strNumber.replace(noneDigitsRegExp, emptyString).replace(digitsRegExp, one);\n}\n\n// http://stackoverflow.com/a/10899795/604296\nfunction addThousandsSeparator(n, thousandsSeparatorSymbol) {\n return n.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandsSeparatorSymbol);\n}"}],"filteredModules":0,"origins":[{"moduleId":0,"module":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createNumberMask.js","moduleIdentifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createNumberMask.js","moduleName":"./addons/src/createNumberMask.js","loc":"","name":"createNumberMask","reasons":[]}]},{"id":1,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":1597,"names":["autoCorrectedMmddyyyyPipe"],"files":["autoCorrectedMmddyyyyPipe.js"],"hash":"9e662bdd77d08496784e","parents":[],"modules":[{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","name":"./addons/src/autoCorrectedMmddyyyyPipe.js","index":0,"index2":0,"size":1597,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[1],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = autoCorrectedMmddyyyyPipe;\nfunction autoCorrectedMmddyyyyPipe(conformedValue) {\n var conformedValueArr = conformedValue.split('');\n var indexesOfPipedChars = [];\n\n var month1stDigit = parseDigit(conformedValue[0]);\n var month2ndDigit = parseDigit(conformedValue[1]);\n var day1stDigit = parseDigit(conformedValue[3]);\n var day2ndDigit = parseDigit(conformedValue[4]);\n var year1stDigit = parseDigit(conformedValue[6]);\n\n if (month1stDigit > 1) {\n conformedValueArr.splice(0, 2, 0, month1stDigit);\n\n indexesOfPipedChars.push(0);\n }\n\n if (month1stDigit === 1 && month2ndDigit > 2 || month1stDigit === 0 && month2ndDigit === 0) {\n return false;\n }\n\n if (day1stDigit > 3) {\n conformedValueArr.splice(3, 2, 0, day1stDigit);\n\n indexesOfPipedChars.push(3);\n }\n\n if (day1stDigit === 3 && day2ndDigit > 1 || day1stDigit === 0 && day2ndDigit === 0) {\n return false;\n }\n\n if (year1stDigit === 0) {\n conformedValueArr.splice(6, 3, 2, 0, year1stDigit);\n\n indexesOfPipedChars.push(6, 7);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars: indexesOfPipedChars\n };\n}\n\nvar digitsNumbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\nvar digitsStrings = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\nvar allDigits = digitsNumbers.concat(digitsStrings);\nfunction parseDigit(value) {\n var digit = allDigits.find(function (digit) {\n return digit === value;\n });\n\n if (digit === undefined) {\n return value;\n } else {\n return Number(digit);\n }\n}"}],"filteredModules":0,"origins":[{"moduleId":0,"module":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","moduleIdentifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","moduleName":"./addons/src/autoCorrectedMmddyyyyPipe.js","loc":"","name":"autoCorrectedMmddyyyyPipe","reasons":[]}]}],"modules":[{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/autoCorrectedMmddyyyyPipe.js","name":"./addons/src/autoCorrectedMmddyyyyPipe.js","index":0,"index2":0,"size":1597,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[1],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = autoCorrectedMmddyyyyPipe;\nfunction autoCorrectedMmddyyyyPipe(conformedValue) {\n var conformedValueArr = conformedValue.split('');\n var indexesOfPipedChars = [];\n\n var month1stDigit = parseDigit(conformedValue[0]);\n var month2ndDigit = parseDigit(conformedValue[1]);\n var day1stDigit = parseDigit(conformedValue[3]);\n var day2ndDigit = parseDigit(conformedValue[4]);\n var year1stDigit = parseDigit(conformedValue[6]);\n\n if (month1stDigit > 1) {\n conformedValueArr.splice(0, 2, 0, month1stDigit);\n\n indexesOfPipedChars.push(0);\n }\n\n if (month1stDigit === 1 && month2ndDigit > 2 || month1stDigit === 0 && month2ndDigit === 0) {\n return false;\n }\n\n if (day1stDigit > 3) {\n conformedValueArr.splice(3, 2, 0, day1stDigit);\n\n indexesOfPipedChars.push(3);\n }\n\n if (day1stDigit === 3 && day2ndDigit > 1 || day1stDigit === 0 && day2ndDigit === 0) {\n return false;\n }\n\n if (year1stDigit === 0) {\n conformedValueArr.splice(6, 3, 2, 0, year1stDigit);\n\n indexesOfPipedChars.push(6, 7);\n }\n\n return {\n value: conformedValueArr.join(''),\n indexesOfPipedChars: indexesOfPipedChars\n };\n}\n\nvar digitsNumbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\nvar digitsStrings = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\nvar allDigits = digitsNumbers.concat(digitsStrings);\nfunction parseDigit(value) {\n var digit = allDigits.find(function (digit) {\n return digit === value;\n });\n\n if (digit === undefined) {\n return value;\n } else {\n return Number(digit);\n }\n}"},{"id":0,"identifier":"/Users/mk/Code/github/msafi/text-mask/node_modules/babel-loader/index.js!/Users/mk/Code/github/msafi/text-mask/addons/src/createNumberMask.js","name":"./addons/src/createNumberMask.js","index":1,"index2":1,"size":3425,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"source":"'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol ? \"symbol\" : typeof obj; };\n\nexports.default = createNumberMask;\nvar dollarSign = '$';\nvar emptyString = '';\nvar comma = ',';\nvar one = '1';\nvar period = '.';\nvar noneDigitsRegExp = /\\D+/g;\nvar digitsRegExp = /\\d/g;\nvar number = 'number';\n\nfunction createNumberMask() {\n var _ref = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];\n\n var _ref$prefix = _ref.prefix;\n var prefix = _ref$prefix === undefined ? dollarSign : _ref$prefix;\n var _ref$suffix = _ref.suffix;\n var suffix = _ref$suffix === undefined ? emptyString : _ref$suffix;\n var _ref$includeThousands = _ref.includeThousandsSeparator;\n var includeThousandsSeparator = _ref$includeThousands === undefined ? true : _ref$includeThousands;\n var _ref$thousandsSeparat = _ref.thousandsSeparatorSymbol;\n var thousandsSeparatorSymbol = _ref$thousandsSeparat === undefined ? comma : _ref$thousandsSeparat;\n var _ref$allowDecimal = _ref.allowDecimal;\n var allowDecimal = _ref$allowDecimal === undefined ? false : _ref$allowDecimal;\n var _ref$decimalSymbol = _ref.decimalSymbol;\n var decimalSymbol = _ref$decimalSymbol === undefined ? period : _ref$decimalSymbol;\n var _ref$decimalLimit = _ref.decimalLimit;\n var decimalLimit = _ref$decimalLimit === undefined ? 2 : _ref$decimalLimit;\n var _ref$requireDecimal = _ref.requireDecimal;\n var requireDecimal = _ref$requireDecimal === undefined ? false : _ref$requireDecimal;\n\n return function numberMask(rawValue) {\n var rawValueLength = rawValue.length;\n\n if (rawValue === emptyString || rawValue[0] === prefix[0] && rawValueLength === 1) {\n return '' + prefix + one + suffix;\n }\n\n var indexOfLastDecimal = rawValue.lastIndexOf(decimalSymbol);\n var hasDecimal = indexOfLastDecimal !== -1;\n\n var integer = void 0;\n var fraction = void 0;\n var mask = void 0;\n\n integer = rawValue;\n\n if (hasDecimal && (allowDecimal || requireDecimal)) {\n integer = rawValue.slice(0, indexOfLastDecimal);\n fraction = convertToMask(rawValue.slice(indexOfLastDecimal + 1, rawValueLength));\n } else {\n integer = rawValue;\n }\n\n integer = convertToMask(integer);\n\n mask = includeThousandsSeparator ? addThousandsSeparator(integer, thousandsSeparatorSymbol) : integer;\n\n if (hasDecimal && allowDecimal || requireDecimal === true) {\n mask += rawValue[indexOfLastDecimal - 1] === decimalSymbol ? '' : '[]';\n mask += decimalSymbol + '[]';\n\n if (fraction) {\n if ((typeof decimalLimit === 'undefined' ? 'undefined' : _typeof(decimalLimit)) === number) {\n fraction = fraction.slice(0, decimalLimit);\n }\n mask += fraction;\n } else if (requireDecimal === true) {\n for (var i = 0; i < decimalLimit; i++) {\n mask += one;\n }\n }\n }\n\n return '' + prefix + mask + suffix;\n };\n}\n\nfunction convertToMask(strNumber) {\n return strNumber.replace(noneDigitsRegExp, emptyString).replace(digitsRegExp, one);\n}\n\n// http://stackoverflow.com/a/10899795/604296\nfunction addThousandsSeparator(n, thousandsSeparatorSymbol) {\n return n.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandsSeparatorSymbol);\n}"}],"filteredModules":0,"children":[]}
{
"name": "text-mask-addons",
"version": "0.3.0",
"version": "0.4.0",
"description": "Addons for Text Mask https://github.com/msafi/text-mask",

@@ -5,0 +5,0 @@ "author": "M.K. Safi <msafi@msafi.com>",

@@ -8,6 +8,6 @@ # Text Mask Addons

```bash
npm i text-mask-addons --save-dev
npm i text-mask-addons --save
```
## Dynamic masks
## Mask functions

@@ -18,6 +18,6 @@ These functions here can be passed as a

### `createCurrencyMask`
### `createNumberMask`
`createCurrencyMask` returns a `currencyMask` function that will format user input as currency.
`createCurrencyMask` accepts an object with the following keys:
`createNumberMask` returns a `numberMask` function that will format user input as currency.
`createNumberMask` accepts an object with the following keys:

@@ -31,3 +31,3 @@ 1. `prefix` (string): what to display before the amount. Defaults to `'$'`.

1. `decimalLimit` (number): how many digits to allow after the decimal. Defaults to `2`
1. `requireFraction` (boolean): whether or not to always include a decimal point and placeholder for decimal digits
1. `requireDecimal` (boolean): whether or not to always include a decimal point and placeholder for decimal digits
after the integer. Defaults to `false`.

@@ -38,5 +38,5 @@

```js
import createCurrencyMask from 'text-mask-addons/dist/createCurrencyMask.js'
import createNumberMask from 'text-mask-addons/dist/createNumberMask.js'
const currencyMask = createCurrencyMask({
const numberMask = createNumberMask({
prefix: '',

@@ -46,3 +46,3 @@ suffix: ' $' // This will put the dollar sign at the end, with a space.

// ...then pass `currencyMask` to the Text Mask component
// ...then pass `numberMask` to the Text Mask component
```

@@ -49,0 +49,0 @@

@@ -1,52 +0,52 @@

const createCurrencyMask = (isVerify()) ?
require('../dist/createCurrencyMask.js').default :
require('../src/createCurrencyMask.js').default
const createNumberMask = (isVerify()) ?
require('../dist/createNumberMask.js').default :
require('../src/createNumberMask.js').default
describe('createCurrencyMask', () => {
describe('createNumberMask', () => {
it('can returns a configured currency mask', () => {
let currencyMask = createCurrencyMask()
let numberMask = createNumberMask()
expect(currencyMask).to.be.a('function')
expect(numberMask).to.be.a('function')
})
it('takes a prefix', () => {
let currencyMask = createCurrencyMask({prefix: '$'})
let numberMask = createNumberMask({prefix: '$'})
expect(currencyMask('12')).to.equal('$11')
expect(numberMask('12')).to.equal('$11')
})
it('takes a suffix', () => {
let currencyMask = createCurrencyMask({suffix: ' $', prefix: ''})
let numberMask = createNumberMask({suffix: ' $', prefix: ''})
expect(currencyMask('12')).to.equal('11 $')
expect(numberMask('12')).to.equal('11 $')
})
it('can be configured to add a thousands separator or not', () => {
let currencyMaskWithoutThousandsSeparator = createCurrencyMask({includeThousandsSeparator: false})
expect(currencyMaskWithoutThousandsSeparator('1000')).to.equal('$1111')
let numberMaskWithoutThousandsSeparator = createNumberMask({includeThousandsSeparator: false})
expect(numberMaskWithoutThousandsSeparator('1000')).to.equal('$1111')
let currencyMaskWithThousandsSeparator = createCurrencyMask()
expect(currencyMaskWithThousandsSeparator('1000')).to.equal('$1,111')
let numberMaskWithThousandsSeparator = createNumberMask()
expect(numberMaskWithThousandsSeparator('1000')).to.equal('$1,111')
})
it('can be configured with a custom character for the thousands separator', () => {
let currencyMask = createCurrencyMask({thousandsSeparatorSymbol: '.'})
let numberMask = createNumberMask({thousandsSeparatorSymbol: '.'})
expect(currencyMask('1000')).to.equal('$1.111')
expect(numberMask('1000')).to.equal('$1.111')
})
it('can be configured to accept a fraction and returns the fraction separator with caret traps', () => {
let currencyMask = createCurrencyMask({allowDecimal: true})
let numberMask = createNumberMask({allowDecimal: true})
expect(currencyMask('1000.')).to.equal('$1,111[].[]')
expect(numberMask('1000.')).to.equal('$1,111[].[]')
})
it('rejects fractions by default', () => {
let currencyMask = createCurrencyMask()
let numberMask = createNumberMask()
expect(currencyMask('1000.')).to.equal('$1,111')
expect(numberMask('1000.')).to.equal('$1,111')
})
it('can be configured with a custom character for the fraction separator', () => {
let currencyMask = createCurrencyMask({
let numberMask = createNumberMask({
allowDecimal: true,

@@ -57,52 +57,52 @@ decimalSymbol: ',',

expect(currencyMask('1000,')).to.equal('$1.111[],[]')
expect(numberMask('1000,')).to.equal('$1.111[],[]')
})
it('can limit the length of the fraction', () => {
let currencyMask = createCurrencyMask({allowDecimal: true, decimalLimit: 2})
let numberMask = createNumberMask({allowDecimal: true, decimalLimit: 2})
expect(currencyMask('1000.3823')).to.equal('$1,111[].[]11')
expect(numberMask('1000.3823')).to.equal('$1,111[].[]11')
})
it('can require a fraction', () => {
let currencyMask = createCurrencyMask({requireFraction: true})
let numberMask = createNumberMask({requireDecimal: true})
expect(currencyMask('1000')).to.equal('$1,111[].[]11')
expect(numberMask('1000')).to.equal('$1,111[].[]11')
})
describe('currencyMask default behavior', () => {
let currencyMask = null
describe('numberMask default behavior', () => {
let numberMask = null
beforeEach(() => {
currencyMask = createCurrencyMask()
numberMask = createNumberMask()
})
it('returns a mask that has the same number of digits as the given number', () => {
expect(currencyMask('20382')).to.equal('$11,111')
expect(numberMask('20382')).to.equal('$11,111')
})
it('uses the dollar symbol as the default prefix', () => {
expect(currencyMask('1')).to.equal('$1')
expect(numberMask('1')).to.equal('$1')
})
it('adds no suffix by default', () => {
expect(currencyMask('1')).to.equal('$1')
expect(numberMask('1')).to.equal('$1')
})
it('returns a mask that appends the currency symbol', () => {
expect(currencyMask('1')).to.equal('$1')
expect(numberMask('1')).to.equal('$1')
})
it('adds adds a comma after a thousand', () => {
expect(currencyMask('1000')).to.equal('$1,111')
expect(numberMask('1000')).to.equal('$1,111')
})
it('adds as many commas as needed', () => {
expect(currencyMask('23984209342084')).to.equal('$11,111,111,111,111')
expect(numberMask('23984209342084')).to.equal('$11,111,111,111,111')
})
it('accepts any string and strips out any non-digit characters', () => {
expect(currencyMask('h4x0r sp43k')).to.equal('$1,111')
expect(numberMask('h4x0r sp43k')).to.equal('$1,111')
})
})
})

@@ -8,3 +8,3 @@ var StatsPlugin = require('stats-webpack-plugin')

autoCorrectedMmddyyyyPipe: path.join(__dirname, './src/autoCorrectedMmddyyyyPipe.js'),
createCurrencyMask: path.join(__dirname, './src/createCurrencyMask.js'),
createNumberMask: path.join(__dirname, './src/createNumberMask.js'),
},

@@ -11,0 +11,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc