1.1.13 • Published 4 years ago

ng-ip-address v1.1.13

Weekly downloads
1,327
License
MIT
Repository
github
Last release
4 years ago

Downloads

ng-ip-address

Description

An attribute directive that will limit an input to appropriate IP address characters and structure, as well as validate the value.

Currently only supports IPv4 Addresses

View a live demo on Plnkr, CodePen, or jsFiddle.

Versions

Vanilla does not include the additional configuration options, is a smaller file and has lower compatibility requirements.

Compatibility

AngularJS
VanillaFull
1.0+1.4+

AngularJS compatibility of full ngIpAddress is limited by $watchCollection() method.

Browsers
ChromeFirefoxInternet ExplorerOperaSafari
1.0+1.0+9+8.0+Yes

Browser compatibility is limited by setSelectionRange() method.

Install

NPM version

npm install ng-ip-address

Bower version

bower install ng-ip-address --save

Usage

Include ngIpAddress.min.js or ngIpAddress.vanilla.min.js in your build or directly with a <script> tag and require the module in your module definition:

angular  
    .module('App', [  
        'ng-ip-address',
        ... // other dependencies  
    ]);
<input type="text" ng-model="model" ng-ip-address />

Entries breaking one of the validation rules will cause the input to become invalid and gain the ng-invalid-ip-address class. Valid entries will have ng-valid-ip-address class.

You can also hook to $error with "ipAddress", ex: form.ipAddressInput.$error.ipAddress.

Additional Options

Vanilla version does not include additional options.

Port options are accessed through ng-ip-config property.

<input ng-model="model" ng-ip-address ng-ip-config="ipConfigObject" />
$scope.ipConfigObject = {
    allowPort: true
};

or

$scope.ipConfigObject = {
    requirePort: true
};

Options default to false and setting requirePort to true overrides allowPort.

Features

Limits User Input

  • Four segments with optional port (ex: 172.16.254.1:24213)
  • Each segment limited to 3 numbers
  • Leading zeroes are removed (ex: 2.02 will be turned into 2.2)
  • Duplicate periods are removed
  • Characters limited to numbers and period
with allowPort set to true
  • Limited to one colon in the fourth IP segment
  • Port is limited to 5 numbers

Validates User Input

  • Each segment must be between 0 and 255
  • Must be 4 segments
with allowPort set to true
  • If port exists, it must be between 1 and 65535
with requirePort set to true
  • Port must be present
1.1.13

4 years ago

1.1.12

7 years ago

1.1.11

7 years ago

1.1.10

8 years ago

1.1.9

8 years ago

1.1.8

8 years ago

1.1.7

8 years ago

1.1.6

8 years ago

1.1.5

8 years ago

1.1.4

8 years ago

1.1.3

8 years ago

1.1.2

8 years ago

1.1.1

8 years ago

1.1.0

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago