You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Priyanka Punukollu 267a7b1e4f Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
..
.github Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
src Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
.eslintignore Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
.eslintrc Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
.nvmrc Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
.prettierignore Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
CHANGELOG.md Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
LICENSE Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
README.md Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
package.json Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
tsconfig.json Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago
vitest.config.ts Merge remote main into local — keep all agent feature files and Angular UI changes 1 month ago

README.md

sanitize-url

Installation

npm install -S @braintree/sanitize-url

Usage

var sanitizeUrl = require("@braintree/sanitize-url").sanitizeUrl;

sanitizeUrl("https://example.com"); // 'https://example.com'
sanitizeUrl("http://example.com"); // 'http://example.com'
sanitizeUrl("www.example.com"); // 'www.example.com'
sanitizeUrl("mailto:hello@example.com"); // 'mailto:hello@example.com'
sanitizeUrl(
  "https&#0000058//example.com"
); // https://example.com

sanitizeUrl("javascript:alert(document.domain)"); // 'about:blank'
sanitizeUrl("jAvasCrIPT:alert(document.domain)"); // 'about:blank'
sanitizeUrl(decodeURIComponent("JaVaScRiP%0at:alert(document.domain)")); // 'about:blank'
// HTML encoded javascript:alert('XSS')
sanitizeUrl(
  "&#0000106&#0000097&#0000118&#0000097&#0000115&#0000099&#0000114&#0000105&#0000112&#0000116&#0000058&#0000097&#0000108&#0000101&#0000114&#0000116&#0000040&#0000039&#0000088&#0000083&#0000083&#0000039&#0000041"
); // 'about:blank'

Testing

This library uses Vitest. All testing dependencies will be installed upon npm install and the test suite can be executed with npm test. Running the test suite will also run lint checks upon exiting.

npm test

To generate a coverage report, use npm run coverage.