1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 x1 |
/**
* Functions for HTML tasks such as escaping or unescaping HTML entities.
*
* ```ts
* import { unescape } from "@std/html/entities";
* import { assertEquals } from "@std/assert";
*
* assertEquals(unescape("<>'&AA"), "<>'&AA");
* assertEquals(unescape("þð"), "þð");
* ```
*
* @module
*/
import type { EntityList as _typeAlias_EntityList } from "jsr:@std/[email protected]"
/**
* Object structure for a list of HTML entities.
*/
type EntityList = _typeAlias_EntityList
export type { EntityList }
import { escape as _function_escape } from "jsr:@std/[email protected]"
/**
* Escapes text for safe interpolation into HTML text content and quoted attributes.
*
* @example Usage
* ```ts
* import { escape } from "@std/html/entities";
* import { assertEquals } from "@std/assert";
*
* assertEquals(escape("<>'&AA"), "<>'&AA");
*
* // Characters that don't need to be escaped will be left alone,
* // even if named HTML entities exist for them.
* assertEquals(escape("þð"), "þð");
* ```
*
* @param str The string to escape.
* @return The escaped string.
*/
const escape = _function_escape as typeof _function_escape
export { escape }
import type { UnescapeOptions as _typeAlias_UnescapeOptions } from "jsr:@std/[email protected]"
/**
* Options for {@linkcode unescape}.
*/
type UnescapeOptions = _typeAlias_UnescapeOptions
export type { UnescapeOptions }
import { unescape as _function_unescape } from "jsr:@std/[email protected]"
/**
* Unescapes HTML entities in text.
*
* Default options only handle `&<>'"` and numeric entities.
*
* @example Basic usage
* ```ts
* import { unescape } from "@std/html/entities";
* import { assertEquals } from "@std/assert";
*
* assertEquals(unescape("<>'&AA"), "<>'&AA");
* assertEquals(unescape("þð"), "þð");
* ```
*
* @example Using a custom entity list
*
* This uses the full named entity list from the HTML spec (~47K un-minified)
*
* ```ts
* import { unescape } from "@std/html/entities";
* import entityList from "@std/html/named-entity-list.json" with { type: "json" };
* import { assertEquals } from "@std/assert";
*
* assertEquals(unescape("<>'&AA", { entityList }), "<>'&AA");
* ```
*
* @param str The string to unescape.
* @param options Options for unescaping.
* @return The unescaped string.
*/
const unescape = _function_unescape as typeof _function_unescape
export { unescape }
import { isValidCustomElementName as _function_isValidCustomElementName } from "jsr:@std/[email protected]"
/**
* Returns whether the given string is a valid custom element name, as per the
* requirements defined in
* {@link https://html.spec.whatwg.org/multipage/custom-elements.html#valid-custom-element-name}.
*
* @experimental
* @example Usage
*
* Using a valid custom element name
*
* ```ts
* import { isValidCustomElementName } from "@std/html/is-valid-custom-element-name";
* import { assertEquals } from "@std/assert";
*
* assertEquals(isValidCustomElementName("custom-element"), true);
* assertEquals(isValidCustomElementName("font-face"), false);
* assertEquals(isValidCustomElementName("custom-element@"), false);
* ```
*
* @param elementName The element name to be validate
* @return `true` if the element name is valid, `false` otherwise.
*/
const isValidCustomElementName = _function_isValidCustomElementName as typeof _function_isValidCustomElementName
export { isValidCustomElementName }
|