From 357becfa75e938a1c84fed905ef30ec09b24ea14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20S=C3=B8gaard?= Date: Fri, 12 Jan 2024 19:03:55 +0100 Subject: [PATCH] Refactor to resolve ts-expect-error comment (#1418) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Anders Søgaard <9662430+andershagbard@users.noreply.github.com> --- packages/hydrogen-react/src/ExternalVideo.tsx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/hydrogen-react/src/ExternalVideo.tsx b/packages/hydrogen-react/src/ExternalVideo.tsx index c05997085e..c8ed1832a4 100644 --- a/packages/hydrogen-react/src/ExternalVideo.tsx +++ b/packages/hydrogen-react/src/ExternalVideo.tsx @@ -1,5 +1,5 @@ import type {ExternalVideo as ExternalVideoType} from './storefront-api-types.js'; -import type {PartialDeep} from 'type-fest'; +import type {Entries, PartialDeep} from 'type-fest'; interface ExternalVideoBaseProps { /** @@ -40,9 +40,14 @@ export function ExternalVideo(props: ExternalVideoProps): JSX.Element { if (options) { const urlObject = new URL(data.embedUrl); - for (const key of Object.keys(options) as (keyof typeof options)[]) { - // @ts-expect-error https://github.com/microsoft/TypeScript/issues/32951 - urlObject.searchParams.set(key, options[key]); + for (const [key, value] of Object.entries(options) as Entries< + typeof options + >) { + if (typeof value === 'undefined') { + continue; + } + + urlObject.searchParams.set(key, value.toString()); } finalUrl = urlObject.toString(); }