Open API specification improvements and License update (#17)

This PR contains the work done to:
* improve the overall `OpenAPI` specification documentation describing the `Amiibo API` service;
* update the `AmiiboFilter` type to include the `head` and `tail` properties;
* update the error handling of the errors coming up from the service;
* update its license to Apache v2.0;
* regenerate the Github Pages documentation.

Reviewed-on: #17
Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
This commit was merged in pull request #17.
This commit is contained in:
2025-10-07 22:07:55 +00:00
committed by Javier Cicchelli
parent c303e1f8f3
commit 40afefed15
127 changed files with 676 additions and 583 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
{"abstract":[{"text":"Initializes this client.","type":"text"}],"schemaVersion":{"patch":0,"major":0,"minor":3},"kind":"symbol","variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboliveclient\/init(transport:)"]}],"primaryContentSections":[{"declarations":[{"platforms":["macOS"],"languages":["swift"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"text":"transport","kind":"externalParam"},{"kind":"text","text":": any "},{"kind":"typeIdentifier","text":"ClientTransport","preciseIdentifier":"s:14OpenAPIRuntime15ClientTransportP"},{"text":" = URLSessionTransport())","kind":"text"}]}],"kind":"declarations"},{"kind":"parameters","parameters":[{"content":[{"inlineContent":[{"type":"text","text":"A transport that performs HTTP operations."}],"type":"paragraph"}],"name":"transport"}]}],"sections":[],"identifier":{"interfaceLanguage":"swift","url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient\/init(transport:)"},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient"]]},"metadata":{"roleHeading":"Initializer","externalID":"s:13AmiiboService0A10LiveClientV9transportAC14OpenAPIRuntime0D9Transport_p_tcfc","symbolKind":"init","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"transport"},{"text":": any ","kind":"text"},{"kind":"typeIdentifier","text":"ClientTransport","preciseIdentifier":"s:14OpenAPIRuntime15ClientTransportP"},{"kind":"text","text":")"}],"role":"symbol","modules":[{"name":"AmiiboService"}],"title":"init(transport:)"},"references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboLiveClient/init(transport:)":{"kind":"symbol","title":"init(transport:)","type":"topic","abstract":[{"type":"text","text":"Initializes this client."}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient\/init(transport:)","url":"\/documentation\/amiiboservice\/amiiboliveclient\/init(transport:)","role":"symbol","fragments":[{"kind":"identifier","text":"init"},{"kind":"text","text":"("},{"text":"transport","kind":"externalParam"},{"text":": any ","kind":"text"},{"preciseIdentifier":"s:14OpenAPIRuntime15ClientTransportP","kind":"typeIdentifier","text":"ClientTransport"},{"kind":"text","text":")"}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboLiveClient":{"kind":"symbol","title":"AmiiboLiveClient","type":"topic","abstract":[{"type":"text","text":"A type that implements a live client to the online service."}],"navigatorTitle":[{"kind":"identifier","text":"AmiiboLiveClient"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient","url":"\/documentation\/amiiboservice\/amiiboliveclient","role":"symbol","fragments":[{"text":"struct","kind":"keyword"},{"kind":"text","text":" "},{"text":"AmiiboLiveClient","kind":"identifier"}]},"doc://AmiiboService/documentation/AmiiboService":{"url":"\/documentation\/amiiboservice","type":"topic","abstract":[{"type":"text","text":"A library that provides everything the developer needs to interacts with the "},{"inlineContent":[{"type":"text","text":"Amiibo API"}],"type":"strong"},{"type":"text","text":" backend service."}],"kind":"symbol","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","title":"AmiiboService","role":"collection"}}}
{"metadata":{"title":"init(transport:)","role":"symbol","externalID":"s:13AmiiboService0A10LiveClientV9transportAC14OpenAPIRuntime0D9Transport_p_tcfc","modules":[{"name":"AmiiboService"}],"symbolKind":"init","roleHeading":"Initializer","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"transport","kind":"externalParam"},{"text":": any ","kind":"text"},{"preciseIdentifier":"s:14OpenAPIRuntime15ClientTransportP","text":"ClientTransport","kind":"typeIdentifier"},{"text":")","kind":"text"}]},"abstract":[{"text":"Initializes this client.","type":"text"}],"identifier":{"url":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient\/init(transport:)","interfaceLanguage":"swift"},"sections":[],"primaryContentSections":[{"kind":"declarations","declarations":[{"languages":["swift"],"platforms":["macOS"],"tokens":[{"kind":"keyword","text":"init"},{"kind":"text","text":"("},{"kind":"externalParam","text":"transport"},{"text":": any ","kind":"text"},{"preciseIdentifier":"s:14OpenAPIRuntime15ClientTransportP","text":"ClientTransport","kind":"typeIdentifier"},{"kind":"text","text":" = URLSessionTransport())"}]}]},{"kind":"parameters","parameters":[{"name":"transport","content":[{"type":"paragraph","inlineContent":[{"text":"A transport that performs HTTP operations.","type":"text"}]}]}]}],"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/amiiboservice\/amiiboliveclient\/init(transport:)"]}],"schemaVersion":{"patch":0,"minor":3,"major":0},"hierarchy":{"paths":[["doc:\/\/AmiiboService\/documentation\/AmiiboService","doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient"]]},"kind":"symbol","references":{"doc://AmiiboService/documentation/AmiiboService/AmiiboLiveClient/init(transport:)":{"role":"symbol","url":"\/documentation\/amiiboservice\/amiiboliveclient\/init(transport:)","kind":"symbol","title":"init(transport:)","abstract":[{"text":"Initializes this client.","type":"text"}],"identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient\/init(transport:)","type":"topic","fragments":[{"text":"init","kind":"identifier"},{"text":"(","kind":"text"},{"text":"transport","kind":"externalParam"},{"text":": any ","kind":"text"},{"text":"ClientTransport","kind":"typeIdentifier","preciseIdentifier":"s:14OpenAPIRuntime15ClientTransportP"},{"text":")","kind":"text"}]},"doc://AmiiboService/documentation/AmiiboService/AmiiboLiveClient":{"abstract":[{"text":"A type that implements a live client to the online service.","type":"text"}],"title":"AmiiboLiveClient","kind":"symbol","url":"\/documentation\/amiiboservice\/amiiboliveclient","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService\/AmiiboLiveClient","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"AmiiboLiveClient"}],"type":"topic","fragments":[{"kind":"keyword","text":"struct"},{"text":" ","kind":"text"},{"text":"AmiiboLiveClient","kind":"identifier"}]},"doc://AmiiboService/documentation/AmiiboService":{"abstract":[{"type":"text","text":"A library that provides everything the developer needs to interacts with the "},{"inlineContent":[{"type":"text","text":"Amiibo API"}],"type":"strong"},{"text":" backend service.","type":"text"}],"type":"topic","kind":"symbol","role":"collection","identifier":"doc:\/\/AmiiboService\/documentation\/AmiiboService","title":"AmiiboService","url":"\/documentation\/amiiboservice"}}}