From baf25103f7d8e3386424207c57c833ccb6d59c2f Mon Sep 17 00:00:00 2001 From: LightZirconite Date: Mon, 3 Nov 2025 19:52:27 +0100 Subject: [PATCH] Refactor: Clean up unused imports and improve code readability across multiple files --- src/browser/Browser.ts | 2 -- src/browser/BrowserFunc.ts | 1 - src/browser/BrowserUtil.ts | 1 - src/constants.ts | 8 ++++---- src/functions/Login.ts | 4 +--- src/index.ts | 21 ++++++++++----------- 6 files changed, 15 insertions(+), 22 deletions(-) diff --git a/src/browser/Browser.ts b/src/browser/Browser.ts index 79d9664..72dbb32 100644 --- a/src/browser/Browser.ts +++ b/src/browser/Browser.ts @@ -1,12 +1,10 @@ import playwright, { BrowserContext } from 'rebrowser-playwright' - import { newInjectedContext } from 'fingerprint-injector' import { FingerprintGenerator } from 'fingerprint-generator' import { MicrosoftRewardsBot } from '../index' import { loadSessionData, saveFingerprintData } from '../util/Load' import { updateFingerprintUserAgent } from '../util/UserAgent' - import { AccountProxy } from '../interface/Account' /* Test Stuff diff --git a/src/browser/BrowserFunc.ts b/src/browser/BrowserFunc.ts index 17f5c27..aabe9ad 100644 --- a/src/browser/BrowserFunc.ts +++ b/src/browser/BrowserFunc.ts @@ -5,7 +5,6 @@ import { AxiosRequestConfig } from 'axios' import { MicrosoftRewardsBot } from '../index' import { saveSessionData } from '../util/Load' import { TIMEOUTS, RETRY_LIMITS, SELECTORS, URLS } from '../constants' - import { Counters, DashboardData, MorePromotion, PromotionalItem } from '../interface/DashboardData' import { QuizData } from '../interface/QuizData' import { AppUserData } from '../interface/AppUserData' diff --git a/src/browser/BrowserUtil.ts b/src/browser/BrowserUtil.ts index 3992f4f..7944b19 100644 --- a/src/browser/BrowserUtil.ts +++ b/src/browser/BrowserUtil.ts @@ -1,6 +1,5 @@ import { Page } from 'rebrowser-playwright' import { load } from 'cheerio' - import { MicrosoftRewardsBot } from '../index' type DismissButton = { selector: string; label: string; isXPath?: boolean } diff --git a/src/constants.ts b/src/constants.ts index 21d2666..b14e0e7 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -1,10 +1,10 @@ /** - * Central constants file for the Microsoft Rewards Script - * Defines timeouts, retry limits, and other magic numbers used throughout the application + * Central constants for the Microsoft Rewards Script + * All timeouts, retry limits, delays, selectors, and other magic numbers are defined here */ /** - * Safe environment variable parsing with validation + * Parse environment variable as number with validation */ function parseEnvNumber(key: string, defaultValue: number, min: number, max: number): number { const raw = process.env[key] @@ -86,4 +86,4 @@ export const DISCORD = { COLOR_BLUE: 0x3498DB, COLOR_GREEN: 0x00D26A, AVATAR_URL: 'https://media.discordapp.net/attachments/1421163952972369931/1434918661235282144/logo.png?ex=690a13a4&is=6908c224&hm=6bae81966da32e73a647f46fde268011fcf460c7071082dd5fd76cf22d04af65&=&format=png&quality=lossless&width=653&height=638' -} as const +} as const \ No newline at end of file diff --git a/src/functions/Login.ts b/src/functions/Login.ts index e8be8ca..614f5fd 100644 --- a/src/functions/Login.ts +++ b/src/functions/Login.ts @@ -1,10 +1,8 @@ -// Clean refactored Login implementation -// Public API preserved: login(), getMobileAccessToken() - import type { Page, Locator } from 'playwright' import * as crypto from 'crypto' import readline from 'readline' import { AxiosRequestConfig } from 'axios' + import { generateTOTP } from '../util/Totp' import { saveSessionData } from '../util/Load' import { MicrosoftRewardsBot } from '../index' diff --git a/src/index.ts b/src/index.ts index 670a849..7ae8468 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,7 +1,9 @@ import cluster from 'cluster' import type { Worker } from 'cluster' -// Use Page type from playwright for typings; at runtime rebrowser-playwright extends playwright import type { Page } from 'playwright' +import fs from 'fs' +import path from 'path' +import { spawn } from 'child_process' import Browser from './browser/Browser' import BrowserFunc from './browser/BrowserFunc' @@ -10,17 +12,7 @@ import BrowserUtil from './browser/BrowserUtil' import { log } from './util/Logger' import Util from './util/Utils' import { loadAccounts, loadConfig, saveSessionData } from './util/Load' -import { DISCORD } from './constants' - -import { Login } from './functions/Login' -import { Workers } from './functions/Workers' -import Activities from './functions/Activities' - -import { Account } from './interface/Account' import Axios from './util/Axios' -import fs from 'fs' -import path from 'path' -import { spawn } from 'child_process' import Humanizer from './util/Humanizer' import { detectBanReason } from './util/BanDetector' import { RiskManager, RiskMetrics, RiskEvent } from './util/RiskManager' @@ -30,6 +22,13 @@ import JobState from './util/JobState' import { StartupValidator } from './util/StartupValidator' import { MobileRetryTracker } from './util/MobileRetryTracker' +import { Login } from './functions/Login' +import { Workers } from './functions/Workers' +import Activities from './functions/Activities' + +import { Account } from './interface/Account' +import { DISCORD } from './constants' + // Main bot class export class MicrosoftRewardsBot {