From eafb26ec31ee37637840f3c2f3a17c2df506edf1 Mon Sep 17 00:00:00 2001 From: im3dabasia Date: Wed, 26 Feb 2025 18:41:59 +0530 Subject: [PATCH 1/2] feat: Convert html-entites to ts --- packages/html-entities/src/{index.js => index.ts} | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) rename packages/html-entities/src/{index.js => index.ts} (89%) diff --git a/packages/html-entities/src/index.js b/packages/html-entities/src/index.ts similarity index 89% rename from packages/html-entities/src/index.js rename to packages/html-entities/src/index.ts index 1df4ec41484bdd..b87801e618966f 100644 --- a/packages/html-entities/src/index.js +++ b/packages/html-entities/src/index.ts @@ -1,5 +1,5 @@ /** @type {HTMLTextAreaElement} */ -let _decodeTextArea; +let _decodeTextArea: HTMLTextAreaElement | undefined; /** * Decodes the HTML entities from a given string. @@ -16,7 +16,7 @@ let _decodeTextArea; * * @return {string} The decoded string. */ -export function decodeEntities( html ) { +export function decodeEntities( html: string ): string { // Not a string, or no entities to decode. if ( 'string' !== typeof html || -1 === html.indexOf( '&' ) ) { return html; @@ -37,7 +37,7 @@ export function decodeEntities( html ) { } _decodeTextArea.innerHTML = html; - const decoded = _decodeTextArea.textContent; + const decoded = _decodeTextArea.textContent ?? ''; _decodeTextArea.innerHTML = ''; /** @@ -57,5 +57,5 @@ export function decodeEntities( html ) { * * @see https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent */ - return /** @type {string} */ ( decoded ); + return /** @type {string} */ decoded; } From 6b2c1c42f384e104f2a243b46ddd16f7dbe8b3db Mon Sep 17 00:00:00 2001 From: im3dabasia Date: Thu, 27 Feb 2025 10:50:02 +0530 Subject: [PATCH 2/2] feat: Update tests to ts --- packages/html-entities/src/test/{entities.js => entities.ts} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename packages/html-entities/src/test/{entities.js => entities.ts} (96%) diff --git a/packages/html-entities/src/test/entities.js b/packages/html-entities/src/test/entities.ts similarity index 96% rename from packages/html-entities/src/test/entities.js rename to packages/html-entities/src/test/entities.ts index 27c77ed480cdba..bb721d5b2b05dc 100644 --- a/packages/html-entities/src/test/entities.js +++ b/packages/html-entities/src/test/entities.ts @@ -1,7 +1,7 @@ /** * Internal dependencies */ -import { decodeEntities } from '../'; +import { decodeEntities } from '..'; describe( 'decodeEntities', () => { it( 'should not change html with no entities', () => {