kopia lustrzana https://github.com/elk-zone/elk
				
				
				
			
		
			
				
	
	
		
			34 wiersze
		
	
	
		
			783 B
		
	
	
	
		
			Vue
		
	
	
			
		
		
	
	
			34 wiersze
		
	
	
		
			783 B
		
	
	
	
		
			Vue
		
	
	
| <script setup lang="ts">
 | |
| import type { Attachment } from 'masto'
 | |
| 
 | |
| withDefaults(defineProps<{
 | |
|   attachment: Attachment
 | |
|   alt?: string
 | |
|   removable?: boolean
 | |
| }>(), {
 | |
|   removable: true,
 | |
| })
 | |
| 
 | |
| defineEmits<{
 | |
|   (evt: 'remove'): void
 | |
| }>()
 | |
| </script>
 | |
| 
 | |
| <template>
 | |
|   <div relative group>
 | |
|     <StatusAttachment :attachment="attachment" w-full />
 | |
|     <div absolute right-2 top-2>
 | |
|       <div
 | |
|         v-if="removable"
 | |
|         aria-label="Remove attachment"
 | |
|         hover:bg="gray/40" transition-100 p-1 rounded-5 cursor-pointer
 | |
|         :class="[isSmallScreen ? '' : 'op-0 group-hover:op-100hover:']"
 | |
|         mix-blend-difference
 | |
|         @click="$emit('remove')"
 | |
|       >
 | |
|         <div i-ri:close-line text-3 :class="[isSmallScreen ? 'text-6' : 'text-3']" />
 | |
|       </div>
 | |
|     </div>
 | |
|   </div>
 | |
| </template>
 |