package utils

import (
	"fmt"
	"hash/fnv"

	"github.com/google/uuid"
	short "github.com/lithammer/shortuuid"
)

func GenerateID() string {
	return uuid.New().String()
}

func ShortID() string {
	return short.New()
}

func FnvHash(raw string) string {
	hash := fnv.New32()
	// fnv.New32().Write() never return error
	_, _ = hash.Write([]byte(raw))
	return fmt.Sprintf("%x", hash.Sum32())
}
