Skip to content

Commit 2129c43

Browse files
committed
Added session.js as dependency
1 parent 51cbb87 commit 2129c43

File tree

4 files changed

+8
-248
lines changed

4 files changed

+8
-248
lines changed

amazongpt/greasemonkey/amazongpt.user.js

Lines changed: 2 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
// @description Add AI chat & product/category summaries to Amazon shopping, powered by the latest LLMs like GPT-4o!
44
// @author KudoAI
55
// @namespace https://kudoai.com
6-
// @version 2025.5.16.6
6+
// @version 2025.5.16.7
77
// @license MIT
88
// @icon https://amazongpt.kudoai.com/assets/images/icons/app/black-gold-teal/icon48.png?v=8e8ed1c
99
// @icon64 https://amazongpt.kudoai.com/assets/images/icons/app/black-gold-teal/icon64.png?v=8e8ed1c
@@ -82,6 +82,7 @@
8282
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@2a51ece/assets/components/chatbot/icons.js#sha256-ENowwKW3K2TJqb0YmO7/SgHb0ya3rktSJHQniS0kFSc=
8383
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@8c9dbab/assets/components/chatbot/menus.js#sha256-haahzD2p9veWAtcInyrSApyj4Gzge4Xq0jsyutN/Mww=
8484
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@6a85faa/assets/lib/chatbot/feedback.js#sha256-a6Be+zJb84ObSOVjDIB4FmoRYRhWviZHHXLJ7RmX7So=
85+
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@51cbb87/assets/lib/chatbot/session.js#sha256-4eaIZJ1i0PwMY3g6oJQTac2eof7tjxXCcgHrFBBzgDQ=
8586
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@37e0d7d/assets/lib/crypto-utils.js/dist/crypto-utils.min.js#sha256-xRkis9u0tYeTn/GBN4sqVRqcCdEhDUN16/PlCy9wNnk=
8687
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@5fc8863/assets/lib/dom.js/dist/dom.min.js#sha256-IGNj9Eoecq7QgY7SAs75wONajgN9Wg0NmCjKTCfu9CY=
8788
// @require https://cdn.jsdelivr.net/npm/[email protected]/dist/generate-ip.min.js#sha256-aQQKAQcMgCu8IpJp9HKs387x0uYxngO+Fb4pc5nSF4I=
@@ -1124,67 +1125,6 @@
11241125
}
11251126
}
11261127

1127-
// Define SESSION functions
1128-
1129-
window.session = {
1130-
1131-
deleteOpenAIcookies() {
1132-
log.caller = 'session.deleteOpenAIcookies()'
1133-
log.debug('Deleting OpenAI cookies...')
1134-
GM_deleteValue(app.configKeyPrefix + '_openAItoken')
1135-
if (env.scriptManager.name != 'Tampermonkey') return
1136-
GM_cookie.list({ url: apis.OpenAI.endpoints.auth }, (cookies, error) => {
1137-
if (!error) { for (const cookie of cookies) {
1138-
GM_cookie.delete({ url: apis.OpenAI.endpoints.auth, name: cookie.name })
1139-
}}})
1140-
},
1141-
1142-
generateGPTFLkey() {
1143-
log.caller = 'session.generateGPTFLkey()'
1144-
log.debug('Generating GPTforLove key...')
1145-
let nn = Math.floor(new Date().getTime() / 1e3)
1146-
const fD = e => {
1147-
let t = CryptoJS.enc.Utf8.parse(e),
1148-
o = CryptoJS.AES.encrypt(t, 'vrewbhjvbrejhbevwjh156645', {
1149-
mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7
1150-
})
1151-
return o.toString()
1152-
}
1153-
const gptflKey = fD(nn)
1154-
return log.debug(gptflKey) || gptflKey
1155-
},
1156-
1157-
getOAItoken() {
1158-
log.caller = 'session.getOAItoken()'
1159-
log.debug('Getting OpenAI token...')
1160-
return new Promise(resolve => {
1161-
const accessToken = GM_getValue(app.configKeyPrefix + '_openAItoken')
1162-
if (accessToken) { log.debug(accessToken) ; resolve(accessToken) }
1163-
else {
1164-
log.debug(`No token found. Fetching from ${apis.OpenAI.endpoints.session}...`)
1165-
xhr({ url: apis.OpenAI.endpoints.session, onload: resp => {
1166-
if (session.isBlockedByCF(resp.responseText)) return feedback.appAlert('checkCloudflare')
1167-
try {
1168-
const newAccessToken = JSON.parse(resp.responseText).accessToken
1169-
GM_setValue(app.configKeyPrefix + '_openAItoken', newAccessToken)
1170-
log.debug(`Success! newAccessToken = ${newAccessToken}`)
1171-
resolve(newAccessToken)
1172-
} catch { if (get.reply.api == 'OpenAI') return feedback.appAlert('login') }
1173-
}})}})
1174-
},
1175-
1176-
isBlockedByCF(resp) {
1177-
try {
1178-
const html = new DOMParser().parseFromString(resp, 'text/html'),
1179-
title = html.querySelector('title')
1180-
if (title.textContent == 'Just a moment...') {
1181-
log.caller = 'session.isBlockedByCF'
1182-
return log.debug('Blocked by CloudFlare') || true
1183-
}
1184-
} catch (err) { return false }
1185-
}
1186-
}
1187-
11881128
// Define API functions
11891129

11901130
const api = {

bravegpt/greasemonkey/bravegpt.user.js

Lines changed: 2 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@
148148
// @description:zu Yengeza izimpendulo ze-AI ku-Brave Search (inikwa amandla yi-GPT-4o!)
149149
// @author KudoAI
150150
// @namespace https://kudoai.com
151-
// @version 2025.5.16.7
151+
// @version 2025.5.16.8
152152
// @license MIT
153153
// @icon https://assets.bravegpt.com/images/icons/bravegpt/icon48.png?v=df624b0
154154
// @icon64 https://assets.bravegpt.com/images/icons/bravegpt/icon64.png?v=df624b0
@@ -202,6 +202,7 @@
202202
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@2a51ece/assets/components/chatbot/icons.js#sha256-ENowwKW3K2TJqb0YmO7/SgHb0ya3rktSJHQniS0kFSc=
203203
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@8c9dbab/assets/components/chatbot/menus.js#sha256-haahzD2p9veWAtcInyrSApyj4Gzge4Xq0jsyutN/Mww=
204204
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@6a85faa/assets/lib/chatbot/feedback.js#sha256-a6Be+zJb84ObSOVjDIB4FmoRYRhWviZHHXLJ7RmX7So=
205+
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@51cbb87/assets/lib/chatbot/session.js#sha256-4eaIZJ1i0PwMY3g6oJQTac2eof7tjxXCcgHrFBBzgDQ=
205206
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@37e0d7d/assets/lib/crypto-utils.js/dist/crypto-utils.min.js#sha256-xRkis9u0tYeTn/GBN4sqVRqcCdEhDUN16/PlCy9wNnk=
206207
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@5fc8863/assets/lib/dom.js/dist/dom.min.js#sha256-IGNj9Eoecq7QgY7SAs75wONajgN9Wg0NmCjKTCfu9CY=
207208
// @require https://cdn.jsdelivr.net/npm/[email protected]/dist/generate-ip.min.js#sha256-aQQKAQcMgCu8IpJp9HKs387x0uYxngO+Fb4pc5nSF4I=
@@ -1631,67 +1632,6 @@
16311632
}
16321633
}
16331634

1634-
// Define SESSION functions
1635-
1636-
const session = {
1637-
1638-
deleteOpenAIcookies() {
1639-
log.caller = 'session.deleteOpenAIcookies()'
1640-
log.debug('Deleting OpenAI cookies...')
1641-
GM_deleteValue(app.configKeyPrefix + '_openAItoken')
1642-
if (env.scriptManager.name != 'Tampermonkey') return
1643-
GM_cookie.list({ url: apis.OpenAI.endpoints.auth }, (cookies, error) => {
1644-
if (!error) { for (const cookie of cookies) {
1645-
GM_cookie.delete({ url: apis.OpenAI.endpoints.auth, name: cookie.name })
1646-
}}})
1647-
},
1648-
1649-
generateGPTFLkey() {
1650-
log.caller = 'session.generateGPTFLkey()'
1651-
log.debug('Generating GPTforLove key...')
1652-
let nn = Math.floor(new Date().getTime() / 1e3)
1653-
const fD = e => {
1654-
let t = CryptoJS.enc.Utf8.parse(e),
1655-
o = CryptoJS.AES.encrypt(t, 'vrewbhjvbrejhbevwjh156645', {
1656-
mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7
1657-
})
1658-
return o.toString()
1659-
}
1660-
const gptflKey = fD(nn)
1661-
return log.debug(gptflKey) || gptflKey
1662-
},
1663-
1664-
getOAItoken() {
1665-
log.caller = 'session.getOAItoken()'
1666-
log.debug('Getting OpenAI token...')
1667-
return new Promise(resolve => {
1668-
const accessToken = GM_getValue(app.configKeyPrefix + '_openAItoken')
1669-
if (accessToken) { log.debug(accessToken) ; resolve(accessToken) }
1670-
else {
1671-
log.debug(`No token found. Fetching from ${apis.OpenAI.endpoints.session}...`)
1672-
xhr({ url: apis.OpenAI.endpoints.session, onload: resp => {
1673-
if (session.isBlockedByCF(resp.responseText)) return feedback.appAlert('checkCloudflare')
1674-
try {
1675-
const newAccessToken = JSON.parse(resp.responseText).accessToken
1676-
GM_setValue(app.configKeyPrefix + '_openAItoken', newAccessToken)
1677-
log.debug(`Success! newAccessToken = ${newAccessToken}`)
1678-
resolve(newAccessToken)
1679-
} catch { if (get.reply.api == 'OpenAI') return feedback.appAlert('login') }
1680-
}})}})
1681-
},
1682-
1683-
isBlockedByCF(resp) {
1684-
try {
1685-
const html = new DOMParser().parseFromString(resp, 'text/html'),
1686-
title = html.querySelector('title')
1687-
if (title.textContent == 'Just a moment...') {
1688-
log.caller = 'session.isBlockedByCF'
1689-
return log.debug('Blocked by CloudFlare') || true
1690-
}
1691-
} catch (err) { return false }
1692-
}
1693-
}
1694-
16951635
// Define API functions
16961636

16971637
const api = {

duckduckgpt/greasemonkey/duckduckgpt.user.js

Lines changed: 2 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@
148148
// @description:zu Yengeza izimpendulo ze-AI ku-DuckDuckGo (inikwa amandla yi-GPT-4o!)
149149
// @author KudoAI
150150
// @namespace https://kudoai.com
151-
// @version 2025.5.16.8
151+
// @version 2025.5.16.9
152152
// @license MIT
153153
// @icon https://assets.ddgpt.com/images/icons/duckduckgpt/icon48.png?v=06af076
154154
// @icon64 https://assets.ddgpt.com/images/icons/duckduckgpt/icon64.png?v=06af076
@@ -203,6 +203,7 @@
203203
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@2a51ece/assets/components/chatbot/icons.js#sha256-ENowwKW3K2TJqb0YmO7/SgHb0ya3rktSJHQniS0kFSc=
204204
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@8c9dbab/assets/components/chatbot/menus.js#sha256-haahzD2p9veWAtcInyrSApyj4Gzge4Xq0jsyutN/Mww=
205205
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@6a85faa/assets/lib/chatbot/feedback.js#sha256-a6Be+zJb84ObSOVjDIB4FmoRYRhWviZHHXLJ7RmX7So=
206+
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@51cbb87/assets/lib/chatbot/session.js#sha256-4eaIZJ1i0PwMY3g6oJQTac2eof7tjxXCcgHrFBBzgDQ=
206207
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@37e0d7d/assets/lib/crypto-utils.js/dist/crypto-utils.min.js#sha256-xRkis9u0tYeTn/GBN4sqVRqcCdEhDUN16/PlCy9wNnk=
207208
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@5fc8863/assets/lib/dom.js/dist/dom.min.js#sha256-IGNj9Eoecq7QgY7SAs75wONajgN9Wg0NmCjKTCfu9CY=
208209
// @require https://cdn.jsdelivr.net/npm/[email protected]/dist/generate-ip.min.js#sha256-aQQKAQcMgCu8IpJp9HKs387x0uYxngO+Fb4pc5nSF4I=
@@ -1633,67 +1634,6 @@
16331634
}
16341635
}
16351636

1636-
// Define SESSION functions
1637-
1638-
const session = {
1639-
1640-
deleteOpenAIcookies() {
1641-
log.caller = 'session.deleteOpenAIcookies()'
1642-
log.debug('Deleting OpenAI cookies...')
1643-
GM_deleteValue(app.configKeyPrefix + '_openAItoken')
1644-
if (env.scriptManager.name != 'Tampermonkey') return
1645-
GM_cookie.list({ url: apis.OpenAI.endpoints.auth }, (cookies, error) => {
1646-
if (!error) { for (const cookie of cookies) {
1647-
GM_cookie.delete({ url: apis.OpenAI.endpoints.auth, name: cookie.name })
1648-
}}})
1649-
},
1650-
1651-
generateGPTFLkey() {
1652-
log.caller = 'session.generateGPTFLkey()'
1653-
log.debug('Generating GPTforLove key...')
1654-
let nn = Math.floor(new Date().getTime() / 1e3)
1655-
const fD = e => {
1656-
let t = CryptoJS.enc.Utf8.parse(e),
1657-
o = CryptoJS.AES.encrypt(t, 'vrewbhjvbrejhbevwjh156645', {
1658-
mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7
1659-
})
1660-
return o.toString()
1661-
}
1662-
const gptflKey = fD(nn)
1663-
return log.debug(gptflKey) || gptflKey
1664-
},
1665-
1666-
getOAItoken() {
1667-
log.caller = 'session.getOAItoken()'
1668-
log.debug('Getting OpenAI token...')
1669-
return new Promise(resolve => {
1670-
const accessToken = GM_getValue(app.configKeyPrefix + '_openAItoken')
1671-
if (accessToken) { log.debug(accessToken) ; resolve(accessToken) }
1672-
else {
1673-
log.debug(`No token found. Fetching from ${apis.OpenAI.endpoints.session}...`)
1674-
xhr({ url: apis.OpenAI.endpoints.session, onload: resp => {
1675-
if (session.isBlockedByCF(resp.responseText)) return feedback.appAlert('checkCloudflare')
1676-
try {
1677-
const newAccessToken = JSON.parse(resp.responseText).accessToken
1678-
GM_setValue(app.configKeyPrefix + '_openAItoken', newAccessToken)
1679-
log.debug(`Success! newAccessToken = ${newAccessToken}`)
1680-
resolve(newAccessToken)
1681-
} catch { if (get.reply.api == 'OpenAI') return feedback.appAlert('login') }
1682-
}})}})
1683-
},
1684-
1685-
isBlockedByCF(resp) {
1686-
try {
1687-
const html = new DOMParser().parseFromString(resp, 'text/html'),
1688-
title = html.querySelector('title')
1689-
if (title.textContent == 'Just a moment...') {
1690-
log.caller = 'session.isBlockedByCF'
1691-
return log.debug('Blocked by CloudFlare') || true
1692-
}
1693-
} catch (err) { return false }
1694-
}
1695-
}
1696-
16971637
// Define API functions
16981638

16991639
const api = {

googlegpt/greasemonkey/googlegpt.user.js

Lines changed: 2 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@
149149
// @description:zu Yengeza izimpendulo ze-AI ku-Google Search (inikwa amandla yi-Google Gemma + GPT-4o!)
150150
// @author KudoAI
151151
// @namespace https://kudoai.com
152-
// @version 2025.5.16.7
152+
// @version 2025.5.16.8
153153
// @license MIT
154154
// @icon https://assets.googlegpt.io/images/icons/googlegpt/black/icon48.png?v=59409b2
155155
// @icon64 https://assets.googlegpt.io/images/icons/googlegpt/black/icon64.png?v=59409b2
@@ -392,6 +392,7 @@
392392
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@2a51ece/assets/components/chatbot/icons.js#sha256-ENowwKW3K2TJqb0YmO7/SgHb0ya3rktSJHQniS0kFSc=
393393
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@8c9dbab/assets/components/chatbot/menus.js#sha256-haahzD2p9veWAtcInyrSApyj4Gzge4Xq0jsyutN/Mww=
394394
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@6a85faa/assets/lib/chatbot/feedback.js#sha256-a6Be+zJb84ObSOVjDIB4FmoRYRhWviZHHXLJ7RmX7So=
395+
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@51cbb87/assets/lib/chatbot/session.js#sha256-4eaIZJ1i0PwMY3g6oJQTac2eof7tjxXCcgHrFBBzgDQ=
395396
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@37e0d7d/assets/lib/crypto-utils.js/dist/crypto-utils.min.js#sha256-xRkis9u0tYeTn/GBN4sqVRqcCdEhDUN16/PlCy9wNnk=
396397
// @require https://cdn.jsdelivr.net/gh/adamlui/ai-web-extensions@5fc8863/assets/lib/dom.js/dist/dom.min.js#sha256-IGNj9Eoecq7QgY7SAs75wONajgN9Wg0NmCjKTCfu9CY=
397398
// @require https://cdn.jsdelivr.net/npm/[email protected]/dist/generate-ip.min.js#sha256-aQQKAQcMgCu8IpJp9HKs387x0uYxngO+Fb4pc5nSF4I=
@@ -1834,67 +1835,6 @@
18341835
}
18351836
}
18361837

1837-
// Define SESSION functions
1838-
1839-
const session = {
1840-
1841-
deleteOpenAIcookies() {
1842-
log.caller = 'session.deleteOpenAIcookies()'
1843-
log.debug('Deleting OpenAI cookies...')
1844-
GM_deleteValue(app.configKeyPrefix + '_openAItoken')
1845-
if (env.scriptManager.name != 'Tampermonkey') return
1846-
GM_cookie.list({ url: apis.OpenAI.endpoints.auth }, (cookies, error) => {
1847-
if (!error) { for (const cookie of cookies) {
1848-
GM_cookie.delete({ url: apis.OpenAI.endpoints.auth, name: cookie.name })
1849-
}}})
1850-
},
1851-
1852-
generateGPTFLkey() {
1853-
log.caller = 'session.generateGPTFLkey()'
1854-
log.debug('Generating GPTforLove key...')
1855-
let nn = Math.floor(new Date().getTime() / 1e3)
1856-
const fD = e => {
1857-
let t = CryptoJS.enc.Utf8.parse(e),
1858-
o = CryptoJS.AES.encrypt(t, 'vrewbhjvbrejhbevwjh156645', {
1859-
mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7
1860-
})
1861-
return o.toString()
1862-
}
1863-
const gptflKey = fD(nn)
1864-
return log.debug(gptflKey) || gptflKey
1865-
},
1866-
1867-
getOAItoken() {
1868-
log.caller = 'session.getOAItoken()'
1869-
log.debug('Getting OpenAI token...')
1870-
return new Promise(resolve => {
1871-
const accessToken = GM_getValue(app.configKeyPrefix + '_openAItoken')
1872-
if (accessToken) { log.debug(accessToken) ; resolve(accessToken) }
1873-
else {
1874-
log.debug(`No token found. Fetching from ${apis.OpenAI.endpoints.session}...`)
1875-
xhr({ url: apis.OpenAI.endpoints.session, onload: resp => {
1876-
if (session.isBlockedByCF(resp.responseText)) return feedback.appAlert('checkCloudflare')
1877-
try {
1878-
const newAccessToken = JSON.parse(resp.responseText).accessToken
1879-
GM_setValue(app.configKeyPrefix + '_openAItoken', newAccessToken)
1880-
log.debug(`Success! newAccessToken = ${newAccessToken}`)
1881-
resolve(newAccessToken)
1882-
} catch { if (get.reply.api == 'OpenAI') return feedback.appAlert('login') }
1883-
}})}})
1884-
},
1885-
1886-
isBlockedByCF(resp) {
1887-
try {
1888-
const html = new DOMParser().parseFromString(resp, 'text/html'),
1889-
title = html.querySelector('title')
1890-
if (title.textContent == 'Just a moment...') {
1891-
log.caller = 'session.isBlockedByCF'
1892-
return log.debug('Blocked by CloudFlare') || true
1893-
}
1894-
} catch (err) { return false }
1895-
}
1896-
}
1897-
18981838
// Define API functions
18991839

19001840
const api = {

0 commit comments

Comments
 (0)