Skip to content

Instantly share code, notes, and snippets.

@leandrodaher
leandrodaher / genBash.js
Created May 18, 2023 15:03 — forked from Krazete/genBash.js
Download an MP4 file from a master.json's list of M4S files.
function genBash(masterURL) {
var xhr = new XMLHttpRequest();
xhr.open("GET", masterURL, true);
xhr.addEventListener("load", function () {
var master = JSON.parse(this.responseText);
var baseURL = new URL(master.base_url, masterURL);
function genBashLines(mp4, type) {
var mp4BaseURL = new URL(mp4.base_url, baseURL);
var segmentURLs = mp4.segments.map(segment => segment.url);
Get-ChildItem . |% {mv $_.name "$([guid]::NewGuid().ToString()+$_.extension)"}
@leandrodaher
leandrodaher / temp-email.txt
Created May 3, 2023 12:23 — forked from bitbybit/temp-email.txt
List of temporary email services
mailspeed.ru
mailinator.com
shitmail.me
temp-mail.ru
thismail.ru
sharklasers.com
guerrillamailblock.com
guerrillamail.com
guerrillamail.net
guerrillamail.biz
@leandrodaher
leandrodaher / temporary-email-address-domains
Created May 3, 2023 12:22 — forked from adamloving/temporary-email-address-domains
A list of domains for disposable and temporary email addresses. Useful for filtering your email list to increase open rates (sending email to these domains likely will not be opened).
0-mail.com
0815.ru
0clickemail.com
0wnd.net
0wnd.org
10minutemail.com
20minutemail.com
2prong.com
30minutemail.com
3d-painting.com
@leandrodaher
leandrodaher / validation-cpf.ts
Created April 19, 2023 01:17 — forked from joaohcrangel/validation-cpf.ts
Função para validar CPF em TypeScript
function isValidCPF(value: string) {
if (typeof value !== 'string') {
return false;
}
value = value.replace(/[^\d]+/g, '');
if (value.length !== 11 || !!value.match(/(\d)\1{10}/)) {
return false;
}
@leandrodaher
leandrodaher / debug-events.js
Created February 13, 2023 17:05 — forked from alessioalex/debug-events.js
intercept *.addEventListener for debugging
// http://stackoverflow.com/questions/4787698/failure-to-override-elements-addeventlistener-in-firefox
(function() {
Error.stackTraceLimit = Infinity;
var _interfaces = Object.getOwnPropertyNames(window).filter(function(i) {
return /^HTML/.test(i);
}).map(function(i) {
return window[i];
});
@leandrodaher
leandrodaher / git-reset-author.sh
Created November 22, 2022 14:28 — forked from bgromov/git-reset-author.sh
Git: reset author for ALL commits
#!/bin/sh
# Credits: http://stackoverflow.com/a/750191
git filter-branch -f --env-filter "
GIT_AUTHOR_NAME='Newname'
GIT_AUTHOR_EMAIL='new@email'
GIT_COMMITTER_NAME='Newname'
GIT_COMMITTER_EMAIL='new@email'
" HEAD
@leandrodaher
leandrodaher / convertPointFromPageToNode.js
Created November 9, 2022 13:20 — forked from Yaffle/convertPointFromPageToNode.js
function to get the MouseEvent coordinates for an element that has CSS3 Transforms
/*jslint plusplus: true, vars: true, indent: 2 */
/*
convertPointFromPageToNode(element, event.pageX, event.pageY) -> {x, y}
returns coordinate in element's local coordinate system (works properly with css transforms without perspective projection)
convertPointFromNodeToPage(element, offsetX, offsetY) -> {x, y}
returns coordinate in window's coordinate system (works properly with css transforms without perspective projection)
*/
// sandbox here: https://codesandbox.io/s/p3itj?file=/src/Canvas.tsx
import {
useEffect,
useCallback,
useLayoutEffect,
useRef,
useState
} from "react";
import * as React from "react";
@leandrodaher
leandrodaher / endianness.js
Created October 28, 2022 20:33 — forked from TooTallNate/endianness.js
Get host machine endianness using JavaScript Typed Arrays (polyfill for `os.endianness()` in node.js)
function endianness () {
var b = new ArrayBuffer(4);
var a = new Uint32Array(b);
var c = new Uint8Array(b);
a[0] = 0xdeadbeef;
if (c[0] == 0xef) return 'LE';
if (c[0] == 0xde) return 'BE';
throw new Error('unknown endianness');
}