Skip to content

Commit

Permalink
Merge pull request #203 from csfloat/revert/auto-trading-cookies
Browse files Browse the repository at this point in the history
Reverts #201, #202
  • Loading branch information
Step7750 authored Apr 7, 2024
2 parents 6f9f38e + b5b16ed commit 5a513ca
Show file tree
Hide file tree
Showing 13 changed files with 24 additions and 358 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.

18 changes: 0 additions & 18 deletions src/lib/bridge/handlers/meta_settings.ts

This file was deleted.

25 changes: 0 additions & 25 deletions src/lib/bridge/handlers/prove_trades_token.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,
}
27 changes: 11 additions & 16 deletions src/lib/components/trade_history/trade_proof.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,12 @@ import {CustomElement, InjectAppend, InjectionMode} from '../injectors';
import {FloatElement} from '../custom';
import {fetchListingTime} from './helpers';
import '../common/ui/steam-button';
import {ProveTradesToken} from '../../bridge/handlers/prove_trades_token';
import {ClientSend} from '../../bridge/client';

@CustomElement()
@InjectAppend('.tradehistoryrow .tradehistory_content', InjectionMode.CONTINUOUS)
export class TradeProof extends FloatElement {
@state()
private message: string | undefined;
private proofNumber: number | undefined;

@state()
private isProcessing = false;
Expand All @@ -22,12 +20,12 @@ export class TradeProof extends FloatElement {
}

render() {
return this.message
? html` <span>${this.message}</span> `
return this.proofNumber
? html` <span>Proof: ${this.proofNumber}</span> `
: html`
<csfloat-steam-button
@click="${this.onClick}"
.text="${this.isProcessing ? 'Proving...' : 'Prove Trade on CSFloat'}"
.text="${this.isProcessing ? 'Computing Proof...' : 'CSFloat Proof'}"
>
</csfloat-steam-button>
`;
Expand All @@ -36,17 +34,14 @@ export class TradeProof extends FloatElement {
private async onClick() {
this.isProcessing = true;

const token = document
.getElementById('application_config')
?.getAttribute('data-loyalty_webapi_token')
?.replace('"', '')
.replace('"', '');

const index = $J('.tradehistoryrow').index($J(this).parent().parent());
try {
const resp = await ClientSend(ProveTradesToken, {token});
this.message = resp.message;
} catch (e: any) {
alert(e.toString());
this.proofNumber = await fetchListingTime(index);
} catch (e) {
alert(
"Failed to parse time, make sure you're on an english version of the page by appending ?l=english to the url"
);
}
this.isProcessing = false;
}
}
98 changes: 0 additions & 98 deletions src/lib/components/trade_offers/auto_track.ts

This file was deleted.

Loading

0 comments on commit 5a513ca

Please sign in to comment.