Skip to content

Commit

Permalink
Revert #201
Browse files Browse the repository at this point in the history
  • Loading branch information
Step7750 committed Apr 7, 2024
1 parent 6f9f38e commit 5a6aa9f
Show file tree
Hide file tree
Showing 10 changed files with 13 additions and 299 deletions.
1 change: 0 additions & 1 deletion manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@
"type": "module"
},
"permissions": ["storage", "scripting"],
"optional_permissions": ["cookies", "alarms"],
"host_permissions": [
"*://*.steamcommunity.com/market/listings/730/*",
"*://*.steamcommunity.com/id/*/inventory*",
Expand Down
17 changes: 0 additions & 17 deletions src/background.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
import {Handle} from './lib/bridge/server';
import {InternalResponseBundle} from './lib/bridge/types';
import MessageSender = chrome.runtime.MessageSender;
import {ClientSend} from './lib/bridge/client';
import {SendCookies} from './lib/bridge/handlers/send_cookies';
import {setupCookieAlarm} from './lib/utils/alarm';

function unifiedHandler(request: any, sender: MessageSender, sendResponse: (response?: any) => void) {
Handle(request, sender)
Expand All @@ -23,17 +20,7 @@ function unifiedHandler(request: any, sender: MessageSender, sendResponse: (resp
});
}

function requestPermissions(permissions: string[], sendResponse: any) {
chrome.permissions.request({permissions}, (granted) => sendResponse(granted));

return true;
}

chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
if (request.message === 'requestPermissions') {
return requestPermissions(request.permissions, sendResponse);
}

unifiedHandler(request, sender, sendResponse);
return true;
});
Expand All @@ -42,7 +29,3 @@ chrome.runtime.onMessageExternal.addListener((request, sender, sendResponse) =>
unifiedHandler(request, sender, sendResponse);
return true;
});

chrome.runtime.onInstalled.addListener(async ({reason}) => {
await setupCookieAlarm(true);
});
29 changes: 13 additions & 16 deletions src/lib/bridge/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ import {InternalRequestBundle, InternalResponseBundle, RequestHandler, Version}
import {isFirefox, runtimeNamespace} from '../utils/detect';
import {inPageContext} from '../utils/snips';
import {g_PostMessageBus} from '../bus/post_message_bus';
import {DeferredPromise} from '../utils/deferred_promise';

function canUseSendMessage() {
// Not supported in Firefox Page Context
Expand All @@ -23,23 +22,21 @@ export async function ClientSend<Req, Resp>(handler: RequestHandler<Req, Resp>,
};

if (canUseSendMessage()) {
const promise = new DeferredPromise<Resp>();

// @ts-ignore Bad types
runtimeNamespace().runtime.sendMessage(
(typeof window !== 'undefined' && window.CSFLOAT_EXTENSION_ID) || chrome.runtime.id,
bundle,
return new Promise((resolve, reject) => {
// @ts-ignore Bad types
(resp: InternalResponseBundle) => {
if (resp?.response) {
promise.resolve(resp.response);
} else {
promise.reject(resp?.error);
runtimeNamespace().runtime.sendMessage(
window.CSFLOAT_EXTENSION_ID || chrome.runtime.id,
bundle,
// @ts-ignore Bad types
(resp: InternalResponseBundle) => {
if (resp?.response) {
resolve(resp.response);
} else {
reject(resp?.error);
}
}
}
);

return promise.promise();
);
});
} else {
// Fallback to postmessage bus for browsers that don't implement
// specs fully
Expand Down
8 changes: 0 additions & 8 deletions src/lib/bridge/handlers/handlers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import {RequestType} from './types';
import {FetchExtensionFile} from './fetch_extension_file';
import {AnnotateOffer} from './annotate_offer';
import {ExtensionVersion} from './extension_version';
import {SendCookies} from './send_cookies';
import {HasPermissions} from './has_permissions';
import {MetaSettings} from './meta_settings';
import {ProveTradesToken} from './prove_trades_token';

export const HANDLERS_MAP: {[key in RequestType]: RequestHandler<any, any>} = {
[RequestType.EXECUTE_SCRIPT_ON_PAGE]: ExecuteScriptOnPage,
Expand All @@ -30,8 +26,4 @@ export const HANDLERS_MAP: {[key in RequestType]: RequestHandler<any, any>} = {
[RequestType.FETCH_EXTENSION_FILE]: FetchExtensionFile,
[RequestType.ANNOTATE_OFFER]: AnnotateOffer,
[RequestType.EXTENSION_VERSION]: ExtensionVersion,
[RequestType.SEND_COOKIES]: SendCookies,
[RequestType.HAS_PERMISSIONS]: HasPermissions,
[RequestType.META_SETTINGS]: MetaSettings,
[RequestType.PROVE_TRADES_TOKEN]: ProveTradesToken,
};
24 changes: 0 additions & 24 deletions src/lib/bridge/handlers/has_permissions.ts

This file was deleted.

52 changes: 0 additions & 52 deletions src/lib/bridge/handlers/send_cookies.ts

This file was deleted.

4 changes: 0 additions & 4 deletions src/lib/bridge/handlers/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,4 @@ export enum RequestType {
FETCH_EXTENSION_FILE,
ANNOTATE_OFFER,
EXTENSION_VERSION,
SEND_COOKIES,
HAS_PERMISSIONS,
META_SETTINGS,
PROVE_TRADES_TOKEN,
}
98 changes: 0 additions & 98 deletions src/lib/components/trade_offers/auto_track.ts

This file was deleted.

37 changes: 0 additions & 37 deletions src/lib/page_scripts/trade_offers.ts
Original file line number Diff line number Diff line change
@@ -1,43 +1,6 @@
import {init} from './utils';
import '../components/trade_offers/offer_id';
import '../components/trade_offers/auto_track';
import {inPageContext} from '../utils/snips';
import {ClientSend} from '../bridge/client';
import {SendCookies} from '../bridge/handlers/send_cookies';

init('src/lib/page_scripts/trade_offers.js', main);

function main() {}

if (!inPageContext()) {
const refresh = setInterval(() => {
const widget = document.getElementsByTagName('csfloat-auto-track-widget');
if (!widget || widget.length === 0) {
return;
}

const btn = widget[0]?.shadowRoot?.getElementById('csfloat-enable-tracking');
if (!btn) {
return;
}

btn.addEventListener('click', async () => {
chrome.runtime.sendMessage(
{
message: 'requestPermissions',
permissions: ['cookies', 'alarms'],
},
(granted) => {
if (granted) {
ClientSend(SendCookies, {});
widget[0].parentElement?.removeChild(widget[0]);
} else {
alert('Failed to obtain permissions');
}
}
);
});

clearInterval(refresh);
}, 500);
}
42 changes: 0 additions & 42 deletions src/lib/utils/alarm.ts

This file was deleted.

0 comments on commit 5a6aa9f

Please sign in to comment.