@doku-dev/doku-fragment
Version:
A new Angular UI library that moving away from Bootstrap and built from scratch.
16 lines • 2.57 kB
JavaScript
/**
* Get the type of the click action from an event.
*
* @param event Click event
* @param triggerElement The element which toggle the appeared element.
* @param appearedElement The element that will be shown when get triggered.
* @returns
*/
export function getClickType(event, triggerElements, appearedElements) {
const clickedElement = event.target;
const clickTrigger = triggerElements.some((node) => node && node.contains(clickedElement));
const clickInside = appearedElements.some((node) => node && node.contains(clickedElement));
const clickOutside = !clickInside;
return { clickInside, clickOutside, clickTrigger };
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWNsaWNrLXR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kb2t1LWZyYWdtZW50L3NyYy91dGlscy9nZXQtY2xpY2stdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FDMUIsS0FBWSxFQUNaLGVBQW1ELEVBQ25ELGdCQUFvRDtJQUVwRCxNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztJQUVuRCxNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQzNGLE1BQU0sV0FBVyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUMzRixNQUFNLFlBQVksR0FBRyxDQUFDLFdBQVcsQ0FBQztJQUVsQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsQ0FBQztBQUNyRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZXQgdGhlIHR5cGUgb2YgdGhlIGNsaWNrIGFjdGlvbiBmcm9tIGFuIGV2ZW50LlxuICpcbiAqIEBwYXJhbSBldmVudCBDbGljayBldmVudFxuICogQHBhcmFtIHRyaWdnZXJFbGVtZW50IFRoZSBlbGVtZW50IHdoaWNoIHRvZ2dsZSB0aGUgYXBwZWFyZWQgZWxlbWVudC5cbiAqIEBwYXJhbSBhcHBlYXJlZEVsZW1lbnQgVGhlIGVsZW1lbnQgdGhhdCB3aWxsIGJlIHNob3duIHdoZW4gZ2V0IHRyaWdnZXJlZC5cbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDbGlja1R5cGUoXG4gIGV2ZW50OiBFdmVudCxcbiAgdHJpZ2dlckVsZW1lbnRzOiAoSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgfCBudWxsKVtdLFxuICBhcHBlYXJlZEVsZW1lbnRzOiAoSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgfCBudWxsKVtdXG4pIHtcbiAgY29uc3QgY2xpY2tlZEVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgY29uc3QgY2xpY2tUcmlnZ2VyID0gdHJpZ2dlckVsZW1lbnRzLnNvbWUoKG5vZGUpID0+IG5vZGUgJiYgbm9kZS5jb250YWlucyhjbGlja2VkRWxlbWVudCkpO1xuICBjb25zdCBjbGlja0luc2lkZSA9IGFwcGVhcmVkRWxlbWVudHMuc29tZSgobm9kZSkgPT4gbm9kZSAmJiBub2RlLmNvbnRhaW5zKGNsaWNrZWRFbGVtZW50KSk7XG4gIGNvbnN0IGNsaWNrT3V0c2lkZSA9ICFjbGlja0luc2lkZTtcblxuICByZXR1cm4geyBjbGlja0luc2lkZSwgY2xpY2tPdXRzaWRlLCBjbGlja1RyaWdnZXIgfTtcbn1cbiJdfQ==