Skip to content

Instantly share code, notes, and snippets.

View xkomiks's full-sized avatar

Vladyslav xkomiks

View GitHub Profile
@xkomiks
xkomiks / removeAllEventListeners.js
Created September 2, 2023 20:32
Function to remove event listeners
function removeAllEventListeners(eventType) {
function removeListeners(element) {
const listeners = window.getEventListeners(element);
if (!listeners) {
return;
}
for (const type in listeners) {
if (eventType && eventType !== type) {
@xkomiks
xkomiks / index.js
Created April 15, 2022 08:13
Console logging the focused element as it changes
document.addEventListener('focus', () => {
console.log('focused: ', document.activeElement)
}, true);
@xkomiks
xkomiks / event.json
Created February 28, 2022 10:54
Sample payload for Stripe `customer.source.expiring` event webhook from 2020-08-27
{
"id": "evt_XXXXXXXXXXXXXX",
"object": "event",
"type": "customer.source.expiring",
"api_version": "2020-08-27",
"created": 1645688110,
"request": {
"id": null,
"idempotency_key": null
},
@xkomiks
xkomiks / hasDuplicate.js
Last active February 28, 2022 10:57
Determines if the array contains duplicate entries.
/**
* Determines if the array contains duplicate entries.
* @param {Array} array
* @return {boolean}
*/
function hasDuplicate(array) {
return array.some((element, index, array) => {
return array.indexOf(element) !== index;
});
}
@xkomiks
xkomiks / elementsWithScrolls.js
Last active September 10, 2021 13:48
Return an array of elements that scroll horizontally or vertically
const canUseDOM = () => (
typeof window !== 'undefined' &&
typeof window.document !== 'undefined' &&
typeof window.document.createElement !== 'undefined'
);
function elementsWithScrolls() {
if (!canUseDOM()) {
return;
}