// package hx_target -- атрибут HTMX (цель замены). package hx_target import ( "sync" "gitp78su.ipnodns.ru/svi/kern/v4/lev0/defs" mWt "gitp78su.ipnodns.ru/svi/kern/v4/lev2/wui/wui_types" ) // HxSwap -- атрибут HTMX (цель замены). type HxSwap struct { sync.RWMutex val defs.Txt } // NewHxTarget -- возвращает новую цель замены. func NewHxTarget() *HxSwap { sf := &HxSwap{} _ = 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 }