UNPKG

@js-components/accordion

Version:
61 lines (60 loc) 2.11 kB
export interface AccordionArgs { container: string | HTMLElement | Element; /** @deprecated use `wrapper` */ accordionElWrapper?: string; wrapper?: string; /** @deprecated use `accordion` */ accordionEl?: string; accordion?: string; /** @deprecated use `firstElExpand` */ firstElExpend?: boolean; firstElExpand?: boolean; /** @deprecated use `trigger` */ button?: string; trigger?: string; toggleType?: 'accordion' | 'toggle'; /** @deprecated use `toggleType` */ type?: AccordionArgs['toggleType']; duration?: number; } export interface AccordionInterface { container: HTMLElement; wrapperSelector?: string; accordionSelector?: string; firstElExpand?: boolean; triggerSelector?: string; duration?: number; initiated: boolean; expand: (pos: number) => boolean; collapse: (pos: number) => boolean; toggle: (pos: number) => boolean; } export default class JscAccordion implements AccordionInterface { container: HTMLElement; wrapperSelector: string | undefined; accordionSelector: string | undefined; firstElExpand: boolean; triggerSelector: string | undefined; duration: number | undefined; initiated: boolean; constructor(args: AccordionArgs); _init(): void; /** * @param accordionPosition position number of the accordion from top * @returns boolean whether if succeed or not * @description expand/open accordion */ expand(accordionPosition: number): boolean; /** * @param accordionPosition position number of the accordion from top * @returns boolean whether if succeed or not * @description collapse/close accordion */ collapse(accordionPosition: number): boolean; /** * @param accordionPosition position number of the accordion from top * @returns boolean whether if succeed or not * @description collapse/close or expand/open, depending on the current state of accordion */ toggle(accordionPosition: number): boolean; }