1.0.1 • Published 6 years ago

@lovata/popup-helper v1.0.1

Weekly downloads
2
License
GPL-3.0-or-later
Repository
github
Last release
6 years ago

Popup helper package

installation

npm install @lovata/popup-helper

Initialization

import PopupHelper from '@lovata/popup-helper';
@import '@lovata/popup-helper/css/popup-helper';

This css allows for work with only 2 viewport types: mobile (less then 769px) and desktop. If you want change it so you should use changeNoScrollSelector() method

Methods

changeNoScrollSelector()

Change class for scroll disabling

saveScrollPosition()

Return scroll position

setScrollPosition()

Save scroll position before modal opening

setBodyScrollState(needScroll)

Complex method. Depending @param needScroll toggle class on body, save or set scroll position and padding to avoid shifting content

ParamType
needScrollboolean

focusTrapManager(needTrap, modal)

ParamTypeDescription
needTrapboolenaif true - enable focus trap
modalnodenode of modal window

getScrollBarWidth()

Returns: scrollBar width (type: int)

setBodyPadding()

Set css custom-property equal scrollbar width

checkOverlay() boolean

Return false if overlay was create

overlayController(needOverlay)

Ff @param needOverlay is true create Node for overlay, else remove it

ParamType
needOverlayboolean

overlayHandler(isInit, closeBtnNode, modalNode)

Complex method. Create of remove overlay and if **@param isInit** is true, so set flags and **click** and **esc button press** handlers

ParamType
isInitboolean
closeBtnNodenode
modalNodenode

createOverlay()

Create overlay node

removeOverlay()

Remove overlay node

getOverlay()

Returns: overlay node

overlayClickHandler(triggerTarget)

Add 'click' handler to overlay

ParamTypeDescription
triggerTargetnodeNode for close modal window

escPressHandler(triggerTarget, modalNode)

Add esc button press handler

ParamTypeDescription
triggerTargetnodeNode for close modal window
modalNodenodeNode of modal window

License

© 2019, LOVATA Group, LLC under GNU GPL v3.

Developed by Uladzimir Ambrazhei.

1.0.1

6 years ago

1.0.0

6 years ago

0.3.0

6 years ago