import SwiftUI

public struct ToolbarTitle: View {
    private let title: LocalizedStringKey
    private var visibility: Bool

    public init(_ title: String, visibility: Bool = true) {
        self.init(.init(title), visibility: visibility)
    }

    public init(_ title: LocalizedStringKey, visibility: Bool = true) {
        self.title = title
        self.visibility = visibility
    }

    public var body: some View {
        Text(title)
            .typographyV1(.navigationTitle)
            .foregroundStyle(Color.SemanticV1.textPrimary)
            .opacity(visibility ? 1 : 0)
            .animation(.snappy, value: visibility)
    }
}
