7.0.1 • Published 1 month ago

@braintree/sanitize-url v7.0.1

Weekly downloads
389,904
License
MIT
Repository
github
Last release
1 month ago

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.

@gooddata/sdk-backend-base@grafana/datapomment-backend@infinitebrahmanuniverse/nolb-_bra@openchannel/react-common-components@everything-registry/sub-chunk-140rest-import-wavemaker-v2usesafeurlsashi-swagger-ui-kong-theme-universalsg-swagger-ui-kong-theme-universalsg-swagger-ui-kong-theme-universal-jjjsg-swagger-ui-kong-theme-universal-jtestingsg-swagger-ui-kong-theme-universal-ssssg-swagger-ui-kong-theme-universalssg-swagger-ui-kong-theme-universalsszelar-swagger-ui-kong-theme@diegosogari/mermaidquasvoluptasquosdolorrk_relase_2rk_relase_5rk_relase_8resources-coreact-native-sdk-fmtechreact-native-jitsi-meet-sdk-fmtechswagger-uiswagger-ui-plugin-hierarchical-tagsswagger-ui-qtgswagger-ui-reactswagger-ui-react-enhancedswagger-ui-extendswagger-ui-flat-model-pluginswagger-editorswagger-custom-uiswagger-irest-import-wavemakertea-swagger-uitea-swagger-ui2stream-chat-reactstream-chat-react-alphastream-chat-react-chimfernostream-chat-react-extstream-chat-react-ext-monfernapestream-chat-react-ext-neilstream-chat-react-febin-devstream-chat-react-fixedexcali-customexcali-toolexcalidraw-customexcalidraw-customizationexcalidraw-gdfulcrum-swagger-uifork-mermaidfc-stream-chat-reactmml-reactletschat.jslink-contextermulti-swaggermodified-swagger-uigrafana-datagrafana-mixnear-social-vmnear-bos-webcomponentnear-bos-webcomponent-livepeernear-bos-webcomponent-updatednguyen.the.sonmermaidmermaid-by1e11mermaid-elkmermanmermaid-ssrmermaid-fixmf-test-pkginsuntjfrog-ui-essentialsjitsi-meet-stepuphomeassistant-frontend-racelandkeystone-document-editorkeystaticopen-chat-reactrk_relase_6@heliosphere/swagger-ui-react@hashnode/api-client@grafarg/data@graphcms/html-to-slate-ast@gifyourgame/stream-chat-react@gk8/mermaidcore1998d3fend-mermaid@deboxsoft/mermaid@dinhthaimanh/stream-chat-react@demos-europe/demosplan-ui@domdomegg/swagger-uibos-vmbraintree-web@axway/swagger-ui@bureaublauwgeel/swagger-uidisuploaddash-html-componentsdash-core-components
7.0.1

1 month ago

7.0.0

5 months ago

6.0.3

9 months ago

6.0.4

9 months ago

6.0.1

2 years ago

6.0.2

1 year ago

6.0.0

2 years ago

5.0.2

3 years ago

5.0.1

3 years ago

5.0.0

4 years ago

4.1.1

4 years ago

4.1.0

4 years ago

4.0.1

4 years ago

4.0.0

5 years ago

3.1.0

5 years ago

3.0.0

5 years ago

2.1.0

6 years ago

2.0.2

7 years ago

2.0.1

7 years ago

2.0.0

7 years ago

1.0.0

7 years ago