From 94ec3a092450efa4b95eb73bd59ac55e92a2b31c Mon Sep 17 00:00:00 2001 From: Shusui MOYATANI Date: Wed, 10 Jan 2024 21:00:59 +0900 Subject: [PATCH] fix: stop caching popup --- src/components/useEmojiPicker.tsx | 6 +++--- src/components/utils/usePopup.tsx | 14 +++----------- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/src/components/useEmojiPicker.tsx b/src/components/useEmojiPicker.tsx index f879724..bc629dd 100644 --- a/src/components/useEmojiPicker.tsx +++ b/src/components/useEmojiPicker.tsx @@ -1,4 +1,4 @@ -import { createMemo, children } from 'solid-js'; +import { createMemo } from 'solid-js'; import { Picker } from 'emoji-mart'; @@ -28,7 +28,7 @@ const useEmojiPicker = (propsProvider: () => UseEmojiPickerProps) => { let popup: UsePopup | undefined; - const pickerElement = children(() => { + const pickerElement = () => { const customEmojis = Object.entries(config().customEmojis).map(([name, { url }]) => ({ id: name, name, @@ -66,7 +66,7 @@ const useEmojiPicker = (propsProvider: () => UseEmojiPickerProps) => { // eslint-disable-next-line @typescript-eslint/no-explicit-any return picker as any as HTMLElement; - }); + }; popup = usePopup(() => ({ position: 'bottom', diff --git a/src/components/utils/usePopup.tsx b/src/components/utils/usePopup.tsx index db0f53b..1a5bf92 100644 --- a/src/components/utils/usePopup.tsx +++ b/src/components/utils/usePopup.tsx @@ -1,12 +1,4 @@ -import { - createSignal, - createEffect, - createMemo, - onCleanup, - children, - Show, - type JSX, -} from 'solid-js'; +import { createSignal, createEffect, createMemo, onCleanup, Show, type JSX } from 'solid-js'; import { Portal } from 'solid-js/web'; @@ -31,13 +23,13 @@ const usePopup = (propsProvider: () => UsePopupProps): UsePopup => { const [style, setStyle] = createSignal({}); const [isOpen, setIsOpen] = createSignal(false); - const resolvedChildren = children(() => { + const resolvedChildren = () => { const { popup } = props(); if (typeof popup === 'function') { return popup(); } return popup; - }); + }; const open = () => setIsOpen(true); const close = () => setIsOpen(false);