aboutsummaryrefslogtreecommitdiff
path: root/launcher/modplatform/flame/FlameAPI.h
AgeCommit message (Collapse)Author
2023-06-25Fix unsafe usage of std::optional::value in FlameAPITheKodeToad
Signed-off-by: TheKodeToad <TheKodeToad@proton.me>
2023-06-23Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher ↵Trial97
into develop Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-06-19Added overide for Quilt/FabricTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-06-15Made ByteSynkArray to use shared_ptrTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-21Updated linksTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-21Fixed tipoTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-21Added Dependency APITrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-02-05feat(RD): add resource pack downloaderflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-23fix(license): add/fix my copyright/license headersflow
*sobbing in messy legal stuff i know nothing about* Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor: change some ResourceAPI from NetJob to Taskflow
This makes it easier to create resource apis that aren't network-based. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor(RD): clear up sorting methodsflow
This refactors the sorting methods to join every bit of it into a single list, easing maintanance. It also removes the weird index contraint on the list of methods by adding an index field to the DS that holds the method. Lastly, it puts the available methods on their respective API, so other resources on the same API can re-use them later on. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor(RD): decouple ResourceModels from ResourcePagesflow
This makes it so that we don't need a reference to the parent page in the model. It will be useful once we change the page from a widget-based one to a QML page. It also makes tasks be created in the dialog instead of the page, so that the dialog can also have the necessary information to mark versions as selected / deselected easily. It also makes the task pointers into smart pointers. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor: generalize mod models and APIs to resourcesflow
Firstly, this abstract away behavior in the mod download models that can also be applied to other types of resources into a superclass, allowing other resource types to be implemented without so much code duplication. For that, this also generalizes the APIs used (currently, ModrinthAPI and FlameAPI) to be able to make requests to other types of resources. It also does a general cleanup of both of those. In particular, this makes use of std::optional instead of invalid values for errors and, well, optional values :p This is a squash of some commits that were becoming too interlaced together to be cleanly separated. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-26huge nit: added const refs, everywheretimoreo
Signed-off-by: timoreo <contact@timoreo.fr>
2022-09-20feat: add 'getFiles' by fileIds route in Flame APIflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-01feat: add mod descriptions to CF modsflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17fix: std::list -> QListflow
Qt6 removed Qlist::toStdList() :sob: Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17fix: don't use shared_ptr for a background task T_Tflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17feat: add some mod api callsflow
- Get Project: Already existed but required a specific caller type. This is more general. - Get Projects: A single call to multiple of the above Both providers support these calls. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17feat: add api call to flameflow
Call added: - Get Fingerprints Matches - Get Mod File Changelog Signed-off-by: flow <flowlnlnln@gmail.com>
2022-06-17fix: fix warnings reported by LGTM.comSefa Eyeoglu
2022-06-14Merge pull request #634 from flowln/donate_linksEzekiel Smith
More links for CF / Modrinth mods / modpacks
2022-05-24feat: add links for curseforge modsflow
NOT DOWNLOAD LINKS! (someone would ask it i'm sure :p)
2022-05-24feat: add donate links for modrinth modsflow
2022-05-23refactor: move code out of ModIndex.hflow
Now it's in ModIndex.cpp
2022-05-19refactor: allow tracking multiple mod loadersSefa Eyeoglu
2022-05-08adopt changes from #497 remappedRyan Cao
2022-04-16fix: query for Fabric mods if Quilt is in useSefa Eyeoglu
Right now we want to include Fabric mods in our searches where possible. Modrinth allows definining multiple loaders, while Flame only allows a single value. As a compromise we ask for Fabric mods only on Flame and for both Fabric and Quilt mods on Modrinth.
2022-04-15fix: 'All' filter working and get around CF API capabilitiesflow
2022-04-15feat: Use version filter when searching modsflow
2022-03-24optimize: Improve mod versions request to Modrinthflow
This uses more arguments in the GET request for mod versions on the Modrinth API, filtering what versions can be returned, decreasing load on Modrinth servers and improving a little the time it takes for the versions to be available to the user. This also removes the now unneeded check on correct modloaders in ModrinthPackIndex, since it is now filtered by the Modrinth server. Lastly, this adds a couple of helper functions in ModModel.
2022-03-14tidy: Fix clang-tidy issues on files changed in this PRflow
The checks used are roughly the same as the ones proposed in the clang-tidy PR (except perhaps that I used modernize-* instead of listing them individually,though I don't think this caused any readability detriments). In ModrinthModel.cpp and FlameModModel.cpp I ignored the modernize-avoid-c-arrays one, mostly because making the sorts array an std::array would most likely increase the code complexity because of the virtual function. Aside from that, the static_cast warning from Application.h was not dealt with, since it's not in this PR's scope.
2022-03-07refactor: de-duplicate common code in network mod APIsflow
2022-03-07refactor: move NetJob away from ModModel to ModAPIflow
This is done so that 1. ModAPI behaves more like an actual API instead of just a helper, and 2. Allows for more easily creating other mod providers that may or may not use network tasks (foreshadowing lol)
2022-03-06refactor: use Enum instead of raw int for ModLoaderTypeflow
2022-03-02refactor: move url creation for mods to modplatform/flow
Moves all things related to creating the URLs of the mod platforms that go to network tasks to a single place, so that: 1. Maintaining and fixing eventual issues is more straightforward. 2. Makes it possible to factor out more common code between the different modplatform pages