| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // package hx_target -- атрибут HTMX (цель замены).
- package hx_target
- import (
- "gitp78su.ipnodns.ru/svi/kern/v4/d0"
- "gitp78su.ipnodns.ru/svi/kern/v4/d0/defs"
- mWt "gitp78su.ipnodns.ru/svi/kern/v4/d2/wui/wui_types"
- )
- // HxSwap -- атрибут HTMX (цель замены).
- type HxSwap struct {
- *d0.MSafeMutex
- val defs.Txt
- }
- // NewHxTarget -- возвращает новую цель замены.
- func NewHxTarget() *HxSwap {
- sf := &HxSwap{
- MSafeMutex: d0.MutSafeMutex(),
- }
- _ = mWt.IHxTarget(sf)
- return sf
- }
- // String -- возвращает строковое представление тэга.
- func (sf *HxSwap) String() string {
- sf.RLock()
- defer sf.RUnlock()
- return `hx-target="` + string(sf.val) + `"`
- }
- // Get -- возвращает хранимое значение цели замена.
- func (sf *HxSwap) Get() defs.Txt {
- sf.RLock()
- defer sf.RUnlock()
- return sf.val
- }
- // Set -- устанавливает значение цели обмена.
- func (sf *HxSwap) Set(val defs.Txt) {
- sf.Lock()
- defer sf.Unlock()
- sf.val = val
- }
|