forked from 1b-agent/opencadstudio-upstream
feat(supporters): merge hand-maintained supporters, rank by amount
Add a MANUAL_SUPPORTERS list in patreon.rs for donations that arrive outside Patreon; both the native and web boot paths merge it with the fetched patrons and sort the combined list by amount (highest first, then alphabetically). This also sorts the web supporters list, which previously arrived unordered, and keeps hand-maintained supporters visible when the Patreon fetch returns nothing (offline / no token). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
1 parent
31ac5372d6
commit
b446786d7d
2 files changed
+37
-4
No files matched your search
@@ -2730,12 +2730,17 @@ impl OpenCADStudio {
|
||||
Task::none()
|
||||
}
|
||||
Message::PatronsFetched(Ok(names)) => {
|
||||
self.patrons = names;
|
||||
// Merge the hand-maintained supporters and rank everyone by
|
||||
// amount (also sorts the web list, which arrives unsorted).
|
||||
self.patrons = crate::patreon::merge_manual(names);
|
||||
Task::none()
|
||||
}
|
||||
// No token / offline: still show any hand-maintained supporters
|
||||
// (Start page shows a "Support on Patreon" prompt when empty).
|
||||
Message::PatronsFetched(Err(_)) => {
|
||||
self.patrons = crate::patreon::merge_manual(Vec::new());
|
||||
Task::none()
|
||||
}
|
||||
// No token / offline: leave the list empty (Start page shows a
|
||||
// "Support on Patreon" prompt instead).
|
||||
Message::PatronsFetched(Err(_)) => Task::none(),
|
||||
Message::PluginReleasesFetched(repo, Ok(tags)) => {
|
||||
if let Some(first) = tags.first() {
|
||||
self.repo_selected_tag
|
||||
|
||||
Reference in new issue
Block a user