roblox-plus / extension

This is the source of the Roblox+ Google Chrome extension!
https://roblox.plus
47 stars 37 forks source link

Port item details features -> TypeScript #79

Closed WebGL3D closed 1 year ago

WebGL3D commented 1 year ago

What :shopping_cart:

This review updates the item details page, porting features previously written in JavaScript... to TypeScript.

Avatar :tophat:

There once was a feature on the item details page, so good... it was incorporated into the Roblox website, and removed from this extension. That feature was to be able to wear or remove an item from your avatar, in the context menu options.

At some point, Roblox decided to remove this feature. But personally, I like being able to do this, because finding items in the avatar page can be hard, when you have thousands of items.

Back by popular demand...

chrome_1YG48uYXUe

Download :inbox_tray:

The option to download a texture or mesh has been ported to TypeScript, with a 4 grams of sugar added.

If you have edit access to the item, it will be added to the context menu. If not, and it's created by Roblox, it will take over the primary button on the page.

https://www.roblox.com/library/48544900/Dominus-Frigidus

image

https://www.roblox.com/library/11955700676/Application-Thumbnail

image

RAP Calculator :heavy_multiplication_x:

Previously, there was a feature that you could click a label to calculate what the new average price of an item would be, if it sold.

This is being updated, no more click on a label and getting an alert box. Hover over the price of a seller to see the estimated average price after it sells.

ApplicationFrameHost_0Zd9G2mvBy

Sales Counters :shopping:

A new feature has been added to count the sales on game passes.

We also fixed the sales counter for assets, for created items, and updated the feature to be premium-exclusive.

Finally, we removed the option to enable a "live limited remaining counter", because it doesn't work anymore, and we're not fixing it today.

image

Comments :left_speech_bubble:

The feature that would keep track of when you could post another comment has been removed, because I didn't feel like maintaining it.

Unrelated :knife:

I also killed the Profile.js file, the last things it was doing no longer worked anyway.

Also Unrelated :envelope:

I also "ported" the Messages.js script over to TypeScript. The final feature it had was to allow a user avatar on the messages page to be dragged into the "quick info" widget. I updated this to be a link instead, so the avatar could be middle clicked. The original intention of the feature is still preserved with this.

Bug :bug:

The assetsService.getAssetContentsUrl method, introduced by #78, is actually slightly broken. But it's fixed now.