package teks

import "strings"

// Salam adalah sapaan baku yang boleh dipakai pemanggil luar.
const Salam = "Halo"

// penutup hanya dipakai di dalam package teks.
const penutup = "!"

// Pengguna menyimpan identitas pemakai aplikasi.
type Pengguna struct {
	Nama  string // diekspor: boleh dibaca pemanggil
	email string // privat: hanya bisa diakses dari package teks
}

// Baru membuat Pengguna dengan nama dan email lengkap.
func Baru(nama, email string) Pengguna {
	return Pengguna{Nama: nama, email: email}
}

// Kontak mengembalikan alamat kontak dalam format tampilan.
func (p Pengguna) Kontak() string {
	return p.Nama + " <" + p.email + ">"
}

// Baris mengubah teks menjadi satu baris rapi diakhiri penutup.
func Baris(t string) string {
	return rapikan(t) + penutup
}

// rapikan memangkas spasi berlebih; tidak untuk pemanggil luar.
func rapikan(t string) string {
	return strings.TrimSpace(t)
}
