README
¶
jsierra-libs
Este repositorio contiene una colección de funciones útiles para el desarrollo rápido en Golang. Diseñado para facilitar tareas comunes y mejorar la productividad, jsierra-libs
ofrece una serie de herramientas fáciles de comprender y usar.
Características
- Funciones útiles para tareas comunes en Golang
- Manipulación de fechas y tiempos
- Manejo de tokens y claims
- Utilidades para paginación
- Conversiones de tipos de datos
- Manejo de archivos y rutas
- Utilidades para HTTP y headers
- Y mucho más...
Instalación
Para utilizar estas librerías en tu proyecto, puedes clonar el repositorio:
git clone https://github.com/jSierraB3991/jsierra-libs.git
O importar directamente en tu código Go:
import "github.com/jSierraB3991/jsierra-libs"
Funciones principales
Aquí hay una lista de las funciones principales disponibles en jsierra-libs
:
Manipulación de datos y conversiones
GenerateCombinations(A []int, K int) [][]int
GetFloatStringToInt(data int) string
GetFloatStringToUInt(data uint) string
GetFloatToInt(data int) float64
GetFloatToUInt(data uint) float64
GetNumberForString(number string) int
GetStringNumberFor(number int) string
GetStringUNumber64For(number uint64) string
GetStringUNumberFor(number uint) string
Manejo de fechas y tiempos
GetDateByString(date string) (time.Time, error)
GetDateTimeByString(date string) (time.Time, error)
GetStringToTimeLongFormat(date time.Time) string
GetStringToTimeShortFormat(date time.Time) string
ScheduleTask(targetTime time.Time, task func()) error
Utilidades HTTP y headers
GetHeader(r *http.Request, header string) []string
GetHeaderMail(requet *http.Request) (string, error)
GetLanguageHeader(r *http.Request) string
PublicMiddleWare(route string, method string) bool
Manejo de tokens y claims
GetClaimByToken(tokenString, claim string) (interface{}, error)
Utilidades para paginación
GetFirstForPagination(limit, page int) int
GetMaxForPagination(limit, page int) int
Manejo de archivos y rutas
IsFileExist(dir string) bool
PathsEqual(pattern, path string) bool
ReadFile(templateName string) string
ReplaceTextInFile(templateName string, MapForReplace map[string]string) string
Variables de entorno
GetDataOfEnviroment(enviromentVariable string) string
GetDataOfEnviromentRequired(enviromentVariable string) (string, error)
Manejo de mensajes
GetMessage(code string) string
GetMessageParam(code string, accept string, name string) string
Tipos de error personalizados
InvalidDurationOfTask
StringToDateParseError
Uso
Aquí hay algunos ejemplos de cómo usar algunas de las funciones de jsierra-libs
:
import "github.com/jSierraB3991/jsierra-libs"
// Ejemplo de uso de GetDateByString
date, err := jsierra.GetDateByString("2024-10-07")
if err != nil {
log.Fatal(err)
}
fmt.Println(date)
// Ejemplo de uso de GetFloatToInt
floatValue := jsierra.GetFloatToInt(42)
fmt.Println(floatValue)
// Ejemplo de uso de IsFileExist
exists := jsierra.IsFileExist("/path/to/file")
fmt.Println("File exists:", exists)
Contribución
Las contribuciones son bienvenidas. Por favor, abre un issue para discutir cambios mayores antes de crear un pull request.
Contacto
Para cualquier pregunta, sugerencia o contribución, puedes contactar al autor:
GitHub: jSierraB3991 Email: eliotandelon@gmail.com, judas3991@gmail.com
No dudes en abrir un issue en el repositorio si encuentras algún problema o tienes alguna sugerencia de mejora.
Licencia
Este proyecto está licenciado bajo los términos de la Licencia Pública General GNU, versión 3 (GPLv3).
Resumen de la licencia:
- Puedes copiar, distribuir y modificar este proyecto siempre que mantengas la misma licencia.
- Cualquier modificación realizada y distribuida debe estar bajo los mismos términos.
- No hay garantías sobre el uso del software.
Puedes encontrar una copia completa de la licencia en el archivo LICENSE en el repositorio de este proyecto.
Documentation
¶
Index ¶
- Constants
- func AddUniqueNumber(slice []int, num int) []int
- func AddUniqueString(slice []string, str string) []string
- func AddUniqueUNumber(slice []uint, num uint) []uint
- func BoolP(data bool) *bool
- func ContainsEmoji(s string) bool
- func Decrypt(encryptedData, base64Key string) (string, error)
- func Encrypt(secret, base64Key string) (string, error)
- func GenerateCombinations(A []int, K int) [][]int
- func GenerateRandomCode(length int, charSet string) (string, error)
- func GetClaimByToken(tokenString, claim string) (interface{}, error)
- func GetDataOfEnviroment(enviromentVariable string) string
- func GetDataOfEnviromentRequired(enviromentVariable string) (string, error)
- func GetDateByString(date string) (time.Time, error)
- func GetDateLongByNilString(date *string) (*time.Time, error)
- func GetDateShortByNilString(date *string) (*time.Time, error)
- func GetDateTimeByString(date string) (time.Time, error)
- func GetFloatStringToInt(data int) string
- func GetFloatStringToUInt(data uint) string
- func GetFloatToInt(data int) float64
- func GetFloatToString(numString string) (float64, error)
- func GetFloatToUInt(data uint) float64
- func GetFormatMoneyToFloat(price float64) string
- func GetFormatMoneyToFloat32(price float32) string
- func GetHeader(r *http.Request, header string) []string
- func GetHeaderMail(requet *http.Request) (string, error)
- func GetLanguageHeader(r *http.Request) string
- func GetMessage(code string) string
- func GetMessageParam(code string, accept string, name string) string
- func GetNumberForString(number string) int
- func GetStrinToFloat(numFloat float32) string
- func GetStrinToFloat64(numFloat float64) string
- func GetStringByDateNilLong(date *time.Time) *string
- func GetStringByDateNilShort(date *time.Time) *string
- func GetStringNumberFor(number int) string
- func GetStringToTimeLongFormat(date time.Time) string
- func GetStringToTimeShortFormat(date time.Time) string
- func GetStringUNumber64For(number uint64) string
- func GetStringUNumberFor(number uint) string
- func GetStringtofloat32(numString string) (float32, error)
- func GetUNumberForString(number string) uint
- func Int64P(data int64) *int64
- func IntP(data int) *int
- func IsFileExist(dir string) bool
- func PathsEqual(pattern, path string) bool
- func PublicMiddleWare(route string, method string) bool
- func ReadFile(templateName string) string
- func RemoveSpace(cadena string) string
- func ReplaceTextInFile(templateName string, MapForReplace map[string]string) string
- func ScheduleTask(targetTime time.Time, task func()) error
- func StringP(data string) *string
- func TimeP(data time.Time) *time.Time
- func UInt64P(data uint64) *uint64
- func UIntP(data uint) *uint
- type ImageNameTemp
- type InvalidConvertStringToFloat
- type InvalidDurationOfTask
- type InvalidEncryptData
- type Paggination
- type PagginationParam
- type PreloadParams
- type StringToDateParseError
Constants ¶
const ( HeaderAuthorization = "Authorization" Lowercase string = "abcdefghijklmnopqrstuvwxyz" Uppercase string = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" )
Variables ¶
This section is empty.
Functions ¶
func AddUniqueNumber ¶ added in v0.2.1
func AddUniqueString ¶ added in v0.2.1
func AddUniqueUNumber ¶ added in v0.2.1
func ContainsEmoji ¶ added in v0.2.5
func GenerateCombinations ¶
func GetClaimByToken ¶
func GetDataOfEnviroment ¶
func GetDateLongByNilString ¶ added in v0.0.6
func GetDateShortByNilString ¶ added in v0.0.6
func GetFloatStringToInt ¶
func GetFloatStringToUInt ¶
func GetFloatToInt ¶
func GetFloatToString ¶ added in v0.1.8
func GetFloatToUInt ¶
func GetFormatMoneyToFloat ¶ added in v0.2.7
func GetFormatMoneyToFloat32 ¶ added in v0.2.7
func GetLanguageHeader ¶
func GetMessage ¶
func GetNumberForString ¶
func GetStrinToFloat ¶ added in v0.1.3
func GetStrinToFloat64 ¶ added in v0.1.7
func GetStringByDateNilLong ¶
func GetStringByDateNilShort ¶
func GetStringNumberFor ¶
func GetStringUNumber64For ¶
func GetStringUNumberFor ¶
func GetStringtofloat32 ¶ added in v0.1.3
func GetUNumberForString ¶ added in v0.1.2
func IsFileExist ¶
func PathsEqual ¶
func PublicMiddleWare ¶
func RemoveSpace ¶ added in v0.1.0
func ReplaceTextInFile ¶
remplaza info en un archivo luego lo pasa a una variable
func ScheduleTask ¶
Types ¶
type ImageNameTemp ¶ added in v0.2.6
type InvalidConvertStringToFloat ¶ added in v0.1.3
type InvalidConvertStringToFloat struct{}
func (InvalidConvertStringToFloat) Error ¶ added in v0.1.3
func (InvalidConvertStringToFloat) Error() string
type InvalidDurationOfTask ¶
type InvalidDurationOfTask struct{}
func (InvalidDurationOfTask) Error ¶
func (InvalidDurationOfTask) Error() string
type InvalidEncryptData ¶ added in v0.1.6
type InvalidEncryptData struct{}
func (InvalidEncryptData) Error ¶ added in v0.1.6
func (InvalidEncryptData) Error() string
type Paggination ¶ added in v0.2.2
type Paggination struct { Limit int `json:"limit"` Page int `json:"page"` TotalRows int64 `json:"rows"` TotalPages int `json:"pages"` Data interface{} `json:"data"` Sort string `json:"-"` }
func (*Paggination) GetLimit ¶ added in v0.2.2
func (p *Paggination) GetLimit() int
func (*Paggination) GetOffset ¶ added in v0.2.2
func (p *Paggination) GetOffset() int
func (*Paggination) GetPage ¶ added in v0.2.2
func (p *Paggination) GetPage() int
func (*Paggination) GetSort ¶ added in v0.2.2
func (p *Paggination) GetSort() string
type PagginationParam ¶ added in v0.2.2
type PagginationParam struct { Where string Data interface{} }
type PreloadParams ¶ added in v0.2.2
type PreloadParams struct { Preload string PagginationParam PagginationParam }
type StringToDateParseError ¶
type StringToDateParseError struct{}
func (StringToDateParseError) Error ¶
func (StringToDateParseError) Error() string