diff --git a/src/pages/Popup/UserAgentPage.tsx b/src/pages/Popup/UserAgentPage.tsx
index 4c86a92..53401e8 100644
--- a/src/pages/Popup/UserAgentPage.tsx
+++ b/src/pages/Popup/UserAgentPage.tsx
@@ -6,33 +6,57 @@ import UserAgentSelect from './UserAgentSelect'
const LocationPage = () => {
const [type, setType] = useState('desktop')
- const [operatingSystem, setOperatingSystem] = useState('linux')
- const [browser, setBrowser] = useState('')
+ const [operatingSystem, setOperatingSystem] = useState('Windows')
+ const [browser, setBrowser] = useState('Chrome')
const [userAgent, setUserAgent] = useState('')
useEffect(() => {
- chrome.storage.sync.get(['type', 'userAgent'], (result) => {
- result.type && setType(result.type)
- result.userAgent && setUserAgent(result.userAgent)
- })
+ chrome.storage.sync.get(
+ ['type', 'operatingSystem', 'browser', 'userAgent'],
+ (result) => {
+ result.type && setType(result.type)
+ result.operatingSystem && setOperatingSystem(result.operatingSystem)
+ result.browser && setBrowser(result.browser)
+ result.userAgent && setUserAgent(result.userAgent)
+ }
+ )
}, [])
+ useEffect(() => {
+ detachDebugger()
+ chrome.storage.sync.set({ userAgent })
+ }, [userAgent])
+
+ useEffect(() => {
+ type !== 'custom' &&
+ setUserAgent(userAgents[type][operatingSystem][browser])
+ }, [operatingSystem, browser, type])
+
const changeType = (e: any) => {
+ if (e.target.value === 'mobile') {
+ setOperatingSystem('Android')
+ } else if (e.target.value === 'desktop') {
+ setOperatingSystem('Windows')
+ }
detachDebugger()
chrome.storage.sync.set({ type: e.target.value })
setType(e.target.value)
}
const changeOperatingSystem = (e: any) => {
- // detachDebugger()
- // chrome.storage.sync.set({ userAgent: e.target.value })
- // chrome.storage.sync.set({ type: 'custom' })
- // setUserAgent(e.target.value)
- // setType('custom')
+ console.log(e.target.value)
+ chrome.storage.sync.set({ operatingSystem: e.target.value })
+ setOperatingSystem(e.target.value)
+ }
+
+ const changeBrowser = (e: any) => {
+ chrome.storage.sync.set({ browser: e.target.value })
+ setBrowser(e.target.value)
}
const changeUserAgent = (e: any) => {
detachDebugger()
+ console.log(e.target.value)
chrome.storage.sync.set({ userAgent: e.target.value })
chrome.storage.sync.set({ type: 'custom' })
setUserAgent(e.target.value)
@@ -96,8 +120,8 @@ const LocationPage = () => {
- {/*
- */}
>
)}
diff --git a/src/utils/userAgents.ts b/src/utils/userAgents.ts
index 5df8841..9ba0c8d 100644
--- a/src/utils/userAgents.ts
+++ b/src/utils/userAgents.ts
@@ -1,56 +1,56 @@
const userAgents: any = {
desktop: {
- windows: {
- chrome:
+ Windows: {
+ Chrome:
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36',
- edge: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36 Edg/103.0.1264.62',
- firefox:
+ Edge: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36 Edg/103.0.1264.62',
+ Firefox:
'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Firefox/102.0',
- brave:
+ Brave:
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Brave Chrome/83.0.4103.116 Safari/537.36',
},
- mac: {
- safari:
+ Mac: {
+ Safari:
'Mozilla/5.0 (Macintosh; Intel Mac OS X 12_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15',
- chrome:
+ Chrome:
'Mozilla/5.0 (Macintosh; Intel Mac OS X 12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36',
- edge: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36 Edg/103.0.1264.62',
- firefox:
+ Edge: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36 Edg/103.0.1264.62',
+ Firefox:
'Mozilla/5.0 (Macintosh; Intel Mac OS X 12.4; rv:102.0) Gecko/20100101 Firefox/102.0',
- brave:
+ Brave:
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Brave Chrome/83.0.4103.116 Safari/537.36',
},
- linux: {
- chrome:
+ Linux: {
+ Chrome:
'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36',
- edge: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36 Edg/100.0.1185.44',
- firefox:
+ Edge: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Safari/537.36 Edg/100.0.1185.44',
+ Firefox:
'Mozilla/5.0 (X11; Linux i686; rv:102.0) Gecko/20100101 Firefox/102.0',
- brave:
+ Brave:
'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Brave Chrome/80.0.3987.99 Safari/537.36',
},
},
mobile: {
- android: {
- samsung:
+ Android: {
+ Samsung:
'Mozilla/5.0 (Linux; Android 12; SAMSUNG SM-G991B) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/16.0 Chrome/92.0.4515.166 Mobile Safari/537.36',
- chrome:
+ Chrome:
'Mozilla/5.0 (Linux; Android 10) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.71 Mobile Safari/537.36',
- edge: 'Mozilla/5.0 (Linux; Android 10; HD1913) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.71 Mobile Safari/537.36 EdgA/100.0.1185.50',
- firefox:
+ Edge: 'Mozilla/5.0 (Linux; Android 10; HD1913) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.71 Mobile Safari/537.36 EdgA/100.0.1185.50',
+ Firefox:
'Mozilla/5.0 (Android 12; Mobile; rv:68.0) Gecko/68.0 Firefox/102.0',
- brave:
+ Brave:
'Mozilla/5.0 (Linux; Android 8.0.0; SM-G960F Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.75 Mobile Safari/537.36',
},
- ios: {
- safari:
+ iOS: {
+ Safari:
'Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Mobile/15E148 Safari/604.1',
- chrome:
+ Chrome:
'Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/103.0.5060.63 Mobile/15E148 Safari/604.1',
- edge: 'Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 EdgiOS/100.1185.50 Mobile/15E148 Safari/605.1.15',
- firefox:
+ Edge: 'Mozilla/5.0 (iPhone; CPU iPhone OS 15_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 EdgiOS/100.1185.50 Mobile/15E148 Safari/605.1.15',
+ Firefox:
'Mozilla/5.0 (iPhone; CPU iPhone OS 12_4 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) FxiOS/102.0 Mobile/15E148 Safari/605.1.15',
- brave:
+ Brave:
'Mozilla/5.0 (iPhone; CPU iPhone OS 10_0 like Mac OS X) AppleWebKit/602.1.38 (KHTML, like Gecko) Brave/1.2.9 Mobile/14A5297c Safari/602.1.38',
},
},