diff --git a/src-tauri/src/catalog/catalog.json b/src-tauri/src/catalog/catalog.json index 009e56d4cc..08b1a126c7 100644 --- a/src-tauri/src/catalog/catalog.json +++ b/src-tauri/src/catalog/catalog.json @@ -1435,7 +1435,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "27M", - "description": "English speech-to-text.", + "description": "Vietnamese speech-to-text.", "base_model": "UsefulSensors/moonshine-tiny-vi", "license": "mit", "language_count": 1, @@ -1476,7 +1476,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "27M", - "description": "English speech-to-text.", + "description": "Ukrainian speech-to-text.", "base_model": "UsefulSensors/moonshine-tiny-uk", "license": "mit", "language_count": 1, @@ -1517,7 +1517,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "27M", - "description": "English speech-to-text.", + "description": "Korean speech-to-text.", "base_model": "UsefulSensors/moonshine-tiny-ko", "license": "mit", "language_count": 1, @@ -1558,7 +1558,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "27M", - "description": "English speech-to-text.", + "description": "Chinese speech-to-text.", "base_model": "UsefulSensors/moonshine-tiny-zh", "license": "mit", "language_count": 1, @@ -1599,7 +1599,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "27M", - "description": "English speech-to-text.", + "description": "Arabic speech-to-text.", "base_model": "UsefulSensors/moonshine-tiny-ar", "license": "mit", "language_count": 1, @@ -1640,7 +1640,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "27M", - "description": "English speech-to-text.", + "description": "Japanese speech-to-text.", "base_model": "UsefulSensors/moonshine-tiny-ja", "license": "mit", "language_count": 1, @@ -1722,7 +1722,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "62M", - "description": "English speech-to-text.", + "description": "Arabic speech-to-text.", "base_model": "UsefulSensors/moonshine-base-ar", "license": "mit", "language_count": 1, @@ -1763,7 +1763,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "62M", - "description": "English speech-to-text.", + "description": "Korean speech-to-text.", "base_model": "UsefulSensors/moonshine-base-ko", "license": "mit", "language_count": 1, @@ -1804,7 +1804,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "62M", - "description": "English speech-to-text.", + "description": "Ukrainian speech-to-text.", "base_model": "UsefulSensors/moonshine-base-uk", "license": "mit", "language_count": 1, @@ -1845,7 +1845,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "62M", - "description": "English speech-to-text.", + "description": "Japanese speech-to-text.", "base_model": "UsefulSensors/moonshine-base-ja", "license": "mit", "language_count": 1, @@ -1886,7 +1886,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "62M", - "description": "English speech-to-text.", + "description": "Vietnamese speech-to-text.", "base_model": "UsefulSensors/moonshine-base-vi", "license": "mit", "language_count": 1, @@ -1927,7 +1927,7 @@ "architecture": "moonshine", "family": "moonshine", "parameters": "62M", - "description": "English speech-to-text.", + "description": "Chinese speech-to-text.", "base_model": "UsefulSensors/moonshine-base-zh", "license": "mit", "language_count": 1, diff --git a/src/components/onboarding/Onboarding.tsx b/src/components/onboarding/Onboarding.tsx index a19bae8766..1dc72cded2 100644 --- a/src/components/onboarding/Onboarding.tsx +++ b/src/components/onboarding/Onboarding.tsx @@ -23,6 +23,7 @@ const Onboarding: React.FC = ({ onModelSelected }) => { extractingModels, downloadProgress, downloadStats, + cancelDownload, } = useModelStore(); const [selectedModelId, setSelectedModelId] = useState(null); const [showAll, setShowAll] = useState(false); @@ -111,6 +112,13 @@ const Onboarding: React.FC = ({ onModelSelected }) => { } }; + const handleCancelDownload = async (modelId: string) => { + const success = await cancelDownload(modelId); + if (success) { + setSelectedModelId(null); + } + }; + const handleSelectExistingModel = (modelId: string) => { setSelectedModelId(modelId); }; @@ -185,6 +193,7 @@ const Onboarding: React.FC = ({ onModelSelected }) => { disabled={isBusy} onSelect={handleDownloadModel} onDownload={handleDownloadModel} + onCancel={handleCancelDownload} downloadProgress={getModelDownloadProgress(model.id)} downloadSpeed={getModelDownloadSpeed(model.id)} showRecommended={false} @@ -199,6 +208,7 @@ const Onboarding: React.FC = ({ onModelSelected }) => { disabled={isBusy} onSelect={handleDownloadModel} onDownload={handleDownloadModel} + onCancel={handleCancelDownload} downloadProgress={getModelDownloadProgress(model.id)} downloadSpeed={getModelDownloadSpeed(model.id)} showRecommended={false} @@ -233,6 +243,7 @@ const Onboarding: React.FC = ({ onModelSelected }) => { disabled={isBusy} onSelect={handleDownloadModel} onDownload={handleDownloadModel} + onCancel={handleCancelDownload} downloadProgress={getModelDownloadProgress(model.id)} downloadSpeed={getModelDownloadSpeed(model.id)} showRecommended={false}