New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

restricted-input

Package Overview
Dependencies
Maintainers
1
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

restricted-input - npm Package Compare versions

Comparing version 1.0.0 to 1.0.1

lib/constants.js

5

CHANGELOG.md
# Restricted Input - Release Notes
## 1.0.1 (2016-08-30)
* Remove deprecated `keyIdentifier` check
* Optimize RegExp creation
## 1.0.0 (2016-05-27)
* Initial public release of restricted-input

50

dist/restricted-input.js
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.RestrictedInput = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
module.exports={
"errors": {
"PATTERN_MISSING": "A valid pattern must be provided",
"INVALID_ELEMENT": "A valid HTML input or textarea element must be provided"
'use strict';
module.exports = {
errors: {
PATTERN_MISSING: 'A valid pattern must be provided',
INVALID_ELEMENT: 'A valid HTML input or textarea element must be provided'
}
}
};

@@ -14,8 +16,11 @@ },{}],2:[function(require,module,exports){

var ANDROID_REGEX = /android/i;
var CHROME_REGEX = /Chrome/;
function _isAndroid(ua) {
return /android/i.test(ua || UA);
return ANDROID_REGEX.test(ua || UA);
}
function _isChrome(ua) {
return /Chrome/.test(ua || UA);
return CHROME_REGEX.test(ua || UA);
}

@@ -131,5 +136,6 @@

var PLACEHOLDER_REGEX = /^[A-Za-z0-9\*]$/;
var PLACEHOLDER_PATTERN_REGEX = '({{[^}]+}})';
var PLACEHOLDER_PATTERN = '({{[^}]+}})';
var PERMACHAR_REGEX = '(\\s|\\S)';
var PATTERN_REGEX = new RegExp(PLACEHOLDER_PATTERN_REGEX + '|' + PERMACHAR_REGEX, 'g');
var PATTERN_REGEX = new RegExp(PLACEHOLDER_PATTERN + '|' + PERMACHAR_REGEX, 'g');
var PLACEHOLDER_PATTERN_REGEX = new RegExp('^' + PLACEHOLDER_PATTERN + '$');
var replacerRegex = new RegExp('{|}', 'g');

@@ -160,3 +166,3 @@

function isPlaceholderPattern(str) {
return new RegExp('^' + PLACEHOLDER_PATTERN_REGEX + '$').test(str);
return PLACEHOLDER_PATTERN_REGEX.test(str);
}

@@ -247,21 +253,2 @@

// https://www.w3.org/TR/2009/WD-DOM-Level-3-Events-20090908/#keyset-keyidentifiers
switch (event.keyIdentifier) {
case undefined: // eslint-disable-line
case '': // Selenium
break;
case 'Tab':
case 'U+0009':
return true;
case 'Backspace':
case 'U+0008':
return isAtBeginning;
case 'Del':
case 'Delete':
case 'U+007F': // delete at the end
return isAtEnd;
default:
return !/^U\+/.test(event.keyIdentifier);
}
// https://www.w3.org/TR/DOM-Level-3-Events/#widl-KeyboardEvent-key

@@ -319,2 +306,3 @@ switch (event.key) {

var Formatter = require('./formatter');
var DELETE_REGEX = /^(Del|Delete)$/;

@@ -407,4 +395,4 @@ /**

RestrictedInput.prototype._isDeletion = function (event) {
var isBackspace = event.keyIdentifier === 'U+0008' || event.key === 'Backspace' || event.keyCode === 8;
var isDelete = event.keyIdentifier === 'U+007F' || /^(Del|Delete)$/.test(event.key) || event.keyCode === 46;
var isBackspace = event.key === 'Backspace' || event.keyCode === 8;
var isDelete = DELETE_REGEX.test(event.key) || event.keyCode === 46;

@@ -411,0 +399,0 @@ return isDelete || isBackspace;

@@ -5,8 +5,11 @@ 'use strict';

var ANDROID_REGEX = /android/i;
var CHROME_REGEX = /Chrome/;
function _isAndroid(ua) {
return /android/i.test(ua || UA);
return ANDROID_REGEX.test(ua || UA);
}
function _isChrome(ua) {
return /Chrome/.test(ua || UA);
return CHROME_REGEX.test(ua || UA);
}

@@ -13,0 +16,0 @@

@@ -7,5 +7,6 @@ 'use strict';

var PLACEHOLDER_REGEX = /^[A-Za-z0-9\*]$/;
var PLACEHOLDER_PATTERN_REGEX = '({{[^}]+}})';
var PLACEHOLDER_PATTERN = '({{[^}]+}})';
var PERMACHAR_REGEX = '(\\s|\\S)';
var PATTERN_REGEX = new RegExp(PLACEHOLDER_PATTERN_REGEX + '|' + PERMACHAR_REGEX, 'g');
var PATTERN_REGEX = new RegExp(PLACEHOLDER_PATTERN + '|' + PERMACHAR_REGEX, 'g');
var PLACEHOLDER_PATTERN_REGEX = new RegExp('^' + PLACEHOLDER_PATTERN + '$');
var replacerRegex = new RegExp('{|}', 'g');

@@ -36,3 +37,3 @@

function isPlaceholderPattern(str) {
return new RegExp('^' + PLACEHOLDER_PATTERN_REGEX + '$').test(str);
return PLACEHOLDER_PATTERN_REGEX.test(str);
}

@@ -39,0 +40,0 @@

@@ -12,21 +12,2 @@ 'use strict';

// https://www.w3.org/TR/2009/WD-DOM-Level-3-Events-20090908/#keyset-keyidentifiers
switch (event.keyIdentifier) {
case undefined: // eslint-disable-line
case '': // Selenium
break;
case 'Tab':
case 'U+0009':
return true;
case 'Backspace':
case 'U+0008':
return isAtBeginning;
case 'Del':
case 'Delete':
case 'U+007F': // delete at the end
return isAtEnd;
default:
return !/^U\+/.test(event.keyIdentifier);
}
// https://www.w3.org/TR/DOM-Level-3-Events/#widl-KeyboardEvent-key

@@ -33,0 +14,0 @@ switch (event.key) {

@@ -10,2 +10,3 @@ 'use strict';

var Formatter = require('./formatter');
var DELETE_REGEX = /^(Del|Delete)$/;

@@ -98,4 +99,4 @@ /**

RestrictedInput.prototype._isDeletion = function (event) {
var isBackspace = event.keyIdentifier === 'U+0008' || event.key === 'Backspace' || event.keyCode === 8;
var isDelete = event.keyIdentifier === 'U+007F' || /^(Del|Delete)$/.test(event.key) || event.keyCode === 46;
var isBackspace = event.key === 'Backspace' || event.keyCode === 8;
var isDelete = DELETE_REGEX.test(event.key) || event.keyCode === 46;

@@ -102,0 +103,0 @@ return isDelete || isBackspace;

{
"name": "restricted-input",
"version": "1.0.0",
"version": "1.0.1",
"description": "Restrict inputs to certain valid characters (e.g. formatting phone or card numbers)",

@@ -35,22 +35,23 @@ "author": "Braintree <code@getbraintree.com> (https://www.braintreepayments.com/)",

"devDependencies": {
"browserify": "10.2.4",
"chai": "3.0.0",
"browserify": "13.0.1",
"chai": "3.5.0",
"chokidar-cli": "1.2.0",
"eslint": "2.7.0",
"eslint-config-braintree": "1.0.0",
"express": "4.13.0",
"eslint-config-braintree": "1.0.2",
"express": "4.14.0",
"jsdoc": "3.4.0",
"karma": "0.12.37",
"karma-browserify": "4.2.1",
"karma": "1.1.1",
"karma-browserify": "5.1.0",
"karma-chai-sinon": "0.1.5",
"karma-mocha": "0.2.0",
"karma-mocha-reporter": "1.0.2",
"karma-phantomjs-launcher": "0.2.0",
"lodash.assign": "3.2.0",
"mocha": "2.2.5",
"karma-mocha": "1.1.1",
"karma-mocha-reporter": "2.0.4",
"karma-phantomjs-launcher": "1.0.1",
"lodash.assign": "4.0.9",
"mocha": "3.0.0",
"phantomjs-prebuilt": "2.1.7",
"sauce-connect-launcher": "0.14.0",
"sinon": "1.15.4",
"sinon-chai": "2.8.0"
"sinon": "1.17.4",
"sinon-chai": "2.8.0",
"watchify": "^3.7.0"
}
}

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