1. 사용법

import SwiftUI

struct ContentView: View {
    @State private var isToastPresented: Bool = false

    var body: some View {
        VStack {
            Button("Show Toast") {
                isToastPresented = true
            }
        }
        .toast(
            isPresented: $isToastPresented,
            duration: 2, // option
            message: "저장되었습니다."
        )
    }
}

2. 구현 방법

1) 표시 조건 (isPresented)

2) 배치 기준 (overlay + frame)

3) 등장 애니메이션 (하단에서 위로 올라오는 원리)

@State private var yOffset: CGFloat = 0
@State private var opacityValue: Double = 0

4) 자동 종료 (DispatchWorkItem)

5) 사라짐 애니메이션 (원위치로 내려가며 투명해짐)