PluginProbe
Gutenberg / 12.1.0
Gutenberg v12.1.0
23.9.1 23.9.0 23.8.0 23.7.2 23.7.1 23.7.0 23.6.1 23.6.2 23.6.0 23.5.3 23.5.2 23.5.1 23.5.0 23.4.0 23.3.2 23.3.1 23.3.0 23.2.0 23.2.1 23.2.2 23.1.1 23.1.0 23.0.1 12.6.0 7.4.0 All 402 releases
gutenberg / build / html-entities / index.js

index.js in Gutenberg 12.1.0, at build/html-entities/index.js

102 lines 3.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /******/ (function() { // webpackBootstrap
2 /******/ "use strict";
3 /******/ // The require scope
4 /******/ var __webpack_require__ = {};
5 /******/
6 /************************************************************************/
7 /******/ /* webpack/runtime/define property getters */
8 /******/ !function() {
9 /******/ // define getter functions for harmony exports
10 /******/ __webpack_require__.d = function(exports, definition) {
11 /******/ for(var key in definition) {
12 /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
13 /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
14 /******/ }
15 /******/ }
16 /******/ };
17 /******/ }();
18 /******/
19 /******/ /* webpack/runtime/hasOwnProperty shorthand */
20 /******/ !function() {
21 /******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }
22 /******/ }();
23 /******/
24 /******/ /* webpack/runtime/make namespace object */
25 /******/ !function() {
26 /******/ // define __esModule on exports
27 /******/ __webpack_require__.r = function(exports) {
28 /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
29 /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
30 /******/ }
31 /******/ Object.defineProperty(exports, '__esModule', { value: true });
32 /******/ };
33 /******/ }();
34 /******/
35 /************************************************************************/
36 var __webpack_exports__ = {};
37 __webpack_require__.r(__webpack_exports__);
38 /* harmony export */ __webpack_require__.d(__webpack_exports__, {
39 /* harmony export */ "decodeEntities": function() { return /* binding */ decodeEntities; }
40 /* harmony export */ });
41 /** @type {HTMLTextAreaElement} */
42 let _decodeTextArea;
43 /**
44 * Decodes the HTML entities from a given string.
45 *
46 * @param {string} html String that contain HTML entities.
47 *
48 * @example
49 * ```js
50 * const result = decodeEntities( 'á' );
51 * console.log( result ); // result will be "รก"
52 * ```
53 *
54 * @return {string} The decoded string.
55 */
56
57
58 function decodeEntities(html) {
59 // not a string, or no entities to decode
60 if ('string' !== typeof html || -1 === html.indexOf('&')) {
61 return html;
62 } // create a textarea for decoding entities, that we can reuse
63
64
65 if (undefined === _decodeTextArea) {
66 if (document.implementation && document.implementation.createHTMLDocument) {
67 _decodeTextArea = document.implementation.createHTMLDocument('').createElement('textarea');
68 } else {
69 _decodeTextArea = document.createElement('textarea');
70 }
71 }
72
73 _decodeTextArea.innerHTML = html;
74 const decoded = _decodeTextArea.textContent;
75 _decodeTextArea.innerHTML = '';
76 /**
77 * Cast to string, HTMLTextAreaElement should always have `string` textContent.
78 *
79 * > The `textContent` property of the `Node` interface represents the text content of the
80 * > node and its descendants.
81 * >
82 * > Value: A string or `null`
83 * >
84 * > * If the node is a `document` or a Doctype, `textContent` returns `null`.
85 * > * If the node is a CDATA section, comment, processing instruction, or text node,
86 * > textContent returns the text inside the node, i.e., the `Node.nodeValue`.
87 * > * For other node types, `textContent returns the concatenation of the textContent of
88 * > every child node, excluding comments and processing instructions. (This is an empty
89 * > string if the node has no children.)
90 *
91 * @see https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent
92 */
93
94 return (
95 /** @type {string} */
96 decoded
97 );
98 }
99 //# sourceMappingURL=index.js.map
100 (window.wp = window.wp || {}).htmlEntities = __webpack_exports__;
101 /******/ })()
102 ;