5 Commits

Author SHA1 Message Date
6ba137a482 [Enhancement] Linux platform support (#17)
This PR contains the work done to provide full support of this package to Linux platform, by removing the restriction on the `AmiiboClient` client and the `AmiiboService` service put in place on the `v1.0.1` release.

To provide further details about the work done:
- [x] updated the `SwiftLibs` package dependency to `v0.1.7`;
- [x] made the `AmiiboClient` client and the `AmiiboService` service available to Linux platforms by importing the `FoundationNetworking` framework when available;
- [x] updated the content of some DocC documentation pages;
- [x] regenerated the Xcode and Github pages documentation;
- [x] updated some text in the `README` file.

Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #17
2023-04-30 13:59:37 +00:00
47b675fb78 [Setup] Basic Linux support (#16)
This PR contains the work done to provide basic Linux support to this package.

To provide further details about the work done:
- [x] updated the `SwiftLibs` dependency to `v0.1.5`;
- [x] updated the Swift tools version in the `Package` file to `v5.7`;
- [x] added the `/.vscode` folder to the `.gitignore` file;
- [x] filtered out the `AmiiboClient` and `AmiiboService` entities from Linux platforms;
- [x] added several targets to the `Makefile` to smooth several development work-flows;
- [x] updated the Xcode and Github pages documentation.

Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #16
2023-04-28 23:50:36 +00:00
cc34186d53 [Setup] License (#12)
This PR contains the work done to addres the issue #8, related to setting up a EUPL 1.2 license for this project.

To provide further details about the work done:
- [x] defined the LICENSE text;
- [x] defined the CONTRIBUTORS text;
- [x] added a header file to source code available in this project.

Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #12
2023-04-23 13:57:49 +00:00
f34ce5289d [Feature] Service (#4)
This PR contains the work done to implement the actual public service interface to the Amiibo API.

To provide further details about this work:
- [x] defined a `Filter` protocol;
- [x] implemented the `AmiiboFilter` and the `KeyNameFilter` filters;
- [x] implemented the `Result` model;
- [x] defined the `Service` protocol;
- [x] implemented the `AmiiboService` concrete service;
- [x] fixed the `path` of the `GetAmiiboEndpoint` endpoint;
- [x] made the `usage` property of the `Game` model optional;
- [x] replaced the `showGames` and the `showUsage` flags of the `AmiiboFilter` filter with an enumeration.

Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #4
2023-04-21 18:16:38 +00:00
68acf82f9d [Feature] Client (#3)
This PR contains the work done to implement the `AmiiboClient` struct that conforms to the `Client` protocol coming from the **Communications** library of the [SwiftLibs package](https://github.com/rock-n-code/swift-libs)

To provide further detailks about the work done:
- [x] added the `parameters` property to all the existing endpoints;
- [x] implemented the `AmiiboClient` client and the `AmiiboClientError` error;
- [x] implemented some static formatters in the `DateFormatter+Formatter` extension;
- [x] updated the `SwiftLibs` package to its latest version.

Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #3
2023-04-19 14:33:48 +00:00