// Copyright 2025 Patial Tech (Ankit Patial). // // This file is part of code.patial.tech/go/appcore, which is MIT licensed. // See http://opensource.org/licenses/MIT package gz import ( "bytes" "compress/gzip" "io" ) func Zip(data []byte) ([]byte, error) { var b bytes.Buffer gz := gzip.NewWriter(&b) if _, err := gz.Write(data); err != nil { return nil, err } if err := gz.Flush(); err != nil { return nil, err } if err := gz.Close(); err != nil { return nil, err } return b.Bytes(), nil } func UnZip(data []byte) ([]byte, error) { b := bytes.NewBuffer(data) var r io.Reader r, err := gzip.NewReader(b) if err != nil { return nil, err } var resB bytes.Buffer if _, err := resB.ReadFrom(r); err != nil { return nil, err } return resB.Bytes(), nil }