core.unescapetoken
Home > @medplum/core > unescapeToken
unescapeToken() function
Unescape token part of a JSON Pointer string
token should *not* contain any '/' characters.
Evaluation of each reference token begins by decoding any escaped character sequence. This is performed by first transforming any occurrence of the sequence '~1' to '/', and then transforming any occurrence of the sequence '~0' to '~'. By performing the substitutions in this order, an implementation avoids the error of turning '~01' first into '~1' and then into '/', which would be incorrect (the string '~01' correctly becomes '~1' after transformation).
Here's my take:
~1 is unescaped with higher priority than ~0 because it is a lower-order escape character. I say "lower order" because '/' needs escaping due to the JSON Pointer serialization technique. Whereas, '~' is escaped because escaping '/' uses the '~' character.
Signature:
export declare function unescapeToken(token: string): string;
Parameters
Parameter | Type | Description |
|---|---|---|
token | string | The token to unescape. |
Returns:
string
The unescaped token.