Socket
Socket
Sign inDemoInstall

angular-dynamic-number

Package Overview
Dependencies
Maintainers
1
Versions
43
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

angular-dynamic-number - npm Package Compare versions

Comparing version 1.5.4 to 1.5.5

2

bower.json
{
"name": "angular-dynamic-number",
"version": "1.5.4",
"version": "1.5.5",
"homepage": "https://github.com/uhlryk/angular-dynamic-number",

@@ -5,0 +5,0 @@ "authors": [

{
"name": "angular-dynamic-number",
"version": "1.5.4",
"version": "1.5.5",
"description": "Highly customizable angular directive for numbers",

@@ -5,0 +5,0 @@ "keywords": [

@@ -1,2 +0,7 @@

# Angular Dynamic Number [![Build Status](https://travis-ci.org/uhlryk/angular-dynamic-number.svg)](https://travis-ci.org/uhlryk/angular-dynamic-number)
# Angular Dynamic Number
[![Build Status](https://travis-ci.org/uhlryk/angular-dynamic-number.svg)](https://travis-ci.org/uhlryk/angular-dynamic-number)
[![Downloads](https://img.shields.io/npm/dt/angular-dynamic-number.svg)](https://www.npmjs.com/package/angular-dynamic-number)
[![Downloads](https://img.shields.io/npm/dm/angular-dynamic-number.svg)](https://www.npmjs.com/package/angular-dynamic-number)
[![NPM version](https://img.shields.io/npm/v/angular-dynamic-number.svg)](https://www.npmjs.com/package/angular-dynamic-number)
[![Bower](https://img.shields.io/bower/v/angular-dynamic-number.svg)](http://bower.io/search/?q=angular-dynamic-number)

@@ -16,2 +21,4 @@ Highly customizable AngularJS directive for numbers.

It is also React version available [React Dynamic Number](https://github.com/uhlryk/react-dynamic-number)
## Demo:

@@ -163,2 +170,2 @@ [link](http://htmlpreview.github.io/?https://github.com/uhlryk/angular-dynamic-number/blob/master/examples/index.html)

## License
MIT
MIT

@@ -47,5 +47,5 @@ /*jslint node: true */

function initIsPositive(attrs_num_pos, def_num_pos){
if(attrs_num_pos === 'false') {
if(attrs_num_pos === 'false' || attrs_num_pos === false) {
return false;
} else if(attrs_num_pos === 'true') {
} else if(attrs_num_pos === 'true' || attrs_num_pos === true) {
return true;

@@ -56,5 +56,5 @@ }

function initIsNegative(attrs_num_neg, def_num_neg){
if(attrs_num_neg === 'false') {
if(attrs_num_neg === 'false' || attrs_num_neg === false) {
return false;
} else if(attrs_num_neg === 'true') {
} else if(attrs_num_neg === 'true' || attrs_num_neg === true) {
return true;

@@ -75,5 +75,5 @@ }

function initIsFixed(attrs_fixed, def_fixed){
if(attrs_fixed === 'false') {
if(attrs_fixed === 'false' || attrs_fixed === false) {
return false;
} else if(attrs_fixed === 'true') {
} else if(attrs_fixed === 'true' || attrs_fixed === true) {
return true;

@@ -223,10 +223,15 @@ }

}
var integerPart = initIntegerPart(scope.numInt, 6);
var fractionPart = initFractionPart(scope.numFract, 2);
var fractionSeparator = initSeparator(scope.numSep, '.');
var isPositiveNumber = initIsPositive(scope.numPos, true);
var isNegativeNumber = initIsNegative(scope.numNeg, true);
var roundFunction = initRound(scope.numRound, Math.round);
var isThousandSeparator = initIsThousand(scope.numThousand, false);
var strategy = {};
if(scope.awnum) {
strategy = dynamicNumberStrategy.getStrategy(scope.awnum);
}
var integerPart = initIntegerPart(scope.numInt !== undefined ? scope.numInt : strategy.numInt, 6);
var fractionPart = initFractionPart(scope.numFract !== undefined ? scope.numFract : strategy.numFract, 2);
var fractionSeparator = initSeparator(scope.numSep !== undefined ? scope.numSep : strategy.numSep, '.');
var isPositiveNumber = initIsPositive(scope.numPos !== undefined ? scope.numPos : strategy.numPos, true);
var isNegativeNumber = initIsNegative(scope.numNeg !== undefined ? scope.numNeg : strategy.numNeg, true);
var roundFunction = initRound(scope.numRound !== undefined ? scope.numRound : strategy.numRound, Math.round);
var isThousandSeparator = initIsThousand(scope.numThousand !== undefined ? scope.numThousand : strategy.numThousand, false);
if(isPositiveNumber === false && isNegativeNumber === false) {

@@ -233,0 +238,0 @@ throw new Error('Number is set to not be positive and not be negative. Change num_pos attr or/and num_neg attr to true');

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

!function(e,n,t){"use strict";function r(e,n){return e===t?"":","===n?String(e).replace(".",","):String(e)}function u(e,n){return","===n?String(e).replace(/\./g,"").replace(",","."):String(e).replace(/,/g,"")}function i(e,n){if(e>=0){var t=parseInt(e,10);if(isNaN(t)===!1&&isFinite(t)&&t>=0)return t}return n}function a(e,n){if(e>=0){var t=parseInt(e,10);if(isNaN(t)===!1&&isFinite(t)&&t>=0)return t}return n}function o(e,n){return","===e?",":"."===e?".":n}function c(e,n){return"false"===e?!1:"true"===e?!0:n}function f(e,n){return"false"===e?!1:"true"===e?!0:n}function l(e,n){return"floor"===e?Math.floor:"ceil"===e?Math.ceil:"round"===e?Math.round:n}function s(e,n){return"false"===e?!1:"true"===e?!0:n}function g(e,n){return"false"===e?!1:"true"===e?!0:n}function m(e,n,t,r,u){var i="-?";r===!1&&u===!0?i="-":r===!0&&u===!1&&(i="");var a="[0-9]{0,"+e+"}";0===e&&(a="0");var o="(\\"+t+"([0-9]){0,"+n+"})";return 0===n&&(o=""),new RegExp("^"+i+a+o+"?$")}function d(e){return String(e).replace(/^0+/g,"").replace(/^-0(\d+)/g,"-$1").replace(/^-([\.,])/g,"-0$1").replace(/^[\.,]/g,"0$&")}function v(e,n){return"."===n?String(e).replace(/\./g,""):String(e).replace(/,/g,"")}function p(e,n){return String(e).replace(/\B(?=(\d{3})+(?!\d))/g,n)}function h(e,n){e.$setViewValue(n),e.$render()}function S(e,n,t,u,i,a){if(e=Number(e),!isNaN(e)&&isFinite(e)){var o=Math.pow(10,n);return e=i?r((u(e*o)/o).toFixed(n),t):r(String(u(e*o)/o),t),a&&(e=p(e,"."===t?",":".")),e}return i?0..toFixed(n):"0"}function w(e){var n=0;if(document.selection){e.focus();var t=document.selection.createRange();t.moveStart("character",-e.value.length),n=t.text.length}else(e.selectionStart||"0"==e.selectionStart)&&(n=e.selectionStart);return n}function N(e,n){if(null!==e)if(e.createTextRange){var t=e.createTextRange();t.move("character",n),t.select()}else e.selectionStart?(e.focus(),e.setSelectionRange(n,n)):e.focus()}function y(e,n,t){for(var r=0,u=0,i=0;i<e.length;i++)if(e[i]!==n){if(r++,r>=t)break}else u++;return u}function b(e){return{restrict:"A",require:"?ngModel",scope:{awnum:"@",numInt:"@",numFract:"@",numSep:"@",numPos:"@",numNeg:"@",numRound:"@",numThousand:"@"},link:function(e,n,s,b){if(!n[0]||"INPUT"!==n[0].tagName||"text"!==n[0].type)return void console.warn("Directive angular-dynamic-number works only for 'input' tag with type = 'text'");if(!b)return void console.warn("Directive angular-dynamic-number need ngModel attribute");var $=i(e.numInt,6),x=a(e.numFract,2),M=o(e.numSep,"."),F=c(e.numPos,!0),R=f(e.numNeg,!0),I=l(e.numRound,Math.round),T=g(e.numThousand,!1);if(F===!1&&R===!1)throw new Error("Number is set to not be positive and not be negative. Change num_pos attr or/and num_neg attr to true");var V=m($,x,M,F,R);b.$parsers.unshift(function(e){var i=String(e);if(/^[\.,]{2,}/.test(i))return h(b,0),0;var a=w(n[0]),o=i.slice(0,a),c=o.length;if(o=v(o,"."===M?",":"."),i=v(i,"."===M?",":"."),o=d(o),i=d(i),""===i&&"0"===String(e).charAt(0))return h(b,0),0;if(i===t||""===i)return 0;if("-"===i)return h(b,"-"),0;if(V.test(i)===!1){var f=r(b.$modelValue,M);return T&&(f=p(f,"."===M?",":".")),h(b,f),N(n[0],a-1),b.$modelValue}var l=0,s=a-c+o.length;return T&&(i=p(i,"."===M?",":"."),l=y(i,"."===M?",":".",s)),h(b,i),N(n[0],s+l),u(i,M)}),b.$formatters.push(function(e){return S(e,x,M,I,!1,T)})}}}n.module("dynamicNumber",[]).provider("dynamicNumberStrategy",function(){var e={};this.addStrategy=function(n,t){e[n]=t},this.getStrategy=function(n){return e[n]},this.$get=function(){return{getStrategy:function(n){return e[n]}}}}).filter("awnum",function(){return function(e,n,t,r,u,i){var c=a(n,2),f=o(t,"."),m=l(r,Math.round),d=s(u,!1),v=g(i,!1);return S(e,c,f,m,d,v)}}).directive("awnum",["dynamicNumberStrategy",b])}(window,window.angular);
!function(n,e,t){"use strict";function r(n,e){return n===t?"":","===e?String(n).replace(".",","):String(n)}function u(n,e){return","===e?String(n).replace(/\./g,"").replace(",","."):String(n).replace(/,/g,"")}function i(n,e){if(n>=0){var t=parseInt(n,10);if(isNaN(t)===!1&&isFinite(t)&&t>=0)return t}return e}function a(n,e){if(n>=0){var t=parseInt(n,10);if(isNaN(t)===!1&&isFinite(t)&&t>=0)return t}return e}function o(n,e){return","===n?",":"."===n?".":e}function c(n,e){return"false"===n||n===!1?!1:"true"===n||n===!0?!0:e}function f(n,e){return"false"===n||n===!1?!1:"true"===n||n===!0?!0:e}function s(n,e){return"floor"===n?Math.floor:"ceil"===n?Math.ceil:"round"===n?Math.round:e}function m(n,e){return"false"===n||n===!1?!1:"true"===n||n===!0?!0:e}function l(n,e){return"false"===n?!1:"true"===n?!0:e}function g(n,e,t,r,u){var i="-?";r===!1&&u===!0?i="-":r===!0&&u===!1&&(i="");var a="[0-9]{0,"+n+"}";0===n&&(a="0");var o="(\\"+t+"([0-9]){0,"+e+"})";return 0===e&&(o=""),new RegExp("^"+i+a+o+"?$")}function d(n){return String(n).replace(/^0+/g,"").replace(/^-0(\d+)/g,"-$1").replace(/^-([\.,])/g,"-0$1").replace(/^[\.,]/g,"0$&")}function v(n,e){return"."===e?String(n).replace(/\./g,""):String(n).replace(/,/g,"")}function p(n,e){return String(n).replace(/\B(?=(\d{3})+(?!\d))/g,e)}function S(n,e){n.$setViewValue(e),n.$render()}function h(n,e,t,u,i,a){if(n=Number(n),!isNaN(n)&&isFinite(n)){var o=Math.pow(10,e);return n=i?r((u(n*o)/o).toFixed(e),t):r(String(u(n*o)/o),t),a&&(n=p(n,"."===t?",":".")),n}return i?0..toFixed(e):"0"}function w(n){var e=0;if(document.selection){n.focus();var t=document.selection.createRange();t.moveStart("character",-n.value.length),e=t.text.length}else(n.selectionStart||"0"==n.selectionStart)&&(e=n.selectionStart);return e}function N(n,e){if(null!==n)if(n.createTextRange){var t=n.createTextRange();t.move("character",e),t.select()}else n.selectionStart?(n.focus(),n.setSelectionRange(e,e)):n.focus()}function y(n,e,t){for(var r=0,u=0,i=0;i<n.length;i++)if(n[i]!==e){if(r++,r>=t)break}else u++;return u}function b(n){return{restrict:"A",require:"?ngModel",scope:{awnum:"@",numInt:"@",numFract:"@",numSep:"@",numPos:"@",numNeg:"@",numRound:"@",numThousand:"@"},link:function(e,m,b,$){if(!m[0]||"INPUT"!==m[0].tagName||"text"!==m[0].type)return void console.warn("Directive angular-dynamic-number works only for 'input' tag with type = 'text'");if(!$)return void console.warn("Directive angular-dynamic-number need ngModel attribute");var F={};e.awnum&&(F=n.getStrategy(e.awnum));var R=i(e.numInt!==t?e.numInt:F.numInt,6),x=a(e.numFract!==t?e.numFract:F.numFract,2),M=o(e.numSep!==t?e.numSep:F.numSep,"."),I=c(e.numPos!==t?e.numPos:F.numPos,!0),T=f(e.numNeg!==t?e.numNeg:F.numNeg,!0),P=s(e.numRound!==t?e.numRound:F.numRound,Math.round),V=l(e.numThousand!==t?e.numThousand:F.numThousand,!1);if(I===!1&&T===!1)throw new Error("Number is set to not be positive and not be negative. Change num_pos attr or/and num_neg attr to true");var k=g(R,x,M,I,T);$.$parsers.unshift(function(n){var e=String(n);if(/^[\.,]{2,}/.test(e))return S($,0),0;var i=w(m[0]),a=e.slice(0,i),o=a.length;if(a=v(a,"."===M?",":"."),e=v(e,"."===M?",":"."),a=d(a),e=d(e),""===e&&"0"===String(n).charAt(0))return S($,0),0;if(e===t||""===e)return 0;if("-"===e)return S($,"-"),0;if(k.test(e)===!1){var c=r($.$modelValue,M);return V&&(c=p(c,"."===M?",":".")),S($,c),N(m[0],i-1),$.$modelValue}var f=0,s=i-o+a.length;return V&&(e=p(e,"."===M?",":"."),f=y(e,"."===M?",":".",s)),S($,e),N(m[0],s+f),u(e,M)}),$.$formatters.push(function(n){return h(n,x,M,P,!1,V)})}}}e.module("dynamicNumber",[]).provider("dynamicNumberStrategy",function(){var n={};this.addStrategy=function(e,t){n[e]=t},this.getStrategy=function(e){return n[e]},this.$get=function(){return{getStrategy:function(e){return n[e]}}}}).filter("awnum",function(){return function(n,e,t,r,u,i){var c=a(e,2),f=o(t,"."),g=s(r,Math.round),d=m(u,!1),v=l(i,!1);return h(n,c,f,g,d,v)}}).directive("awnum",["dynamicNumberStrategy",b])}(window,window.angular);

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc