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
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
This PR contains the work done to make improvements to the existing models.
To provide further details about the work done:
- [x] moved the `games3DS`, `gamesWiiU` and `gamesSwitch` properties from the `Amiibo` model to their own `Games` child model;
- [x] improved the decoding of the `Result` model.
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #5
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
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
This PR contains the work done in implementing the endpoints needed for the remote calls: `GetAmiiboEndpoint`, `GetTypeEndpoint`, `GetGameSeriesEndpoint`, `GetSeriesEndpoint`, `GetSeriesEndpoint` and `GetLastUpdatedEndpoint` endpoints definitions. Furthermore, I added the the **SwiftLibs** package as a dependency and also, I defined constants for `String+Scheme`, `String+Host` and the `String+Path` extensions.
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #2