Commit Graph
1822 Commits
Author SHA1 Message Date
Michael H. cf50e28dda feat: email whitelist 2026-08-14 16:00:05 +02:00
Calum H. 4ca48e4589 feat: content upload session impl (#6992)
* feat: content upload session impl

* fix: fixes

* fix: prepr
2026-08-14 13:43:09 +00:00
Prospector 17f13097f2 adjust design -> functionality language in blog post 2026-08-13 11:28:53 -07:00
Prospector a9de420d57 update date + changelog 2026-08-13 11:09:05 -07:00
Truman GaoandCalum H. 97b5138672 fix: modpack export (#7119)
* fix: stale function call set_webview_visible

* fix: modpack export progress bar and add notification when done

* remove: force_no_zip64

* feat: switch to zip crate

* add typo exception

* fix: remove unit test (dont do)

---------

Signed-off-by: Truman Gao <106889354+tdgao@users.noreply.github.com>
Co-authored-by: Calum H. (IMB11) <contact@cal.engineer>
2026-08-13 16:37:39 +00:00
Calum H. 579109a478 refactor: app event bus (#6985)
* refactor: app event bus

* fix: use messagepack + cleanup

* fix: use postcard

* fix: lint

* fix: import gate

* fix: prettierignore + lint

* fix: lint

* fix: rev
2026-08-13 16:33:06 +00:00
755825b09a project disclosures frontend (#6955)
* begin project disclosures

* new project settings header

* begin disclosure settings, edit content rules

* togglecards

* update phrasing of the rules, prepr

* more disclosure settings structuring

* add functionality toggle

* implement functionality with staging api

* improve project settings head titles

* feat(labrinth): project disclosures model

* feat(labrinth): project disclosures database model

* feat(labrinth): project disclosures get endpoint

* feat(labrinth): censor user ids if set by moderator

* feat(labrinth): wrap disclosures in struct

* feat(labrinth): edit project disclosures endpoint

* style(labrinth): cargo fmt

* style(labrinth): fix typo

* feat(labrinth): add fields for ai content disclosure

* fix(labrinth): field typo

* chore(labrinth): update query cache

* feat(labrinth): index disclosures in search

* refactor(labrinth): use enum instead of bools

* feat(labrinth): trigger incremental index on disclosure change

* feat(labrinth): change archived status to disclosure

* feat(labrinth): use disclosure for archival status

* fix(labrinth): error type for deserialization

* fix(labrinth): migration timestamp

* fix(labrinth): add disclosures to elasticsearch schema

* disclosures in search

* update photosensitivity warning copy

* update archiving, move general project settings to v3 (start redesign there), use project id lookups for stable cache keys, advanced in server search

* blue archive banner

* display AI use types

* improve labels

* add modrinth to link

* add placeholder missing disclosure report type

* add AI metadata checking to block image uploads with notice

* update copy

* update section 4 of rules

* Update rule 6 layout

* fix(labrinth): don't remove archival disclosure when changing status via v3 api

* feat(labrinth): derive str for ai usages and telemtry consent

* feat(labrinth): include ai usages and telemetry consent in disclosure types

* Update moderation checklist (#7056)

* fix: missing delphi severity (#7054)

* Utils nav, new disclosures stage, ai button in rules

* add prefix to collect

* Finish up new disclosures stage

* update r4 messages

* new r4 msg, update showcase clarity message

* fix: version upload failing to detect mrpack loader (#7063)

* fix: mrpack exporting with zip64 (#7064)

* fix: action bar max width (#7048)

* fix: action bar max width

* fix: width

* changelog

* Rule placeholders with subsections & anchors, update messages.

* update new messages to account for new rule and placeholder layout

* Add nag for content disclosures

---------

Co-authored-by: ThatGravyBoat <gravy@thatgravyboat.tech>
Co-authored-by: chyzman <chyzalt@gmail.com>
Co-authored-by: Truman Gao <106889354+tdgao@users.noreply.github.com>
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>

* prepr

* refactor(labrinth): move disclosure parsing to document creation

* fix(labrinth): prevent removing moderator added archival disclosures

* fix(labrinth): dedupe ai usages

* fix(labrinth): auth logic on archived disclosure removal

* feat(labrinth): add interactions field

* style(labrinth): cargo fmt

* feat(labrinth): granular disclosure locking

* add 5.8, move 5.9, update messages and placeholders accordingly.

* move disclosures stage earlier

* include consent model info in telemetry disclosure msgs

* prepr + update date

* typo

* qa pass

* search suboptions

* add empty state

* checkboxes in column

* persistent advanced filters

* blog draft

* prepr

* support soft deletion

* reload instead of optimistically updating

* update blog

* TOS update + minor verbiage adjustment

* 45 day grace

---------

Co-authored-by: sychic <47618543+Sychic@users.noreply.github.com>
Co-authored-by: coolbot <76798835+coolbot100s@users.noreply.github.com>
Co-authored-by: ThatGravyBoat <gravy@thatgravyboat.tech>
Co-authored-by: chyzman <chyzalt@gmail.com>
Co-authored-by: Truman Gao <106889354+tdgao@users.noreply.github.com>
2026-08-13 09:01:18 -07:00
Calum H. 06b7c44dcc refactor: content tab styling (#7091)
* refactor: managed content card

* fix: update filter pill styling to be chips-like

* fix: modpack exporting

* fixed: vanilla server projs + header

* refactor: filters

* refactor: detect external file icons + other metadata inside

* refactor: support json5 metadata

* fix: qa

* fix: qa

* fix: fmt + prepr

* fix: fmt

* fix: qa

* fix: headers

* feat: locking

* fix: clippy

* fix: qa

* fix: frozen loc

* fix: shared instances diff calc break

* fix: env filter + remove categories
2026-08-13 14:55:35 +00:00
Sychic e087e571f3 fix(labrinth): disclosure modification attribution (#7121) 2026-08-13 14:51:22 +00:00
Calum H. fbdde8f3d8 feat: update required empty state for modrinth hosting (#7125) 2026-08-13 14:46:10 +00:00
Sychic 9ecbe8eaa6 feat(labrinth): granular disclosure locking (#7108)
* feat(labrinth): granular disclosure locking

* chore(labrinth): update query cache
2026-08-12 17:26:15 -07:00
Sychic 549b333eb2 feat(labrinth): project disclosures (#6945)
* feat(labrinth): project disclosures model

* feat(labrinth): project disclosures database model

* feat(labrinth): project disclosures get endpoint

* feat(labrinth): censor user ids if set by moderator

* feat(labrinth): wrap disclosures in struct

* feat(labrinth): edit project disclosures endpoint

* style(labrinth): cargo fmt

* style(labrinth): fix typo

* feat(labrinth): add fields for ai content disclosure

* fix(labrinth): field typo

* chore(labrinth): update query cache

* feat(labrinth): index disclosures in search

* refactor(labrinth): use enum instead of bools

* feat(labrinth): trigger incremental index on disclosure change

* feat(labrinth): change archived status to disclosure

* feat(labrinth): use disclosure for archival status

* fix(labrinth): error type for deserialization

* fix(labrinth): migration timestamp

* fix(labrinth): add disclosures to elasticsearch schema

* fix(labrinth): don't remove archival disclosure when changing status via v3 api

* feat(labrinth): derive str for ai usages and telemtry consent

* feat(labrinth): include ai usages and telemetry consent in disclosure types

* refactor(labrinth): move disclosure parsing to document creation

* fix(labrinth): prevent removing moderator added archival disclosures

* fix(labrinth): dedupe ai usages

* fix(labrinth): auth logic on archived disclosure removal

* feat(labrinth): add interactions field

* style(labrinth): cargo fmt

* feat(labrinth): soft delete disclosures

* feat(labrinth): return soft-deleted disclosures

* fix(labrinth): update disclosure on removal

---------

Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
2026-08-12 17:26:14 -07:00
Prospector 4b82cca3bf fix sidebar not showing on user pages (#7097)
* fix sidebar not showing on user pages

* prepr
2026-08-12 17:25:26 -07:00
Prospector 734fd9cdb3 fix app build on windows & mac (#7118) 2026-08-12 17:25:15 -07:00
Prospector 2fd4495104 rejected projects go to ghost on delete (#7107)
* draft: rejected projects go to ghost on delete

* don't free slug

* fix sqlx

* free slugs but different

* add auto reject for processing items given to ghost, as well as send thread messages with a little info on who it came from
2026-08-12 23:54:57 +00:00
François-Xavier Talbot 552bc3f739 fix(labrinth): webhook scopes (#7114)
fix(labrinth): scope paypal & tremendous webhooks in payout scope
2026-08-12 18:34:33 +02:00
Truman Gao 4758cabbf9 feat: add hide and show download items (#7106)
* feat: add hide and show download items

* pnpm prepr
2026-08-12 16:18:02 +00:00
aecsocket 6ec979a076 fix: hide ad webview when showing fullscreen content (#7110)
* fix: hide ad webview when showing fullscreen content

* fixes
2026-08-12 16:02:02 +00:00
aecsocket c34bd26f87 fix: search indexing and schema changes (#7090)
* fix: incremental indexing uses latest db data

* dependent search fields
2026-08-12 11:54:35 -04:00
Calum H. 2d567b93ce feat: imgur proxying for blocked countries (#7104) 2026-08-11 16:40:03 +00:00
Prospector 26e05ee9e5 update API docs to add environment fields (#7096)
* update API docs to add environment fields

* fix unknown on create/patch routes
2026-08-10 14:30:00 -07:00
Prospector 66628fd69d add reddit and youtube as socials (#7092) 2026-08-10 11:17:13 -07:00
aecsocket f8f05ce91b fix: expose raw icon URL in project response (#7086)
* fix: expose raw icon URL in project response

* remove unnecessary test
2026-08-10 15:48:23 +00:00
aecsocket 07bac8ffde fix: v3 environment fields in all v2 endpoints (#7082) 2026-08-10 15:42:56 +00:00
Calum H. d0856d46f2 fix: copy on unknown file warning modal (#7078)
Closes: #6865
2026-08-10 15:26:23 +00:00
Calum H. e8aee15664 chore: cleanup standards (#6970)
* chore: cleanup standards & skills

* remove: figma mcp doc, not needed anymore
2026-08-10 15:15:44 +00:00
Calum H. 98cb6b6b44 fix: buttons qa (#7067)
* fix: broken minecraft required modal button

* fix: app close icon issue

* fix: versions tooltip missing

* fix: instance not found bug on btn press
2026-08-10 15:15:27 +00:00
Calum H. 9fd45ef2ce fix: always check for updates/clear cache 10 min cooldown (#7077) 2026-08-10 14:00:42 +00:00
Modrinth Bot 357224f22a New translations from Crowdin (main) (#7071) 2026-08-10 11:43:08 +00:00
Seungyeop Lee e2612d1a33 fix sidebar closing when collapsing friends list sections (#7060) (#7062) 2026-08-10 11:32:18 +00:00
Truman Gao f38d351d32 fix: version upload failing to detect mrpack loader (#7063) 2026-08-08 17:18:58 +00:00
ThatGravyBoat b78dd9bf1b fix: missing delphi severity (#7054) 2026-08-07 18:16:13 -07:00
chyz 5072c1d298 Moderation Changes Phase 2.-1 (#6833)
* better default state handling

* make next stage button work for going to next project

* fix skill issue

* actually fix initial values this time,
make single line inputs with varying lengths (text input and dropdown) use their widest possible length instead of whatever the hell they used to be

* loaders in progress

* loaders and versions test (probably dont use them as the messages suck and idrk what they should do quick fix/message wise)

* WIP the wip

* good enough for now slug taken improvements

* trim all those extra newlines

* viewedness

* batch prefetch queue + technically slightly faster checklist init

* show all valid alternative project types regardless of current project type

* Hide moderation permissions stage when it should be, and I'm sure this won't cause any issues

* Hide moderation permissions stage when it should be, and I'm sure this won't cause any issues

* gimme them versions

* better moderation permission stage shown check?

* betterer moderation permission stage shown check?

* bettererer moderation permission stage shown check? + also began deleting legacy checklist types

* fix certain stages being able to be considered viewed before being viewed

* more removals + i forgot to remove an import last commit

* changed nothing™️

* remove severities + bandaid post-approval message priorities + dependencies

* fix message preview tooltips

* next stage = next project when done

* insufficient description custom fix

* fix that thing coolbot told me was broken I forgot what it was oops

* oh there was a second bug there

* make alternate versions and incorrect project type required cuz they are

* re-navigate button also damn that's a lot of other stuff that pnpm fix... fixed?

* you cant just quick fix a slug into a taken one

* maybe lets not just try and set a slug to something entirely invalid?

* what if we just didn't drop ur queue :smart:

* more queue upgrades

* tweaks

* I love unbreaking things

* un-nuked renavigate button

* prepr

* prepr worked this time i think

* undo more mistakes

* i love intellij refactoring

* ok i think we're good
2026-08-07 23:40:11 +00:00
ThatGravyBoat 5ef999bf8a feat: requested moderation and tech review changes (#7019)
* feat: requested moderation and tech review changes

* chore: run prepr

* chore: run prepr

---------

Signed-off-by: ThatGravyBoat <gravy@thatgravyboat.tech>
2026-08-07 13:34:03 -07:00
Prospector b0394de164 add loading states for creators + server details (#7033)
* add loading states for creators + server details

* prepr
2026-08-07 13:20:31 -07:00
Prospector 9181c155e0 fix license field showing on server projects (#7031)
* fix license field showing on server projects

* random commit to trigger CI hopefully?
2026-08-07 13:20:13 -07:00
Prospector 2e8aaa31be change admin edit role modal to edit user (#7035)
change edit role modal to edit user
2026-08-07 13:20:05 -07:00
Prospector 75335647ee update tags page + sort project types consistently (#7044) 2026-08-07 13:19:36 -07:00
Blodhgarm a71a361e0f feat: Allow for adjustable alignment of main content on certain pages for content moderators (#7034)
* Add type safety and validation for moderation settings

* Add ability for moderators to adjust page layout for discover, project, moderation pages

Primarily for changes to have more tooling present without overlapping important info
2026-08-07 16:45:37 +00:00
Truman Gao 6ed044a54b fix: multiple compatible downloads showing as radio button (#7050) 2026-08-07 16:04:04 +00:00
aecsocket 3fa6905006 refactor: labrinth ApiError and error reporting (#6981)
* refactor: labrinth `ApiError` and error reporting

* fix clippy

* fix ci
2026-08-07 15:47:54 +00:00
Prospector d344cbcb7a make neoforge icon look more fox-like, replace hosting LoaderIcon with TagIcon (#7045)
make neoforge icon look more fox-like, replace hosting LoaderIcon with ui lib TagIcon
2026-08-07 15:29:25 +00:00
aecsocket c57e88ecd4 fix: improve analytics dependents query (#7025)
* fix: improve analytics dependents query

* fix up compose
2026-08-07 10:33:15 -04:00
ArthurandProspector 61b52ecd2c fix: inconsistent color vars (#7028)
* Fix inconsistent color vars

* pointless commit

Signed-off-by: Prospector <6166773+Prospector@users.noreply.github.com>

* undo

Signed-off-by: Prospector <6166773+Prospector@users.noreply.github.com>

* prepr

---------

Signed-off-by: Prospector <6166773+Prospector@users.noreply.github.com>
Co-authored-by: Prospector <6166773+Prospector@users.noreply.github.com>
2026-08-07 06:30:42 +00:00
Calum H. f234b7a0ac fix: broken plan selector colors (#7013) 2026-08-07 04:43:17 +00:00
Mr_chank 8aa22b9bed refactor(i18n): use common messages for generic button labels (#7020)
A few components defined their own "Cancel", "Close", "Clear" and
"Success" descriptors when commonMessages already has them. Swapped
them over and removed the old ones.

Locale files come from intl:prune-local dropping the now-orphaned
strings across every language.
2026-08-07 04:39:05 +00:00
Michael H. b8d97268cb perf: further reduce memory (#7015)
* feat: server source maps

* perf: strip unused fields from search results

* perf: reduce game version memory usage
2026-08-06 15:39:06 +00:00
Michael H. a89711841d chore: reduce frontend server memory & tracing (#7014)
* chore: reduce memory usage

* feat: worker tracing

* fix: eslint

* fix: remove compat flag

* fix: prettier
2026-08-05 19:59:15 +02:00
Calum H. 0038ea8b15 fix: remove legacy button classes (#7011)
* fix: remove legacy button-group class for tailwind (conflicts)

* fix: delete legacy button classes from scss

* fix: fmt
2026-08-05 16:34:00 +02:00
Calum H. 1c574a1f2d fix: affiliates showing when not meant to (#7008) 2026-08-05 14:22:05 +02:00