import { getStorage, setStorage, getVisitorId, setCookie, getCookie, guid } from '@/uilts/help' import { getChromeStorage, setChromeStorage } from '@/uilts/chromeExtension.js' // 根据提示dom 跳转到推文详情页面 export const jumpTwitterDetailByAlert = () => { let num = 10 let timer = setInterval(() => { if (num <= 0) { clearInterval(timer) return } let alert = document.querySelector('div[role=alert]') if (alert) { let a = alert.querySelector('a') if (a) { clearInterval(timer) a.click() } } num-- }, 500) } export const showEditTweet = (callback) => { let bigBtn = document.querySelector('a[data-testid="SideNav_NewTweet_Button"]'); if (bigBtn) { bigBtn.click(); } else { let smallBtn = document.querySelector('a[href="/compose/tweet"]') smallBtn && smallBtn.click(); } let num = 10 let timer = setInterval(() => { if (num <= 0) { clearInterval(timer) return } let inputEle = document.querySelector('div[contenteditable="true"]'); if (inputEle) { clearInterval(timer) callback && callback() } num-- }, 500); } export const setDeviceInfo = async () => { const deviceStorageParams = { name: 'de_net_device_id_1' } const deviceCookieParams = { url: 'https://twitter.com/', name: 'de_net_device_id_2' } let deviceInfo = { deviceId1: '', deviceId2: '' } let storageDeviceInfo = getStorage(deviceStorageParams.name); if (!storageDeviceInfo) { let res = await getVisitorId(); let id = res && res.visitorId || ''; setStorage(deviceStorageParams.name, id); deviceInfo.deviceId1 = id; } else { deviceInfo.deviceId1 = storageDeviceInfo; } let cookieDeviceInfo = getCookie(deviceCookieParams.name); if (!cookieDeviceInfo) { let rid = guid(); setCookie(deviceCookieParams.name, rid, 600); deviceInfo.deviceId2 = rid; } else { deviceInfo.deviceId2 = cookieDeviceInfo; } setChromeStorage({ 'deviceInfo': JSON.stringify(deviceInfo) }); }