hx_url.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // package hx_url -- атрибут HTMX (URL запроса).
  2. package hx_url
  3. import (
  4. "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs"
  5. "gitp78su.ipnodns.ru/svi/kern/v4/lev2/wui/hx_url_method"
  6. "gitp78su.ipnodns.ru/svi/kern/v4/lev2/wui/hx_url_patch"
  7. mWt "gitp78su.ipnodns.ru/svi/kern/v4/lev2/wui/wui_types"
  8. )
  9. // HxUrl -- атрибут HTMX (URL запроса).
  10. type HxUrl struct {
  11. method mWt.IHxUrlMethod
  12. patch mWt.IHxUrlPatch
  13. }
  14. // NewHxUrl -- возвращает новый URL запроса.
  15. func NewHxUrl(patch defs.ITxtFix) *HxUrl {
  16. sf := &HxUrl{
  17. method: hx_url_method.NewHxUrlMethod(),
  18. patch: hx_url_patch.NewHxUrlPatch(patch),
  19. }
  20. _ = mWt.IHxUrl(sf)
  21. return sf
  22. }
  23. // String -- возвращает строковое представление тэга.
  24. func (sf *HxUrl) String() string {
  25. return string(sf.method.Method().Get() + `="` + sf.patch.Patch().Get() + `"`)
  26. }
  27. // Method -- возвращает метод запроса.
  28. func (sf *HxUrl) Method() mWt.IHxUrlMethod {
  29. return sf.method
  30. }
  31. // Patch -- возвращает путь запроса.
  32. func (sf *HxUrl) Patch() mWt.IHxUrlPatch {
  33. return sf.patch
  34. }