Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4cbac015b1 | ||
|
|
13b9c74a38 | ||
|
|
44bfaca553 | ||
|
|
aa135cb04a |
No files matched your search
@@ -0,0 +1,57 @@
|
||||
# ===----------------------------------------------------------------------===
|
||||
#
|
||||
# This source file is part of the Amiibo Service open source project
|
||||
#
|
||||
# Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
# Licensed under Apache license v2.0
|
||||
#
|
||||
# See LICENSE for license information
|
||||
# See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
# ===----------------------------------------------------------------------===
|
||||
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
pull_request:
|
||||
branches: [main]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: ci-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
test:
|
||||
name: Build and test
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- name: Check out
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Select Xcode
|
||||
uses: maxim-lobanov/setup-xcode@v1
|
||||
with:
|
||||
xcode-version: latest-stable
|
||||
|
||||
- name: Show toolchain
|
||||
run: swift --version
|
||||
|
||||
- name: Cache build
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: .build
|
||||
key: spm-${{ runner.os }}-${{ hashFiles('Package.resolved') }}
|
||||
restore-keys: spm-${{ runner.os }}-
|
||||
|
||||
- name: Build
|
||||
run: make lib-build
|
||||
|
||||
- name: Test
|
||||
run: make lib-test
|
||||
@@ -0,0 +1,77 @@
|
||||
# ===----------------------------------------------------------------------===
|
||||
#
|
||||
# This source file is part of the Amiibo Service open source project
|
||||
#
|
||||
# Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
# Licensed under Apache license v2.0
|
||||
#
|
||||
# See LICENSE for license information
|
||||
# See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
# ===----------------------------------------------------------------------===
|
||||
|
||||
name: Documentation
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
pull_request:
|
||||
branches: [main]
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
concurrency:
|
||||
group: docs-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build documentation
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- name: Check out
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Pinned: swift-docc-plugin 1.5.0 fails to launch its tools under Xcode 27 ("Bad CPU type in executable").
|
||||
- name: Select Xcode
|
||||
uses: maxim-lobanov/setup-xcode@v1
|
||||
with:
|
||||
xcode-version: '26'
|
||||
|
||||
- name: Show toolchain
|
||||
run: swift --version
|
||||
|
||||
- name: Cache build
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: .build
|
||||
key: spm-${{ runner.os }}-${{ hashFiles('Package.resolved') }}
|
||||
restore-keys: spm-${{ runner.os }}-
|
||||
|
||||
- name: Generate
|
||||
run: make doc-generate-github
|
||||
|
||||
- name: Upload
|
||||
uses: actions/upload-pages-artifact@v3
|
||||
with:
|
||||
path: docs
|
||||
|
||||
deploy:
|
||||
name: Deploy to GitHub Pages
|
||||
if: github.event_name != 'pull_request'
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
pages: write
|
||||
id-token: write
|
||||
environment:
|
||||
name: github-pages
|
||||
url: ${{ steps.deploy.outputs.page_url }}
|
||||
steps:
|
||||
- name: Deploy
|
||||
id: deploy
|
||||
uses: actions/deploy-pages@v4
|
||||
@@ -0,0 +1,52 @@
|
||||
# ===----------------------------------------------------------------------===
|
||||
#
|
||||
# This source file is part of the Amiibo Service open source project
|
||||
#
|
||||
# Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
# Licensed under Apache license v2.0
|
||||
#
|
||||
# See LICENSE for license information
|
||||
# See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
# ===----------------------------------------------------------------------===
|
||||
|
||||
name: Live tests
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# Every Monday at 06:00 UTC.
|
||||
- cron: '0 6 * * 1'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
test:
|
||||
name: Test against the live service
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- name: Check out
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Select Xcode
|
||||
uses: maxim-lobanov/setup-xcode@v1
|
||||
with:
|
||||
xcode-version: latest-stable
|
||||
|
||||
- name: Show toolchain
|
||||
run: swift --version
|
||||
|
||||
- name: Cache build
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: .build
|
||||
key: spm-${{ runner.os }}-${{ hashFiles('Package.resolved') }}
|
||||
restore-keys: spm-${{ runner.os }}-
|
||||
|
||||
- name: Test
|
||||
run: make lib-test
|
||||
env:
|
||||
AMIIBO_LIVE_TESTS: '1'
|
||||
@@ -49,3 +49,4 @@ Packages/
|
||||
|
||||
# DocC documentation
|
||||
*.doccarchive
|
||||
docs/
|
||||
+5
-2
@@ -32,9 +32,10 @@ let package = Package(
|
||||
)
|
||||
],
|
||||
dependencies: [
|
||||
.package(url: "https://github.com/apple/swift-openapi-generator.git", exact: "1.11.0"),
|
||||
.package(url: "https://github.com/apple/swift-openapi-generator.git", from: "1.11.0"),
|
||||
.package(url: "https://github.com/apple/swift-openapi-runtime", from: "1.5.0"),
|
||||
.package(url: "https://github.com/apple/swift-openapi-urlsession", from: "1.0.2"),
|
||||
.package(url: "https://github.com/apple/swift-http-types", from: "1.0.0"),
|
||||
.package(url: "https://github.com/swiftlang/swift-docc-plugin", from: "1.1.0"),
|
||||
],
|
||||
targets: [
|
||||
@@ -52,7 +53,9 @@ let package = Package(
|
||||
.testTarget(
|
||||
name: AmiiboService.test,
|
||||
dependencies: [
|
||||
.byName(name: AmiiboService.target)
|
||||
.byName(name: AmiiboService.target),
|
||||
.product(name: "HTTPTypes", package: "swift-http-types"),
|
||||
.product(name: "OpenAPIRuntime", package: "swift-openapi-runtime")
|
||||
],
|
||||
path: "Tests/AmiiboService"
|
||||
),
|
||||
|
||||
@@ -1,20 +1,25 @@
|
||||
[](https://swiftpackageindex.com/rock-n-code/amiibo-service)
|
||||
[](https://swiftpackageindex.com/rock-n-code/amiibo-service)
|
||||
[](https://github.com/rock-n-code/amiibo-service/actions/workflows/ci.yml)
|
||||
|
||||
# Amiibo Service
|
||||
|
||||
A library written entirely with [Swift](https://www.swift.org) that provides everything the developer needs to interact with the [Amiibo API](https://www.amiiboapi.org) backend service.
|
||||
A Swift client for the [Amiibo API](https://www.amiiboapi.org).
|
||||
|
||||
## Requirements
|
||||
|
||||
- Swift 6.2 or later
|
||||
- iOS 13, macOS 10.15, tvOS 13, visionOS 1, or watchOS 6 or later
|
||||
|
||||
## Installation
|
||||
|
||||
To use this library, add it as a dependency in the `Package.swift` file:
|
||||
Add the package and the `AmiiboService` product to `Package.swift`:
|
||||
|
||||
```swift
|
||||
let package = Package(
|
||||
// name, platforms, products, etc.
|
||||
dependencies: [
|
||||
.package(url: "https://github.com/rock-n-code/amiibo-service", from: "1.4.2"),
|
||||
// other dependencies
|
||||
.package(url: "https://github.com/rock-n-code/amiibo-service", from: "2.0.0"),
|
||||
],
|
||||
targets: [
|
||||
.target(
|
||||
@@ -22,16 +27,12 @@ let package = Package(
|
||||
dependencies: [
|
||||
.product(name: "AmiiboService", package: "amiibo-service"),
|
||||
]
|
||||
)
|
||||
// other targets
|
||||
),
|
||||
]
|
||||
)
|
||||
```
|
||||
|
||||
It is also possible to use this library with your app in Xcode by adding it as a dependency in your Xcode project.
|
||||
|
||||
> [!IMPORTANT]
|
||||
> Swift 6.2 or higher is required in order to build this library.
|
||||
In Xcode, add the package URL under **File › Add Package Dependencies…**.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -40,25 +41,41 @@ import AmiiboService
|
||||
|
||||
let service = AmiiboService()
|
||||
|
||||
// Fetch all amiibos
|
||||
// All amiibos
|
||||
let amiibos = try await service.getAmiibos()
|
||||
|
||||
// Fetch amiibos filtered by name
|
||||
// Amiibos whose name contains "zelda"
|
||||
let zeldaAmiibos = try await service.getAmiibos(.init(name: "zelda"))
|
||||
|
||||
// Fetch amiibo series, types, game characters, and game series
|
||||
// Amiibo series, types, game characters, and game series
|
||||
let series = try await service.getAmiiboSeries()
|
||||
let types = try await service.getAmiiboTypes()
|
||||
let characters = try await service.getGameCharacters()
|
||||
let gameSeries = try await service.getGameSeries()
|
||||
|
||||
// Fetch the last updated timestamp
|
||||
// Date of the last data update (UTC)
|
||||
let lastUpdated = try await service.getLastUpdated()
|
||||
```
|
||||
|
||||
Results are sorted in ascending order by identifier (amiibos) or key (everything else). Models are `Hashable`, `Codable`, and `Identifiable`; filters are `Hashable`.
|
||||
|
||||
## Error handling
|
||||
|
||||
Every call throws `AmiiboServiceError`. When nothing matches, `getAmiibos(_:)` returns an empty array, while the other list calls throw `AmiiboServiceError.notFound`:
|
||||
|
||||
```swift
|
||||
do throws(AmiiboServiceError) {
|
||||
let series = try await service.getAmiiboSeries(.init(key: "0x01"))
|
||||
} catch .notFound {
|
||||
// No amiibo series has this key.
|
||||
} catch {
|
||||
// .badRequest, .cancelled, .decoding, .notAvailable, .undocumented, or .unknown
|
||||
}
|
||||
```
|
||||
|
||||
## Caching
|
||||
|
||||
The [Amiibo API](https://www.amiiboapi.org) recommends that consumers who call the API regularly implement caching on their systems. Pass a custom `URLSessionTransport` with a cache-configured `URLSession` to `AmiiboLiveClient`:
|
||||
The library has no built-in cache. The Amiibo API asks regular consumers to cache responses. To do that, give `AmiiboLiveClient` a transport backed by a `URLCache`:
|
||||
|
||||
```swift
|
||||
import OpenAPIURLSession
|
||||
@@ -83,12 +100,12 @@ let service = AmiiboService(
|
||||
|
||||
## Testing
|
||||
|
||||
The `AmiiboClient` protocol enables creating custom mock clients for unit testing without network calls. Conform to `AmiiboClient` and inject it into `AmiiboService` via its `init(client:)` initializer. Since `AmiiboClient` refines `Sendable`, conforming types must be safe to share across concurrency domains:
|
||||
To test without network access, pass a mock `AmiiboClient` to `AmiiboService(client:)`. `AmiiboClient` refines `Sendable`, so the mock must be `Sendable`, too:
|
||||
|
||||
```swift
|
||||
import AmiiboService
|
||||
|
||||
struct MyMockClient: AmiiboClient {
|
||||
struct MockClient: AmiiboClient {
|
||||
var error: AmiiboServiceError?
|
||||
|
||||
func getAmiibos(
|
||||
@@ -98,22 +115,34 @@ struct MyMockClient: AmiiboClient {
|
||||
return []
|
||||
}
|
||||
|
||||
// Implement remaining protocol requirements...
|
||||
// Implement the remaining requirements...
|
||||
}
|
||||
|
||||
let service = AmiiboService(client: MyMockClient())
|
||||
let service = AmiiboService(client: MockClient())
|
||||
```
|
||||
|
||||
### Running the test suite
|
||||
## Development
|
||||
|
||||
The unit tests based on a mock client run offline by default. The tests against the live service are skipped unless the `AMIIBO_LIVE_TESTS` environment variable is set to `1`, either in the environment when testing from the command line:
|
||||
Run `make` to list the available tasks for building, testing, and generating documentation.
|
||||
|
||||
The test suite runs offline by default. Tests against the live service run only if `AMIIBO_LIVE_TESTS` is set to `1`:
|
||||
|
||||
```shell
|
||||
AMIIBO_LIVE_TESTS=1 swift test
|
||||
```
|
||||
|
||||
or in the `Test` action of the scheme when testing from Xcode.
|
||||
In Xcode, set the variable in the scheme's **Test** action.
|
||||
|
||||
The live tests compare the responses against baselines recorded from the service: minimum item counts per endpoint and the earliest accepted last-updated date. These live in the `Int` extension at the bottom of `AmiiboServiceLiveTests.swift` and in the `get the last updated timestamp` test. Refresh them occasionally by fetching the current totals and the current timestamp from the service, then updating the constants and their `as of` notes:
|
||||
|
||||
```shell
|
||||
for endpoint in amiibo amiiboseries type character gameseries; do
|
||||
printf '%s: ' "$endpoint"
|
||||
curl -s "https://www.amiiboapi.org/api/$endpoint/" | python3 -c 'import json,sys; print(len(json.load(sys.stdin)["amiibo"]))'
|
||||
done
|
||||
curl -s https://www.amiiboapi.org/api/lastupdated/
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
Please refer to the [online documentation](https://rock-n-code.github.io/amiibo-service/documentation/amiiboservice/) for further information about this library.
|
||||
See the [online documentation](https://rock-n-code.github.io/amiibo-service/documentation/amiiboservice/).
|
||||
@@ -1,25 +1,22 @@
|
||||
# ``AmiiboService``
|
||||
|
||||
A library that provides everything the developer needs to interact with the **Amiibo API** backend service.
|
||||
A Swift client for the Amiibo API.
|
||||
|
||||
## Overview
|
||||
|
||||
The `amiibo-service` library is a package that allows the developer to interact with the [Amiibo API](https://www.amiiboapi.org) backend service seamlessly, by not only providing the *service* type but also any possible *models*, *filters*, *errors* and *interfaces* types that might be needed during implementation.
|
||||
`AmiiboService` fetches data from the [Amiibo API](https://www.amiiboapi.org) and returns it as Swift models.
|
||||
|
||||
## Design
|
||||
|
||||
Although it could have been possible to generate a one-to-one RESTful client based on the Open API specification document that describe the available endpoints of the backend service, it was decided to design a `AmiiboService` service type that removes the complexities of the API design imposed by the backend service, and provides the developer with a simple interface, and a seamless experience.
|
||||
``AmiiboService`` offers one method per resource: each takes a typed filter, returns sorted models, and throws ``AmiiboServiceError``.
|
||||
|
||||
## Installation
|
||||
|
||||
To use the `AmiiboService` library with your package, then add it as a dependency in the `Package.swift` file:
|
||||
Add the package and the `AmiiboService` product to `Package.swift`:
|
||||
|
||||
```swift
|
||||
let package = Package(
|
||||
// name, platforms, products, etc.
|
||||
dependencies: [
|
||||
.package(url: "https://github.com/rock-n-code/amiibo-service", from: "2.0.0"),
|
||||
// other dependencies
|
||||
],
|
||||
targets: [
|
||||
.target(
|
||||
@@ -27,48 +24,59 @@ let package = Package(
|
||||
dependencies: [
|
||||
.product(name: "AmiiboService", package: "amiibo-service"),
|
||||
]
|
||||
)
|
||||
// other targets
|
||||
),
|
||||
]
|
||||
)
|
||||
```
|
||||
|
||||
It is also possible to use the `AmiiboService` library with your app in Xcode, then add it as a dependency in your Xcode project.
|
||||
In Xcode, add the package URL under **File › Add Package Dependencies…**.
|
||||
|
||||
> important: Swift 6.2 or higher is required in order to compile this library.
|
||||
> Important: Requires Swift 6.2 or later, and iOS 13, macOS 10.15, tvOS 13, visionOS 1, or watchOS 6 or later.
|
||||
|
||||
## Usage
|
||||
|
||||
Create an ``AmiiboService`` instance and call any of its endpoints. Each endpoint accepts an optional filter and, when omitted, returns the full set of results:
|
||||
Create an ``AmiiboService`` and call its methods. When you omit the filter, the method returns every item:
|
||||
|
||||
```swift
|
||||
import AmiiboService
|
||||
|
||||
let service = AmiiboService()
|
||||
|
||||
// Fetch all amiibos
|
||||
// All amiibos
|
||||
let amiibos = try await service.getAmiibos()
|
||||
|
||||
// Fetch amiibos filtered by name
|
||||
// Amiibos whose name contains "zelda"
|
||||
let zeldaAmiibos = try await service.getAmiibos(.init(name: "zelda"))
|
||||
|
||||
// Fetch amiibo series, types, game characters, and game series
|
||||
// Amiibo series, types, game characters, and game series
|
||||
let series = try await service.getAmiiboSeries()
|
||||
let types = try await service.getAmiiboTypes()
|
||||
let characters = try await service.getGameCharacters()
|
||||
let gameSeries = try await service.getGameSeries()
|
||||
|
||||
// Fetch the last updated timestamp
|
||||
// Date of the last data update (UTC)
|
||||
let lastUpdated = try await service.getLastUpdated()
|
||||
```
|
||||
|
||||
Results are sorted in ascending order by ``Amiibo/identifier`` or by `key`.
|
||||
|
||||
## Error handling
|
||||
|
||||
Every method throws ``AmiiboServiceError``. When nothing matches, ``AmiiboService/getAmiibos(_:)`` returns an empty array, while the other list methods throw ``AmiiboServiceError/notFound``:
|
||||
|
||||
```swift
|
||||
do throws(AmiiboServiceError) {
|
||||
let series = try await service.getAmiiboSeries(.init(key: "0x01"))
|
||||
} catch .notFound {
|
||||
// No amiibo series has this key.
|
||||
} catch {
|
||||
// .badRequest, .cancelled, .decoding, .notAvailable, .undocumented, or .unknown
|
||||
}
|
||||
```
|
||||
|
||||
## Caching
|
||||
|
||||
The [Amiibo API](https://www.amiiboapi.org) recommends that consumers who call the API regularly implement caching on their systems. This library does not include a built-in cache, leaving the choice of caching strategy to the consumer. The following examples show two common approaches.
|
||||
|
||||
### URLCache on the transport layer
|
||||
|
||||
Pass a custom `URLSessionTransport` with a cache-configured `URLSession` to ``AmiiboLiveClient``:
|
||||
The library has no built-in cache, and the Amiibo API asks regular consumers to cache responses. To cache at the HTTP level, give ``AmiiboLiveClient`` a transport backed by a `URLCache`:
|
||||
|
||||
```swift
|
||||
import OpenAPIURLSession
|
||||
@@ -91,20 +99,16 @@ let service = AmiiboService(
|
||||
)
|
||||
```
|
||||
|
||||
This leverages HTTP cache headers from the server and persists cached responses to disk.
|
||||
|
||||
### Application-level caching
|
||||
|
||||
Alternatively, cache the results returned by ``AmiiboService`` directly in your application using any storage mechanism that fits your needs, such as an in-memory dictionary, a database, or a file-based store.
|
||||
Models are `Codable`, so you can also store them yourself.
|
||||
|
||||
## Testing
|
||||
|
||||
The ``AmiiboClient`` protocol enables creating custom mock clients for testing, eliminating the need for network calls in unit tests. Conform to ``AmiiboClient`` and return stubbed data or throw ``AmiiboServiceError`` errors to verify your application's behavior:
|
||||
To test without network access, pass a mock ``AmiiboClient`` to ``AmiiboService/init(client:)``. ``AmiiboClient`` refines `Sendable`, so the mock must be `Sendable`, too:
|
||||
|
||||
```swift
|
||||
import AmiiboService
|
||||
|
||||
struct MyMockClient: AmiiboClient {
|
||||
struct MockClient: AmiiboClient {
|
||||
var error: AmiiboServiceError?
|
||||
|
||||
func getAmiibos(
|
||||
@@ -114,22 +118,10 @@ struct MyMockClient: AmiiboClient {
|
||||
return []
|
||||
}
|
||||
|
||||
// Implement remaining protocol requirements...
|
||||
// Implement the remaining requirements...
|
||||
}
|
||||
|
||||
let service = AmiiboService(client: MyMockClient())
|
||||
```
|
||||
|
||||
Inject the mock client into ``AmiiboService`` via its ``AmiiboService/init(client:)`` initializer to test how your code handles empty results, specific errors, or any other scenario without relying on the live backend.
|
||||
|
||||
## Tasks
|
||||
|
||||
This library offers a set of ready-to-use tasks that simplify the interaction with the library, which the developer can use from any `Terminal` application.
|
||||
|
||||
> Tip: To show the available list of tasks, plus display some explanations about each and every one of them; please enter the following command:
|
||||
|
||||
```bash
|
||||
$ make
|
||||
let service = AmiiboService(client: MockClient())
|
||||
```
|
||||
|
||||
## Topics
|
||||
|
||||
@@ -18,13 +18,11 @@ extension DateFormatter {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// An ISO date formatter.
|
||||
///
|
||||
/// This formatter implements the `yyyy-MM-dd` date format.
|
||||
/// An ISO date formatter for the `yyyy-MM-dd` format.
|
||||
static let isoDate: DateFormatter = {
|
||||
let formatter = DateFormatter()
|
||||
|
||||
// A fixed-format date requires the POSIX locale, as the user's locale or 12/24-hour setting could otherwise alter the parsing.
|
||||
// The POSIX locale keeps the user's locale and 12/24-hour setting from altering fixed-format parsing.
|
||||
formatter.locale = .init(identifier: "en_US_POSIX")
|
||||
formatter.dateFormat = "yyyy-MM-dd"
|
||||
formatter.timeZone = .init(secondsFromGMT: 0)
|
||||
@@ -32,14 +30,13 @@ extension DateFormatter {
|
||||
return formatter
|
||||
}()
|
||||
|
||||
/// An ISO timestamp formatter.
|
||||
/// An ISO timestamp formatter for the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` format.
|
||||
///
|
||||
/// This formatter implements the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` custom date format.
|
||||
/// Within the context of this library, this formatter is solely used to decode a date formatted as a timestamp that is returned by the ``AmiiboService/getLastUpdated()`` function.
|
||||
/// Used only to decode the timestamp returned by ``AmiiboService/getLastUpdated()``.
|
||||
static let isoTimestamp: DateFormatter = {
|
||||
let formatter = DateFormatter()
|
||||
|
||||
// A fixed-format date requires the POSIX locale, as the user's locale or 12/24-hour setting could otherwise alter the parsing.
|
||||
// The POSIX locale keeps the user's locale and 12/24-hour setting from altering fixed-format parsing.
|
||||
formatter.locale = .init(identifier: "en_US_POSIX")
|
||||
formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSSSS"
|
||||
formatter.timeZone = .init(secondsFromGMT: 0)
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
/// A protocol that defines filters containing optional `key` and/or `name` values for querying resources.
|
||||
protocol KeyNameFilter {
|
||||
/// A protocol for filters with optional `key` and `name` values.
|
||||
protocol KeyNameFilter: Hashable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
/// A protocol that defines models containing a `key` and `name` pair.
|
||||
protocol KeyNameModel: Sendable, Hashable {
|
||||
protocol KeyNameModel: Sendable, Hashable, Codable, Identifiable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
|
||||
@@ -15,15 +15,15 @@
|
||||
import Foundation
|
||||
import OpenAPIRuntime
|
||||
|
||||
/// A type that allows the decoding and encoding of ISO dates, supporting both the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` timestamp format and the `yyyy-MM-dd` date-only format.
|
||||
/// A transcoder for ISO dates in the `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` timestamp and `yyyy-MM-dd` date-only formats.
|
||||
struct ISODateTimeTranscoder {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// A formatter to use to decode and encode ISO timestamp dates.
|
||||
/// The ISO timestamp formatter.
|
||||
private let timestampFormatter: DateFormatter = .isoTimestamp
|
||||
|
||||
/// A formatter to use to decode and encode ISO date-only strings.
|
||||
/// The ISO date-only formatter.
|
||||
private let dateFormatter: DateFormatter = .isoDate
|
||||
|
||||
}
|
||||
@@ -34,17 +34,13 @@ extension ISODateTimeTranscoder: DateTranscoder {
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
/// Encodes a date into an ISO timestamp string.
|
||||
/// - Parameter date: A date to encode.
|
||||
/// - Returns: A string representation of the date in `yyyy-MM-dd'T'HH:mm:ss.SSSSSS` format.
|
||||
/// Encodes a date as an ISO timestamp string.
|
||||
func encode(_ date: Date) throws -> String {
|
||||
timestampFormatter.string(from: date)
|
||||
}
|
||||
|
||||
/// Decodes an ISO date string into a date, trying the timestamp format first and falling back to the date-only format.
|
||||
/// - Parameter string: A string to decode.
|
||||
/// - Returns: A date parsed from the string.
|
||||
/// - Throws: A `DecodingError` if the string cannot be parsed into a valid date.
|
||||
/// Decodes an ISO date string, trying the timestamp format before the date-only one.
|
||||
/// - Throws: A `DecodingError` if the string matches neither format.
|
||||
func decode(_ string: String) throws -> Date {
|
||||
if let date = timestampFormatter.date(from: string) {
|
||||
return date
|
||||
|
||||
@@ -16,16 +16,16 @@ import Foundation
|
||||
import OpenAPIRuntime
|
||||
import OpenAPIURLSession
|
||||
|
||||
/// A type that implements a live client to the [Amiibo API](https://www.amiiboapi.org) online service.
|
||||
/// A live client for the [Amiibo API](https://www.amiiboapi.org).
|
||||
///
|
||||
/// This client maps any transport error or unsuccessful HTTP response to an ``AmiiboServiceError`` error, and sorts the items of the list responses in ascending order by identifier or key.
|
||||
/// It maps transport errors and unsuccessful responses to ``AmiiboServiceError``, and sorts list results by identifier or key.
|
||||
public struct AmiiboLiveClient: Sendable {
|
||||
|
||||
// MARK: Constants
|
||||
|
||||
/// The base URL of the live service, resolved once from the server defined in the OpenAPI specification.
|
||||
/// The base URL of the live service, from the OpenAPI specification.
|
||||
///
|
||||
/// The validity of the URL is guaranteed by the bundled `openapi.yaml` specification and enforced by a unit test, so resolution is not expected to fail at runtime.
|
||||
/// A unit test guards this URL, so resolution is not expected to fail at runtime.
|
||||
static let serverURL: URL = {
|
||||
guard let url = try? Servers.Server1.url() else {
|
||||
fatalError("The server URL defined in the OpenAPI specification could not be resolved. Verify that the 'openapi.yaml' server definition is valid.")
|
||||
@@ -41,8 +41,8 @@ public struct AmiiboLiveClient: Sendable {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this client with a transport for performing HTTP operations.
|
||||
/// - Parameter transport: A transport that performs HTTP operations. Defaults to a `URLSessionTransport` using the shared session.
|
||||
/// Initializes this client.
|
||||
/// - Parameter transport: A transport for HTTP operations. Defaults to a `URLSessionTransport` on the shared session.
|
||||
public init(transport: any ClientTransport = URLSessionTransport()) {
|
||||
self.client = .init(
|
||||
serverURL: Self.serverURL,
|
||||
@@ -54,16 +54,17 @@ public struct AmiiboLiveClient: Sendable {
|
||||
}
|
||||
|
||||
// MARK: - AmiiboClient
|
||||
// TODO: Remove the documentation from the functions inside the following extension as the `--enable-inherited-docs` flag when generating DocC documentation is not working as intended (?).
|
||||
// NOTE: The `AmiiboClient` documentation is repeated below on purpose, as the compiler does not inherit
|
||||
// documentation for protocol witnesses and DocC would otherwise render these functions undocumented.
|
||||
|
||||
extension AmiiboLiveClient: AmiiboClient {
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
/// Gets a list of amiibo items based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo items.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getAmiibos(
|
||||
by filter: AmiiboFilter
|
||||
) async throws(AmiiboServiceError) -> [Amiibo] {
|
||||
@@ -71,9 +72,9 @@ extension AmiiboLiveClient: AmiiboClient {
|
||||
}
|
||||
|
||||
/// Gets a list of amiibo series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo series.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getAmiiboSeries(
|
||||
by filter: AmiiboSeriesFilter
|
||||
) async throws(AmiiboServiceError) -> [AmiiboSeries] {
|
||||
@@ -81,9 +82,9 @@ extension AmiiboLiveClient: AmiiboClient {
|
||||
}
|
||||
|
||||
/// Gets a list of amiibo types based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo types.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getAmiiboTypes(
|
||||
by filter: AmiiboTypeFilter
|
||||
) async throws(AmiiboServiceError) -> [AmiiboType] {
|
||||
@@ -91,9 +92,9 @@ extension AmiiboLiveClient: AmiiboClient {
|
||||
}
|
||||
|
||||
/// Gets a list of game characters based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered game characters.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getGameCharacters(
|
||||
by filter: GameCharacterFilter
|
||||
) async throws(AmiiboServiceError) -> [GameCharacter] {
|
||||
@@ -101,9 +102,9 @@ extension AmiiboLiveClient: AmiiboClient {
|
||||
}
|
||||
|
||||
/// Gets a list of game series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered game series.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getGameSeries(
|
||||
by filter: GameSeriesFilter
|
||||
) async throws(AmiiboServiceError) -> [GameSeries] {
|
||||
@@ -112,7 +113,7 @@ extension AmiiboLiveClient: AmiiboClient {
|
||||
|
||||
/// Gets the date when the data was last updated.
|
||||
/// - Returns: A last updated date, decoded as UTC.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getLastUpdated() async throws(AmiiboServiceError) -> Date {
|
||||
try await fetchLastUpdated()
|
||||
}
|
||||
@@ -125,10 +126,7 @@ private extension AmiiboLiveClient {
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
/// Fetches a list of amiibo items based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Returns: A list of fetched amiibo items filtered, if requested.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// Fetches the amiibos matching a filter.
|
||||
func fetchAmiibos(
|
||||
_ filter: AmiiboFilter
|
||||
) async throws(AmiiboServiceError) -> [Amiibo] {
|
||||
@@ -174,10 +172,7 @@ private extension AmiiboLiveClient {
|
||||
}
|
||||
}
|
||||
|
||||
/// Fetches a list of amiibo series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Returns: A list of fetched amiibo series filtered, if requested.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// Fetches the amiibo series matching a filter.
|
||||
func fetchAmiiboSeries(
|
||||
_ filter: AmiiboSeriesFilter
|
||||
) async throws(AmiiboServiceError) -> [AmiiboSeries] {
|
||||
@@ -210,10 +205,7 @@ private extension AmiiboLiveClient {
|
||||
}
|
||||
}
|
||||
|
||||
/// Fetches a list of amiibo types based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Returns: A list of fetched amiibo types filtered, if requested.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// Fetches the amiibo types matching a filter.
|
||||
func fetchAmiiboTypes(
|
||||
_ filter: AmiiboTypeFilter
|
||||
) async throws(AmiiboServiceError) -> [AmiiboType] {
|
||||
@@ -246,10 +238,7 @@ private extension AmiiboLiveClient {
|
||||
}
|
||||
}
|
||||
|
||||
/// Fetches a list of game characters based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Returns: A list of fetched game characters filtered, if requested.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// Fetches the game characters matching a filter.
|
||||
func fetchGameCharacters(
|
||||
_ filter: GameCharacterFilter
|
||||
) async throws(AmiiboServiceError) -> [GameCharacter] {
|
||||
@@ -282,10 +271,7 @@ private extension AmiiboLiveClient {
|
||||
}
|
||||
}
|
||||
|
||||
/// Fetches a list of game series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Returns: A list of fetched game series filtered, if requested.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// Fetches the game series matching a filter.
|
||||
func fetchGameSeries(
|
||||
_ filter: GameSeriesFilter
|
||||
) async throws(AmiiboServiceError) -> [GameSeries] {
|
||||
@@ -319,8 +305,6 @@ private extension AmiiboLiveClient {
|
||||
}
|
||||
|
||||
/// Fetches the date when the data was last updated.
|
||||
/// - Returns: A fetched last updated date, decoded as UTC.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
func fetchLastUpdated() async throws(AmiiboServiceError) -> Date {
|
||||
let response = try await perform {
|
||||
try await client.getLastUpdated()
|
||||
@@ -339,10 +323,7 @@ private extension AmiiboLiveClient {
|
||||
}
|
||||
}
|
||||
|
||||
/// Performs an API call, mapping any error thrown by the underlying client to an ``AmiiboServiceError`` error.
|
||||
/// - Parameter operation: A closure that performs the API call.
|
||||
/// - Returns: The output of the performed API call.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case the API call failed.
|
||||
/// Performs an API call, mapping any error to an ``AmiiboServiceError``.
|
||||
func perform<Output>(
|
||||
_ operation: () async throws -> Output
|
||||
) async throws(AmiiboServiceError) -> Output {
|
||||
@@ -353,24 +334,23 @@ private extension AmiiboLiveClient {
|
||||
}
|
||||
}
|
||||
|
||||
/// Maps a list of key-name payloads into a sorted list of models.
|
||||
/// - Parameter payloads: A list of payloads to map into models.
|
||||
/// - Returns: A list of models sorted by their keys in ascending order.
|
||||
/// Maps key-name payloads into models sorted by key.
|
||||
func makeModels<Model: KeyNameModel>(from payloads: [some KeyNamePayload]) -> [Model] {
|
||||
payloads
|
||||
.map { Model($0) }
|
||||
.sorted { $0.key < $1.key }
|
||||
}
|
||||
|
||||
/// Maps a given error to an ``AmiiboServiceError`` error.
|
||||
/// - Parameter error: An error to map.
|
||||
/// - Throws: An ``AmiiboServiceError`` error that corresponds to the given error.
|
||||
/// Maps an error to the corresponding ``AmiiboServiceError``.
|
||||
func handle(error: any Error) throws(AmiiboServiceError) -> Never {
|
||||
switch error {
|
||||
case is CancellationError:
|
||||
throw AmiiboServiceError.cancelled
|
||||
case let clientError as ClientError:
|
||||
// The underlying client wraps every error, including cancellation, in a `ClientError`.
|
||||
switch clientError.underlyingError {
|
||||
case is CancellationError:
|
||||
throw AmiiboServiceError.cancelled
|
||||
case is DecodingError:
|
||||
throw AmiiboServiceError.decoding
|
||||
case let urlError as URLError:
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
/// A representation of all the possible errors that the ``AmiiboService`` service could throw.
|
||||
/// An error thrown by ``AmiiboService`` and ``AmiiboClient`` methods.
|
||||
public enum AmiiboServiceError: Error {
|
||||
/// The request was malformed or contained invalid filter parameters.
|
||||
case badRequest
|
||||
@@ -22,13 +22,15 @@ public enum AmiiboServiceError: Error {
|
||||
case cancelled
|
||||
/// The response body could not be decoded into the expected model.
|
||||
case decoding
|
||||
/// The backend service is currently unreachable due to a network or server issue.
|
||||
/// The service is unreachable due to a network or server issue.
|
||||
case notAvailable
|
||||
/// No results were found matching the given filter criteria.
|
||||
///
|
||||
/// When no amiibos match, ``AmiiboService/getAmiibos(_:)`` returns an empty array instead of throwing this error.
|
||||
case notFound
|
||||
/// The server returned an undocumented HTTP status code.
|
||||
case undocumented(_ statusCode: Int)
|
||||
/// An unexpected error that does not fall into any other category, with a description of the underlying error.
|
||||
/// Any other error, with a description of the underlying one.
|
||||
case unknown(_ description: String)
|
||||
}
|
||||
|
||||
|
||||
@@ -12,55 +12,57 @@
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
/// A type that contains values to fine-tune a response when requesting amiibo items.
|
||||
public struct AmiiboFilter: Sendable {
|
||||
/// A filter for amiibo requests.
|
||||
///
|
||||
/// Values left as `nil` do not restrict the result.
|
||||
public struct AmiiboFilter: Sendable, Hashable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// A game character to filter the result, if any.
|
||||
/// A game character key or name to match, if any.
|
||||
public let gameCharacter: String?
|
||||
|
||||
/// A game series to filter the result, if any.
|
||||
/// A game series key or name to match, if any.
|
||||
public let gameSeries: String?
|
||||
|
||||
/// A first part of an identifier to filter the result, if any.
|
||||
/// The first 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix.
|
||||
public let head: String?
|
||||
|
||||
/// An amiibo identifier to filter the result, if any.
|
||||
/// A full 16-character hexadecimal identifier to match, if any.
|
||||
public let identifier: String?
|
||||
|
||||
/// An amiibo name to filter the result, if any.
|
||||
/// An amiibo name, or part of one, to match, if any.
|
||||
public let name: String?
|
||||
|
||||
/// An amiibo series to filter the result, if any.
|
||||
/// An amiibo series key or name to match, if any.
|
||||
public let series: String?
|
||||
|
||||
/// A flag indicating whether to include games in the response, if any.
|
||||
/// Whether to include related games in ``Amiibo/platform``. `nil` means `false`.
|
||||
public let showGames: Bool?
|
||||
|
||||
/// A flag indicating whether to include amiibo usages in games in the response, if any.
|
||||
/// Whether to include related games and their usages in ``Amiibo/platform``. `nil` means `false`.
|
||||
public let showUsage: Bool?
|
||||
|
||||
/// A last part of an identifier to filter the result, if any.
|
||||
/// The last 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix.
|
||||
public let tail: String?
|
||||
|
||||
/// An amiibo type to filter the result, if any.
|
||||
/// An amiibo type key or name to match, if any.
|
||||
public let type: String?
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this filter.
|
||||
/// - Parameters:
|
||||
/// - head: A first part of an identifier to filter the result, if any.
|
||||
/// - tail: A last part of an identifier to filter the result, if any.
|
||||
/// - identifier: An amiibo identifier to filter the result, if any.
|
||||
/// - name: An amiibo name to filter the result, if any.
|
||||
/// - type: An amiibo type to filter the result, if any.
|
||||
/// - series: An amiibo series to filter the result, if any.
|
||||
/// - gameCharacter: A game character to filter the result, if any.
|
||||
/// - gameSeries: A game series to filter the result, if any.
|
||||
/// - showGames: A flag indicating whether to include games in the response, if any.
|
||||
/// - showUsage: A flag indicating whether to include amiibo usages in games in the response, if any.
|
||||
/// - head: The first 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix.
|
||||
/// - tail: The last 8 hexadecimal characters of an identifier to match, if any. Shorter values match as a prefix.
|
||||
/// - identifier: A full 16-character hexadecimal identifier to match, if any.
|
||||
/// - name: An amiibo name, or part of one, to match, if any.
|
||||
/// - type: An amiibo type key or name to match, if any.
|
||||
/// - series: An amiibo series key or name to match, if any.
|
||||
/// - gameCharacter: A game character key or name to match, if any.
|
||||
/// - gameSeries: A game series key or name to match, if any.
|
||||
/// - showGames: Whether to include related games in ``Amiibo/platform``. `nil` means `false`.
|
||||
/// - showUsage: Whether to include related games and their usages in ``Amiibo/platform``. `nil` means `false`.
|
||||
public init(
|
||||
head: String? = nil,
|
||||
tail: String? = nil,
|
||||
|
||||
@@ -12,36 +12,36 @@
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
/// A type that contains values to fine-tune a response when requesting amiibo series.
|
||||
/// A filter for amiibo series requests.
|
||||
public struct AmiiboSeriesFilter: KeyNameFilter, Sendable {
|
||||
|
||||
// TODO: Remove the documentation from the properties and initializers of this type as the `--enable-inherited-docs` flag when generating DocC documentation is not working as intended (?).
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// A key to return, if any.
|
||||
/// A hexadecimal key in `0x` format, such as `0x01`, to match exactly, if any.
|
||||
public let key: String?
|
||||
|
||||
/// A name to return, if any.
|
||||
/// A name, or part of one, to match, if any.
|
||||
public let name: String?
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this filter without key or name values.
|
||||
/// Initializes a filter that matches every amiibo series.
|
||||
public init() {
|
||||
self.key = nil
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a key value.
|
||||
/// - Parameter key: A key to return.
|
||||
/// Initializes a filter that matches the amiibo series with a given key.
|
||||
/// - Parameter key: A hexadecimal key in `0x` format, such as `0x01`.
|
||||
public init(key: String) {
|
||||
self.key = key
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a name value.
|
||||
/// - Parameter name: A name to return.
|
||||
/// Initializes a filter that matches amiibo series by name.
|
||||
/// - Parameter name: A name, or part of one.
|
||||
public init(name: String) {
|
||||
self.key = nil
|
||||
self.name = name
|
||||
|
||||
@@ -12,36 +12,36 @@
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
/// A type that contains values to fine-tune a response when requesting amiibo types.
|
||||
/// A filter for amiibo type requests.
|
||||
public struct AmiiboTypeFilter: KeyNameFilter, Sendable {
|
||||
|
||||
// TODO: Remove the documentation from the properties and initializers of this type as the `--enable-inherited-docs` flag when generating DocC documentation is not working as intended (?).
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// A key to return, if any.
|
||||
/// A hexadecimal key in `0x` format, such as `0x01`, to match exactly, if any.
|
||||
public let key: String?
|
||||
|
||||
/// A name to return, if any.
|
||||
/// A name, or part of one, to match, if any.
|
||||
public let name: String?
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this filter without key or name values.
|
||||
/// Initializes a filter that matches every amiibo type.
|
||||
public init() {
|
||||
self.key = nil
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a key value.
|
||||
/// - Parameter key: A key to return.
|
||||
/// Initializes a filter that matches the amiibo type with a given key.
|
||||
/// - Parameter key: A hexadecimal key in `0x` format, such as `0x01`.
|
||||
public init(key: String) {
|
||||
self.key = key
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a name value.
|
||||
/// - Parameter name: A name to return.
|
||||
/// Initializes a filter that matches amiibo types by name.
|
||||
/// - Parameter name: A name, or part of one.
|
||||
public init(name: String) {
|
||||
self.key = nil
|
||||
self.name = name
|
||||
|
||||
@@ -12,36 +12,36 @@
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
/// A type that contains values to fine-tune a response when requesting game characters.
|
||||
/// A filter for game character requests.
|
||||
public struct GameCharacterFilter: KeyNameFilter, Sendable {
|
||||
|
||||
// TODO: Remove the documentation from the properties and initializers of this type as the `--enable-inherited-docs` flag when generating DocC documentation is not working as intended (?).
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// A key to return, if any.
|
||||
/// A hexadecimal key in `0x` format, such as `0x0001`, to match exactly, if any.
|
||||
public let key: String?
|
||||
|
||||
/// A name to return, if any.
|
||||
/// A name, or part of one, to match, if any.
|
||||
public let name: String?
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this filter without key or name values.
|
||||
/// Initializes a filter that matches every game character.
|
||||
public init() {
|
||||
self.key = nil
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a key value.
|
||||
/// - Parameter key: A key to return.
|
||||
/// Initializes a filter that matches the game character with a given key.
|
||||
/// - Parameter key: A hexadecimal key in `0x` format, such as `0x0001`.
|
||||
public init(key: String) {
|
||||
self.key = key
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a name value.
|
||||
/// - Parameter name: A name to return.
|
||||
/// Initializes a filter that matches game characters by name.
|
||||
/// - Parameter name: A name, or part of one.
|
||||
public init(name: String) {
|
||||
self.key = nil
|
||||
self.name = name
|
||||
|
||||
@@ -12,36 +12,36 @@
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
/// A type that contains values to fine-tune a response when requesting game series.
|
||||
/// A filter for game series requests.
|
||||
public struct GameSeriesFilter: KeyNameFilter, Sendable {
|
||||
|
||||
// TODO: Remove the documentation from the properties and initializers of this type as the `--enable-inherited-docs` flag when generating DocC documentation is not working as intended (?).
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// A key to return, if any.
|
||||
/// A hexadecimal key in `0x` format, such as `0x001`, to match exactly, if any.
|
||||
public let key: String?
|
||||
|
||||
/// A name to return, if any.
|
||||
/// A name, or part of one, to match, if any.
|
||||
public let name: String?
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this filter without key or name values.
|
||||
/// Initializes a filter that matches every game series.
|
||||
public init() {
|
||||
self.key = nil
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a key value.
|
||||
/// - Parameter key: A key to return.
|
||||
/// Initializes a filter that matches the game series with a given key.
|
||||
/// - Parameter key: A hexadecimal key in `0x` format, such as `0x001`.
|
||||
public init(key: String) {
|
||||
self.key = key
|
||||
self.name = nil
|
||||
}
|
||||
|
||||
/// Initializes this filter with a name value.
|
||||
/// - Parameter name: A name to return.
|
||||
/// Initializes a filter that matches game series by name.
|
||||
/// - Parameter name: A name, or part of one.
|
||||
public init(name: String) {
|
||||
self.key = nil
|
||||
self.name = name
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
import Foundation
|
||||
|
||||
/// A model that represents an amiibo.
|
||||
public struct Amiibo: Sendable, Hashable {
|
||||
public struct Amiibo: Sendable, Hashable, Codable, Identifiable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
@@ -34,7 +34,9 @@ public struct Amiibo: Sendable, Hashable {
|
||||
/// The name of this amiibo.
|
||||
public let name: String
|
||||
|
||||
/// The game platform data for this amiibo, if available.
|
||||
/// The related games of this amiibo, grouped by platform.
|
||||
///
|
||||
/// `nil` unless the request sets ``AmiiboFilter/showGames`` or ``AmiiboFilter/showUsage``, or when there are no related games.
|
||||
public let platform: Platform?
|
||||
|
||||
/// The release dates of this amiibo across different regions.
|
||||
@@ -51,6 +53,31 @@ public struct Amiibo: Sendable, Hashable {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(
|
||||
head: String,
|
||||
tail: String,
|
||||
name: String,
|
||||
type: String,
|
||||
series: String,
|
||||
gameCharacter: String,
|
||||
gameSeries: String,
|
||||
image: String,
|
||||
release: Release = .init(),
|
||||
platform: Platform? = nil
|
||||
) {
|
||||
self.gameCharacter = gameCharacter
|
||||
self.gameSeries = gameSeries
|
||||
self.head = head
|
||||
self.image = image
|
||||
self.name = name
|
||||
self.platform = platform
|
||||
self.release = release
|
||||
self.series = series
|
||||
self.tail = tail
|
||||
self.type = type
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: Components.Schemas.Amiibo) {
|
||||
@@ -73,6 +100,11 @@ public struct Amiibo: Sendable, Hashable {
|
||||
|
||||
// MARK: Computed
|
||||
|
||||
/// The ``identifier`` of this amiibo.
|
||||
public var id: String {
|
||||
identifier
|
||||
}
|
||||
|
||||
/// The full 16-character hexadecimal identifier, composed of the ``head`` and ``tail``.
|
||||
public var identifier: String {
|
||||
head + tail
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
extension Amiibo {
|
||||
/// A model that represents a game related to an amiibo.
|
||||
public struct Game: Sendable, Hashable {
|
||||
public struct Game: Sendable, Hashable, Codable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
@@ -24,11 +24,22 @@ extension Amiibo {
|
||||
/// The name of this game.
|
||||
public let name: String
|
||||
|
||||
/// A list of amiibo usages within this game, if available.
|
||||
/// A list of amiibo usages within this game, or `nil` unless the request sets ``AmiiboFilter/showUsage``.
|
||||
public let usages: [Usage]?
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(
|
||||
identifiers: [String],
|
||||
name: String,
|
||||
usages: [Usage]? = nil
|
||||
) {
|
||||
self.identifiers = identifiers
|
||||
self.name = name
|
||||
self.usages = usages
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: Components.Schemas.AmiiboGame) {
|
||||
|
||||
@@ -13,8 +13,8 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
extension Amiibo {
|
||||
/// A model that represents a collection of `Switch`, `Switch 2`, `3DS`, and `Wii U` games related to an amiibo.
|
||||
public struct Platform: Sendable, Hashable {
|
||||
/// A model that groups the games related to an amiibo by platform.
|
||||
public struct Platform: Sendable, Hashable, Codable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
@@ -33,6 +33,19 @@ extension Amiibo {
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(
|
||||
`switch`: [Game] = [],
|
||||
switch2: [Game] = [],
|
||||
threeDS: [Game] = [],
|
||||
wiiU: [Game] = []
|
||||
) {
|
||||
self.switch = `switch`
|
||||
self.switch2 = switch2
|
||||
self.threeDS = threeDS
|
||||
self.wiiU = wiiU
|
||||
}
|
||||
|
||||
/// Initializes this model from the given payloads.
|
||||
///
|
||||
/// > important: In case no data is provided, then an instance of this model is not created.
|
||||
///
|
||||
|
||||
@@ -18,7 +18,7 @@ extension Amiibo {
|
||||
/// A model that represents the regional release dates of an amiibo.
|
||||
///
|
||||
/// The service provides these dates as date-only values, which are decoded as midnight UTC.
|
||||
public struct Release: Sendable, Hashable {
|
||||
public struct Release: Sendable, Hashable, Codable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
@@ -36,6 +36,19 @@ extension Amiibo {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(
|
||||
america: Date? = nil,
|
||||
australia: Date? = nil,
|
||||
europe: Date? = nil,
|
||||
japan: Date? = nil
|
||||
) {
|
||||
self.america = america
|
||||
self.australia = australia
|
||||
self.europe = europe
|
||||
self.japan = japan
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: Components.Schemas.AmiiboRelease) {
|
||||
|
||||
@@ -14,18 +14,24 @@
|
||||
|
||||
extension Amiibo {
|
||||
/// A model that represents the usage of an amiibo within a certain game.
|
||||
public struct Usage: Sendable, Hashable {
|
||||
public struct Usage: Sendable, Hashable, Codable {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// A description of how the amiibo is used within the game.
|
||||
public let explanation: String
|
||||
|
||||
/// A flag that indicates whether the amiibo can save game data.
|
||||
/// Whether the amiibo can save game data.
|
||||
public let isWriteable: Bool
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(explanation: String, isWriteable: Bool) {
|
||||
self.explanation = explanation
|
||||
self.isWriteable = isWriteable
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: Components.Schemas.AmiiboUsage) {
|
||||
|
||||
@@ -25,6 +25,12 @@ public struct AmiiboSeries: KeyNameModel {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(key: String, name: String) {
|
||||
self.key = key
|
||||
self.name = name
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: some KeyNamePayload) {
|
||||
@@ -32,4 +38,11 @@ public struct AmiiboSeries: KeyNameModel {
|
||||
self.name = payload.name
|
||||
}
|
||||
|
||||
// MARK: Computed
|
||||
|
||||
/// The ``key`` of this amiibo series.
|
||||
public var id: String {
|
||||
key
|
||||
}
|
||||
|
||||
}
|
||||
@@ -25,6 +25,12 @@ public struct AmiiboType: KeyNameModel {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(key: String, name: String) {
|
||||
self.key = key
|
||||
self.name = name
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: some KeyNamePayload) {
|
||||
@@ -32,4 +38,11 @@ public struct AmiiboType: KeyNameModel {
|
||||
self.name = payload.name
|
||||
}
|
||||
|
||||
// MARK: Computed
|
||||
|
||||
/// The ``key`` of this amiibo type.
|
||||
public var id: String {
|
||||
key
|
||||
}
|
||||
|
||||
}
|
||||
@@ -25,6 +25,12 @@ public struct GameCharacter: KeyNameModel {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(key: String, name: String) {
|
||||
self.key = key
|
||||
self.name = name
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: some KeyNamePayload) {
|
||||
@@ -32,4 +38,11 @@ public struct GameCharacter: KeyNameModel {
|
||||
self.name = payload.name
|
||||
}
|
||||
|
||||
// MARK: Computed
|
||||
|
||||
/// The ``key`` of this game character.
|
||||
public var id: String {
|
||||
key
|
||||
}
|
||||
|
||||
}
|
||||
@@ -25,6 +25,12 @@ public struct GameSeries: KeyNameModel {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this model.
|
||||
package init(key: String, name: String) {
|
||||
self.key = key
|
||||
self.name = name
|
||||
}
|
||||
|
||||
/// Initializes this model from a given payload.
|
||||
/// - Parameter payload: A payload that contains the values for the model.
|
||||
init(_ payload: some KeyNamePayload) {
|
||||
@@ -32,4 +38,11 @@ public struct GameSeries: KeyNameModel {
|
||||
self.name = payload.name
|
||||
}
|
||||
|
||||
// MARK: Computed
|
||||
|
||||
/// The ``key`` of this game series.
|
||||
public var id: String {
|
||||
key
|
||||
}
|
||||
|
||||
}
|
||||
@@ -14,46 +14,46 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
/// A protocol that defines API clients containing all available endpoints to interact with.
|
||||
/// A protocol that defines a client that fetches data from the Amiibo API.
|
||||
///
|
||||
/// Conforming types must be `Sendable`, as clients are expected to be used safely across concurrency domains.
|
||||
/// ``AmiiboLiveClient`` is the default implementation; conform to provide another, such as a mock. Conforming types must be `Sendable`.
|
||||
public protocol AmiiboClient: Sendable {
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
/// Gets a list of amiibo items based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo items.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
func getAmiibos(by filter: AmiiboFilter) async throws(AmiiboServiceError) -> [Amiibo]
|
||||
|
||||
/// Gets a list of amiibo series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo series.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
func getAmiiboSeries(by filter: AmiiboSeriesFilter) async throws(AmiiboServiceError) -> [AmiiboSeries]
|
||||
|
||||
/// Gets a list of amiibo types based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo types.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
func getAmiiboTypes(by filter: AmiiboTypeFilter) async throws(AmiiboServiceError) -> [AmiiboType]
|
||||
|
||||
/// Gets a list of game characters based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered game characters.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
func getGameCharacters(by filter: GameCharacterFilter) async throws(AmiiboServiceError) -> [GameCharacter]
|
||||
|
||||
/// Gets a list of game series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered game series.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
func getGameSeries(by filter: GameSeriesFilter) async throws(AmiiboServiceError) -> [GameSeries]
|
||||
|
||||
/// Gets the date when the data was last updated.
|
||||
/// - Returns: A last updated date, decoded as UTC.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
func getLastUpdated() async throws(AmiiboServiceError) -> Date
|
||||
|
||||
}
|
||||
@@ -14,9 +14,9 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
/// A type that implements the service that uses a client to make calls.
|
||||
/// The entry point for fetching data from the Amiibo API.
|
||||
///
|
||||
/// This service forwards every call to the ``AmiiboClient`` client injected during initialization, which defaults to an ``AmiiboLiveClient`` instance. This type is `Sendable`, so an instance can be safely shared across concurrency domains.
|
||||
/// It forwards every call to the ``AmiiboClient`` given at initialization, which defaults to ``AmiiboLiveClient``. Instances are `Sendable`.
|
||||
public struct AmiiboService: Sendable {
|
||||
|
||||
// MARK: Properties
|
||||
@@ -26,8 +26,8 @@ public struct AmiiboService: Sendable {
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this service with a specific client type.
|
||||
/// - Parameter client: A client to use to interact with the endpoints.
|
||||
/// Initializes this service with a client.
|
||||
/// - Parameter client: The client that performs the calls. Defaults to ``AmiiboLiveClient``.
|
||||
public init(client: some AmiiboClient = AmiiboLiveClient()) {
|
||||
self.client = client
|
||||
}
|
||||
@@ -35,9 +35,9 @@ public struct AmiiboService: Sendable {
|
||||
// MARK: Functions
|
||||
|
||||
/// Gets a list of amiibo items based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo items.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getAmiibos(
|
||||
_ filter: AmiiboFilter = .init()
|
||||
) async throws(AmiiboServiceError) -> [Amiibo] {
|
||||
@@ -45,9 +45,9 @@ public struct AmiiboService: Sendable {
|
||||
}
|
||||
|
||||
/// Gets a list of amiibo series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo series.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getAmiiboSeries(
|
||||
_ filter: AmiiboSeriesFilter = .init()
|
||||
) async throws(AmiiboServiceError) -> [AmiiboSeries] {
|
||||
@@ -55,9 +55,9 @@ public struct AmiiboService: Sendable {
|
||||
}
|
||||
|
||||
/// Gets a list of amiibo types based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered amiibo types.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getAmiiboTypes(
|
||||
_ filter: AmiiboTypeFilter = .init()
|
||||
) async throws(AmiiboServiceError) -> [AmiiboType] {
|
||||
@@ -65,9 +65,9 @@ public struct AmiiboService: Sendable {
|
||||
}
|
||||
|
||||
/// Gets a list of game characters based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered game characters.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getGameCharacters(
|
||||
_ filter: GameCharacterFilter = .init()
|
||||
) async throws(AmiiboServiceError) -> [GameCharacter] {
|
||||
@@ -75,9 +75,9 @@ public struct AmiiboService: Sendable {
|
||||
}
|
||||
|
||||
/// Gets a list of game series based on a given filter.
|
||||
/// - Parameter filter: A filter to remove unwanted items from the result.
|
||||
/// - Parameter filter: A filter for the result.
|
||||
/// - Returns: A list of filtered game series.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getGameSeries(
|
||||
_ filter: GameSeriesFilter = .init()
|
||||
) async throws(AmiiboServiceError) -> [GameSeries] {
|
||||
@@ -86,7 +86,7 @@ public struct AmiiboService: Sendable {
|
||||
|
||||
/// Gets the date when the data was last updated.
|
||||
/// - Returns: A last updated date, decoded as UTC.
|
||||
/// - Throws: An ``AmiiboServiceError`` error in case some issue is encountered while generating the result.
|
||||
/// - Throws: An ``AmiiboServiceError`` if the call fails.
|
||||
public func getLastUpdated() async throws(AmiiboServiceError) -> Date {
|
||||
try await client.getLastUpdated()
|
||||
}
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
//
|
||||
// This source file is part of the Amiibo Service open source project
|
||||
//
|
||||
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
// Licensed under Apache license v2.0
|
||||
//
|
||||
// See LICENSE for license information
|
||||
// See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
@testable import AmiiboService
|
||||
import Foundation
|
||||
import Testing
|
||||
|
||||
@Suite("ISO Date Time Transcoder")
|
||||
struct ISODateTimeTranscoderTests {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
private let transcoder = ISODateTimeTranscoder()
|
||||
|
||||
// MARK: Decode tests
|
||||
|
||||
@Test
|
||||
func `decodes a timestamp as UTC`() throws {
|
||||
// GIVEN
|
||||
let string = "2026-07-24T12:34:56.123000"
|
||||
|
||||
// WHEN
|
||||
let date = try transcoder.decode(string)
|
||||
|
||||
// THEN
|
||||
#expect(abs(date.timeIntervalSince(.utc(2026, 7, 24, 12, 34, 56)) - 0.123) < 0.001)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `decodes a date-only string as midnight UTC`() throws {
|
||||
// GIVEN
|
||||
let string = "2014-11-21"
|
||||
|
||||
// WHEN
|
||||
let date = try transcoder.decode(string)
|
||||
|
||||
// THEN
|
||||
#expect(date == .utc(2014, 11, 21))
|
||||
}
|
||||
|
||||
@Test(arguments: [
|
||||
"", "2014-11", "2014-11-21T12:34:56", "2014-11-21T12:34:56Z", "21/11/2014", "yesterday"
|
||||
])
|
||||
func `throws a decoding error for an unsupported string`(string: String) {
|
||||
// GIVEN
|
||||
// WHEN
|
||||
// THEN
|
||||
#expect(throws: DecodingError.self) {
|
||||
try transcoder.decode(string)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: Encode tests
|
||||
|
||||
@Test
|
||||
func `encodes a date as a timestamp`() throws {
|
||||
// GIVEN
|
||||
let date: Date = .utc(2026, 7, 24, 12, 34, 56)
|
||||
|
||||
// WHEN
|
||||
let string = try transcoder.encode(date)
|
||||
|
||||
// THEN
|
||||
#expect(string == "2026-07-24T12:34:56.000000")
|
||||
}
|
||||
|
||||
}
|
||||
@@ -14,6 +14,7 @@
|
||||
|
||||
@testable import AmiiboService
|
||||
import Foundation
|
||||
import HTTPTypes
|
||||
import Testing
|
||||
|
||||
@Suite("Amiibo Live Client")
|
||||
@@ -21,8 +22,8 @@ struct AmiiboLiveClientTests {
|
||||
|
||||
// MARK: Server URL tests
|
||||
|
||||
@Test("resolves the server URL defined in the OpenAPI specification")
|
||||
func serverURLResolves() throws {
|
||||
@Test
|
||||
func `resolves the server URL defined in the OpenAPI specification`() throws {
|
||||
// GIVEN
|
||||
// WHEN
|
||||
let url = try Servers.Server1.url()
|
||||
@@ -31,8 +32,8 @@ struct AmiiboLiveClientTests {
|
||||
#expect(url.absoluteString == "https://www.amiiboapi.org/api")
|
||||
}
|
||||
|
||||
@Test("uses the server URL from the OpenAPI specification")
|
||||
func serverURLMatchesSpecification() throws {
|
||||
@Test
|
||||
func `uses the server URL from the OpenAPI specification`() throws {
|
||||
// GIVEN
|
||||
let expected = try Servers.Server1.url()
|
||||
|
||||
@@ -43,4 +44,437 @@ struct AmiiboLiveClientTests {
|
||||
#expect(url == expected)
|
||||
}
|
||||
|
||||
// MARK: Error mapping tests
|
||||
|
||||
@Test(arguments: zip(
|
||||
TransportErrors.thrown,
|
||||
TransportErrors.expected
|
||||
))
|
||||
func `maps an error thrown by the transport to the matching service error`(
|
||||
thrown: any Error,
|
||||
expected: AmiiboServiceError
|
||||
) async {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: ThrowingTransport(error: thrown))
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
await #expect(throws: expected) {
|
||||
try await client.getAmiibos(by: .init())
|
||||
}
|
||||
}
|
||||
|
||||
@Test(arguments: zip(
|
||||
Responses.failing,
|
||||
Responses.expected
|
||||
))
|
||||
func `maps a response status to the matching service error`(
|
||||
response: (status: Int, json: String?),
|
||||
expected: AmiiboServiceError
|
||||
) async {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(
|
||||
status: .init(code: response.status),
|
||||
json: response.json
|
||||
))
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
await #expect(throws: expected) {
|
||||
try await client.getAmiibos(by: .init())
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: Get Amiibos tests
|
||||
|
||||
@Test
|
||||
func `returns amiibos sorted by identifier`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibos))
|
||||
|
||||
// WHEN
|
||||
let amiibos = try await client.getAmiibos(by: .init())
|
||||
|
||||
// THEN
|
||||
#expect(amiibos.map(\.identifier) == ["0000000000000002", "0100000000040002"])
|
||||
#expect(amiibos.map(\.name) == ["Mario", "Zelda"])
|
||||
}
|
||||
|
||||
@Test
|
||||
func `returns a single amiibo when the response holds an object`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibo))
|
||||
|
||||
// WHEN
|
||||
let amiibos = try await client.getAmiibos(by: .init(identifier: "0100000000040002"))
|
||||
let amiibo = try #require(amiibos.first)
|
||||
|
||||
// THEN
|
||||
#expect(amiibos.count == 1)
|
||||
#expect(amiibo.head == "01000000")
|
||||
#expect(amiibo.tail == "00040002")
|
||||
#expect(amiibo.name == "Zelda")
|
||||
#expect(amiibo.type == "Figure")
|
||||
#expect(amiibo.series == "Super Smash Bros.")
|
||||
#expect(amiibo.gameCharacter == "Zelda")
|
||||
#expect(amiibo.gameSeries == "The Legend of Zelda")
|
||||
#expect(amiibo.imageURL?.host() == "example.com")
|
||||
#expect(amiibo.platform == nil)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `returns no amiibos when the response holds null`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibosNull))
|
||||
|
||||
// WHEN
|
||||
let amiibos = try await client.getAmiibos(by: .init(identifier: "0000000000000000"))
|
||||
|
||||
// THEN
|
||||
#expect(amiibos.isEmpty)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `returns no amiibos when the response holds an empty list`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibosEmpty))
|
||||
|
||||
// WHEN
|
||||
let amiibos = try await client.getAmiibos(by: .init(name: "Something"))
|
||||
|
||||
// THEN
|
||||
#expect(amiibos.isEmpty)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `decodes release dates as midnight UTC, and missing or null ones as nil`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiibos))
|
||||
|
||||
// WHEN
|
||||
let amiibos = try await client.getAmiibos(by: .init())
|
||||
let mario = try #require(amiibos.first)
|
||||
let zelda = try #require(amiibos.last)
|
||||
|
||||
// THEN
|
||||
#expect(mario.release.america == .utc(2014, 11, 21))
|
||||
#expect(mario.release.australia == .utc(2014, 11, 29))
|
||||
#expect(mario.release.europe == .utc(2014, 11, 28))
|
||||
#expect(mario.release.japan == .utc(2014, 12, 6))
|
||||
#expect(zelda.release.australia == nil)
|
||||
#expect(zelda.release.japan == nil)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `maps related games and usages into the platform`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.amiiboWithGames))
|
||||
|
||||
// WHEN
|
||||
let amiibos = try await client.getAmiibos(by: .init(showUsage: true))
|
||||
let platform = try #require(amiibos.first?.platform)
|
||||
let game = try #require(platform.switch.first)
|
||||
|
||||
// THEN
|
||||
#expect(platform.switch.count == 1)
|
||||
#expect(platform.switch2.isEmpty)
|
||||
#expect(platform.threeDS.isEmpty)
|
||||
#expect(platform.wiiU.count == 1)
|
||||
#expect(game.identifiers == ["01007EF00011E000"])
|
||||
#expect(game.name == "The Legend of Zelda: Breath of the Wild")
|
||||
#expect(game.usages == [.init(explanation: "Spawns a random selection of items.", isWriteable: false)])
|
||||
#expect(platform.wiiU.first?.usages == nil)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `encodes the amiibo filter as query parameters`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport { request in
|
||||
let path = request.path ?? ""
|
||||
|
||||
#expect(path.hasPrefix("/amiibo?"))
|
||||
#expect(path.contains("id=0100000000040002"))
|
||||
#expect(path.contains("head=01000000"))
|
||||
#expect(path.contains("tail=00040002"))
|
||||
#expect(path.contains("name=zelda"))
|
||||
#expect(path.contains("type=0x00"))
|
||||
#expect(path.contains("amiiboSeries=0x00"))
|
||||
#expect(path.contains("character=0x0100"))
|
||||
#expect(path.contains("gameseries=0x010"))
|
||||
#expect(path.contains("showgames=true"))
|
||||
#expect(path.contains("showusage=false"))
|
||||
|
||||
return StubTransport.response(status: .ok, json: JSON.amiibosEmpty)
|
||||
})
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
_ = try await client.getAmiibos(by: .init(
|
||||
head: "01000000",
|
||||
tail: "00040002",
|
||||
identifier: "0100000000040002",
|
||||
name: "zelda",
|
||||
type: "0x00",
|
||||
series: "0x00",
|
||||
gameCharacter: "0x0100",
|
||||
gameSeries: "0x010",
|
||||
showGames: true,
|
||||
showUsage: false
|
||||
))
|
||||
}
|
||||
|
||||
@Test
|
||||
func `omits nil filter values from the query`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport { request in
|
||||
#expect(request.path == "/amiibo")
|
||||
|
||||
return StubTransport.response(status: .ok, json: JSON.amiibosEmpty)
|
||||
})
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
_ = try await client.getAmiibos(by: .init())
|
||||
}
|
||||
|
||||
// MARK: Key-name endpoints tests
|
||||
|
||||
@Test
|
||||
func `returns amiibo series sorted by key`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .ok, json: JSON.keyNameList))
|
||||
|
||||
// WHEN
|
||||
let series = try await client.getAmiiboSeries(by: .init())
|
||||
|
||||
// THEN
|
||||
#expect(series == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
|
||||
}
|
||||
|
||||
@Test
|
||||
func `returns a single amiibo series when the response holds an object`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport { request in
|
||||
#expect(request.path == "/amiiboseries?key=0x01")
|
||||
|
||||
return StubTransport.response(status: .ok, json: JSON.keyName)
|
||||
})
|
||||
|
||||
// WHEN
|
||||
let series = try await client.getAmiiboSeries(by: .init(key: "0x01"))
|
||||
|
||||
// THEN
|
||||
#expect(series == [.init(key: "0x01", name: "First")])
|
||||
}
|
||||
|
||||
@Test
|
||||
func `returns amiibo types sorted by key`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport { request in
|
||||
#expect(request.path == "/type")
|
||||
|
||||
return StubTransport.response(status: .ok, json: JSON.keyNameList)
|
||||
})
|
||||
|
||||
// WHEN
|
||||
let types = try await client.getAmiiboTypes(by: .init())
|
||||
|
||||
// THEN
|
||||
#expect(types == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
|
||||
}
|
||||
|
||||
@Test
|
||||
func `returns game characters sorted by key`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport { request in
|
||||
#expect(request.path == "/character?name=First")
|
||||
|
||||
return StubTransport.response(status: .ok, json: JSON.keyNameList)
|
||||
})
|
||||
|
||||
// WHEN
|
||||
let characters = try await client.getGameCharacters(by: .init(name: "First"))
|
||||
|
||||
// THEN
|
||||
#expect(characters == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
|
||||
}
|
||||
|
||||
@Test
|
||||
func `returns game series sorted by key`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport { request in
|
||||
#expect(request.path == "/gameseries")
|
||||
|
||||
return StubTransport.response(status: .ok, json: JSON.keyNameList)
|
||||
})
|
||||
|
||||
// WHEN
|
||||
let series = try await client.getGameSeries(by: .init())
|
||||
|
||||
// THEN
|
||||
#expect(series == [.init(key: "0x00", name: "Second"), .init(key: "0x01", name: "First")])
|
||||
}
|
||||
|
||||
@Test
|
||||
func `throws notFound when a key-name endpoint matches nothing`() async {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .notFound, json: JSON.notFound))
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
await #expect(throws: AmiiboServiceError.notFound) {
|
||||
try await client.getGameSeries(by: .init(key: "0xffff"))
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: Get Last Updated tests
|
||||
|
||||
@Test
|
||||
func `returns the last updated timestamp as UTC`() async throws {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport { request in
|
||||
#expect(request.path == "/lastupdated")
|
||||
|
||||
return StubTransport.response(status: .ok, json: JSON.lastUpdated)
|
||||
})
|
||||
|
||||
// WHEN
|
||||
let lastUpdated = try await client.getLastUpdated()
|
||||
|
||||
// THEN
|
||||
#expect(lastUpdated == .utc(2026, 7, 24, 12, 34, 56))
|
||||
}
|
||||
|
||||
@Test
|
||||
func `throws notAvailable when the last updated endpoint fails`() async {
|
||||
// GIVEN
|
||||
let client = AmiiboLiveClient(transport: StubTransport(status: .internalServerError))
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
await #expect(throws: AmiiboServiceError.notAvailable) {
|
||||
try await client.getLastUpdated()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// MARK: - Arguments
|
||||
|
||||
private enum TransportErrors {
|
||||
/// Errors thrown by the transport.
|
||||
static let thrown: [any Error] = [
|
||||
CancellationError(),
|
||||
URLError(.cancelled),
|
||||
URLError(.cannotParseResponse),
|
||||
URLError(.notConnectedToInternet),
|
||||
URLError(.timedOut),
|
||||
URLError(.badURL)
|
||||
]
|
||||
/// The service error expected for each thrown error.
|
||||
static let expected: [AmiiboServiceError] = [
|
||||
.cancelled,
|
||||
.cancelled,
|
||||
.decoding,
|
||||
.notAvailable,
|
||||
.notAvailable,
|
||||
.unknown(String(describing: URLError(.badURL)))
|
||||
]
|
||||
}
|
||||
|
||||
private enum Responses {
|
||||
/// Failing responses, with a body where the specification documents one.
|
||||
static let failing: [(status: Int, json: String?)] = [
|
||||
(400, JSON.badRequest),
|
||||
(404, JSON.notFound),
|
||||
(500, nil),
|
||||
(418, nil),
|
||||
(200, "not json")
|
||||
]
|
||||
/// The service error expected for each failing response.
|
||||
static let expected: [AmiiboServiceError] = [
|
||||
.badRequest,
|
||||
.notFound,
|
||||
.notAvailable,
|
||||
.undocumented(418),
|
||||
.decoding
|
||||
]
|
||||
}
|
||||
|
||||
// MARK: - Payloads
|
||||
|
||||
private enum JSON {
|
||||
/// Two amiibos in reverse identifier order; the first lacks `au` and has a null `jp`.
|
||||
static let amiibos = """
|
||||
{"amiibo": [
|
||||
{
|
||||
"amiiboSeries": "Super Smash Bros.", "character": "Zelda", "gameSeries": "The Legend of Zelda",
|
||||
"head": "01000000", "tail": "00040002", "name": "Zelda", "type": "Figure",
|
||||
"image": "https://example.com/zelda.png",
|
||||
"release": {"eu": "2014-11-28", "jp": null, "na": "2014-11-21"}
|
||||
},
|
||||
{
|
||||
"amiiboSeries": "Super Smash Bros.", "character": "Mario", "gameSeries": "Super Mario",
|
||||
"head": "00000000", "tail": "00000002", "name": "Mario", "type": "Figure",
|
||||
"image": "https://example.com/mario.png",
|
||||
"release": {"au": "2014-11-29", "eu": "2014-11-28", "jp": "2014-12-06", "na": "2014-11-21"}
|
||||
}
|
||||
]}
|
||||
"""
|
||||
/// A single amiibo, as returned for an `id` filter.
|
||||
static let amiibo = """
|
||||
{"amiibo": {
|
||||
"amiiboSeries": "Super Smash Bros.", "character": "Zelda", "gameSeries": "The Legend of Zelda",
|
||||
"head": "01000000", "tail": "00040002", "name": "Zelda", "type": "Figure",
|
||||
"image": "https://example.com/zelda.png",
|
||||
"release": {"au": "2014-12-04", "eu": "2014-11-28", "jp": "2014-12-06", "na": "2014-11-21"}
|
||||
}}
|
||||
"""
|
||||
/// An amiibo with Switch and Wii U games, an empty 3DS list, and no Switch 2 key.
|
||||
static let amiiboWithGames = """
|
||||
{"amiibo": [{
|
||||
"amiiboSeries": "Super Smash Bros.", "character": "Zelda", "gameSeries": "The Legend of Zelda",
|
||||
"head": "01000000", "tail": "00040002", "name": "Zelda", "type": "Figure",
|
||||
"image": "https://example.com/zelda.png",
|
||||
"release": {"na": "2014-11-21"},
|
||||
"games3DS": [],
|
||||
"gamesSwitch": [{
|
||||
"gameID": ["01007EF00011E000"],
|
||||
"gameName": "The Legend of Zelda: Breath of the Wild",
|
||||
"amiiboUsage": [{"Usage": "Spawns a random selection of items.", "write": false}]
|
||||
}],
|
||||
"gamesWiiU": [{
|
||||
"gameID": ["0005000010145000"],
|
||||
"gameName": "Super Smash Bros. for Wii U"
|
||||
}]
|
||||
}]}
|
||||
"""
|
||||
/// The response for an `id` filter that matches nothing.
|
||||
static let amiibosNull = """
|
||||
{"amiibo": null}
|
||||
"""
|
||||
/// The response for any other filter that matches nothing.
|
||||
static let amiibosEmpty = """
|
||||
{"amiibo": []}
|
||||
"""
|
||||
/// Two key-name items in reverse key order.
|
||||
static let keyNameList = """
|
||||
{"amiibo": [{"key": "0x01", "name": "First"}, {"key": "0x00", "name": "Second"}]}
|
||||
"""
|
||||
/// A single key-name item, as returned for a `key` filter.
|
||||
static let keyName = """
|
||||
{"amiibo": {"key": "0x01", "name": "First"}}
|
||||
"""
|
||||
/// The last updated timestamp.
|
||||
static let lastUpdated = """
|
||||
{"lastUpdated": "2026-07-24T12:34:56.000000"}
|
||||
"""
|
||||
/// The body of a 400 response.
|
||||
static let badRequest = """
|
||||
{"code": 400, "error": "Bad request."}
|
||||
"""
|
||||
/// The body of a 404 response.
|
||||
static let notFound = """
|
||||
{"code": 404, "error": "Not found."}
|
||||
"""
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
//
|
||||
// This source file is part of the Amiibo Service open source project
|
||||
//
|
||||
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
// Licensed under Apache license v2.0
|
||||
//
|
||||
// See LICENSE for license information
|
||||
// See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
import AmiiboService
|
||||
import Testing
|
||||
|
||||
@Suite("Filter conformances")
|
||||
struct FilterConformanceTests {
|
||||
|
||||
// MARK: Equatable tests
|
||||
|
||||
@Test
|
||||
func `compares amiibo filters by value`() {
|
||||
// GIVEN
|
||||
// WHEN
|
||||
// THEN
|
||||
#expect(AmiiboFilter() == AmiiboFilter())
|
||||
#expect(AmiiboFilter(name: "zelda") == AmiiboFilter(name: "zelda"))
|
||||
#expect(AmiiboFilter(name: "zelda") != AmiiboFilter(name: "mario"))
|
||||
#expect(AmiiboFilter() != AmiiboFilter(showGames: true))
|
||||
}
|
||||
|
||||
@Test
|
||||
func `compares key-name filters by value`() {
|
||||
// GIVEN
|
||||
// WHEN
|
||||
// THEN
|
||||
#expect(AmiiboSeriesFilter() == AmiiboSeriesFilter())
|
||||
#expect(AmiiboSeriesFilter(key: "0x01") == AmiiboSeriesFilter(key: "0x01"))
|
||||
#expect(AmiiboSeriesFilter(key: "0x01") != AmiiboSeriesFilter(name: "0x01"))
|
||||
#expect(AmiiboTypeFilter(name: "Card") != AmiiboTypeFilter(name: "Figure"))
|
||||
#expect(GameCharacterFilter(key: "0x0100") != GameCharacterFilter())
|
||||
#expect(GameSeriesFilter(name: "Pikmin") == GameSeriesFilter(name: "Pikmin"))
|
||||
}
|
||||
|
||||
// MARK: Hashable tests
|
||||
|
||||
@Test
|
||||
func `hashes equal filters alike`() {
|
||||
// GIVEN
|
||||
let amiiboFilters: Set = [AmiiboFilter(name: "zelda"), AmiiboFilter(name: "zelda"), AmiiboFilter(name: "mario")]
|
||||
let seriesFilters: Set = [AmiiboSeriesFilter(key: "0x01"), AmiiboSeriesFilter(key: "0x01"), AmiiboSeriesFilter()]
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
#expect(amiiboFilters.count == 2)
|
||||
#expect(seriesFilters.count == 2)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
//
|
||||
// This source file is part of the Amiibo Service open source project
|
||||
//
|
||||
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
// Licensed under Apache license v2.0
|
||||
//
|
||||
// See LICENSE for license information
|
||||
// See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
import AmiiboService
|
||||
import Foundation
|
||||
import Testing
|
||||
|
||||
@Suite("Model conformances")
|
||||
struct ModelConformanceTests {
|
||||
|
||||
// MARK: Identifiable tests
|
||||
|
||||
@Test
|
||||
func `identifies an amiibo by its identifier`() {
|
||||
// GIVEN
|
||||
let amiibos = Fixtures.amiibos
|
||||
|
||||
// WHEN
|
||||
// THEN
|
||||
#expect(amiibos.map(\.id) == amiibos.map(\.identifier))
|
||||
}
|
||||
|
||||
@Test
|
||||
func `identifies key-name models by their keys`() {
|
||||
// GIVEN
|
||||
// WHEN
|
||||
// THEN
|
||||
#expect(Fixtures.amiiboSeries.map(\.id) == Fixtures.amiiboSeries.map(\.key))
|
||||
#expect(Fixtures.amiiboTypes.map(\.id) == Fixtures.amiiboTypes.map(\.key))
|
||||
#expect(Fixtures.gameCharacters.map(\.id) == Fixtures.gameCharacters.map(\.key))
|
||||
#expect(Fixtures.gameSeries.map(\.id) == Fixtures.gameSeries.map(\.key))
|
||||
}
|
||||
|
||||
// MARK: Codable tests
|
||||
|
||||
@Test
|
||||
func `round-trips amiibos through JSON`() throws {
|
||||
// GIVEN
|
||||
let amiibos = Fixtures.amiibos
|
||||
|
||||
// WHEN
|
||||
let decoded = try roundTrip(amiibos)
|
||||
|
||||
// THEN
|
||||
#expect(decoded == amiibos)
|
||||
#expect(decoded.first?.platform?.switch.first?.usages?.isEmpty == false)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `round-trips key-name models through JSON`() throws {
|
||||
// GIVEN
|
||||
// WHEN
|
||||
// THEN
|
||||
#expect(try roundTrip(Fixtures.amiiboSeries) == Fixtures.amiiboSeries)
|
||||
#expect(try roundTrip(Fixtures.amiiboTypes) == Fixtures.amiiboTypes)
|
||||
#expect(try roundTrip(Fixtures.gameCharacters) == Fixtures.gameCharacters)
|
||||
#expect(try roundTrip(Fixtures.gameSeries) == Fixtures.gameSeries)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// MARK: - Helpers
|
||||
|
||||
private extension ModelConformanceTests {
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
/// Encodes a value to JSON and decodes it back.
|
||||
func roundTrip<Value: Codable>(_ value: Value) throws -> Value {
|
||||
try JSONDecoder().decode(Value.self, from: JSONEncoder().encode(value))
|
||||
}
|
||||
|
||||
}
|
||||
@@ -181,8 +181,8 @@ struct AmiiboServiceLiveTests {
|
||||
@Test
|
||||
func `get the last updated timestamp`() async throws {
|
||||
try await assertLastUpdated(
|
||||
onOrAfterDay: 24,
|
||||
month: 7,
|
||||
onOrAfterDay: 22,
|
||||
month: 10,
|
||||
year: 2026
|
||||
)
|
||||
}
|
||||
@@ -221,8 +221,7 @@ private extension AmiiboServiceLiveTests {
|
||||
|
||||
if filter.showUsage == true {
|
||||
#expect(firstAmiiboPlatform.switch.first?.usages?.isEmpty == false)
|
||||
// Given the live data is still not returning any Switch 2 games.
|
||||
#expect(firstAmiiboPlatform.switch2.isEmpty == true)
|
||||
#expect(firstAmiiboPlatform.switch2.first?.usages?.isEmpty == false)
|
||||
#expect(firstAmiiboPlatform.threeDS.first?.usages?.isEmpty == false)
|
||||
#expect(firstAmiiboPlatform.wiiU.first?.usages?.isEmpty == false)
|
||||
}
|
||||
@@ -584,16 +583,16 @@ enum Output {
|
||||
// MARK: - Constants
|
||||
|
||||
private extension Int {
|
||||
/// A number that represents the minimum number of amiibo items expected from the live service, as of July 2026.
|
||||
static let minimumAmiibos = 946
|
||||
/// A number that represents the minimum number of amiibo series expected from the live service, as of July 2026.
|
||||
static let minimumAmiiboSeries = 31
|
||||
/// A number that represents the minimum number of amiibo types expected from the live service, as of July 2026.
|
||||
/// A number that represents the minimum number of amiibo items expected from the live service, as of October 2026.
|
||||
static let minimumAmiibos = 952
|
||||
/// A number that represents the minimum number of amiibo series expected from the live service, as of October 2026.
|
||||
static let minimumAmiiboSeries = 32
|
||||
/// A number that represents the minimum number of amiibo types expected from the live service, as of October 2026.
|
||||
static let minimumAmiiboTypes = 5
|
||||
/// A number that represents the minimum number of game characters expected from the live service, as of July 2026.
|
||||
static let minimumGameCharacters = 681
|
||||
/// A number that represents the minimum number of game series expected from the live service, as of July 2026.
|
||||
static let minimumGameSeries = 118
|
||||
/// A number that represents the minimum number of game characters expected from the live service, as of October 2026.
|
||||
static let minimumGameCharacters = 685
|
||||
/// A number that represents the minimum number of game series expected from the live service, as of October 2026.
|
||||
static let minimumGameSeries = 119
|
||||
}
|
||||
|
||||
private extension String {
|
||||
|
||||
@@ -21,8 +21,8 @@ struct AmiiboServiceMockTests {
|
||||
|
||||
// MARK: Get Amiibos tests
|
||||
|
||||
@Test("returns empty amiibos when mock provides an empty list")
|
||||
func getAmiibosEmpty() async throws {
|
||||
@Test
|
||||
func `returns empty amiibos when mock provides an empty list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(amiibos: []))
|
||||
|
||||
@@ -33,8 +33,22 @@ struct AmiiboServiceMockTests {
|
||||
#expect(amiibos.isEmpty)
|
||||
}
|
||||
|
||||
@Test("throws notFound when mock provides no amiibos")
|
||||
func getAmiibosNotFound() async {
|
||||
@Test
|
||||
func `returns amiibos when mock provides a list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(amiibos: Fixtures.amiibos))
|
||||
|
||||
// WHEN
|
||||
let amiibos = try await service.getAmiibos()
|
||||
|
||||
// THEN
|
||||
#expect(amiibos == Fixtures.amiibos)
|
||||
#expect(amiibos.first?.identifier == "0100000000040002")
|
||||
#expect(amiibos.first?.imageURL != nil)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `throws notFound when mock provides no amiibos`() async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient())
|
||||
|
||||
@@ -45,8 +59,8 @@ struct AmiiboServiceMockTests {
|
||||
}
|
||||
}
|
||||
|
||||
@Test("throws error for amiibos when mock is configured with error", arguments: Errors.all)
|
||||
func getAmiibosThrows(error: AmiiboServiceError) async {
|
||||
@Test(arguments: Errors.all)
|
||||
func `throws error for amiibos when mock is configured with error`(error: AmiiboServiceError) async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(error: error))
|
||||
|
||||
@@ -59,8 +73,8 @@ struct AmiiboServiceMockTests {
|
||||
|
||||
// MARK: Get Amiibo Series tests
|
||||
|
||||
@Test("returns empty amiibo series when mock provides an empty list")
|
||||
func getAmiiboSeriesEmpty() async throws {
|
||||
@Test
|
||||
func `returns empty amiibo series when mock provides an empty list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(amiiboSeries: []))
|
||||
|
||||
@@ -71,8 +85,20 @@ struct AmiiboServiceMockTests {
|
||||
#expect(amiiboSeries.isEmpty)
|
||||
}
|
||||
|
||||
@Test("throws notFound when mock provides no amiibo series")
|
||||
func getAmiiboSeriesNotFound() async {
|
||||
@Test
|
||||
func `returns amiibo series when mock provides a list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(amiiboSeries: Fixtures.amiiboSeries))
|
||||
|
||||
// WHEN
|
||||
let amiiboSeries = try await service.getAmiiboSeries()
|
||||
|
||||
// THEN
|
||||
#expect(amiiboSeries == Fixtures.amiiboSeries)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `throws notFound when mock provides no amiibo series`() async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient())
|
||||
|
||||
@@ -83,8 +109,8 @@ struct AmiiboServiceMockTests {
|
||||
}
|
||||
}
|
||||
|
||||
@Test("throws error for amiibo series when mock is configured with error", arguments: Errors.all)
|
||||
func getAmiiboSeriesThrows(error: AmiiboServiceError) async {
|
||||
@Test(arguments: Errors.all)
|
||||
func `throws error for amiibo series when mock is configured with error`(error: AmiiboServiceError) async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(error: error))
|
||||
|
||||
@@ -97,8 +123,8 @@ struct AmiiboServiceMockTests {
|
||||
|
||||
// MARK: Get Amiibo Types tests
|
||||
|
||||
@Test("returns empty amiibo types when mock provides an empty list")
|
||||
func getAmiiboTypesEmpty() async throws {
|
||||
@Test
|
||||
func `returns empty amiibo types when mock provides an empty list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(amiiboTypes: []))
|
||||
|
||||
@@ -109,8 +135,20 @@ struct AmiiboServiceMockTests {
|
||||
#expect(amiiboTypes.isEmpty)
|
||||
}
|
||||
|
||||
@Test("throws notFound when mock provides no amiibo types")
|
||||
func getAmiiboTypesNotFound() async {
|
||||
@Test
|
||||
func `returns amiibo types when mock provides a list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(amiiboTypes: Fixtures.amiiboTypes))
|
||||
|
||||
// WHEN
|
||||
let amiiboTypes = try await service.getAmiiboTypes()
|
||||
|
||||
// THEN
|
||||
#expect(amiiboTypes == Fixtures.amiiboTypes)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `throws notFound when mock provides no amiibo types`() async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient())
|
||||
|
||||
@@ -121,8 +159,8 @@ struct AmiiboServiceMockTests {
|
||||
}
|
||||
}
|
||||
|
||||
@Test("throws error for amiibo types when mock is configured with error", arguments: Errors.all)
|
||||
func getAmiiboTypesThrows(error: AmiiboServiceError) async {
|
||||
@Test(arguments: Errors.all)
|
||||
func `throws error for amiibo types when mock is configured with error`(error: AmiiboServiceError) async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(error: error))
|
||||
|
||||
@@ -135,8 +173,8 @@ struct AmiiboServiceMockTests {
|
||||
|
||||
// MARK: Get Game Characters tests
|
||||
|
||||
@Test("returns empty game characters when mock provides an empty list")
|
||||
func getGameCharactersEmpty() async throws {
|
||||
@Test
|
||||
func `returns empty game characters when mock provides an empty list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(gameCharacters: []))
|
||||
|
||||
@@ -147,8 +185,20 @@ struct AmiiboServiceMockTests {
|
||||
#expect(gameCharacters.isEmpty)
|
||||
}
|
||||
|
||||
@Test("throws notFound when mock provides no game characters")
|
||||
func getGameCharactersNotFound() async {
|
||||
@Test
|
||||
func `returns game characters when mock provides a list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(gameCharacters: Fixtures.gameCharacters))
|
||||
|
||||
// WHEN
|
||||
let gameCharacters = try await service.getGameCharacters()
|
||||
|
||||
// THEN
|
||||
#expect(gameCharacters == Fixtures.gameCharacters)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `throws notFound when mock provides no game characters`() async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient())
|
||||
|
||||
@@ -159,8 +209,8 @@ struct AmiiboServiceMockTests {
|
||||
}
|
||||
}
|
||||
|
||||
@Test("throws error for game characters when mock is configured with error", arguments: Errors.all)
|
||||
func getGameCharactersThrows(error: AmiiboServiceError) async {
|
||||
@Test(arguments: Errors.all)
|
||||
func `throws error for game characters when mock is configured with error`(error: AmiiboServiceError) async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(error: error))
|
||||
|
||||
@@ -173,8 +223,8 @@ struct AmiiboServiceMockTests {
|
||||
|
||||
// MARK: Get Game Series tests
|
||||
|
||||
@Test("returns empty game series when mock provides an empty list")
|
||||
func getGameSeriesEmpty() async throws {
|
||||
@Test
|
||||
func `returns empty game series when mock provides an empty list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(gameSeries: []))
|
||||
|
||||
@@ -185,8 +235,20 @@ struct AmiiboServiceMockTests {
|
||||
#expect(gameSeries.isEmpty)
|
||||
}
|
||||
|
||||
@Test("throws notFound when mock provides no game series")
|
||||
func getGameSeriesNotFound() async {
|
||||
@Test
|
||||
func `returns game series when mock provides a list`() async throws {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(gameSeries: Fixtures.gameSeries))
|
||||
|
||||
// WHEN
|
||||
let gameSeries = try await service.getGameSeries()
|
||||
|
||||
// THEN
|
||||
#expect(gameSeries == Fixtures.gameSeries)
|
||||
}
|
||||
|
||||
@Test
|
||||
func `throws notFound when mock provides no game series`() async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient())
|
||||
|
||||
@@ -197,8 +259,8 @@ struct AmiiboServiceMockTests {
|
||||
}
|
||||
}
|
||||
|
||||
@Test("throws error for game series when mock is configured with error", arguments: Errors.all)
|
||||
func getGameSeriesThrows(error: AmiiboServiceError) async {
|
||||
@Test(arguments: Errors.all)
|
||||
func `throws error for game series when mock is configured with error`(error: AmiiboServiceError) async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(error: error))
|
||||
|
||||
@@ -211,8 +273,8 @@ struct AmiiboServiceMockTests {
|
||||
|
||||
// MARK: Get Last Updated tests
|
||||
|
||||
@Test("returns date when mock provides a last updated date")
|
||||
func getLastUpdated() async throws {
|
||||
@Test
|
||||
func `returns date when mock provides a last updated date`() async throws {
|
||||
// GIVEN
|
||||
let expectedDate = Date(timeIntervalSince1970: 1_700_000_000)
|
||||
let service = AmiiboService(client: AmiiboMockClient(lastUpdated: expectedDate))
|
||||
@@ -224,8 +286,8 @@ struct AmiiboServiceMockTests {
|
||||
#expect(lastUpdated == expectedDate)
|
||||
}
|
||||
|
||||
@Test("throws notFound when mock provides no last updated date")
|
||||
func getLastUpdatedNotFound() async {
|
||||
@Test
|
||||
func `throws notFound when mock provides no last updated date`() async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient())
|
||||
|
||||
@@ -236,8 +298,8 @@ struct AmiiboServiceMockTests {
|
||||
}
|
||||
}
|
||||
|
||||
@Test("throws error for last updated when mock is configured with error", arguments: Errors.all)
|
||||
func getLastUpdatedThrows(error: AmiiboServiceError) async {
|
||||
@Test(arguments: Errors.all)
|
||||
func `throws error for last updated when mock is configured with error`(error: AmiiboServiceError) async {
|
||||
// GIVEN
|
||||
let service = AmiiboService(client: AmiiboMockClient(error: error))
|
||||
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
//
|
||||
// This source file is part of the Amiibo Service open source project
|
||||
//
|
||||
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
// Licensed under Apache license v2.0
|
||||
//
|
||||
// See LICENSE for license information
|
||||
// See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
import Foundation
|
||||
|
||||
extension Date {
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
/// Makes a date from UTC components.
|
||||
static func utc(
|
||||
_ year: Int,
|
||||
_ month: Int,
|
||||
_ day: Int,
|
||||
_ hour: Int = 0,
|
||||
_ minute: Int = 0,
|
||||
_ second: Int = 0
|
||||
) -> Date {
|
||||
var calendar = Calendar(identifier: .gregorian)
|
||||
|
||||
calendar.timeZone = .init(secondsFromGMT: 0)!
|
||||
|
||||
return calendar.date(from: .init(
|
||||
year: year,
|
||||
month: month,
|
||||
day: day,
|
||||
hour: hour,
|
||||
minute: minute,
|
||||
second: second
|
||||
))!
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
//
|
||||
// This source file is part of the Amiibo Service open source project
|
||||
//
|
||||
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
// Licensed under Apache license v2.0
|
||||
//
|
||||
// See LICENSE for license information
|
||||
// See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
import AmiiboService
|
||||
import Foundation
|
||||
|
||||
/// Ready-made models for testing purposes.
|
||||
enum Fixtures {
|
||||
/// Amiibo items; the first one has release dates and related games with usages.
|
||||
static let amiibos: [Amiibo] = [
|
||||
.init(
|
||||
head: "01000000",
|
||||
tail: "00040002",
|
||||
name: "Zelda",
|
||||
type: "Figure",
|
||||
series: "Super Smash Bros.",
|
||||
gameCharacter: "Zelda",
|
||||
gameSeries: "The Legend of Zelda",
|
||||
image: "https://raw.githubusercontent.com/N3evin/AmiiboAPI/master/images/icon_01000000-00040002.png",
|
||||
release: .init(
|
||||
america: Date(timeIntervalSince1970: 1_416_441_600),
|
||||
australia: Date(timeIntervalSince1970: 1_417_564_800),
|
||||
europe: Date(timeIntervalSince1970: 1_417_132_800),
|
||||
japan: Date(timeIntervalSince1970: 1_417_564_800)
|
||||
),
|
||||
platform: .init(
|
||||
switch: [
|
||||
.init(
|
||||
identifiers: ["01007EF00011E000"],
|
||||
name: "The Legend of Zelda: Breath of the Wild",
|
||||
usages: [.init(explanation: "Spawns a random selection of items.", isWriteable: false)]
|
||||
)
|
||||
],
|
||||
wiiU: [
|
||||
.init(
|
||||
identifiers: ["0005000010145000"],
|
||||
name: "Super Smash Bros. for Wii U",
|
||||
usages: [.init(explanation: "Unlocks a figure player.", isWriteable: true)]
|
||||
)
|
||||
]
|
||||
)
|
||||
),
|
||||
.init(
|
||||
head: "00000000",
|
||||
tail: "00000002",
|
||||
name: "Mario",
|
||||
type: "Figure",
|
||||
series: "Super Smash Bros.",
|
||||
gameCharacter: "Mario",
|
||||
gameSeries: "Super Mario",
|
||||
image: "https://raw.githubusercontent.com/N3evin/AmiiboAPI/master/images/icon_00000000-00000002.png"
|
||||
)
|
||||
]
|
||||
/// Amiibo series.
|
||||
static let amiiboSeries: [AmiiboSeries] = [
|
||||
.init(key: "0x00", name: "Super Smash Bros."),
|
||||
.init(key: "0x01", name: "Super Mario")
|
||||
]
|
||||
/// Amiibo types.
|
||||
static let amiiboTypes: [AmiiboType] = [
|
||||
.init(key: "0x00", name: "Figure"),
|
||||
.init(key: "0x01", name: "Card")
|
||||
]
|
||||
/// Game characters.
|
||||
static let gameCharacters: [GameCharacter] = [
|
||||
.init(key: "0x0000", name: "Mario"),
|
||||
.init(key: "0x0100", name: "Zelda")
|
||||
]
|
||||
/// Game series.
|
||||
static let gameSeries: [GameSeries] = [
|
||||
.init(key: "0x000", name: "Super Mario"),
|
||||
.init(key: "0x010", name: "The Legend of Zelda")
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
//
|
||||
// This source file is part of the Amiibo Service open source project
|
||||
//
|
||||
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
// Licensed under Apache license v2.0
|
||||
//
|
||||
// See LICENSE for license information
|
||||
// See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
import Foundation
|
||||
import HTTPTypes
|
||||
import OpenAPIRuntime
|
||||
|
||||
/// A transport that answers every request with a canned response, for testing purposes.
|
||||
struct StubTransport: ClientTransport {
|
||||
|
||||
// MARK: Type aliases
|
||||
|
||||
/// A closure that builds the response for a request.
|
||||
typealias Handler = @Sendable (HTTPRequest) throws -> (HTTPResponse, HTTPBody?)
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// The handler that builds the response.
|
||||
private let handler: Handler
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this transport with a response handler.
|
||||
init(handler: @escaping Handler) {
|
||||
self.handler = handler
|
||||
}
|
||||
|
||||
/// Initializes this transport with a fixed response.
|
||||
init(status: HTTPResponse.Status, json: String? = nil) {
|
||||
self.init { _ in
|
||||
Self.response(status: status, json: json)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
func send(
|
||||
_ request: HTTPRequest,
|
||||
body: HTTPBody?,
|
||||
baseURL: URL,
|
||||
operationID: String
|
||||
) async throws -> (HTTPResponse, HTTPBody?) {
|
||||
try handler(request)
|
||||
}
|
||||
|
||||
/// Builds a response with a status and an optional JSON body.
|
||||
static func response(
|
||||
status: HTTPResponse.Status,
|
||||
json: String? = nil
|
||||
) -> (HTTPResponse, HTTPBody?) {
|
||||
guard let json else {
|
||||
return (.init(status: status), nil)
|
||||
}
|
||||
|
||||
return (
|
||||
.init(status: status, headerFields: [.contentType: "application/json"]),
|
||||
.init(json)
|
||||
)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
// ===----------------------------------------------------------------------===
|
||||
//
|
||||
// This source file is part of the Amiibo Service open source project
|
||||
//
|
||||
// Copyright (c) 2026 Röck+Cöde VoF. and the Amiibo Service project authors
|
||||
// Licensed under Apache license v2.0
|
||||
//
|
||||
// See LICENSE for license information
|
||||
// See CONTRIBUTORS for the list of Amiibo Service project authors
|
||||
//
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
//
|
||||
// ===----------------------------------------------------------------------===
|
||||
|
||||
import Foundation
|
||||
import HTTPTypes
|
||||
import OpenAPIRuntime
|
||||
|
||||
/// A transport that throws a given error instead of sending the request, for testing purposes.
|
||||
///
|
||||
/// The error reaches the live client wrapped in a `ClientError`, as it would from a real transport.
|
||||
struct ThrowingTransport: ClientTransport {
|
||||
|
||||
// MARK: Properties
|
||||
|
||||
/// The error to throw.
|
||||
private let error: any Error
|
||||
|
||||
// MARK: Initializers
|
||||
|
||||
/// Initializes this transport.
|
||||
/// - Parameter error: An error to throw.
|
||||
init(error: any Error) {
|
||||
self.error = error
|
||||
}
|
||||
|
||||
// MARK: Functions
|
||||
|
||||
func send(
|
||||
_ request: HTTPRequest,
|
||||
body: HTTPBody?,
|
||||
baseURL: URL,
|
||||
operationID: String
|
||||
) async throws -> (HTTPResponse, HTTPBody?) {
|
||||
throw error
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
/*!
|
||||
* This source file is part of the Swift.org open source project
|
||||
*
|
||||
* Copyright (c) 2021 Apple Inc. and the Swift project authors
|
||||
* Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
*
|
||||
* See https://swift.org/LICENSE.txt for license information
|
||||
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
|
||||
*/.badge[data-v-ffe39a30]{--badge-color:var(--color-badge-default);--badge-dark-color:var(--color-badge-dark-default);font-size:.7058823529rem;line-height:1.3333333333;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);display:inline-block;padding:2px 4px;white-space:nowrap;border-radius:var(--badge-border-radius,1px);border-style:var(--badge-border-style,none);border-width:var(--badge-border-width,1px);margin:auto;margin-inline-start:5px;color:var(--colors-badge-text,var(--color-badge-text));background-color:var(--badge-color)}@media screen{[data-color-scheme=dark] .badge[data-v-ffe39a30]{background-color:var(--badge-dark-color)}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .badge[data-v-ffe39a30]{background-color:var(--badge-dark-color)}}.badge-deprecated[data-v-ffe39a30]{--badge-color:var(--color-badge-deprecated);--badge-dark-color:var(--color-badge-dark-deprecated)}.badge-beta[data-v-ffe39a30]{--badge-color:var(--color-badge-beta);--badge-dark-color:var(--color-badge-dark-beta)}[data-v-3a32ffd0] .code-listing{background:var(--background,var(--color-code-background));color:var(--text,var(--color-code-plain));border-color:var(--colors-grid,var(--color-grid));border-width:var(--code-border-width,1px);border-style:var(--code-border-style,solid)}[data-v-3a32ffd0] .code-listing pre{padding:var(--code-block-style-elements-padding)}[data-v-3a32ffd0] .code-listing pre>code{font-size:.8823529412rem;line-height:1.6666666667;font-weight:400;font-family:var(--typography-html-font-mono,Menlo,monospace)}[data-v-3a32ffd0] *+.code-listing,[data-v-3a32ffd0] *+.endpoint-example,[data-v-3a32ffd0] *+.inline-image-container,[data-v-3a32ffd0] *+aside,[data-v-3a32ffd0] *+figure,[data-v-3a32ffd0] .code-listing+*,[data-v-3a32ffd0] .endpoint-example+*,[data-v-3a32ffd0] .inline-image-container+*,[data-v-3a32ffd0] aside+*,[data-v-3a32ffd0] figure+*{margin-top:var(--spacing-stacked-margin-xlarge)}[data-v-3a32ffd0] *+dl,[data-v-3a32ffd0] dl+*{margin-top:var(--spacing-stacked-margin-large)}[data-v-3a32ffd0] img{display:block;margin:auto;max-width:100%}[data-v-3a32ffd0] ol,[data-v-3a32ffd0] ol li:not(:first-child),[data-v-3a32ffd0] ul,[data-v-3a32ffd0] ul li:not(:first-child){margin-top:var(--spacing-stacked-margin-large)}@media only screen and (max-width:735px){[data-v-3a32ffd0] ol,[data-v-3a32ffd0] ul{margin-left:1.25rem}}[data-v-3a32ffd0] dt:not(:first-child){margin-top:var(--spacing-stacked-margin-large)}[data-v-3a32ffd0] dd{margin-left:2em}.topic-icon-wrapper[data-v-58794252]{display:flex;align-items:center;justify-content:center;height:1.4705882353rem;flex:0 0 1.294rem;width:1.294rem;margin-inline-end:1rem}.topic-icon[data-v-58794252]{height:.8823529412rem;transform:scale(1);-webkit-transform:scale(1);overflow:visible}.topic-icon[data-v-58794252] img{margin:0;display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.topic-icon.curly-brackets-icon[data-v-58794252]{height:1rem}.token-method[data-v-295ad0ff]{font-weight:700}.token-keyword[data-v-295ad0ff]{color:var(--syntax-keyword,var(--color-syntax-keywords))}.token-number[data-v-295ad0ff]{color:var(--syntax-number,var(--color-syntax-numbers))}.token-string[data-v-295ad0ff]{color:var(--syntax-string,var(--color-syntax-strings))}.attribute-link[data-v-295ad0ff],.token-attribute[data-v-295ad0ff]{color:var(--syntax-attribute,var(--color-syntax-keywords))}.token-internalParam[data-v-295ad0ff]{color:var(--color-syntax-param-internal-name)}.type-identifier-link[data-v-295ad0ff]{color:var(--syntax-type,var(--color-syntax-other-type-names))}.token-removed[data-v-295ad0ff]{background-color:var(--color-highlight-red)}.token-added[data-v-295ad0ff]{background-color:var(--color-highlight-green)}.decorated-title[data-v-2d744be4]{direction:ltr}.decorator[data-v-2d744be4],.label[data-v-2d744be4]{color:var(--colors-secondary-label,var(--color-secondary-label))}.label[data-v-2d744be4]{font-size:1rem;line-height:1.4705882353;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}.empty-token[data-v-2d744be4]{font-size:0}.empty-token[data-v-2d744be4]:after{content:" ";font-size:1rem}.abstract[data-v-e1f11a1a],.link-block[data-v-e1f11a1a] .badge{margin-inline-start:2.294rem}.link-block .badge+.badge[data-v-e1f11a1a]{margin-inline-start:1rem}.link[data-v-e1f11a1a]{display:flex}.link-block .badge[data-v-e1f11a1a]{margin-top:.5rem}.link-block.has-inline-element[data-v-e1f11a1a]{display:flex;align-items:flex-start;flex-flow:row wrap}.link-block.has-inline-element .badge[data-v-e1f11a1a]{margin-inline-start:1rem;margin-top:0}.link-block .has-adjacent-elements[data-v-e1f11a1a]{padding-top:5px;padding-bottom:5px;display:inline-flex}.link-block[data-v-e1f11a1a],.link[data-v-e1f11a1a]{box-sizing:inherit}.link-block.changed[data-v-e1f11a1a],.link.changed[data-v-e1f11a1a]{padding-right:1rem;padding-left:2.1764705882rem;padding-top:8px;padding-bottom:8px;display:Line truncated
|
||||
@@ -1,9 +0,0 @@
|
||||
/*!
|
||||
* This source file is part of the Swift.org open source project
|
||||
*
|
||||
* Copyright (c) 2021 Apple Inc. and the Swift project authors
|
||||
* Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
*
|
||||
* See https://swift.org/LICENSE.txt for license information
|
||||
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
|
||||
*/aside[data-v-50d24223]{-moz-column-break-inside:avoid;break-inside:avoid;border-radius:var(--aside-border-radius,var(--border-radius,4px));border-style:var(--aside-border-style,solid);border-block-width:var(--aside-border-width-block,0);border-inline-width:var(--aside-border-width-inline,6px 0);padding:.9411764706rem;text-align:start}aside .label[data-v-50d24223]{font-size:1rem;line-height:1.5294117647;font-weight:600;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}aside .label+[data-v-50d24223]{margin-top:var(--spacing-stacked-margin-small)}aside.deprecated[data-v-50d24223]{background-color:var(--color-aside-deprecated-background);border-color:var(--color-aside-deprecated-border);box-shadow:0 0 0 0 var(--color-aside-deprecated-border) inset,0 0 0 0 var(--color-aside-deprecated-border)}aside.deprecated .label[data-v-50d24223]{color:var(--color-aside-deprecated)}aside.experiment[data-v-50d24223]{background-color:var(--color-aside-experiment-background);border-color:var(--color-aside-experiment-border);box-shadow:0 0 0 0 var(--color-aside-experiment-border) inset,0 0 0 0 var(--color-aside-experiment-border)}aside.experiment .label[data-v-50d24223]{color:var(--color-aside-experiment)}aside.important[data-v-50d24223]{background-color:var(--color-aside-important-background);border-color:var(--color-aside-important-border);box-shadow:0 0 0 0 var(--color-aside-important-border) inset,0 0 0 0 var(--color-aside-important-border)}aside.important .label[data-v-50d24223]{color:var(--color-aside-important)}aside.note[data-v-50d24223]{background-color:var(--color-aside-note-background);border-color:var(--color-aside-note-border);box-shadow:0 0 0 0 var(--color-aside-note-border) inset,0 0 0 0 var(--color-aside-note-border)}aside.note .label[data-v-50d24223]{color:var(--color-aside-note)}aside.tip[data-v-50d24223]{background-color:var(--color-aside-tip-background);border-color:var(--color-aside-tip-border);box-shadow:0 0 0 0 var(--color-aside-tip-border) inset,0 0 0 0 var(--color-aside-tip-border)}aside.tip .label[data-v-50d24223]{color:var(--color-aside-tip)}aside.warning[data-v-50d24223]{background-color:var(--color-aside-warning-background);border-color:var(--color-aside-warning-border);box-shadow:0 0 0 0 var(--color-aside-warning-border) inset,0 0 0 0 var(--color-aside-warning-border)}aside.warning .label[data-v-50d24223]{color:var(--color-aside-warning)}code[data-v-c21375ec]{direction:ltr}code[data-v-c21375ec]:before{content:attr(data-before-code)}code[data-v-c21375ec]:after{content:attr(data-after-code)}code[data-v-c21375ec]:after,code[data-v-c21375ec]:before{display:block;position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0}.CopyIcon[data-v-5308ccb8]{opacity:.8}.CheckmarkIcon[data-v-4c718f32],.CrossIcon[data-v-27a90ea3]{opacity:1;stroke:currentColor}.swift-file-icon.file-icon[data-v-c01a6890]{height:1rem}.file-icon[data-v-7c381064]{position:relative;align-items:flex-end;height:24px;margin:0 .5rem 0 1rem}.filename[data-v-c8c40662]{color:var(--text,var(--colors-secondary-label,var(--color-secondary-label)));font-size:.9411764706rem;line-height:1.1875;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin-top:1rem}@media only screen and (max-width:735px){.filename[data-v-c8c40662]{font-size:.8235294118rem;line-height:1.4285714286;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin-top:0}}.filename>a[data-v-c8c40662],.filename>span[data-v-c8c40662]{display:flex;align-items:center;line-height:normal}a[data-v-c8c40662]{color:var(--url,var(--color-link))}.code-line-container[data-v-28c1cdd6]{display:inline-block;width:100%;box-sizing:border-box}.code-number[data-v-28c1cdd6]{display:inline-block;padding:0 1rem 0 8px;text-align:right;min-width:2em;color:#666;-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-number[data-v-28c1cdd6]:before{content:attr(data-line-number)}.code-listing:not(:has(.code-number)):has(.highlighted) .code-line-container[data-v-28c1cdd6]{padding-left:8px;border-left:4px solid transparent}.code-listing:not(:has(.code-number)):has(.highlighted) .highlighted[data-v-28c1cdd6]{border-left-color:var(--color-code-line-highlight-border)}.highlighted[data-v-28c1cdd6]{background:var(--line-highlight,var(--color-code-line-highlight))}.highlighted .code-number[data-v-28c1cdd6]{border-left:4px solid var(--color-code-line-highlight-border);padding-left:4px}.strikethrough[data-v-28c1cdd6]{text-decoration-line:line-through;text-decoration-color:var(--color-figure-gray);opacity:.85}pre[data-v-28c1cdd6]{padding:14px 0;display:flex;overflow:unset;-webkit-overflow-scrolling:touch;white-space:pre;word-wrap:normal;height:100%;-moz-tab-size:var(--code-indentationWidth,4);-o-tab-size:var(--code-indentationWidth,4);tab-size:var(--code-indentationWidth,4)}@media only screeLine truncated
|
||||
@@ -1,9 +0,0 @@
|
||||
/*!
|
||||
* This source file is part of the Swift.org open source project
|
||||
*
|
||||
* Copyright (c) 2021 Apple Inc. and the Swift project authors
|
||||
* Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
*
|
||||
* See https://swift.org/LICENSE.txt for license information
|
||||
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
|
||||
*/.betainfo[data-v-ba3b3cc0]{font-size:.9411764706rem;padding:3rem 0;background-color:var(--color-fill-secondary)}.full-width-container .betainfo-container[data-v-ba3b3cc0]{max-width:820px;margin-left:auto;margin-right:auto;padding-left:80px;padding-right:80px;box-sizing:border-box}@media print{.full-width-container .betainfo-container[data-v-ba3b3cc0]{padding-left:20px;padding-right:20px;max-width:none}}@media only screen and (min-width:1251px){.full-width-container .betainfo-container[data-v-ba3b3cc0]{max-width:980px}}@media only screen and (min-width:1500px){.full-width-container .betainfo-container[data-v-ba3b3cc0]{max-width:1080px}}@media only screen and (max-width:735px){.full-width-container .betainfo-container[data-v-ba3b3cc0]{width:auto;padding-left:20px;padding-right:20px}}.static-width-container .betainfo-container[data-v-ba3b3cc0]{margin-left:auto;margin-right:auto;width:1536px;width:980px}@media only screen and (max-width:1250px){.static-width-container .betainfo-container[data-v-ba3b3cc0]{width:692px}}@media only screen and (max-width:735px){.static-width-container .betainfo-container[data-v-ba3b3cc0]{width:87.5%}}@media only screen and (max-width:320px){.static-width-container .betainfo-container[data-v-ba3b3cc0]{width:215px}}.betainfo-label[data-v-ba3b3cc0]{font-weight:600;font-size:.9411764706rem}.betainfo-content[data-v-ba3b3cc0] p{margin-bottom:10px}a[data-v-2ca5e993]{text-decoration:underline;color:inherit;font-weight:600}.summary-section[data-v-3aa6f694]:last-of-type{margin-right:0}@media only screen and (max-width:735px){.summary-section[data-v-3aa6f694]{margin-right:0}}.title[data-v-246c819c]{color:var(--colors-text,var(--color-text));font-size:.8235294118rem;margin-right:.5rem;text-rendering:optimizeLegibility}.language[data-v-0e39c0ba]{padding-bottom:10px;justify-content:flex-end}.language-list[data-v-0e39c0ba],.language[data-v-0e39c0ba]{font-size:.8235294118rem;line-height:1.4285714286;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin-top:0;display:flex;align-items:center}.language-option.swift[data-v-0e39c0ba]{padding-right:10px;border-right:1px solid var(--colors-secondary-label,var(--color-secondary-label))}.language-option.objc[data-v-0e39c0ba]{padding-left:10px}.view-more-link[data-v-3f54e653]{font-size:.8235294118rem;line-height:1.2857142857;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);display:flex;flex-flow:row-reverse;margin-bottom:1.3rem}.documentation-hero[data-v-0958f035]{color:var(--color-documentation-intro-figure,var(--color-figure-gray));overflow:hidden;position:relative;padding-inline-end:var(--doc-hero-right-offset)}.documentation-hero[data-v-0958f035]:before{content:"";background:var(--standard-accent-color,var(--color-documentation-intro-fill,var(--color-fill-tertiary)));position:absolute;width:100%;height:100%}.documentation-hero[data-v-0958f035]:after{background:transparent;opacity:.85;width:100%;position:absolute;content:"";height:100%;inset-inline-start:0;top:0}@media screen{[data-color-scheme=dark] .documentation-hero[data-v-0958f035]:after{opacity:.55}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .documentation-hero[data-v-0958f035]:after{opacity:.55}}.documentation-hero .icon[data-v-0958f035]{position:absolute;margin-top:10px;margin-inline-end:25px;inset-inline-end:0;width:250px;height:calc(100% - 20px);box-sizing:border-box}@media only screen and (max-width:735px){.documentation-hero .icon[data-v-0958f035]{display:none}}.documentation-hero .background-icon[data-v-0958f035]{color:var(--color-documentation-intro-accent,var(--color-figure-gray-secondary));display:block;width:250px;height:auto;opacity:.15;mix-blend-mode:normal;position:absolute;top:50%;inset-inline-start:0;transform:translateY(-50%);max-height:100%}.documentation-hero .background-icon[data-v-0958f035] img,.documentation-hero .background-icon[data-v-0958f035] svg{width:100%;height:100%}@media screen{[data-color-scheme=dark] .documentation-hero .background-icon[data-v-0958f035]{mix-blend-mode:normal;opacity:.15}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .documentation-hero .background-icon[data-v-0958f035]{mix-blend-mode:normal;opacity:.15}}.documentation-hero__content[data-v-0958f035]:not(.minimized-hero){padding-top:2.3529411765rem;padding-bottom:2.3529411765rem;position:relative;z-index:1}.full-width-container .documentation-hero__content[data-v-0958f035]:not(.minimized-hero){max-width:820px;margin-left:auto;margin-right:auto;padding-left:80px;padding-right:80px;box-sizing:border-box}@media print{.full-width-container .documentation-hero__content[data-v-0958f035]:not(.minimized-hero){padding-left:20px;padding-right:20px;max-width:none}}@media only screen and (min-width:1251px){.full-width-container .documentation-hero__content[data-v-0958f035]:not(.minimized-hero){max-width:980px}}@media only screen and (min-width:150Line truncated
|
||||
@@ -1,9 +0,0 @@
|
||||
/*!
|
||||
* This source file is part of the Swift.org open source project
|
||||
*
|
||||
* Copyright (c) 2021 Apple Inc. and the Swift project authors
|
||||
* Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
*
|
||||
* See https://swift.org/LICENSE.txt for license information
|
||||
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
|
||||
*/.color-scheme-toggle[data-v-0c0360ce]{--toggle-color-fill:var(--color-button-background);--toggle-color-text:var(--color-fill-blue);font-size:.7058823529rem;line-height:1.3333333333;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);border:1px solid var(--toggle-color-fill);border-radius:var(--toggle-border-radius-outer,var(--border-radius,4px));display:inline-flex;padding:1px}@media screen{[data-color-scheme=dark] .color-scheme-toggle[data-v-0c0360ce]{--toggle-color-text:var(--color-figure-blue)}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .color-scheme-toggle[data-v-0c0360ce]{--toggle-color-text:var(--color-figure-blue)}}@media print{.color-scheme-toggle[data-v-0c0360ce]{display:none}}:root.no-js .color-scheme-toggle[data-v-0c0360ce]{visibility:hidden}input[data-v-0c0360ce]{position:absolute;clip:rect(1px,1px,1px,1px);clip-path:inset(0 0 99.9% 99.9%);overflow:hidden;height:1px;width:1px;padding:0;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.fromkeyboard label[data-v-0c0360ce]:focus-within{outline:4px solid var(--color-focus-color);outline-offset:1px}.text[data-v-0c0360ce]{border:1px solid transparent;border-radius:var(--toggle-border-radius-inner,2px);color:var(--toggle-color-text);display:inline-block;text-align:center;padding:1px 6px;min-width:42px;box-sizing:border-box}.text[data-v-0c0360ce]:hover{cursor:pointer}input:checked+.text[data-v-0c0360ce]{--toggle-color-text:var(--color-button-text);background:var(--toggle-color-fill);border-color:var(--toggle-color-fill)}.footer[data-v-f1d65b2a]{border-top:1px solid var(--color-grid)}.row[data-v-f1d65b2a]{margin-left:auto;margin-right:auto;width:1536px;width:980px;display:flex;flex-direction:row-reverse;margin:20px auto}@media only screen and (max-width:1250px){.row[data-v-f1d65b2a]{width:692px}}@media only screen and (max-width:735px){.row[data-v-f1d65b2a]{width:87.5%}}@media only screen and (max-width:320px){.row[data-v-f1d65b2a]{width:215px}}@media only screen and (max-width:735px){.row[data-v-f1d65b2a]{width:100%;padding:0 .9411764706rem;box-sizing:border-box}}.InitialLoadingPlaceholder[data-v-35c356b6]{background:var(--colors-loading-placeholder-background,var(--color-loading-placeholder-background));height:100vh;width:100%}.svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-light,var(--color-svg-icon));transform:scale(1);-webkit-transform:scale(1);overflow:visible}.theme-dark .svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}@media screen{[data-color-scheme=dark] .svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto] .svg-icon[data-v-06e5463e]{fill:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}.svg-icon.icon-inline[data-v-06e5463e]{display:inline-block;vertical-align:middle;fill:currentColor}.svg-icon.icon-inline[data-v-06e5463e] .svg-icon-stroke{stroke:currentColor}[data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-light,var(--color-svg-icon))}.theme-dark[data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}@media screen{[data-color-scheme=dark][data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}@media screen and (prefers-color-scheme:dark){[data-color-scheme=auto][data-v-06e5463e] .svg-icon-stroke{stroke:var(--colors-svg-icon-fill-dark,var(--color-svg-icon))}}.inline-chevron-right-icon[data-v-7413f2a0]{transform:scaleX(var(--scale-inline,1))}.suggest-lang[data-v-c2dca0ae]{background:#000;color:#fff;display:flex;justify-content:center;border-bottom:1px solid var(--color-grid)}.suggest-lang__wrapper[data-v-c2dca0ae]{display:flex;align-items:center;width:100%;max-width:var(--wrapper-max-width,1920px);margin:0 .9411764706rem;position:relative;height:52px}.suggest-lang__link[data-v-c2dca0ae]{font-size:.8235294118rem;line-height:1.4285714286;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);margin:0 auto;color:#09f}.suggest-lang__close-icon-wrapper[data-v-c2dca0ae]{position:absolute;right:-.2352941176rem;top:0;height:100%;box-sizing:border-box;display:flex;align-items:center;z-index:1}.suggest-lang__close-icon-button[data-v-c2dca0ae]{padding:.2352941176rem}.suggest-lang__close-icon-button .close-icon[data-v-c2dca0ae]{width:8px;display:block}.suggest-lang .inline-chevron-right-icon[data-v-c2dca0ae]{padding-left:.2352941176rem;width:8px}select[data-v-d21858a2]{font-size:.7058823529rem;line-height:1.3333333333;font-weight:600;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);color:var(--color-fill-blue);padding-right:15px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;cursor:pointer}select[data-v-d21858a2]:hover{text-decoration:underline}.locale-selectoLine truncated
|
||||
@@ -1,9 +0,0 @@
|
||||
/*!
|
||||
* This source file is part of the Swift.org open source project
|
||||
*
|
||||
* Copyright (c) 2021 Apple Inc. and the Swift project authors
|
||||
* Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
*
|
||||
* See https://swift.org/LICENSE.txt for license information
|
||||
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
|
||||
*/.nav-title-content[data-v-854b4dd6]{max-width:100%}.title[data-v-854b4dd6]{color:var(--color-nav-root-title,currentColor);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:inline-block;vertical-align:top;max-width:296px}@media only screen and (max-width:1023px){.title[data-v-854b4dd6]{max-width:205px}}@media only screen and (max-width:767px){.title[data-v-854b4dd6]{flex-basis:fill;display:initial;vertical-align:initial;max-width:none}}.subhead[data-v-854b4dd6]{color:var(--color-nav-root-subhead)}.theme-dark .subhead[data-v-854b4dd6]{color:var(--color-nav-dark-root-subhead)}.mobile-dropdown[data-v-2c27d339]{box-sizing:border-box}.nav--in-breakpoint-range .mobile-dropdown[data-v-2c27d339]{padding-left:.2352941176rem;padding-right:.2352941176rem}.mobile-dropdown ul[data-v-2c27d339]{list-style:none}.mobile-dropdown .option[data-v-2c27d339]{cursor:pointer;font-size:.7058823529rem;padding:.5rem 0;display:block;text-decoration:none;color:inherit}.mobile-dropdown .option[data-v-2c27d339]:focus{outline-offset:0}.mobile-dropdown .option.depth1[data-v-2c27d339]{padding-left:.4705882353rem}.active[data-v-2c27d339],.tutorial.router-link-active[data-v-2c27d339]{font-weight:600}.active[data-v-2c27d339]:focus,.tutorial.router-link-active[data-v-2c27d339]:focus{outline:none}.chapter-list[data-v-2c27d339]:not(:first-child){margin-top:1rem}.chapter-name[data-v-2c27d339],.tutorial[data-v-2c27d339]{padding:.5rem 0;font-size:1rem;line-height:1.4705882353;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}.section-list[data-v-2c27d339],.tutorial-list[data-v-2c27d339]{padding:0 .5882352941rem}.chapter-list:last-child .tutorial-list[data-v-2c27d339]:last-child{padding-bottom:10em}.chapter-list[data-v-2c27d339]{display:inline-block}.form-element[data-v-f934959a]{position:relative}.form-dropdown[data-v-f934959a]{font-size:1rem;line-height:1.2352941176;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);display:block;box-sizing:border-box;width:100%;height:3.3em;color:var(--color-dropdown-text);padding:1.1176470588rem 2.3529411765rem 0 .9411764706rem;text-align:left;border:1px solid var(--color-dropdown-border);border-radius:var(--border-radius,4px);background-clip:padding-box;margin-bottom:.8235294118rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;min-height:32px}.form-dropdown[data-v-f934959a]:focus{box-shadow:0 0 0 4px var(--color-focus-color);outline:none;border-color:var(--color-focus-border-color)}.form-dropdown.no-eyebrow[data-v-f934959a]{padding-top:0}.form-dropdown[data-v-f934959a]:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--color-dropdown-text)}.form-dropdown[data-v-f934959a]::-ms-expand{opacity:0}.form-dropdown~.form-icon[data-v-f934959a]{position:absolute;display:block;pointer-events:none;fill:var(--color-figure-gray-tertiary);right:14px;width:13px;height:auto;top:50%;transform:translateY(-50%)}.is-open .form-dropdown~.form-icon[data-v-f934959a]{transform:translateY(-50%) scale(-1)}@media only screen and (max-width:735px){.form-dropdown~.form-icon[data-v-f934959a]{right:14px}}.form-dropdown~.form-label[data-v-f934959a]{font-size:.7058823529rem;line-height:1.75;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);position:absolute;top:.4705882353rem;left:17px;color:var(--color-figure-gray-secondary);pointer-events:none;padding:0;z-index:1}.form-dropdown[data-v-f934959a] option{color:var(--color-dropdown-text)}.form-dropdown-selectnone[data-v-f934959a]{color:transparent}.form-dropdown-selectnone~.form-label[data-v-f934959a]{font-size:1rem;line-height:1.2352941176;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif);top:19px;left:17px;color:var(--color-figure-gray-tertiary)}.form-dropdown-selectnone[data-v-f934959a]:-moz-focusring{text-shadow:none}.form-dropdown-selectnone[data-v-f934959a]::-ms-value{display:none}.theme-dark .form-dropdown[data-v-f934959a]{color:var(--color-dropdown-dark-text);background-color:var(--color-dropdown-dark-background);border-color:var(--color-dropdown-dark-border)}.theme-dark .form-dropdown~.form-label[data-v-f934959a]{color:#ccc}.theme-dark .form-dropdown[data-v-f934959a]:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--color-dropdown-dark-text)}.theme-dark .form-dropdown.form-dropdown-selectnone[data-v-f934959a]{color:transparent}.theme-dark .form-dropdown.form-dropdown-selectnone[data-v-f934959a]:-moz-focusring{text-shadow:none}.theme-dark .form-dropdown-selectnone~.form-label[data-v-f934959a]{color:#b0b0b0}.dropdown-small[data-v-6adda760]{height:30px;display:flex;align-items:center;position:relative;background:var(--color-fill)}.dropdown-small .form-dropdown-toggle[data-v-6adda760]{line-height:1.5;font-size:12px;padding-top:0;padding-bottom:0;padding-left:20px;min-height:unseLine truncated
|
||||
@@ -1,9 +0,0 @@
|
||||
/*!
|
||||
* This source file is part of the Swift.org open source project
|
||||
*
|
||||
* Copyright (c) 2021 Apple Inc. and the Swift project authors
|
||||
* Licensed under Apache License v2.0 with Runtime Library Exception
|
||||
*
|
||||
* See https://swift.org/LICENSE.txt for license information
|
||||
* See https://swift.org/CONTRIBUTORS.txt for Swift project authors
|
||||
*/.tutorials-navigation-link[data-v-e9f9b59c]{color:var(--color-tutorials-overview-navigation-link);transition:color .3s linear}.tutorials-navigation-link[data-v-e9f9b59c]:hover{text-decoration:none;transition:none;color:var(--color-tutorials-overview-navigation-link-hover)}.tutorials-navigation-link.active[data-v-e9f9b59c]{color:var(--color-tutorials-overview-navigation-link-active)}.tutorials-navigation-list[data-v-4e0180fa]{list-style-type:none;margin:0}.tutorials-navigation-list li+li[data-v-4e0180fa]:not(.volume--named){margin-top:24px}.tutorials-navigation-list .volume--named+.volume--named[data-v-4e0180fa]{margin-top:12px}.expand-enter-active,.expand-leave-active{transition:height .3s ease-in-out;overflow:hidden}.expand-enter,.expand-leave-to{height:0}.toggle[data-v-489416f8]{color:#f0f0f0;line-height:21px;display:flex;align-items:center;width:100%;font-weight:600;padding:6px 6px 6px 0;border-bottom:1px solid #2a2a2a;text-decoration:none;box-sizing:border-box}@media only screen and (max-width:767px){.toggle[data-v-489416f8]{padding-right:6px;border-bottom-color:hsla(0,0%,100%,.1)}}.toggle .text[data-v-489416f8]{word-break:break-word}.toggle[data-v-489416f8]:hover{text-decoration:none}.toggle .toggle-icon[data-v-489416f8]{display:inline-block;transition:transform .2s ease-in;height:.4em;width:.4em;margin-left:auto;margin-right:.2em}.collapsed .toggle .toggle-icon[data-v-489416f8]{transform:rotate(45deg)}.collapsed .toggle[data-v-489416f8],.collapsed .toggle[data-v-489416f8]:hover{color:#b0b0b0}.tutorials-navigation-menu-content[data-v-489416f8]{opacity:1;transition:height .2s ease-in,opacity .2s ease-in}.collapsed .tutorials-navigation-menu-content[data-v-489416f8]{height:0;opacity:0}.tutorials-navigation-menu-content .tutorials-navigation-list[data-v-489416f8]{padding:24px 0 12px 0}.tutorials-navigation[data-v-79093ed6]{font-size:1rem;line-height:1.2352941176;font-weight:400;font-family:var(--typography-html-font,"Helvetica Neue","Helvetica","Arial",sans-serif)}.nav-title-content[data-v-854b4dd6]{max-width:100%}.title[data-v-854b4dd6]{color:var(--color-nav-root-title,currentColor);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:inline-block;vertical-align:top;max-width:296px}@media only screen and (max-width:1023px){.title[data-v-854b4dd6]{max-width:205px}}@media only screen and (max-width:767px){.title[data-v-854b4dd6]{flex-basis:fill;display:initial;vertical-align:initial;max-width:none}}.subhead[data-v-854b4dd6]{color:var(--color-nav-root-subhead)}.theme-dark .subhead[data-v-854b4dd6]{color:var(--color-nav-dark-root-subhead)}.nav[data-v-54bcce6d] .nav-menu{padding-top:0}.nav[data-v-54bcce6d] .nav-menu .nav-menu-items{margin-left:auto}@media only screen and (min-width:768px){.nav[data-v-54bcce6d] .nav-menu .nav-menu-items .in-page-navigation{display:none}}@media only screen and (min-width:320px)and (max-width:735px){.nav[data-v-54bcce6d] .nav-menu .nav-menu-items{padding:18px 0 40px}}.hero[data-v-400ffab5]{margin-left:auto;margin-right:auto;width:1536px;width:980px;padding-bottom:4.7058823529rem;padding-top:4.7058823529rem}@media only screen and (max-width:1250px){.hero[data-v-400ffab5]{width:692px}}@media only screen and (max-width:735px){.hero[data-v-400ffab5]{width:87.5%}}@media only screen and (max-width:320px){.hero[data-v-400ffab5]{width:215px}}@media screen{.hero[data-v-400ffab5]{--color-fill:#fff;--color-fill-secondary:#f7f7f7;--color-fill-tertiary:#f0f0f0;--color-fill-quaternary:#282828;--color-fill-blue:#00f;--color-fill-light-blue-secondary:#d1d1ff;--color-fill-gray:#ccc;--color-fill-gray-secondary:#f5f5f5;--color-fill-gray-tertiary:#f0f0f0;--color-fill-gray-quaternary:#f0f0f0;--color-fill-green-secondary:#f0fff0;--color-fill-orange-secondary:#fffaf6;--color-fill-red-secondary:#fff0f5;--color-figure-blue:#36f;--color-figure-gray:#000;--color-figure-gray-secondary:#666;--color-figure-gray-secondary-alt:#666;--color-figure-gray-tertiary:#666;--color-figure-green:green;--color-figure-light-gray:#666;--color-figure-orange:#c30;--color-figure-red:red;--color-tutorials-teal:#000;--color-article-background:var(--color-fill-tertiary);--color-article-body-background:var(--color-fill);--color-aside-deprecated:var(--color-figure-gray);--color-aside-deprecated-background:var(--color-fill-orange-secondary);--color-aside-deprecated-border:var(--color-figure-orange);--color-aside-experiment:var(--color-figure-gray);--color-aside-experiment-background:var(--color-fill-gray-secondary);--color-aside-experiment-border:var(--color-figure-light-gray);--color-aside-important:var(--color-figure-gray);--color-aside-important-background:var(--color-fill-gray-secondary);--color-aside-important-border:var(--color-figure-light-gray);--color-aside-note:var(--color-figure-gray);--color-aside-note-background:var(--color-fill-gray-secondary);--color-aside-note-border:var(--color-figure-light-gray);--color-aside-tip:var(--color-figure-gray);--color-aside-tip-background:var(--color-fill-gray-secondaryLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"content":[{"type":"heading","text":"Overview","anchor":"Overview","level":2},{"type":"paragraph","inlineContent":[{"text":"The ","type":"text"},{"code":"amiibo-service","type":"codeVoice"},{"text":" library is a package that allows the developer to interact with the ","type":"text"},{"type":"reference","identifier":"https:\/\/www.amiiboapi.org","isActive":true},{"text":" backend service seamlessly, by not only providing the ","type":"text"},{"inlineContent":[{"type":"text","text":"service"}],"type":"emphasis"},{"text":" type but also any possible ","type":"text"},{"inlineContent":[{"type":"text","text":"models"}],"type":"emphasis"},{"text":", ","type":"text"},{"inlineContent":[{"type":"text","text":"filters"}],"type":"emphasis"},{"text":", ","type":"text"},{"inlineContent":[{"type":"text","text":"errors"}],"type":"emphasis"},{"text":" and ","type":"text"},{"inlineContent":[{"type":"text","text":"interfaces"}],"type":"emphasis"},{"text":" types that might be needed during implementation.","type":"text"}]},{"type":"heading","text":"Design","anchor":"Design","level":2},{"type":"paragraph","inlineContent":[{"text":"Although it could have been possible to generate a one-to-one RESTful client based on the Open API specification document that describe the available endpoints of the backend service, it was decided to design a ","type":"text"},{"code":"AmiiboService","type":"codeVoice"},{"text":" service type that removes the complexities of the API design imposed by the backend service, and provides the developer with a simple interface, and a seamless experience.","type":"text"}]},{"type":"heading","text":"Installation","anchor":"Installation","level":2},{"type":"paragraph","inlineContent":[{"text":"To use the ","type":"text"},{"code":"AmiiboService","type":"codeVoice"},{"text":" library with your package, then add it as a dependency in the ","type":"text"},{"code":"Package.swift","type":"codeVoice"},{"text":" file:","type":"text"}]},{"type":"codeListing","syntax":"swift","code":["let package = Package("," \/\/ name, platforms, products, etc."," dependencies: ["," .package(url: \"https:\/\/github.com\/rock-n-code\/amiibo-service\", from: \"2.0.0\"),"," \/\/ other dependencies"," ],"," targets: ["," .target("," name: \"SomeTarget\", "," dependencies: ["," .product(name: \"AmiiboService\", package: \"amiibo-service\"),"," ]"," )"," \/\/ other targets"," ]",")"]},{"type":"paragraph","inlineContent":[{"text":"It is also possible to use the ","type":"text"},{"code":"AmiiboService","type":"codeVoice"},{"text":" library with your app in Xcode, then add it as a dependency in your Xcode project.","type":"text"}]},{"type":"aside","style":"important","name":"Important","content":[{"inlineContent":[{"type":"text","text":"Swift 6.2 or higher is required in order to compile this library."}],"type":"paragraph"}]},{"type":"heading","text":"Usage","anchor":"Usage","level":2},{"type":"paragraph","inlineContent":[{"text":"Create an ","type":"text"},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","isActive":true},{"text":" instance and call any of its endpoints. Each endpoint accepts an optional filter and, when omitted, returns the full set of results:","type":"text"}]},{"type":"codeListing","syntax":"swift","code":["import AmiiboService","","let service = AmiiboService()","","\/\/ Fetch all amiibos","let amiibos = try await service.getAmiibos()","","\/\/ Fetch amiibos filtered by name","let zeldaAmiibos = try await service.getAmiibos(.init(name: \"zelda\"))","","\/\/ Fetch amiibo series, types, game characters, and game series","let series = try await service.getAmiiboSeries()","let types = try await service.getAmiiboTypes()","let characters = try await service.getGameCharacters()","let gameSeries = try await service.getGameSeries()","","\/\/ Fetch the last updated timestamp","let lastUpdated = try await service.getLastUpdated()"]},{"type":"heading","text":"Caching","anchor":"Caching","level":2},{"type":"paragraph","inlineContent":[{"text":"The ","type":"text"},{"overridingTitle":"Amiibo API","overridingTitleInlineContent":[{"type":"text","text":"Amiibo API"}],"type":"reference","identifier":"https:\/\/www.amiiboapi.org","isActive":true},{"text":" recommends that consumers who call the API regularly implement caching on their systems. This library does not include a built-in cache, leaving the choice of caching strategy to the consumer. The following examples show two common approaches.","type":"text"}]},{"type":"heading","text":"URLCache on the transport layer","anchor":"URLCache-on-the-transport-layer","level":3},{"type":"paragraph","inlineContent":[{"text":"Pass a custom ","type":"text"},{"code":"URLSessionTransport","type":"codeVoice"},{"text":" with a cache-configured ","type":"text"},{"code":"URLSession","type":"codeVoice"},{"text":"Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"title":"Conforms To","type":"conformsTo"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}],"platforms":["macOS"],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"A model that represents an amiibo."}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService"]]},"metadata":{"navigatorTitle":[{"text":"Amiibo","kind":"identifier"}],"title":"Amiibo","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A0V","symbolKind":"struct","roleHeading":"Structure","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Amiibo"}]},"topicSections":[{"anchor":"Nested-Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"],"title":"Nested Models"},{"anchor":"Instance-Properties","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameCharacter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameSeries","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/imageURL","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/name","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/release-swift.property","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/series","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/type"],"generated":true,"title":"Instance Properties"},{"anchor":"Default-Implementations","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Equatable-Implementations"],"generated":true,"title":"Default Implementations"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo"],"traits":[{"interfaceLanguage":"swift"}]}],"seeAlsoSections":[{"anchor":"Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeries","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboType","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeries"],"generated":true,"title":"Models"}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"role":"symbol","title":"Amiibo.Usage","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"navigatorTitle":[{"kind":"identifier","text":"Usage"}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/platform-swift.property":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"platform","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V8PlatformV","text":"Platform","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.property","type":"topic","abstract":[{"type":"text","text":"The game platform data for this amiibo, if available."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","kind":"symbol","title":"platform","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","tLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"patch":0,"major":0,"minor":3},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)","interfaceLanguage":"swift"},"metadata":{"title":"!=(_:_:)","modules":[{"name":"AmiiboService","relatedModules":["Swift"]}],"extendedModule":"Swift","role":"symbol","externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V","symbolKind":"op","roleHeading":"Operator","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/!=(_:_:)"]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/!=(_:_:)":{"role":"symbol","abstract":[],"title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/!=(_:_:)","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"kind":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/equatable-implementations"]}],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Equatable-Implementations","interfaceLanguage":"swift"},"metadata":{"modules":[{"name":"AmiiboService"}],"role":"collectionGroup","title":"Equatable Implementations","roleHeading":"API Collection"},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Operators","generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)"],"anchor":"Operators"}],"kind":"article","references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/!=(_:_:)":{"role":"symbol","abstract":[],"title":"!=(_:_:)","url":"\/documentation\/amiiboservice\/amiibo\/!=(_:_:)","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/!=(_:_:)","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"relationshipsSections":[{"title":"Conforms To","type":"conformsTo","identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"kind":"relationships"}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Game","kind":"identifier"}]}]}],"abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"metadata":{"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Game","kind":"identifier"}],"roleHeading":"Structure","title":"Amiibo.Game","navigatorTitle":[{"kind":"identifier","text":"Game"}],"externalID":"s:13AmiiboService0A0V4GameV","extendedModule":"AmiiboService","symbolKind":"struct","role":"symbol","modules":[{"name":"AmiiboService"}]},"schemaVersion":{"patch":0,"minor":3,"major":0},"topicSections":[{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/identifiers","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/name","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/usages"],"anchor":"Instance-Properties","title":"Instance Properties","generated":true},{"title":"Default Implementations","generated":true,"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/Equatable-Implementations"],"anchor":"Default-Implementations"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game"],"traits":[{"interfaceLanguage":"swift"}]}],"seeAlsoSections":[{"title":"Nested Models","anchor":"Nested-Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"],"generated":true}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/name":{"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/name","abstract":[{"text":"The name of this game.","type":"text"}],"url":"\/documentation\/amiiboservice\/amiibo\/game\/name","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"kind":"symbol","title":"name","role":"symbol"},"doc://AmiiboService/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/AmiiboService\/s8SendableP"},"doc://AmiiboService/SQ":{"type":"unresolvable","title":"Swift.Equatable","identifier":"doc:\/\/AmiiboService\/SQ"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"role":"symbol","title":"Amiibo.Usage","fragments":[{"kind":"keyword","text":"struct"},{"kind":"teLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)"},"metadata":{"externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V4GameV","title":"!=(_:_:)","symbolKind":"op","fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"extendedModule":"Swift","roleHeading":"Operator","modules":[{"name":"AmiiboService","relatedModules":["Swift"]}],"role":"symbol"},"sections":[],"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/game\/!=(_:_:)"]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"url":"\/documentation\/amiiboservice\/amiibo\/game\/!=(_:_:)","type":"topic","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)","kind":"symbol","title":"!=(_:_:)","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"kind":"article","schemaVersion":{"minor":3,"patch":0,"major":0},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"metadata":{"roleHeading":"API Collection","role":"collectionGroup","title":"Equatable Implementations","modules":[{"name":"AmiiboService"}]},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/Equatable-Implementations"},"topicSections":[{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)"],"generated":true,"anchor":"Operators","title":"Operators"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/game\/equatable-implementations"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}],"url":"\/documentation\/amiiboservice\/amiibo\/game\/!=(_:_:)","type":"topic","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/!=(_:_:)","kind":"symbol","title":"!=(_:_:)","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"identifiers","kind":"identifier"},{"text":": [","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"]","kind":"text"}],"externalID":"s:13AmiiboService0A0V4GameV11identifiersSaySSGvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"identifiers","role":"symbol"},"abstract":[{"type":"text","text":"A list of game identifiers associated with this game."}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/identifiers","interfaceLanguage":"swift"},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifiers"},{"kind":"text","text":": ["},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"]","kind":"text"}]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/game\/identifiers"]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/identifiers":{"title":"identifiers","type":"topic","abstract":[{"type":"text","text":"A list of game identifiers associated with this game."}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/identifiers","url":"\/documentation\/amiiboservice\/amiibo\/game\/identifiers","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"identifiers","kind":"identifier"},{"text":": [","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"]","kind":"text"}]}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"abstract":[{"text":"The name of this game.","type":"text"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/name"},"metadata":{"externalID":"s:13AmiiboService0A0V4GameV4nameSSvp","title":"name","symbolKind":"property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Instance Property","modules":[{"name":"AmiiboService"}],"role":"symbol"},"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}],"kind":"declarations"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game\/name"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/name":{"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/name","abstract":[{"text":"The name of this game.","type":"text"}],"url":"\/documentation\/amiiboservice\/amiibo\/game\/name","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"kind":"symbol","title":"name","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"usages"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V5UsageV","text":"Usage","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"},{"text":"]?","kind":"text"}]}],"kind":"declarations"}],"abstract":[{"type":"text","text":"A list of amiibo usages within this game, if available."}],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/usages"},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"usages"},{"text":": [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V5UsageV","kind":"typeIdentifier","text":"Usage"},{"kind":"text","text":"]?"}],"roleHeading":"Instance Property","title":"usages","externalID":"s:13AmiiboService0A0V4GameV6usagesSayAC5UsageVGSgvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"]]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/game\/usages"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game/usages":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"usages","kind":"identifier"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V5UsageV","text":"Usage"},{"kind":"text","text":"]?"}],"url":"\/documentation\/amiiboservice\/amiibo\/game\/usages","type":"topic","abstract":[{"type":"text","text":"A list of amiibo usages within this game, if available."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game\/usages","kind":"symbol","title":"usages","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"role":"symbol","title":"Amiibo.Usage","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"navigatorTitle":[{"kind":"identifier","text":"Usage"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameCharacter","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}],"kind":"declarations"}],"abstract":[{"text":"The name of the game character associated with this amiibo.","type":"text"}],"kind":"symbol","identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameCharacter","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"metadata":{"title":"gameCharacter","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A0V13gameCharacterSSvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameCharacter","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/gamecharacter"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/gameCharacter":{"role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/gamecharacter","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameCharacter","abstract":[{"type":"text","text":"The name of the game character associated with this amiibo."}],"type":"topic","title":"gameCharacter","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameCharacter","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameSeries"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"externalID":"s:13AmiiboService0A0V10gameSeriesSSvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"gameSeries","role":"symbol"},"abstract":[{"type":"text","text":"The name of the game series associated with this amiibo."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameSeries"},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameSeries","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/gameseries"]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/gameSeries":{"title":"gameSeries","abstract":[{"type":"text","text":"The name of the game series associated with this amiibo."}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/gameSeries","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/gameseries","role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameSeries"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"abstract":[{"text":"The first 8 hexadecimal characters of the amiibo identifier.","type":"text"}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head"},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"externalID":"s:13AmiiboService0A0V4headSSvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"head","role":"symbol"},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/head"]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/head":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/amiiboservice\/amiibo\/head","type":"topic","abstract":[{"type":"text","text":"The first 8 hexadecimal characters of the amiibo identifier."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","kind":"symbol","title":"head","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"externalID":"s:13AmiiboService0A0V10identifierSSvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"identifier","role":"symbol"},"abstract":[{"type":"text","text":"The full 16-character hexadecimal identifier, composed of the "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","isActive":true},{"type":"text","text":" and "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","isActive":true},{"type":"text","text":"."}],"schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier"},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":" { "},{"kind":"keyword","text":"get"},{"kind":"text","text":" }"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/identifier"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/head":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"head"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/amiiboservice\/amiibo\/head","type":"topic","abstract":[{"type":"text","text":"The first 8 hexadecimal characters of the amiibo identifier."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","kind":"symbol","title":"head","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/tail":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/amiiboservice\/amiibo\/tail","type":"topic","abstract":[{"type":"text","text":"The last 8 hexadecimal characters of the amiibo identifier."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","kind":"symbol","title":"tail","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/identifier":{"fragments":[{"kind":"keyword","text":"var"},{"kind":"text","text":" "},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/amiiboservice\/amiibo\/identifier","type":"topic","abstract":[{"type":"text","text":"The full 16-character hexadecimal identifier, composed of the "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/head","isActive":true},{"type":"text","text":" and "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","isActive":true},{"type":"text","text":"."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/identifier","kind":"symbol","title":"identifier","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"image"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"externalID":"s:13AmiiboService0A0V5imageSSvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"image","role":"symbol"},"abstract":[{"text":"A URL string pointing to the image of this amiibo.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"image","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/image"]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/image":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"image"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"url":"\/documentation\/amiiboservice\/amiibo\/image","type":"topic","abstract":[{"text":"A URL string pointing to the image of this amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","kind":"symbol","title":"image","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/imageURL"},"abstract":[{"text":"A URL constructed from the ","type":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","isActive":true,"type":"reference"},{"text":" string, if valid.","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"imageURL","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation3URLV","text":"URL","kind":"typeIdentifier"},{"text":"? { ","kind":"text"},{"text":"get","kind":"keyword"},{"text":" }","kind":"text"}]}],"kind":"declarations"}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"metadata":{"fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"imageURL","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation3URLV","text":"URL","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"roleHeading":"Instance Property","title":"imageURL","externalID":"s:13AmiiboService0A0V8imageURL10Foundation0D0VSgvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/imageurl"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/image":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"image"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"url":"\/documentation\/amiiboservice\/amiibo\/image","type":"topic","abstract":[{"text":"A URL string pointing to the image of this amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","kind":"symbol","title":"image","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/imageURL":{"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/imageURL","abstract":[{"text":"A URL constructed from the ","type":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/image","isActive":true,"type":"reference"},{"text":" string, if valid.","type":"text"}],"url":"\/documentation\/amiiboservice\/amiibo\/imageurl","fragments":[{"text":"var","kind":"keyword"},{"text":" ","kind":"text"},{"text":"imageURL","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation3URLV","text":"URL","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"kind":"symbol","title":"imageURL","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"abstract":[{"type":"text","text":"The name of this amiibo."}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/name","interfaceLanguage":"swift"},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"externalID":"s:13AmiiboService0A0V4nameSSvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"name","role":"symbol"},"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/name"]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/name":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"}],"url":"\/documentation\/amiiboservice\/amiibo\/name","type":"topic","abstract":[{"text":"The name of this amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/name","kind":"symbol","title":"name","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"platform","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Platform","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV"},{"text":"?","kind":"text"}],"externalID":"s:13AmiiboService0A0V8platformAC8PlatformVSgvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"platform","role":"symbol"},"abstract":[{"type":"text","text":"The game platform data for this amiibo, if available."}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"platform","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Platform","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V8PlatformV"},{"text":"?","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.property"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/platform-swift.property":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"platform","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V8PlatformV","text":"Platform","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.property","type":"topic","abstract":[{"type":"text","text":"The game platform data for this amiibo, if available."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/platform-swift.property","kind":"symbol","title":"platform","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"relationshipsSections":[{"kind":"relationships","identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"title":"Conforms To","type":"conformsTo"}],"sections":[],"kind":"symbol","identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","interfaceLanguage":"swift"},"metadata":{"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}],"roleHeading":"Structure","title":"Amiibo.Platform","navigatorTitle":[{"text":"Platform","kind":"identifier"}],"extendedModule":"AmiiboService","externalID":"s:13AmiiboService0A0V8PlatformV","symbolKind":"struct","role":"symbol","modules":[{"name":"AmiiboService"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"schemaVersion":{"minor":3,"patch":0,"major":0},"abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"type":"text","text":", "},{"type":"codeVoice","code":"Switch 2"},{"type":"text","text":", "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":", and "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Platform","kind":"identifier"}]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct"],"traits":[{"interfaceLanguage":"swift"}]}],"topicSections":[{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch2","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/threeDS","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/wiiU"],"generated":true,"anchor":"Instance-Properties","title":"Instance Properties"},{"anchor":"Default-Implementations","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/Equatable-Implementations"],"generated":true,"title":"Default Implementations"}],"seeAlsoSections":[{"anchor":"Nested-Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"],"generated":true,"title":"Nested Models"}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/threeDS":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/threeDS","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/threeds","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":" games related to an amiibo."}],"role":"symbol","title":"threeDS","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"threeDS"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","kind":"typeIdentifier","text":"Game"},{"kind":"text","text":"]"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/s8SendableP":{"identifier":"doc:\/\/AmiiboService\/s8SendableP","type":"unresolvable","title":"Swift.Sendable"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/Equatable-Implementations":{"kind":"article","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/Equatable-Implementations","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/equatable-implementatLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"lhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"rhs","kind":"internalParam"},{"text":": ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"sections":[],"kind":"symbol","metadata":{"fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"roleHeading":"Operator","title":"!=(_:_:)","extendedModule":"Swift","externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V8PlatformV","symbolKind":"op","role":"symbol","modules":[{"relatedModules":["Swift"],"name":"AmiiboService"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/!=(_:_:)":{"role":"symbol","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)","title":"!=(_:_:)","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"}}}
|
||||
-1
@@ -1 +0,0 @@
|
||||
{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/equatable-implementations"]}],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/Equatable-Implementations","interfaceLanguage":"swift"},"metadata":{"roleHeading":"API Collection","modules":[{"name":"AmiiboService"}],"title":"Equatable Implementations","role":"collectionGroup"},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)"],"anchor":"Operators","generated":true}],"kind":"article","references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/!=(_:_:)":{"role":"symbol","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/!=(_:_:)","title":"!=(_:_:)","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/!=(_:_:)","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"kind":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":" games related to an amiibo."}],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"`switch`","kind":"identifier"},{"text":": [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"},{"text":"]","kind":"text"}],"platforms":["macOS"]}],"kind":"declarations"}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"`switch`","kind":"identifier"},{"text":": [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game","kind":"typeIdentifier"},{"text":"]","kind":"text"}],"roleHeading":"Instance Property","title":"switch","externalID":"s:13AmiiboService0A0V8PlatformV6switchSayAC4GameVGvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/switch":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"Switch"},{"type":"text","text":" games related to an amiibo."}],"role":"symbol","title":"switch","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"`switch`"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","kind":"typeIdentifier","text":"Game"},{"kind":"text","text":"]"}]}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"switch2"},{"kind":"text","text":": ["},{"kind":"typeIdentifier","text":"Game","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"kind":"text","text":"]"}],"externalID":"s:13AmiiboService0A0V8PlatformV7switch2SayAC4GameVGvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"switch2","role":"symbol"},"abstract":[{"text":"A list of ","type":"text"},{"code":"Switch 2","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch2","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"switch2"},{"kind":"text","text":": ["},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","kind":"typeIdentifier","text":"Game","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"kind":"text","text":"]"}]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch2"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/switch2":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"switch2","kind":"identifier"},{"text":": [","kind":"text"},{"text":"Game","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV"},{"text":"]","kind":"text"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/switch2","type":"topic","abstract":[{"text":"A list of ","type":"text"},{"code":"Switch 2","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/switch2","kind":"symbol","title":"switch2","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/threeDS","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":" games related to an amiibo."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"threeDS","kind":"identifier"},{"text":": [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"},{"text":"]","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"sections":[],"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"threeDS","kind":"identifier"},{"text":": [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game","kind":"typeIdentifier"},{"text":"]","kind":"text"}],"roleHeading":"Instance Property","title":"threeDS","externalID":"s:13AmiiboService0A0V8PlatformV7threeDSSayAC4GameVGvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/threeds"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/threeDS":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/threeDS","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/threeds","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"3DS"},{"type":"text","text":" games related to an amiibo."}],"role":"symbol","title":"threeDS","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"threeDS"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","kind":"typeIdentifier","text":"Game"},{"kind":"text","text":"]"}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/wiiU","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"A list of "},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"schemaVersion":{"patch":0,"minor":3,"major":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"wiiU"},{"text":": [","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game"},{"text":"]","kind":"text"}]}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct"]]},"metadata":{"title":"wiiU","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A0V8PlatformV4wiiUSayAC4GameVGvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"wiiU"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","text":"Game","kind":"typeIdentifier"},{"kind":"text","text":"]"}]},"sections":[],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/wiiu"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct/wiiU":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct\/wiiU","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct\/wiiu","abstract":[{"type":"text","text":"A list of "},{"type":"codeVoice","code":"Wii U"},{"type":"text","text":" games related to an amiibo."}],"role":"symbol","title":"wiiU","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"wiiU"},{"kind":"text","text":": ["},{"preciseIdentifier":"s:13AmiiboService0A0V4GameV","kind":"typeIdentifier","text":"Game"},{"kind":"text","text":"]"}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"abstract":[{"text":"The release dates of this amiibo across different regions.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/release-swift.property","interfaceLanguage":"swift"},"metadata":{"externalID":"s:13AmiiboService0A0V7releaseAC7ReleaseVvp","symbolKind":"property","title":"release","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"release","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Release","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V7ReleaseV"}],"roleHeading":"Instance Property","modules":[{"name":"AmiiboService"}],"role":"symbol"},"sections":[],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"release"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A0V7ReleaseV","text":"Release","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.property"]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/release-swift.property":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"release"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Release","preciseIdentifier":"s:13AmiiboService0A0V7ReleaseV"}],"url":"\/documentation\/amiiboservice\/amiibo\/release-swift.property","type":"topic","abstract":[{"type":"text","text":"The release dates of this amiibo across different regions."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/release-swift.property","kind":"symbol","title":"release","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"externalID":"s:13AmiiboService0A0V7ReleaseV","symbolKind":"struct","extendedModule":"AmiiboService","navigatorTitle":[{"text":"Release","kind":"identifier"}],"modules":[{"name":"AmiiboService"}],"roleHeading":"Structure","title":"Amiibo.Release","role":"symbol"},"relationshipsSections":[{"identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"type":"conformsTo","title":"Conforms To","kind":"relationships"}],"seeAlsoSections":[{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"],"anchor":"Nested-Models","title":"Nested Models","generated":true}],"abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}],"topicSections":[{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/america","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/australia","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/europe","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/japan"],"anchor":"Instance-Properties","title":"Instance Properties","generated":true},{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/Equatable-Implementations"],"anchor":"Default-Implementations","title":"Default Implementations","generated":true}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","interfaceLanguage":"swift"},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Release","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]},{"content":[{"type":"heading","text":"Overview","anchor":"overview","level":2},{"type":"paragraph","inlineContent":[{"type":"text","text":"The service provides these dates as date-only values, which are decoded as midnight UTC."}]}],"kind":"content"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Game":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"Game"}],"url":"\/documentation\/amiiboservice\/amiibo\/game","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","abstract":[{"text":"A model that represents a game related to an amiibo.","type":"text"}],"type":"topic","title":"Amiibo.Game","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Game"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/japan":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"japan"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"kind":"text","text":"?"}],"url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/japan","type":"topic","abstract":[{"type":"text","text":"A release date for Japan, if any."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/japan","kind":"symbol","title":"japan","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/s8SendableP":{"type":"unresolvable","title":"Swift.Sendable","identifier":"doc:\/\/AmiiboService\/s8SendableP"},"doc://AmiiboService/SQ":{"type":"unresolvable","title":"Swift.Equatable","identifier":"doc:\/\/AmiiboService\/SQ"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentatioLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)","interfaceLanguage":"swift"},"metadata":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V7ReleaseV","symbolKind":"op","extendedModule":"Swift","modules":[{"name":"AmiiboService","relatedModules":["Swift"]}],"roleHeading":"Operator","title":"!=(_:_:)","role":"symbol"},"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"text":", ","kind":"text"},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}],"languages":["swift"],"platforms":["macOS"]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/!=(_:_:)","type":"topic","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)","kind":"symbol","title":"!=(_:_:)","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"america"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"kind":"text","text":"?"}],"platforms":["macOS"],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"A release date for North America, if any."}],"kind":"symbol","identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/america","interfaceLanguage":"swift"},"schemaVersion":{"major":0,"patch":0,"minor":3},"metadata":{"title":"america","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A0V7ReleaseV7america10Foundation4DateVSgvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"america","kind":"identifier"},{"text":": ","kind":"text"},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"},{"text":"?","kind":"text"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/america"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/america":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"america","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/america","type":"topic","abstract":[{"type":"text","text":"A release date for North America, if any."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/america","kind":"symbol","title":"america","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"australia"},{"text":": ","kind":"text"},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"abstract":[{"text":"A release date for Australia, if any.","type":"text"}],"kind":"symbol","identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/australia","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"metadata":{"title":"australia","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A0V7ReleaseV9australia10Foundation4DateVSgvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"kind":"identifier","text":"australia"},{"kind":"text","text":": "},{"text":"Date","preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier"},{"text":"?","kind":"text"}]},"schemaVersion":{"patch":0,"major":0,"minor":3},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/australia"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/australia":{"role":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/australia","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/australia","abstract":[{"type":"text","text":"A release date for Australia, if any."}],"type":"topic","title":"australia","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"australia","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"Date","preciseIdentifier":"s:10Foundation4DateV"},{"text":"?","kind":"text"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
-1
@@ -1 +0,0 @@
|
||||
{"metadata":{"title":"Equatable Implementations","modules":[{"name":"AmiiboService"}],"role":"collectionGroup","roleHeading":"API Collection"},"topicSections":[{"title":"Operators","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)"],"anchor":"Operators","generated":true}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/Equatable-Implementations","interfaceLanguage":"swift"},"sections":[],"kind":"article","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/equatable-implementations"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/!=(_:_:)":{"fragments":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","preciseIdentifier":"s:Sb","text":"Bool"}],"url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/!=(_:_:)","type":"topic","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/!=(_:_:)","kind":"symbol","title":"!=(_:_:)","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/europe","interfaceLanguage":"swift"},"abstract":[{"text":"A release date for Europe, if any.","type":"text"}],"schemaVersion":{"major":0,"minor":3,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"europe","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","kind":"typeIdentifier","text":"Date"},{"text":"?","kind":"text"}]}],"kind":"declarations"}],"sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"europe","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"text":"?","kind":"text"}],"externalID":"s:13AmiiboService0A0V7ReleaseV6europe10Foundation4DateVSgvp","symbolKind":"property","modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Property","title":"europe","role":"symbol"},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/europe"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/europe":{"abstract":[{"text":"A release date for Europe, if any.","type":"text"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/europe","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/europe","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"europe"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"text":"?","kind":"text"}],"kind":"symbol","title":"europe","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/japan","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"A release date for Japan, if any."}],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"japan"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Date","preciseIdentifier":"s:10Foundation4DateV"},{"kind":"text","text":"?"}],"platforms":["macOS"]}]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"]]},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"japan"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"kind":"text","text":"?"}],"modules":[{"name":"AmiiboService"}],"symbolKind":"property","title":"japan","role":"symbol","externalID":"s:13AmiiboService0A0V7ReleaseV5japan10Foundation4DateVSgvp","roleHeading":"Instance Property"},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/japan"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct/japan":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"japan"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:10Foundation4DateV","text":"Date"},{"kind":"text","text":"?"}],"url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct\/japan","type":"topic","abstract":[{"type":"text","text":"A release date for Japan, if any."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct\/japan","kind":"symbol","title":"japan","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/series","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"The name of the amiibo series this amiibo belongs to."}],"schemaVersion":{"major":0,"patch":0,"minor":3},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"series","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}],"kind":"declarations"}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"series","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Instance Property","title":"series","externalID":"s:13AmiiboService0A0V6seriesSSvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/series"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/series":{"title":"series","abstract":[{"type":"text","text":"The name of the amiibo series this amiibo belongs to."}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/series","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/series","role":"symbol","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"series"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"}]}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"tail","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}]}],"abstract":[{"type":"text","text":"The last 8 hexadecimal characters of the amiibo identifier."}],"kind":"symbol","schemaVersion":{"patch":0,"minor":3,"major":0},"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"tail","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Instance Property","title":"tail","externalID":"s:13AmiiboService0A0V4tailSSvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/tail"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/tail":{"fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"}],"url":"\/documentation\/amiiboservice\/amiibo\/tail","type":"topic","abstract":[{"type":"text","text":"The last 8 hexadecimal characters of the amiibo identifier."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/tail","kind":"symbol","title":"tail","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"type","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}],"platforms":["macOS"],"languages":["swift"]}],"kind":"declarations"}],"abstract":[{"type":"text","text":"The type of this amiibo (e.g., Figure, Card, Yarn, Band)."}],"kind":"symbol","identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/type","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"metadata":{"title":"type","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A0V4typeSSvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"type","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"}]},"schemaVersion":{"minor":3,"patch":0,"major":0},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/type"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/type":{"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/type","abstract":[{"type":"text","text":"The type of this amiibo (e.g., Figure, Card, Yarn, Band)."}],"url":"\/documentation\/amiiboservice\/amiibo\/type","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"type","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"kind":"symbol","title":"type","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"relationshipsSections":[{"type":"conformsTo","title":"Conforms To","kind":"relationships","identifiers":["doc:\/\/AmiiboService\/SQ","doc:\/\/AmiiboService\/SH","doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Usage","kind":"identifier"}],"platforms":["macOS"],"languages":["swift"]}]}],"abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"]]},"metadata":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Usage","kind":"identifier"}],"externalID":"s:13AmiiboService0A0V5UsageV","symbolKind":"struct","extendedModule":"AmiiboService","navigatorTitle":[{"text":"Usage","kind":"identifier"}],"modules":[{"name":"AmiiboService"}],"roleHeading":"Structure","title":"Amiibo.Usage","role":"symbol"},"topicSections":[{"anchor":"Instance-Properties","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/explanation","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/isWriteable"],"generated":true,"title":"Instance Properties"},{"anchor":"Default-Implementations","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/Equatable-Implementations"],"generated":true,"title":"Default Implementations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/usage"]}],"seeAlsoSections":[{"anchor":"Nested-Models","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Game","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct"],"generated":true,"title":"Nested Models"}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Platform-swift.struct":{"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Platform"}],"url":"\/documentation\/amiiboservice\/amiibo\/platform-swift.struct","navigatorTitle":[{"kind":"identifier","text":"Platform"}],"type":"topic","abstract":[{"text":"A model that represents a collection of ","type":"text"},{"type":"codeVoice","code":"Switch"},{"text":", ","type":"text"},{"type":"codeVoice","code":"Switch 2"},{"text":", ","type":"text"},{"type":"codeVoice","code":"3DS"},{"text":", and ","type":"text"},{"code":"Wii U","type":"codeVoice"},{"text":" games related to an amiibo.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Platform-swift.struct","kind":"symbol","title":"Amiibo.Platform","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/Equatable-Implementations":{"type":"topic","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/Equatable-Implementations","url":"\/documentation\/amiiboservice\/amiibo\/usage\/equatable-implementations","kind":"article","title":"Equatable Implementations","role":"collectionGroup"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Release-swift.struct":{"type":"topic","navigatorTitle":[{"kind":"identifier","text":"Release"}],"title":"Amiibo.Release","kind":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Release","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Release-swift.struct","url":"\/documentation\/amiiboservice\/amiibo\/release-swift.struct","role":"symbol","abstract":[{"type":"text","text":"A model that represents the regional release dates of an amiibo."}]},"doc://AmiiboService/SQ":{"type":"unresolvable","title":"Swift.Equatable","identifier":"doc:\/\/AmiiboService\/SQ"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a cerLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"static"},{"kind":"text","text":" "},{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"!="},{"kind":"text","text":" "},{"kind":"text","text":"("},{"kind":"internalParam","text":"lhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":", "},{"kind":"internalParam","text":"rhs"},{"kind":"text","text":": "},{"kind":"keyword","text":"borrowing"},{"kind":"text","text":" "},{"kind":"typeIdentifier","text":"Self"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Bool","preciseIdentifier":"s:Sb"}]}],"kind":"declarations"}],"kind":"symbol","schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"metadata":{"title":"!=(_:_:)","modules":[{"relatedModules":["Swift"],"name":"AmiiboService"}],"extendedModule":"Swift","role":"symbol","externalID":"s:SQsRi_zRi0_zrlE2neoiySbx_xtFZ::SYNTHESIZED::s:13AmiiboService0A0V5UsageV","symbolKind":"op","roleHeading":"Operator","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","preciseIdentifier":"s:Sb","kind":"typeIdentifier"}]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/!=(_:_:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"role":"symbol","title":"Amiibo.Usage","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"navigatorTitle":[{"kind":"identifier","text":"Usage"}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/usage\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"kind":"article","schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/Equatable-Implementations","interfaceLanguage":"swift"},"metadata":{"roleHeading":"API Collection","modules":[{"name":"AmiiboService"}],"title":"Equatable Implementations","role":"collectionGroup"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"topicSections":[{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)"],"anchor":"Operators","title":"Operators","generated":true}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/equatable-implementations"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"role":"symbol","title":"Amiibo.Usage","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"navigatorTitle":[{"kind":"identifier","text":"Usage"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/!=(_:_:)":{"title":"!=(_:_:)","type":"topic","abstract":[],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/!=(_:_:)","kind":"symbol","url":"\/documentation\/amiiboservice\/amiibo\/usage\/!=(_:_:)","role":"symbol","fragments":[{"text":"static","kind":"keyword"},{"text":" ","kind":"text"},{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"!=","kind":"identifier"},{"text":" ","kind":"text"},{"text":"(","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":", ","kind":"text"},{"text":"borrowing","kind":"keyword"},{"text":" ","kind":"text"},{"text":"Self","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"}]}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/explanation"},"abstract":[{"text":"A description of how the amiibo is used within the game.","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"explanation","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}]}],"kind":"declarations"}],"sections":[],"kind":"symbol","metadata":{"fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"explanation","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"roleHeading":"Instance Property","title":"explanation","externalID":"s:13AmiiboService0A0V5UsageV11explanationSSvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/explanation"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"role":"symbol","title":"Amiibo.Usage","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"navigatorTitle":[{"kind":"identifier","text":"Usage"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/explanation":{"abstract":[{"text":"A description of how the amiibo is used within the game.","type":"text"}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/explanation","url":"\/documentation\/amiiboservice\/amiibo\/usage\/explanation","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"explanation","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"}],"kind":"symbol","title":"explanation","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"role":"symbol","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"isWriteable","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}],"title":"isWriteable","roleHeading":"Instance Property","modules":[{"name":"AmiiboService"}],"externalID":"s:13AmiiboService0A0V5UsageV11isWriteableSbvp","symbolKind":"property"},"abstract":[{"type":"text","text":"A flag that indicates whether the amiibo can save game data."}],"schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/isWriteable","interfaceLanguage":"swift"},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"isWriteable","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"}]}]}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibo\/usage\/iswriteable"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/Amiibo":{"fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"Amiibo","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibo","navigatorTitle":[{"kind":"identifier","text":"Amiibo"}],"type":"topic","abstract":[{"type":"text","text":"A model that represents an amiibo."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo","kind":"symbol","title":"Amiibo","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage/isWriteable":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage\/isWriteable","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage\/iswriteable","abstract":[{"type":"text","text":"A flag that indicates whether the amiibo can save game data."}],"role":"symbol","title":"isWriteable","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"isWriteable"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"}]},"doc://AmiiboService/documentation/AmiiboService/Amiibo/Usage":{"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo\/Usage","type":"topic","url":"\/documentation\/amiiboservice\/amiibo\/usage","abstract":[{"type":"text","text":"A model that represents the usage of an amiibo within a certain game."}],"role":"symbol","title":"Amiibo.Usage","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"Usage"}],"navigatorTitle":[{"kind":"identifier","text":"Usage"}]}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"relationshipsSections":[{"type":"inheritsFrom","title":"Inherits From","kind":"relationships","identifiers":["doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"]},{"type":"conformingTypes","title":"Conforming Types","kind":"relationships","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient"]}],"sections":[],"kind":"symbol","identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"},"metadata":{"fragments":[{"text":"protocol","kind":"keyword"},{"kind":"text","text":" "},{"text":"AmiiboClient","kind":"identifier"}],"roleHeading":"Protocol","title":"AmiiboClient","navigatorTitle":[{"kind":"identifier","text":"AmiiboClient"}],"externalID":"s:13AmiiboService0A6ClientP","symbolKind":"protocol","role":"symbol","modules":[{"name":"AmiiboService"}]},"schemaVersion":{"major":0,"minor":3,"patch":0},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService"]]},"abstract":[{"type":"text","text":"A protocol that defines API clients containing all available endpoints to interact with."}],"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"protocol","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboClient","kind":"identifier"},{"text":" : ","kind":"text"},{"text":"Sendable","preciseIdentifier":"s:s8SendableP","kind":"typeIdentifier"}]}]},{"content":[{"level":2,"text":"Overview","anchor":"overview","type":"heading"},{"inlineContent":[{"type":"text","text":"Conforming types must be "},{"type":"codeVoice","code":"Sendable"},{"type":"text","text":", as clients are expected to be used safely across concurrency domains."}],"type":"paragraph"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiiboclient"],"traits":[{"interfaceLanguage":"swift"}]}],"topicSections":[{"title":"Amiibo endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)"],"anchor":"Amiibo-endpoints"},{"title":"Game endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameCharacters(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameSeries(by:)"],"anchor":"Game-endpoints"},{"title":"System endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getLastUpdated()"],"anchor":"System-endpoints"}],"seeAlsoSections":[{"title":"Clients","anchor":"Clients","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient"],"generated":true}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"kind":"symbol","type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"inlineContent":[{"type":"text","text":"Amiibo API"}],"type":"strong"},{"text":" backend service.","type":"text"}],"url":"\/documentation\/amiiboservice","role":"collection","title":"AmiiboService"},"doc://AmiiboService/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/AmiiboService\/s8SendableP","title":"Swift.Sendable"},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getAmiibos(by:)":{"required":true,"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getAmiibos","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"by"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A6FilterV","text":"AmiiboFilter","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"kind":"text","text":" "},{"text":"throws","kind":"keyword"},{"kind":"text","text":"("},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","text":"Amiibo","preciseIdentifier":"s:13AmiiboService0A0V"},{"kind":"text","text":"]"}],"url":"\/documentation\/amiiboservice\/amiiboclient\/getamiibos(by:)","role":"symbol","type":"topic","title":"getAmiibos(by:)","abstract":[{"text":"Gets a list of amiibo items based on a given filter.","type":"text"}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)"},"https://www.amiiboapi.org":{"type":"link","identifier":"https:\/\/www.amiiboapi.org","title":"Amiibo API","titleInlineContent":[{"text":"Amiibo API","type":"text"}],"url":"https:\/\/www.amiiboapi.org"},"doc://AmiiboService/documentation/AmiiboService/AmiiboLiveClient":{"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboLiveClient","kind":"identifier"}],"url":"\/documentation\Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Gets a list of amiibo items based on a given filter."}],"schemaVersion":{"patch":0,"major":0,"minor":3},"seeAlsoSections":[{"generated":true,"anchor":"Amiibo-endpoints","title":"Amiibo endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)"]}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiibos","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"filter","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A6FilterV","text":"AmiiboFilter","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError"},{"text":") -> [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V","text":"Amiibo","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/Amiibo"},{"text":"]","kind":"text"}],"platforms":["macOS"]}],"kind":"declarations"},{"parameters":[{"name":"filter","content":[{"inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}],"type":"paragraph"}]}],"kind":"parameters"},{"kind":"content","content":[{"type":"heading","level":2,"text":"Return Value","anchor":"return-value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"A list of filtered amiibo items."}]}]},{"kind":"content","content":[{"type":"heading","level":2,"text":"Discussion","anchor":"discussion"},{"type":"aside","style":"note","name":"Throws","content":[{"inlineContent":[{"type":"text","text":"An "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}],"type":"paragraph"}]}]}],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"metadata":{"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiibos","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A6FilterV","text":"AmiiboFilter","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier"},{"text":") -> [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A0V","text":"Amiibo","kind":"typeIdentifier"},{"text":"]","kind":"text"}],"roleHeading":"Instance Method","title":"getAmiibos(by:)","externalID":"s:13AmiiboService0A6ClientP10getAmiibos2bySayAA0A0VGAA0A6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method","required":true,"role":"symbol","modules":[{"name":"AmiiboService"}]},"sections":[],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getamiibos(by:)"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"type":"topic","navigatorTitle":[{"text":"AmiiboService","kind":"identifier"}],"title":"AmiiboService","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"AmiiboService","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","url":"\/documentation\/amiiboservice\/amiiboservice","role":"symbol","abstract":[{"text":"A type that implements the service that uses a client to make calls.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboServiceError":{"fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboServiceError"}],"url":"\/documentation\/amiiboservice\/amiiboserviceerror","role":"symbol","type":"topic","title":"AmiiboServiceError","abstract":[{"type":"text","text":"A representation of all the possible errors that the "},{"isActive":true,"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService"},{"type":"text","text":" service could throw."}],"kind":"symbol","navigatorTitle":[{"text":"AmiiboLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)"},"abstract":[{"text":"Gets a list of amiibo series based on a given filter.","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"seeAlsoSections":[{"title":"Amiibo endpoints","anchor":"Amiibo-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)"],"generated":true}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiiboSeries","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"filter","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A12SeriesFilterV","text":"AmiiboSeriesFilter","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeriesFilter"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError"},{"text":") -> [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A6SeriesV","text":"AmiiboSeries","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeries"},{"text":"]","kind":"text"}]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}],"type":"paragraph"}],"name":"filter"}]},{"kind":"content","content":[{"level":2,"text":"Return Value","anchor":"return-value","type":"heading"},{"inlineContent":[{"type":"text","text":"A list of filtered amiibo series."}],"type":"paragraph"}]},{"kind":"content","content":[{"level":2,"text":"Discussion","anchor":"discussion","type":"heading"},{"name":"Throws","style":"note","content":[{"inlineContent":[{"type":"text","text":"An "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}],"type":"paragraph"}],"type":"aside"}]}],"sections":[],"kind":"symbol","metadata":{"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiiboSeries","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"AmiiboSeriesFilter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A12SeriesFilterV"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"text":"AmiiboServiceError","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"text":") -> [","kind":"text"},{"text":"AmiiboSeries","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A6SeriesV"},{"text":"]","kind":"text"}],"roleHeading":"Instance Method","title":"getAmiiboSeries(by:)","externalID":"s:13AmiiboService0A6ClientP03getA6Series2bySayAA0aE0VGAA0aE6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method","required":true,"role":"symbol","modules":[{"name":"AmiiboService"}]},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getamiiboseries(by:)"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"type":"topic","navigatorTitle":[{"text":"AmiiboService","kind":"identifier"}],"title":"AmiiboService","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"AmiiboService","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","url":"\/documentation\/amiiboservice\/amiiboservice","role":"symbol","abstract":[{"text":"A type that implements the service that uses a client to make calls.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getAmiiboSeries(by:)":{"required":true,"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiiboSeries","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0A12SeriesFilterV","text":"AmiiboSeriesFilter","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kiLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"kind":"keyword","text":"func"},{"text":" ","kind":"text"},{"text":"getAmiiboTypes","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"kind":"text","text":": "},{"text":"AmiiboTypeFilter","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A10TypeFilterV"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","text":"AmiiboServiceError","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","text":"AmiiboType","preciseIdentifier":"s:13AmiiboService0A4TypeV"},{"text":"]","kind":"text"}],"externalID":"s:13AmiiboService0A6ClientP03getA5Types2bySayAA0A4TypeVGAA0aG6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method","required":true,"modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Method","title":"getAmiiboTypes(by:)","role":"symbol"},"seeAlsoSections":[{"title":"Amiibo endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiibos(by:)","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboSeries(by:)"],"anchor":"Amiibo-endpoints","generated":true}],"abstract":[{"text":"Gets a list of amiibo types based on a given filter.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getAmiiboTypes(by:)","interfaceLanguage":"swift"},"schemaVersion":{"patch":0,"minor":3,"major":0},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getAmiiboTypes","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"filter","kind":"internalParam"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboTypeFilter","kind":"typeIdentifier","text":"AmiiboTypeFilter","preciseIdentifier":"s:13AmiiboService0A10TypeFilterV"},{"text":") ","kind":"text"},{"kind":"keyword","text":"async"},{"text":" ","kind":"text"},{"kind":"keyword","text":"throws"},{"text":"(","kind":"text"},{"text":"AmiiboServiceError","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO"},{"text":") -> [","kind":"text"},{"text":"AmiiboType","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboType","kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0A4TypeV"},{"text":"]","kind":"text"}]}]},{"parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}]}],"name":"filter"}],"kind":"parameters"},{"content":[{"type":"heading","anchor":"return-value","level":2,"text":"Return Value"},{"type":"paragraph","inlineContent":[{"type":"text","text":"A list of filtered amiibo types."}]}],"kind":"content"},{"content":[{"type":"heading","anchor":"discussion","level":2,"text":"Discussion"},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"An "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}]}],"name":"Throws","type":"aside","style":"note"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiiboclient\/getamiibotypes(by:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/AmiiboType":{"role":"symbol","navigatorTitle":[{"text":"AmiiboType","kind":"identifier"}],"abstract":[{"text":"A model that represents an amiibo type.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboType","title":"AmiiboType","type":"topic","url":"\/documentation\/amiiboservice\/amiibotype","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboType","kind":"identifier"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getAmiibos(by:)":{"required":true,"fragments":[{"kind":"keyword","text":"func"}Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getGameCharacters"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService19GameCharacterFilterV","text":"GameCharacterFilter"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService13GameCharacterV","text":"GameCharacter"},{"kind":"text","text":"]"}],"externalID":"s:13AmiiboService0A6ClientP17getGameCharacters2bySayAA0E9CharacterVGAA0eH6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method","required":true,"modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Method","title":"getGameCharacters(by:)","role":"symbol"},"seeAlsoSections":[{"title":"Game endpoints","anchor":"Game-endpoints","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameSeries(by:)"],"generated":true}],"abstract":[{"text":"Gets a list of game characters based on a given filter.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameCharacters(by:)","interfaceLanguage":"swift"},"schemaVersion":{"minor":3,"major":0,"patch":0},"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getGameCharacters","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"filter","kind":"internalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:13AmiiboService19GameCharacterFilterV","text":"GameCharacterFilter","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacterFilter"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError"},{"text":") -> [","kind":"text"},{"preciseIdentifier":"s:13AmiiboService13GameCharacterV","text":"GameCharacter","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacter"},{"text":"]","kind":"text"}]}],"kind":"declarations"},{"parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}]}],"name":"filter"}],"kind":"parameters"},{"content":[{"anchor":"return-value","text":"Return Value","type":"heading","level":2},{"inlineContent":[{"type":"text","text":"A list of filtered game characters."}],"type":"paragraph"}],"kind":"content"},{"content":[{"anchor":"discussion","text":"Discussion","type":"heading","level":2},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"An "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}]}],"name":"Throws","type":"aside","style":"note"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiiboclient\/getgamecharacters(by:)"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"type":"topic","navigatorTitle":[{"text":"AmiiboService","kind":"identifier"}],"title":"AmiiboService","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"AmiiboService","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","url":"\/documentation\/amiiboservice\/amiiboservice","role":"symbol","abstract":[{"text":"A type that implements the service that uses a client to make calls.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getGameSeries(by:)":{"required":true,"fragLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"metadata":{"fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getGameSeries"},{"kind":"text","text":"("},{"kind":"externalParam","text":"by"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService16GameSeriesFilterV","text":"GameSeriesFilter"},{"kind":"text","text":") "},{"kind":"keyword","text":"async"},{"kind":"text","text":" "},{"kind":"keyword","text":"throws"},{"kind":"text","text":"("},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError"},{"kind":"text","text":") -> ["},{"kind":"typeIdentifier","preciseIdentifier":"s:13AmiiboService10GameSeriesV","text":"GameSeries"},{"kind":"text","text":"]"}],"externalID":"s:13AmiiboService0A6ClientP13getGameSeries2bySayAA0eF0VGAA0eF6FilterV_tYaAA0aB5ErrorOYKF","symbolKind":"method","required":true,"modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Method","title":"getGameSeries(by:)","role":"symbol"},"seeAlsoSections":[{"identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameCharacters(by:)"],"anchor":"Game-endpoints","generated":true,"title":"Game endpoints"}],"abstract":[{"text":"Gets a list of game series based on a given filter.","type":"text"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getGameSeries(by:)","interfaceLanguage":"swift"},"sections":[],"kind":"symbol","hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getGameSeries","kind":"identifier"},{"text":"(","kind":"text"},{"text":"by","kind":"externalParam"},{"text":" ","kind":"text"},{"text":"filter","kind":"internalParam"},{"text":": ","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeriesFilter","preciseIdentifier":"s:13AmiiboService16GameSeriesFilterV","text":"GameSeriesFilter","kind":"typeIdentifier"},{"text":") ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier"},{"text":") -> [","kind":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeries","preciseIdentifier":"s:13AmiiboService10GameSeriesV","text":"GameSeries","kind":"typeIdentifier"},{"kind":"text","text":"]"}]}]},{"kind":"parameters","parameters":[{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"A filter to remove unwanted items from the result."}]}],"name":"filter"}]},{"content":[{"type":"heading","text":"Return Value","anchor":"return-value","level":2},{"type":"paragraph","inlineContent":[{"text":"A list of filtered game series.","type":"text"}]}],"kind":"content"},{"content":[{"type":"heading","text":"Discussion","anchor":"discussion","level":2},{"type":"aside","style":"note","name":"Throws","content":[{"type":"paragraph","inlineContent":[{"text":"An ","type":"text"},{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true,"type":"reference"},{"type":"text","text":" error in case some issue is encountered while generating the result."}]}]}],"kind":"content"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboclient\/getgameseries(by:)"]}],"references":{"doc://AmiiboService/documentation/AmiiboService/GameSeries":{"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeries","abstract":[{"text":"A model that represents a game series.","type":"text"}],"url":"\/documentation\/amiiboservice\/gameseries","fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"GameSeries","kind":"identifier"}],"kind":"symbol","title":"GameSeries","navigatorTitle":[{"text":"GameSeries","kind":"identifier"}],"role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboService":{"type":"topic","navigatorTitle":[{"text":"AmiiboService","kind":"identifier"}],"title":"AmiiboService","kind":"symbol","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"text":"AmiiboService","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService","url":"\/documentation\/amiiboservice\/amiiboservice","role":"symbol","abstract":[{"text":"A type that implements the service that uses a client to make calls.","type":"text"}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everytLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient"]]},"abstract":[{"type":"text","text":"Gets the date when the data was last updated."}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getLastUpdated()","interfaceLanguage":"swift"},"metadata":{"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getLastUpdated","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"}],"externalID":"s:13AmiiboService0A6ClientP14getLastUpdated10Foundation4DateVyYaAA0aB5ErrorOYKF","symbolKind":"method","required":true,"modules":[{"name":"AmiiboService"}],"roleHeading":"Instance Method","title":"getLastUpdated()","role":"symbol"},"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getLastUpdated","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"}]}],"kind":"declarations"},{"content":[{"anchor":"return-value","text":"Return Value","type":"heading","level":2},{"inlineContent":[{"type":"text","text":"A last updated date, decoded as UTC."}],"type":"paragraph"}],"kind":"content"},{"content":[{"anchor":"discussion","text":"Discussion","type":"heading","level":2},{"content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"An "},{"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError","isActive":true},{"type":"text","text":" error in case some issue is encountered while generating the result."}]}],"name":"Throws","type":"aside","style":"note"}],"kind":"content"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiiboclient\/getlastupdated()"],"traits":[{"interfaceLanguage":"swift"}]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboServiceError":{"fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"AmiiboServiceError"}],"url":"\/documentation\/amiiboservice\/amiiboserviceerror","role":"symbol","type":"topic","title":"AmiiboServiceError","abstract":[{"type":"text","text":"A representation of all the possible errors that the "},{"isActive":true,"type":"reference","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboService"},{"type":"text","text":" service could throw."}],"kind":"symbol","navigatorTitle":[{"text":"AmiiboServiceError","kind":"identifier"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboServiceError"},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient/getLastUpdated()":{"required":true,"fragments":[{"text":"func","kind":"keyword"},{"text":" ","kind":"text"},{"text":"getLastUpdated","kind":"identifier"},{"text":"() ","kind":"text"},{"text":"async","kind":"keyword"},{"text":" ","kind":"text"},{"text":"throws","kind":"keyword"},{"text":"(","kind":"text"},{"preciseIdentifier":"s:13AmiiboService0aB5ErrorO","text":"AmiiboServiceError","kind":"typeIdentifier"},{"text":") -> ","kind":"text"},{"preciseIdentifier":"s:10Foundation4DateV","text":"Date","kind":"typeIdentifier"}],"url":"\/documentation\/amiiboservice\/amiiboclient\/getlastupdated()","role":"symbol","type":"topic","title":"getLastUpdated()","abstract":[{"type":"text","text":"Gets the date when the data was last updated."}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboClient\/getLastUpdated()"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/AmiiboClient":{"fragments":[{"text":"protocol","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboClient","kind":"identifier"}],"url":"Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"},"abstract":[{"text":"A type that contains values to fine-tune a response when requesting amiibo items.","type":"text"}],"schemaVersion":{"minor":3,"major":0,"patch":0},"seeAlsoSections":[{"title":"Filters","anchor":"Filters","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboSeriesFilter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboTypeFilter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameCharacterFilter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/GameSeriesFilter"],"generated":true}],"primaryContentSections":[{"declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboFilter","kind":"identifier"}]}],"kind":"declarations"}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService"]]},"metadata":{"fragments":[{"text":"struct","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AmiiboFilter","kind":"identifier"}],"roleHeading":"Structure","title":"AmiiboFilter","navigatorTitle":[{"text":"AmiiboFilter","kind":"identifier"}],"externalID":"s:13AmiiboService0A6FilterV","symbolKind":"struct","role":"symbol","modules":[{"name":"AmiiboService"}]},"topicSections":[{"title":"Initializers","anchor":"Initializers","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/init(head:tail:identifier:name:type:series:gameCharacter:gameSeries:showGames:showUsage:)"],"generated":true},{"title":"Instance Properties","anchor":"Instance-Properties","identifiers":["doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameCharacter","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameSeries","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/head","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/identifier","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/name","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/series","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showUsage","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/tail","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/type"],"generated":true}],"relationshipsSections":[{"title":"Conforms To","type":"conformsTo","identifiers":["doc:\/\/AmiiboService\/s8SendableP","doc:\/\/AmiiboService\/s16SendableMetatypeP"],"kind":"relationships"}],"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/showGames":{"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/showGames","abstract":[{"text":"A flag indicating whether to include games in the response, if any.","type":"text"}],"url":"\/documentation\/amiiboservice\/amiibofilter\/showgames","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"showGames","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"kind":"symbol","title":"showGames","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/identifier":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"identifier","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"url":"\/documentation\/amiiboservice\/amiibofilter\/identifier","type":"topic","abstract":[{"type":"text","text":"An amiibo identifier to filter the result, if any."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/identifier","kind":"symbol","title":"identifier","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/tail":{"role":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/tail","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/tail","abstract":[{"text":"A last part of an identifier to filter the result, if any.","type":"text"}],"type":"topic","title":"tail","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"tail"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"?"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/GameCharacterFilter":{"role":"symbol","navigatorTitle":[{"kind":"identifier","text":"GameCharacterFilter"}],"abstract":[{"type":"text","text":"A type that contains values to fine-tune a response when requesting game characters."}],"title":"GameCharacLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"abstract":[{"type":"text","text":"A game character to filter the result, if any."}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameCharacter","interfaceLanguage":"swift"},"metadata":{"externalID":"s:13AmiiboService0A6FilterV13gameCharacterSSSgvp","title":"gameCharacter","symbolKind":"property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameCharacter"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"kind":"text","text":"?"}],"roleHeading":"Instance Property","modules":[{"name":"AmiiboService"}],"role":"symbol"},"sections":[],"schemaVersion":{"minor":3,"major":0,"patch":0},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameCharacter","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/gamecharacter"]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/gameCharacter":{"role":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/gamecharacter","abstract":[{"text":"A game character to filter the result, if any.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameCharacter","type":"topic","title":"gameCharacter","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameCharacter","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"role":"symbol","navigatorTitle":[{"text":"AmiiboFilter","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibofilter","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","title":"AmiiboFilter","abstract":[{"type":"text","text":"A type that contains values to fine-tune a response when requesting amiibo items."}],"type":"topic","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"AmiiboFilter","kind":"identifier"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"abstract":[{"text":"A game series to filter the result, if any.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameSeries","interfaceLanguage":"swift"},"metadata":{"symbolKind":"property","title":"gameSeries","externalID":"s:13AmiiboService0A6FilterV10gameSeriesSSSgvp","fragments":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"gameSeries"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"kind":"text","text":"?"}],"roleHeading":"Instance Property","modules":[{"name":"AmiiboService"}],"role":"symbol"},"sections":[],"schemaVersion":{"minor":3,"patch":0,"major":0},"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameSeries","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}]}],"kind":"declarations"}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiibofilter\/gameseries"]}],"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/gameSeries":{"role":"symbol","url":"\/documentation\/amiiboservice\/amiibofilter\/gameseries","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/gameSeries","title":"gameSeries","abstract":[{"type":"text","text":"A game series to filter the result, if any."}],"type":"topic","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"gameSeries","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"role":"symbol","navigatorTitle":[{"text":"AmiiboFilter","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibofilter","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","title":"AmiiboFilter","abstract":[{"type":"text","text":"A type that contains values to fine-tune a response when requesting amiibo items."}],"type":"topic","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"AmiiboFilter","kind":"identifier"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"head","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","preciseIdentifier":"s:SS","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"platforms":["macOS"]}]}],"abstract":[{"type":"text","text":"A first part of an identifier to filter the result, if any."}],"kind":"symbol","schemaVersion":{"minor":3,"major":0,"patch":0},"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/head","interfaceLanguage":"swift"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"metadata":{"title":"head","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A6FilterV4headSSSgvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"head","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?","kind":"text"}]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter\/head"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"role":"symbol","navigatorTitle":[{"text":"AmiiboFilter","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibofilter","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","title":"AmiiboFilter","abstract":[{"type":"text","text":"A type that contains values to fine-tune a response when requesting amiibo items."}],"type":"topic","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"AmiiboFilter","kind":"identifier"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/head":{"type":"topic","abstract":[{"type":"text","text":"A first part of an identifier to filter the result, if any."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/head","url":"\/documentation\/amiiboservice\/amiibofilter\/head","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"text":"head","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"?"}],"kind":"symbol","title":"head","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"}}}
|
||||
@@ -1 +0,0 @@
|
||||
{"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/identifier","interfaceLanguage":"swift"},"abstract":[{"text":"An amiibo identifier to filter the result, if any.","type":"text"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"text":" ","kind":"text"},{"text":"identifier","kind":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"kind":"symbol","sections":[],"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"metadata":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"kind":"identifier","text":"identifier"},{"kind":"text","text":": "},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"roleHeading":"Instance Property","title":"identifier","externalID":"s:13AmiiboService0A6FilterV10identifierSSSgvp","symbolKind":"property","role":"symbol","modules":[{"name":"AmiiboService"}]},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter\/identifier"],"traits":[{"interfaceLanguage":"swift"}]}],"references":{"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"type":"text","text":"Amiibo API"}]},{"type":"text","text":" backend service."}],"type":"topic","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","url":"\/documentation\/amiiboservice","kind":"symbol","title":"AmiiboService","role":"collection"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"role":"symbol","navigatorTitle":[{"text":"AmiiboFilter","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibofilter","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","title":"AmiiboFilter","abstract":[{"type":"text","text":"A type that contains values to fine-tune a response when requesting amiibo items."}],"type":"topic","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"AmiiboFilter","kind":"identifier"}],"kind":"symbol"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/identifier":{"fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"identifier","kind":"identifier"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"url":"\/documentation\/amiiboservice\/amiibofilter\/identifier","type":"topic","abstract":[{"type":"text","text":"An amiibo identifier to filter the result, if any."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/identifier","kind":"symbol","title":"identifier","role":"symbol"}}}
|
||||
-1
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"abstract":[{"text":"Initializes this filter.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/init(head:tail:identifier:name:type:series:gameCharacter:gameSeries:showGames:showUsage:)","interfaceLanguage":"swift"},"metadata":{"externalID":"s:13AmiiboService0A6FilterV4head4tail10identifier4name4type6series13gameCharacter0J6Series9showGames0M5UsageACSSSg_A7NSbSgAOtcfc","symbolKind":"init","title":"init(head:tail:identifier:name:type:series:gameCharacter:gameSeries:showGames:showUsage:)","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"kind":"externalParam","text":"head"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?, ","kind":"text"},{"text":"tail","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?, ","kind":"text"},{"text":"identifier","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?, ","kind":"text"},{"text":"name","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"?, ","kind":"text"},{"text":"type","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"?, "},{"kind":"externalParam","text":"series"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"?, "},{"kind":"externalParam","text":"gameCharacter"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"?, "},{"kind":"externalParam","text":"gameSeries"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"?, "},{"kind":"externalParam","text":"showGames"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","kind":"typeIdentifier","text":"Bool"},{"kind":"text","text":"?, "},{"text":"showUsage","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":"?)","kind":"text"}],"roleHeading":"Initializer","modules":[{"name":"AmiiboService"}],"role":"symbol"},"sections":[],"schemaVersion":{"major":0,"patch":0,"minor":3},"primaryContentSections":[{"kind":"declarations","declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"head"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"? = nil, "},{"kind":"externalParam","text":"tail"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"? = nil, "},{"kind":"externalParam","text":"identifier"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"? = nil, ","kind":"text"},{"text":"name","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"? = nil, ","kind":"text"},{"text":"type","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:SS","text":"String","kind":"typeIdentifier"},{"text":"? = nil, ","kind":"text"},{"text":"series","kind":"externalParam"},{"kind":"text","text":": "},{"preciseIdentifier":"s:SS","kind":"typeIdentifier","text":"String"},{"kind":"text","text":"? = nil, "},{"text":"gameCharacter","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"? = nil, ","kind":"text"},{"text":"gameSeries","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"String","kind":"typeIdentifier","preciseIdentifier":"s:SS"},{"text":"? = nil, ","kind":"text"},{"text":"showGames","kind":"externalParam"},{"text":": ","kind":"text"},{"text":"Bool","kind":"typeIdentifier","preciseIdentifier":"s:Sb"},{"text":"? = nil, ","kind":"text"},{"text":"showUsage","kind":"externalParam"},{"text":": ","kind":"text"},{"preciseIdentifier":"s:Sb","text":"Bool","kind":"typeIdentifier"},{"text":"? = nil)","kind":"text"}]}]},{"parameters":[{"content":[{"type":"paragraph","inlineContent":[{"text":"A first part of an identifier to filter the result, if any.","type":"text"}]}],"name":"head"},{"content":[{"type":"paragraph","inlineContent":[{"text":"A last part of an identifier to filter the result, if any.","type":"text"}]}],"name":"tail"},{"content":[{"type":"paragraph","inlineContent":[{"text":"An amiibo identifier to filter the result, if any.","type":"text"}]}],"name":"identifier"},{"content":[{"tLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
{"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter"]]},"schemaVersion":{"minor":3,"major":0,"patch":0},"variants":[{"paths":["\/documentation\/amiiboservice\/amiibofilter\/name"],"traits":[{"interfaceLanguage":"swift"}]}],"primaryContentSections":[{"kind":"declarations","declarations":[{"tokens":[{"text":"let","kind":"keyword"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":"?","kind":"text"}],"platforms":["macOS"],"languages":["swift"]}]}],"metadata":{"title":"name","modules":[{"name":"AmiiboService"}],"role":"symbol","externalID":"s:13AmiiboService0A6FilterV4nameSSSgvp","symbolKind":"property","roleHeading":"Instance Property","fragments":[{"kind":"keyword","text":"let"},{"kind":"text","text":" "},{"kind":"identifier","text":"name"},{"kind":"text","text":": "},{"kind":"typeIdentifier","preciseIdentifier":"s:SS","text":"String"},{"text":"?","kind":"text"}]},"kind":"symbol","sections":[],"abstract":[{"type":"text","text":"An amiibo name to filter the result, if any."}],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/name"},"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter/name":{"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter\/name","abstract":[{"type":"text","text":"An amiibo name to filter the result, if any."}],"type":"topic","url":"\/documentation\/amiiboservice\/amiibofilter\/name","fragments":[{"kind":"keyword","text":"let"},{"text":" ","kind":"text"},{"text":"name","kind":"identifier"},{"text":": ","kind":"text"},{"kind":"typeIdentifier","text":"String","preciseIdentifier":"s:SS"},{"text":"?","kind":"text"}],"kind":"symbol","title":"name","role":"symbol"},"doc://AmiiboService/documentation/AmiiboService":{"url":"\/documentation\/amiiboservice","role":"collection","title":"AmiiboService","type":"topic","abstract":[{"type":"text","text":"A library that provides everything the developer needs to interact with the "},{"type":"strong","inlineContent":[{"text":"Amiibo API","type":"text"}]},{"type":"text","text":" backend service."}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService"},"doc://AmiiboService/documentation/AmiiboService/AmiiboFilter":{"role":"symbol","navigatorTitle":[{"text":"AmiiboFilter","kind":"identifier"}],"url":"\/documentation\/amiiboservice\/amiibofilter","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboFilter","title":"AmiiboFilter","abstract":[{"type":"text","text":"A type that contains values to fine-tune a response when requesting amiibo items."}],"type":"topic","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"AmiiboFilter","kind":"identifier"}],"kind":"symbol"}}}
|
||||
Loaded 100 of 366 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user