You've already forked AstralRinth
forked from didirus/AstralRinth
* refactor: migrate to common eslint+prettier configs * fix: prettier frontend * feat: config changes * fix: lint issues * fix: lint * fix: type imports * fix: cyclical import issue * fix: lockfile * fix: missing dep * fix: switch to tabs * fix: continue switch to tabs * fix: rustfmt parity * fix: moderation lint issue * fix: lint issues * fix: ui intl * fix: lint issues * Revert "fix: rustfmt parity" This reverts commit cb99d2376c321d813d4b7fc7e2a213bb30a54711. * feat: revert last rs
43 lines
938 B
Vue
43 lines
938 B
Vue
<template>
|
|
<ConfirmModal
|
|
ref="modal"
|
|
danger
|
|
title="Are you sure you want to delete this backup?"
|
|
proceed-label="Delete backup"
|
|
:confirmation-text="currentBackup?.name ?? 'null'"
|
|
has-to-type
|
|
@proceed="emit('delete', currentBackup)"
|
|
>
|
|
<BackupItem
|
|
v-if="currentBackup"
|
|
:backup="currentBackup"
|
|
preview
|
|
class="border-px border-solid border-button-border"
|
|
/>
|
|
</ConfirmModal>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import { ConfirmModal } from '@modrinth/ui'
|
|
import type { Backup } from '@modrinth/utils'
|
|
import { ref } from 'vue'
|
|
|
|
import BackupItem from '~/components/ui/servers/BackupItem.vue'
|
|
|
|
const emit = defineEmits<{
|
|
(e: 'delete', backup: Backup | undefined): void
|
|
}>()
|
|
|
|
const modal = ref<InstanceType<typeof ConfirmModal>>()
|
|
const currentBackup = ref<Backup | undefined>(undefined)
|
|
|
|
function show(backup: Backup) {
|
|
currentBackup.value = backup
|
|
modal.value?.show()
|
|
}
|
|
|
|
defineExpose({
|
|
show,
|
|
})
|
|
</script>
|