jsc-safe-url
TypeScript icon, indicating that this package has built-in type declarations

0.2.4 • Public • Published

jsc-safe-url

JavaScriptCore santizes source URLs in error stacks by stripping query strings and fragments. Ref: Webkit/Webkit#49109d.

This package contains utility functions required to implement the proposed React Native Community RFC0646. It exports three functons:

function isJscSafeUrl(url: string): boolean

Returns false if the URL has a query component that could be stripped by JSC.

function toJscSafeUrl(urlToConvert: string): string

Accepts an absolute or relative URL, and encodes any data in the input query string (if present) into the path component of the URL, by using the delimiter //& (which cannot appear in a normalized file path) to separate the original path from the orignal query string.

toJscSafeUrl('https://example.com/path?foo=bar#fragment')
// 'https://example.com/path//&foo=bar#fragment'

function toNormalUrl(urlToNormalize: string): string

Accepts an absolute or relative URL, and replaces the first unescaped //& in the path component with ?. (Effectively the reverse of toJscSafeUrl.)

toNormalUrl('https://example.com/path//&foo=bar#fragment')
// 'https://example.com/path?foo=bar#fragment'

Package Sidebar

Install

npm i jsc-safe-url

Weekly Downloads

1,836,879

Version

0.2.4

License

0BSD

Unpacked Size

6.04 kB

Total Files

5

Last publish

Collaborators

  • metro-bot