machineuser
Sync widgets demo
62d2745
raw
history blame
5.23 kB
<script lang="ts">
import type { SvelteComponent } from "svelte";
import IconAudioClassification from "../Icons/IconAudioClassification.svelte";
import IconAudioToAudio from "../Icons/IconAudioToAudio.svelte";
import IconAutomaticSpeechRecognition from "../Icons/IconAutomaticSpeechRecognition.svelte";
import IconConversational from "../Icons/IconConversational.svelte";
import IconFeatureExtraction from "../Icons/IconFeatureExtraction.svelte";
import IconFillMask from "../Icons/IconFillMask.svelte";
import IconImageClassification from "../Icons/IconImageClassification.svelte";
import IconImageSegmentation from "../Icons/IconImageSegmentation.svelte";
import IconObjectDetection from "../Icons/IconObjectDetection.svelte";
import IconDepthEstimation from "../Icons/IconDepthEstimation.svelte";
import IconVideoClassification from "../Icons/IconVideoClassification.svelte";
import IconQuestionAnswering from "../Icons/IconQuestionAnswering.svelte";
import IconSentenceSimilarity from "../Icons/IconSentenceSimilarity.svelte";
import IconTabularClassification from "../Icons/IconTabularClassification.svelte";
import IconTabularRegression from "../Icons/IconTabularRegression.svelte";
import IconSummarization from "../Icons/IconSummarization.svelte";
import IconTableQuestionAnswering from "../Icons/IconTableQuestionAnswering.svelte";
import IconText2textGeneration from "../Icons/IconText2textGeneration.svelte";
import IconTextClassification from "../Icons/IconTextClassification.svelte";
import IconTextGeneration from "../Icons/IconTextGeneration.svelte";
import IconTextToImage from "../Icons/IconTextToImage.svelte";
import IconImageToText from "../Icons/IconImageToText.svelte";
import IconImageToVideo from "../Icons/IconImageToVideo.svelte";
import IconTextToSpeech from "../Icons/IconTextToSpeech.svelte";
import IconTextToVideo from "../Icons/IconTextToVideo.svelte";
import IconTokenClassification from "../Icons/IconTokenClassification.svelte";
import IconTranslation from "../Icons/IconTranslation.svelte";
import IconVoiceActivityDetection from "../Icons/IconVoiceActivityDetection.svelte";
import IconZeroShotClassification from "../Icons/IconZeroShotClassification.svelte";
import IconReinforcementLearning from "../Icons/IconReinforcementLearning.svelte";
import IconRobotics from "../Icons/IconRobotics.svelte";
import IconImageToImage from "../Icons/IconImageToImage.svelte";
import IconUnconditionalImageGeneration from "../Icons/IconUnconditionalImageGeneration.svelte";
import IconDocumentQuestionAnswering from "../Icons/IconDocumentQuestionAnswering.svelte";
import IconGraphML from "../Icons/IconGraphML.svelte";
import IconZeroShotObjectDetection from "../Icons/IconZeroShotClassification.svelte";
import IconMaskGeneration from "../Icons/IconMaskGeneration.svelte";
import IconTextTo3D from "../Icons/IconTextTo3D.svelte";
import IconImageTo3D from "../Icons/IconImageTo3D.svelte";
import type { PipelineType } from "@huggingface/tasks";
export let classNames = "";
export let pipeline = "";
const ICON_COMPONENTS: {
[key in PipelineType]?: typeof SvelteComponent;
} = {
/// Keep same order as in huggingface_hub/Types.ts
/// for easy mapping.
"text-classification": IconTextClassification,
"token-classification": IconTokenClassification,
"table-question-answering": IconTableQuestionAnswering,
"question-answering": IconQuestionAnswering,
"zero-shot-classification": IconZeroShotClassification,
translation: IconTranslation,
summarization: IconSummarization,
conversational: IconConversational,
"feature-extraction": IconFeatureExtraction,
"text-generation": IconTextGeneration,
"text2text-generation": IconText2textGeneration,
"fill-mask": IconFillMask,
"sentence-similarity": IconSentenceSimilarity,
"text-to-speech": IconTextToSpeech,
"text-to-audio": IconTextToSpeech,
"automatic-speech-recognition": IconAutomaticSpeechRecognition,
"audio-to-audio": IconAudioToAudio,
"audio-classification": IconAudioClassification,
"voice-activity-detection": IconVoiceActivityDetection,
"depth-estimation": IconDepthEstimation,
"image-classification": IconImageClassification,
"object-detection": IconObjectDetection,
"video-classification": IconVideoClassification,
"image-segmentation": IconImageSegmentation,
"text-to-image": IconTextToImage,
"image-to-text": IconImageToText,
"image-to-image": IconImageToImage,
"image-to-video": IconImageToVideo,
"unconditional-image-generation": IconUnconditionalImageGeneration,
"reinforcement-learning": IconReinforcementLearning,
robotics: IconRobotics,
"graph-ml": IconGraphML,
"tabular-classification": IconTabularClassification,
"tabular-regression": IconTabularRegression,
"text-to-video": IconTextToVideo,
"document-question-answering": IconDocumentQuestionAnswering,
"mask-generation": IconMaskGeneration,
"zero-shot-object-detection": IconZeroShotObjectDetection,
"text-to-3d": IconTextTo3D,
"image-to-3d": IconImageTo3D,
};
$: iconComponent =
pipeline in ICON_COMPONENTS ? ICON_COMPONENTS[pipeline as keyof typeof ICON_COMPONENTS] : IconFillMask;
</script>
<svelte:component this={iconComponent} {classNames} />