UpdateModal.tsx 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. import React from 'react';
  2. import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader } from '@/components/ui/Dialog';
  3. import { Button } from '../../../../components/ui/Button';
  4. import { AppInfo } from '../../../../core/types';
  5. interface IProps {
  6. newVersion: string;
  7. info: Pick<AppInfo, 'name'>;
  8. isOpen: boolean;
  9. onClose: () => void;
  10. onConfirm: () => void;
  11. }
  12. export const UpdateModal: React.FC<IProps> = ({ info, newVersion, isOpen, onClose, onConfirm }) => (
  13. <Dialog open={isOpen} onOpenChange={onClose}>
  14. <DialogContent size="sm">
  15. <DialogHeader>
  16. <h5 className="modal-title">Update {info.name} ?</h5>
  17. </DialogHeader>
  18. <DialogDescription>
  19. <div className="text-muted">
  20. Update app to latest verion : <b>{newVersion}</b> ?<br />
  21. This will reset your custom configuration (e.g. changes in docker-compose.yml)
  22. </div>
  23. </DialogDescription>
  24. <DialogFooter>
  25. <Button onClick={onConfirm} className="btn-success">
  26. Update
  27. </Button>
  28. </DialogFooter>
  29. </DialogContent>
  30. </Dialog>
  31. );