UNPKG

handy-collapse

Version:

A pure Javascript module for accordion/collapse UI without jQuery

69 lines (66 loc) 1.56 kB
// Generated by dts-bundle-generator v7.0.0 /** * handyCollapse * https://github.com/sk-rt/handy-collapse * Copyright (c) 2019 Ryuta Sakai * Licensed under the MIT license. */ export interface Options { nameSpace: string; toggleButtonAttr: string; toggleContentAttr: string; activeClass: string; isAnimation: boolean; closeOthers: boolean; animationSpeed: number; cssEasing: string; onSlideStart: (isOpen: boolean, id: string) => void; onSlideEnd: (isOpen: boolean, id: string) => void; } export interface ItemState { [key: string]: { isOpen: boolean; isAnimating: boolean; }; } export default class HandyCollapse { toggleContentEls: HTMLElement[]; toggleButtonEls: HTMLElement[]; itemsState: ItemState; options: Options; constructor(_options?: Partial<Options>); /** * init Param & show/hide items */ private initContentsState; /** * Add toggleButton Listners */ handleButtonsEvent(buttonElement: HTMLElement[]): void; /** * Set state */ private setItemState; /** * button click listner * @param id - accordion ID */ toggleSlide(id: string, isRunCallback?: boolean): void; /** * Open accordion * @param id - accordion ID */ open(id: string, isRunCallback?: boolean, isAnimation?: boolean): void; /** * Close accordion * @param id - accordion ID */ close(id: string, isRunCallback?: boolean, isAnimation?: boolean): void; /** * Get Elemet Height * @param targetEl - target Element * @return Height(px) */ getTargetHeight(targetEl: HTMLElement): number | void; } export {};