diff --git a/eslint.config.mjs b/eslint.config.mjs index 05e726d1..46397016 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -12,6 +12,8 @@ const eslintConfig = defineConfig([ "out/**", "build/**", "next-env.d.ts", + // Compiled SDK output + "packages/sdk/dist/**", ]), ]); diff --git a/src/app/create/page.tsx b/src/app/create/page.tsx index 0d179e7b..57c7029a 100644 --- a/src/app/create/page.tsx +++ b/src/app/create/page.tsx @@ -47,7 +47,7 @@ export default function CreateStorylinePage() { const [content, setContent] = useState(""); const hasDeadline = true; // mandatory 7-day deadline for all storylines - const { state, error, receipt, execute, reset } = usePublish(); + const { state, error, receipt, execute } = usePublish(); const { pendingIntent, saveIntent, persistTxHash, clearIntent, attemptRetry } = usePublishIntent(); const { valid, charCount } = validateContentLength(content); diff --git a/src/components/ClaimRoyalties.tsx b/src/components/ClaimRoyalties.tsx index 2af999a8..f1ba75b7 100644 --- a/src/components/ClaimRoyalties.tsx +++ b/src/components/ClaimRoyalties.tsx @@ -84,7 +84,7 @@ export function ClaimRoyalties({ tokenAddress, plotCount, beneficiary }: ClaimRo setError(err instanceof Error ? err.message : "Claim failed"); setTxState("error"); } - }, [tokenAddress, unclaimed, writeContractAsync, refetch]); + }, [unclaimed, writeContractAsync, refetch]); const reset = useCallback(() => { setTxState("idle"); diff --git a/src/components/Select.tsx b/src/components/Select.tsx index fcb457f0..dbf513d8 100644 --- a/src/components/Select.tsx +++ b/src/components/Select.tsx @@ -1,6 +1,6 @@ "use client"; -import { useState, useRef, useEffect, useCallback } from "react"; +import { useState, useRef, useEffect, useCallback, useMemo } from "react"; export interface SelectOption { value: string; @@ -29,9 +29,10 @@ export function Select({ const containerRef = useRef(null); const listRef = useRef(null); - const allOptions = placeholder - ? [{ value: "", label: placeholder }, ...options] - : options; + const allOptions = useMemo( + () => (placeholder ? [{ value: "", label: placeholder }, ...options] : options), + [placeholder, options], + ); const selectedLabel = options.find((o) => o.value === value)?.label ?? placeholder;