diff --git a/.changeset/early-nails-look.md b/.changeset/early-nails-look.md new file mode 100644 index 00000000..d1a8895d --- /dev/null +++ b/.changeset/early-nails-look.md @@ -0,0 +1,5 @@ +--- +"frog": patch +--- + +Fixes an issue with rendering of `TextInput` intent and reverts changes from https://github.com/wevm/frog/commit/90544316bf2d752bf324bc43662cd31b3b2c78db and https://github.com/wevm/frog/commit/6114139cb7b56ca5bc95ae2af7722f9ba0ec7f80 as those are no longer needed. diff --git a/src/components/TextInput.tsx b/src/components/TextInput.tsx index ba5c1acc..0d797a58 100644 --- a/src/components/TextInput.tsx +++ b/src/components/TextInput.tsx @@ -1,4 +1,5 @@ import type { JSX } from 'hono/jsx/jsx-runtime' +import type { HtmlEscapedString } from 'hono/utils/html' export type TextInputProps = { placeholder?: string | undefined @@ -6,5 +7,7 @@ export type TextInputProps = { TextInput.__type = 'text-input' export function TextInput({ placeholder }: TextInputProps): JSX.Element { - return + return [ + , + ] as unknown as HtmlEscapedString } diff --git a/src/utils/getButtonValues.ts b/src/utils/getButtonValues.ts index b584a279..4d20c9bb 100644 --- a/src/utils/getButtonValues.ts +++ b/src/utils/getButtonValues.ts @@ -8,7 +8,7 @@ export function getButtonValues( const buttonValues: FrameButtonValue[] = [] for (const intent of intents) { - if (!intent || !('props' in intent)) continue + if (!intent) continue const { property } = intent.props if (!(property as string).match(/^fc:frame:button:(1|2|3|4)$/)) continue buttonValues.push(intent.props['data-value']) diff --git a/src/utils/parseIntents.ts b/src/utils/parseIntents.ts index 39c1b11b..ef99ccf5 100644 --- a/src/utils/parseIntents.ts +++ b/src/utils/parseIntents.ts @@ -95,8 +95,7 @@ function parseIntent( if (typeof intent?.tag === 'function' && typeof node.tag === 'function') { if (intent.children.length > 1) throw new InvalidIntentComponentError() - if (intent.tag.name !== 'meta') - return parseIntent(node.tag(node.props), options, counter) + return parseIntent(node.tag(node.props), options, counter) } return intent }