fix: skill folder picker

This commit is contained in:
Simos Mikelatos
2026-07-03 23:10:49 +00:00
parent 8573f9ba35
commit ced4f71f96

View File

@@ -219,7 +219,7 @@ export default function ProviderSkills({ selectedProvider, currentProjects }: Pr
const [isAddDialogOpen, setIsAddDialogOpen] = useState(false); const [isAddDialogOpen, setIsAddDialogOpen] = useState(false);
const [showInstallPath, setShowInstallPath] = useState(false); const [showInstallPath, setShowInstallPath] = useState(false);
const fileInputRef = useRef<HTMLInputElement>(null); const fileInputRef = useRef<HTMLInputElement>(null);
const folderInputRef = useRef<HTMLInputElement>(null); const folderInputRef = useRef<HTMLInputElement | null>(null);
const providerName = PROVIDER_NAMES[selectedProvider]; const providerName = PROVIDER_NAMES[selectedProvider];
const providerPath = selectedProvider === 'opencode' ? null : PROVIDER_SKILL_PATHS[selectedProvider]; const providerPath = selectedProvider === 'opencode' ? null : PROVIDER_SKILL_PATHS[selectedProvider];
@@ -234,9 +234,14 @@ export default function ProviderSkills({ selectedProvider, currentProjects }: Pr
setJustInstalled(false); setJustInstalled(false);
}, [selectedProvider]); }, [selectedProvider]);
useEffect(() => { const setFolderInputRef = useCallback((node: HTMLInputElement | null) => {
folderInputRef.current?.setAttribute('webkitdirectory', ''); folderInputRef.current = node;
folderInputRef.current?.setAttribute('directory', ''); if (!node) {
return;
}
node.setAttribute('webkitdirectory', '');
node.setAttribute('directory', '');
}, []); }, []);
const filteredSkills = useMemo(() => { const filteredSkills = useMemo(() => {
@@ -407,7 +412,7 @@ export default function ProviderSkills({ selectedProvider, currentProjects }: Pr
}} }}
/> />
<input <input
ref={folderInputRef} ref={setFolderInputRef}
type="file" type="file"
multiple multiple
className="hidden" className="hidden"