Sha256: bbef413cf6ec1728e955be9970ddcf2f2ef5c45f47562a6029fb6db3df3400b7
Contents?: true
Size: 1.12 KB
Versions: 4
Compression:
Stored size: 1.12 KB
Contents
import { Controller } from '@hotwired/stimulus'; import PopoverController from './popover_controller'; export default class extends Controller { static outlets = ['fox-tail--popover']; static values = { delay: { type: Number, default: 300, }, }; declare readonly delayValue: number; declare readonly foxTailPopoverOutlet: PopoverController; declare readonly foxTailPopoverOutletElement: HTMLElement; show(): void { this.foxTailPopoverOutlet.show(); } hoverShow(): void { setTimeout( () => this.foxTailPopoverOutlet.hoverShow(), this.delayValue, ); } hide(): void { this.foxTailPopoverOutlet.hide(); } hoverHide(): void { setTimeout(() => { if (!this.foxTailPopoverOutletElement.matches(':hover')) { this.foxTailPopoverOutlet.hoverHide(); } }, this.delayValue); } toggle(): void { this.foxTailPopoverOutlet.toggle(); } toggleWithDelay(): void { setTimeout(() => this.toggle(), this.delayValue); } }
Version data entries
4 entries across 4 versions & 1 rubygems