import { getUserDetails } from "@/utils/utilities"; import { preferences } from "@/utils/storage"; import config from "@/utils/config.json"; import * as discovery from "./discovery"; import * as view from "./view"; import * as apiTypes from "@/utils/types"; export default defineContentScript({ matches: ['*://polytoria.com/store/*'], main() { preferences.getPreferences() .then((values) => { getUserDetails() .then((user) => { if (!user) { // Error page or event page most likely, where users are not authenticated console.warn('[Poly+] Failure to get logged in user details.'); return; }; if (!window.location.pathname.split('/')[2]) { // Discovery if (config.devBuild) console.log('[Poly+] Running discovery page functions: ', discovery); if (values.irlBrickPrice.enabled) discovery.irlBrickPrice(); if (values.storeOwnedTags.enabled) discovery.ownedTags(user.userId); } else { // View if (config.devBuild) console.log('[Poly+] Running view page functions: ', view); if (values.irlBrickPrice.enabled) view.irlBrickPrice(); if (values.tryItems.enabled) view.tryOn(user as apiTypes.userDetails); if (values.accurateOwners.enabled) view.accurateOwnerCount(); }; }) }); } });