removed intermediate /internal directory
This commit is contained in:
@@ -0,0 +1,151 @@
|
||||
package response
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
|
||||
"ruben/inventory2/server/redirect"
|
||||
)
|
||||
|
||||
type (
|
||||
jsonRes struct {
|
||||
body any
|
||||
res Response
|
||||
}
|
||||
)
|
||||
|
||||
var _ Response = jsonRes{}
|
||||
|
||||
func JSON(body any) Response {
|
||||
return jsonRes{
|
||||
body: body,
|
||||
}
|
||||
}
|
||||
|
||||
func (j jsonRes) String() string {
|
||||
if j.res != nil {
|
||||
return fmt.Sprintf(`{"body": %q, "nested": %s}`, j.body, j.res)
|
||||
}
|
||||
return fmt.Sprintf(`{"body": %q}`, j.body)
|
||||
}
|
||||
|
||||
func (j jsonRes) wrap(res Response) Response {
|
||||
j.res = res
|
||||
return j
|
||||
}
|
||||
|
||||
func (j jsonRes) Status(code int) Response {
|
||||
return Status(code).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) Redirect(code redirect.Code, to string) Response {
|
||||
return Redirect(code, to).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HTML(body []byte) Response {
|
||||
return HTML(body).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) JSON(body any) Response {
|
||||
j.body = body
|
||||
return j
|
||||
}
|
||||
|
||||
func (j jsonRes) Body(body io.ReadCloser) Response {
|
||||
return Body(body).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) Cookie(ck http.Cookie) Response {
|
||||
return Cookie(ck).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXPushURL(v string) Response {
|
||||
return HXPushURL(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXLocation(v string) Response {
|
||||
return HXLocation(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXPushUrl(v string) Response {
|
||||
return HXPushUrl(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXRedirect(v string) Response {
|
||||
return HXRedirect(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXRefresh(v string) Response {
|
||||
return HXRefresh(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXReplaceUrl(v string) Response {
|
||||
return HXReplaceUrl(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXReswap(v string) Response {
|
||||
return HXReswap(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXRetarget(v string) Response {
|
||||
return HXRetarget(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXReselect(v string) Response {
|
||||
return HXReselect(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXTrigger(v string) Response {
|
||||
return HXTrigger(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXTriggerAfterSettle(v string) Response {
|
||||
return HXTriggerAfterSettle(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) HXTriggerAfterSwap(v string) Response {
|
||||
return HXTriggerAfterSwap(v).wrap(j)
|
||||
}
|
||||
|
||||
func (j jsonRes) GetStatus() (int, bool) {
|
||||
if j.res == nil {
|
||||
return 0, false
|
||||
}
|
||||
|
||||
return j.res.GetStatus()
|
||||
}
|
||||
|
||||
func (j jsonRes) getHeaders() [][2]string {
|
||||
if j.res != nil {
|
||||
return j.res.getHeaders()
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (j jsonRes) GetRedirect() (code redirect.Code, to string, ok bool) {
|
||||
if j.res == nil {
|
||||
return 0, "", false
|
||||
}
|
||||
|
||||
return j.res.GetRedirect()
|
||||
}
|
||||
|
||||
func (j jsonRes) getBody() (body io.ReadCloser, ok bool, err error) {
|
||||
buf := new(bytes.Buffer)
|
||||
return io.NopCloser(buf), true, json.NewEncoder(buf).Encode(j.body)
|
||||
}
|
||||
|
||||
func (j jsonRes) getCookies() []http.Cookie {
|
||||
if j.res != nil {
|
||||
return j.res.getCookies()
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (j jsonRes) getContentType() (contentType string, ok bool) {
|
||||
return "application/json", true
|
||||
}
|
||||
Reference in New Issue
Block a user