@striven-erp/striven-tooltip
Version:
Striven Tooltips UI
31 lines (23 loc) • 735 B
JavaScript
import StrivenTooltip from './striventooltip.js';
export default class KoStriveTooltip {
constructor(ko, bindingName = 'striventooltip') {
ko.bindingHandlers[bindingName] = {
init: function(
element,
valueAccessor,
allBindings,
viewModel,
bindingContext,
) {
const valueOption = valueAccessor();
const value = ko.utils.unwrapObservable(valueOption);
const { tip } = value;
let text = ko.utils.unwrapObservable(tip);
text || (text = '');
const tooltip = new StrivenTooltip(text, element, value);
tip.subscribe((newTip) => tooltip.setTip(newTip))
valueOption.tooltip = tooltip;
},
};
}
}