├── .gitignore ├── .swiftpm └── xcode │ ├── package.xcworkspace │ └── contents.xcworkspacedata │ └── xcshareddata │ └── xcschemes │ └── PokemonAPI.xcscheme ├── .travis.yml ├── CHANGELOG.md ├── Example ├── PokemonAPI-App.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ └── WorkspaceSettings.xcsettings └── PokemonAPI-App │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── AsyncAwaitExampleView.swift │ ├── ExampleMenuView.swift │ ├── Image+.swift │ ├── PageSelectView.swift │ ├── PaginatedResultsView.swift │ ├── PokemonAPI+.swift │ ├── PokemonAPI_App.entitlements │ ├── PokemonAPI_App.swift │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── LICENSE ├── Package.swift ├── PokemonAPI ├── Classes │ ├── Berries.swift │ ├── Contests.swift │ ├── Encounters.swift │ ├── Evolution.swift │ ├── Games.swift │ ├── Items.swift │ ├── Locations.swift │ ├── Machines.swift │ ├── Moves.swift │ ├── Pokemon.swift │ ├── PokemonAPI.swift │ ├── Resource.swift │ └── Utilities.swift ├── Network │ ├── APICall.swift │ ├── HTTPError.swift │ ├── HTTPHeader.swift │ ├── HTTPWebService.swift │ ├── Pagination.swift │ └── Result+Decode.swift ├── Utilities │ ├── Data+JSONPretty.swift │ ├── Decodable+Decode.swift │ ├── SelfDecodable.swift │ ├── URL+Query.swift │ ├── URLRequest+.swift │ ├── URLResponse+.swift │ └── URLSession+Request.swift └── WebServices │ ├── BerryService.swift │ ├── ContestService.swift │ ├── EncounterService.swift │ ├── EvolutionService.swift │ ├── GameService.swift │ ├── ItemService.swift │ ├── LocationService.swift │ ├── MachineService.swift │ ├── MoveService.swift │ ├── PokemonService.swift │ ├── ResourceService.swift │ └── UtilityService.swift ├── README.md └── Tests └── PokemonAPITests ├── MockData.swift ├── Network Mocking ├── MockedResponse.swift └── RequestMocking.swift ├── PokemonAPI_IntegrationTests.swift ├── ServiceTests ├── BerryServiceTests.swift ├── ContestServiceTests.swift └── ResourceServiceTests.swift └── XCTest+.swift /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/.gitignore -------------------------------------------------------------------------------- /.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /.swiftpm/xcode/xcshareddata/xcschemes/PokemonAPI.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/.swiftpm/xcode/xcshareddata/xcschemes/PokemonAPI.xcscheme -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/.travis.yml -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /Example/PokemonAPI-App.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Example/PokemonAPI-App.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Example/PokemonAPI-App.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings -------------------------------------------------------------------------------- /Example/PokemonAPI-App/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /Example/PokemonAPI-App/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Example/PokemonAPI-App/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Example/PokemonAPI-App/AsyncAwaitExampleView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/AsyncAwaitExampleView.swift -------------------------------------------------------------------------------- /Example/PokemonAPI-App/ExampleMenuView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/ExampleMenuView.swift -------------------------------------------------------------------------------- /Example/PokemonAPI-App/Image+.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/Image+.swift -------------------------------------------------------------------------------- /Example/PokemonAPI-App/PageSelectView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/PageSelectView.swift -------------------------------------------------------------------------------- /Example/PokemonAPI-App/PaginatedResultsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/PaginatedResultsView.swift -------------------------------------------------------------------------------- /Example/PokemonAPI-App/PokemonAPI+.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/PokemonAPI+.swift -------------------------------------------------------------------------------- /Example/PokemonAPI-App/PokemonAPI_App.entitlements: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/PokemonAPI_App.entitlements -------------------------------------------------------------------------------- /Example/PokemonAPI-App/PokemonAPI_App.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/PokemonAPI_App.swift -------------------------------------------------------------------------------- /Example/PokemonAPI-App/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Example/PokemonAPI-App/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/LICENSE -------------------------------------------------------------------------------- /Package.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Package.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Berries.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Berries.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Contests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Contests.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Encounters.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Encounters.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Evolution.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Evolution.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Games.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Games.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Items.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Items.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Locations.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Locations.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Machines.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Machines.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Moves.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Moves.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Pokemon.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Pokemon.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/PokemonAPI.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/PokemonAPI.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Resource.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Resource.swift -------------------------------------------------------------------------------- /PokemonAPI/Classes/Utilities.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Classes/Utilities.swift -------------------------------------------------------------------------------- /PokemonAPI/Network/APICall.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Network/APICall.swift -------------------------------------------------------------------------------- /PokemonAPI/Network/HTTPError.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Network/HTTPError.swift -------------------------------------------------------------------------------- /PokemonAPI/Network/HTTPHeader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Network/HTTPHeader.swift -------------------------------------------------------------------------------- /PokemonAPI/Network/HTTPWebService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Network/HTTPWebService.swift -------------------------------------------------------------------------------- /PokemonAPI/Network/Pagination.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Network/Pagination.swift -------------------------------------------------------------------------------- /PokemonAPI/Network/Result+Decode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Network/Result+Decode.swift -------------------------------------------------------------------------------- /PokemonAPI/Utilities/Data+JSONPretty.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Utilities/Data+JSONPretty.swift -------------------------------------------------------------------------------- /PokemonAPI/Utilities/Decodable+Decode.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Utilities/Decodable+Decode.swift -------------------------------------------------------------------------------- /PokemonAPI/Utilities/SelfDecodable.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Utilities/SelfDecodable.swift -------------------------------------------------------------------------------- /PokemonAPI/Utilities/URL+Query.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Utilities/URL+Query.swift -------------------------------------------------------------------------------- /PokemonAPI/Utilities/URLRequest+.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Utilities/URLRequest+.swift -------------------------------------------------------------------------------- /PokemonAPI/Utilities/URLResponse+.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Utilities/URLResponse+.swift -------------------------------------------------------------------------------- /PokemonAPI/Utilities/URLSession+Request.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/Utilities/URLSession+Request.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/BerryService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/BerryService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/ContestService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/ContestService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/EncounterService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/EncounterService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/EvolutionService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/EvolutionService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/GameService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/GameService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/ItemService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/ItemService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/LocationService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/LocationService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/MachineService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/MachineService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/MoveService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/MoveService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/PokemonService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/PokemonService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/ResourceService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/ResourceService.swift -------------------------------------------------------------------------------- /PokemonAPI/WebServices/UtilityService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/PokemonAPI/WebServices/UtilityService.swift -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/README.md -------------------------------------------------------------------------------- /Tests/PokemonAPITests/MockData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/MockData.swift -------------------------------------------------------------------------------- /Tests/PokemonAPITests/Network Mocking/MockedResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/Network Mocking/MockedResponse.swift -------------------------------------------------------------------------------- /Tests/PokemonAPITests/Network Mocking/RequestMocking.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/Network Mocking/RequestMocking.swift -------------------------------------------------------------------------------- /Tests/PokemonAPITests/PokemonAPI_IntegrationTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/PokemonAPI_IntegrationTests.swift -------------------------------------------------------------------------------- /Tests/PokemonAPITests/ServiceTests/BerryServiceTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/ServiceTests/BerryServiceTests.swift -------------------------------------------------------------------------------- /Tests/PokemonAPITests/ServiceTests/ContestServiceTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/ServiceTests/ContestServiceTests.swift -------------------------------------------------------------------------------- /Tests/PokemonAPITests/ServiceTests/ResourceServiceTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/ServiceTests/ResourceServiceTests.swift -------------------------------------------------------------------------------- /Tests/PokemonAPITests/XCTest+.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kinkofer/PokemonAPI/HEAD/Tests/PokemonAPITests/XCTest+.swift --------------------------------------------------------------------------------