Giter Site home page Giter Site logo

marcoslimacom / angular-input-masks Goto Github PK

View Code? Open in Web Editor NEW

This project forked from assisrafael/angular-input-masks

0.0 2.0 0.0 1.03 MB

Opinionated input masks for AngularJS

Home Page: http://assisrafael.github.io/angular-input-masks/

License: MIT License

JavaScript 82.10% HTML 17.90%

angular-input-masks's Introduction

angular-input-masks Build Status Coverage Status Standard Version

NPM

Join the chat at https://gitter.im/assisrafael/angular-input-masks Bountysource

Opinionated angular input masks. Provides ready to use masks with little (br/inscricao-estadual) to no configuration (number, cnpj, etc).

Compatibility

  • angular-input-masks@~2: angular@^1.3 (however is only tested with 1.3) and ECMAScript 5 compliant browsers (however CI only tests chrome and firefox).
  • angular-input-masks@~1: angular@~1.2

Installation

With Bower:

bower install --save angular-input-masks

With npm:

npm install --save angular-input-masks

Configuration

With bower or npm (without browserify):

  1. Import the angular-input-masks-standalone.min.js script in your page. For example:
<script src="angular-input-masks-standalone.min.js"></script>

Obs: for npm the build scripts are available inside releases folder.

  1. Include the module name ui.utils.masks in your angular app. For example:
angular.module('app', ['ui.utils.masks']);

With npm and browserify:

angular.module('demo', [require('angular-input-masks')]);

Internationalization

Some masks are internationalized, so you need to include the proper angular-locale in your app(see: https://docs.angularjs.org/guide/i18n).

How to use

ui-number-mask

  • Example:
<input type="text" name="field" ng-model="number" ui-number-mask>
  • Define the number of decimals (default is 2):
<input type="text" name="field" ng-model="number" ui-number-mask="3">
  • Allow negative numbers using the ui-negative-number attribute:
<input type="text" name="field" ng-model="number" ui-number-mask="4" ui-negative-number>
  • Support to the min, max and ui-hide-group-sep attributes.
<input type="text" name="field" ng-model="number" ui-number-mask min="10.1" max="100.9">
<!-- Use 'ui-hide-group-sep' attribute if you don't want show the thousands separators-->
<input type="text" name="field" ng-model="number" ui-number-mask ui-hide-group-sep>
  • Internationalized: Used the decimal separator and the thousands separator defined in the client browser configuration.

ui-percentage-mask

  • Example:
<input type="text" name="field" ng-model="percentage" ui-percentage-mask>
  • You can set the number of decimals (default is 2):
<input type="text" name="field" ng-model="percentage" ui-percentage-mask="4">
  • The $modelValue is the $viewValue / 100, so $viewValue - 100% = $modelValue - 1

  • You can use the same value in $modelValue and $viewValue using ui-percentage-value:

<input type="text" name="field" ng-model="percentage" ui-percentage-mask ui-percentage-value>
  • Support to the min, max and ui-hide-group-sep attributes.

  • Internationalized: Used the decimal separator and thousands separator defined in the client browser configuration.

  • The $modelValue is the $viewValue / 100, so $viewValue - 100% = $modelValue - 1

  • You can add ui-hide-space attribute to hide space between [NUMBER] and %

ui-money-mask

  • Example:
<input type="text" name="field" ng-model="money" ui-money-mask>
  • Define the number of decimals (default is 2):
<input type="text" name="field" ng-model="money" ui-money-mask="3">
  • Support to the min, max and ui-hide-group-sep attributes.

  • Internationalized: Used the currency symbol, decimal separator and thousands separator defined in the client browser configuration.

  • You can add ui-hide-space attribute to hide space between [Currency symbol] and [NUMBER]

ui-br-phone-number

<input type="text" name="field" ng-model="phoneNumber" ui-br-phone-number>

ui-br-cep-mask

<input type="text" name="field" ng-model="cep" ui-br-cep-mask>

ui-br-cpf-mask

  • Example:
<input type="text" name="field" ng-model="initializedCpf" ui-br-cpf-mask>

ui-br-cnpj-mask

  • Example:
<input type="text" name="field" ng-model="initializedCnpj" ui-br-cnpj-mask>

ui-br-cpfcnpj-mask

  • Example:
<input type="text" name="field" ng-model="initializedCpfCnpj1" ui-br-cpfcnpj-mask>

ui-br-ie-mask

<select ng-init="ufs=['AC','AL','AM','TO']" ng-model="selectedUF" ng-options="uf for uf in ufs"></select>
<input type="text" name="field19" ng-model="ieField" ui-br-ie-mask='selectedUF'>

ui-time-mask

-Example:

<input type="text" name="field" ng-model="initializeTime" ui-time-mask>
  • Support to the short attributes.
<input type="text" name="field" ng-model="initializeTime" ui-time-mask="short">

More examples

See more usage examples in the Demo page

Masks without documentation (help wanted!)

  • ui-nfe-acces-key-mask
  • ui-time-mask
  • ui-date-mask
  • ui-br-boleto-bancario-mask
  • ui-br-car-plate-mask
  • ui-scientific-notation-mask
  • ui-us-phone-number

Another build options

If you are using bower or npm (without browserify):

  • angular-input-masks-dependencies.js: provides all external dependencies (string-mask, br-validations, momentjs)
  • angular-input-masks-br.js: provides only global and BR directives, and does not include external dependencies (string-mask, br-validations, momentjs)
  • angular-input-masks-us.js: provides only global and US directives, and does not include external dependencies (string-mask, br-validations, momentjs)
  • angular-input-masks.js: provides all directives, and does not include external dependencies (string-mask, br-validations, momentjs)

If you are using npm with browserify:

  • require('angular-input-masks'): provides all directives
  • require('angular-input-masks/br'): only global and BR directives
  • require('angular-input-masks/us'): only global and US directives

Filters

Looking for related filters? Take a look at angular-br-filters

Build

npm install
gulp build

Tests

npm run test:unit
  • e2e:
  • Uses Protractor + Jasmine
  • Files: src/**/*.spec.js
npm run test:e2e
  • To run both tests:
npm test

angular-input-masks's People

Contributors

aktary avatar assisrafael avatar brunobastosg avatar danidewitt avatar detinho avatar dflourusso avatar dvbeato avatar gitter-badger avatar gmq avatar guilherme22 avatar houmark avatar leonnleite avatar marcelinhov2 avatar marcomafessolli avatar neokyox avatar neves avatar nloding avatar pavlokitdev avatar philippspinnler avatar richardaum avatar scardine avatar svemir avatar the-darc avatar wfgomes avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.