Skip to content

Commit

Permalink
deploy
Browse files Browse the repository at this point in the history
  • Loading branch information
actions-user committed May 13, 2023
0 parents commit ab646cc
Show file tree
Hide file tree
Showing 536 changed files with 947 additions and 0 deletions.
9 changes: 9 additions & 0 deletions css/documentation-topic.3bca6578.css

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions css/documentation-topic~topic~tutorials-overview.82acfe22.css

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions css/index.12bb178a.css

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions css/topic.ee15af52.css

Large diffs are not rendered by default.

9 changes: 9 additions & 0 deletions css/tutorials-overview.06e8bcf7.css

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions data/documentation/pexelsswift.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"primaryContentSections":[{"kind":"content","content":[{"anchor":"Overview","level":2,"type":"heading","text":"Overview"},{"type":"paragraph","inlineContent":[{"type":"image","identifier":"Banner.png"}]},{"type":"paragraph","inlineContent":[{"type":"text","text":"This Swift Package is a wrapper for "},{"type":"reference","isActive":true,"identifier":"https:\/\/www.pexels.com\/api"},{"type":"text","text":" to get access to the entire photo library of "},{"type":"codeVoice","code":"Pexels"},{"type":"text","text":" within your Swift app."}]},{"style":"note","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"It is mandatory to get an "},{"overridingTitleInlineContent":[{"type":"text","text":"API Key"}],"isActive":true,"type":"reference","identifier":"https:\/\/www.pexels.com\/api","overridingTitle":"API Key"},{"type":"text","text":"."}]}],"type":"aside","name":"Note"},{"anchor":"Installation-SPM","level":2,"type":"heading","text":"Installation (SPM)"},{"type":"codeListing","syntax":"swift","code":["dependencies: ["," .package(url: \"https:\/\/github.com\/lukepistrol\/Pexels-Swift.git\", from: \"0.1.0\")","],"]},{"anchor":"Usage","level":2,"type":"heading","text":"Usage"},{"type":"codeListing","syntax":"swift","code":["import PexelsSwift","","\/\/ access the singleton instance","let pexels = PexelsSwift.shared","","\/\/ set your API key","pexels.setup(apiKey: \"YOUR_API_KEY\", logLevel: .debug)","","\/\/ fetch images metadata using async\/await","let result = await pexels.getCuratedPhotos()","","switch result {","case .failure(let error):"," print(error.description)","case .success(let (data, paging, response)):"," \/\/ access photos"," \/\/ data -> [PSPhoto]"," \/\/ paging -> PSPagingInfo"," \/\/ response -> HTTPURLResponse","}","","\/\/ fetch images metadata using completion handlers","pexels.getCuratedPhotos() { result in"," switch result {"," case .failure(let error):"," print(error.description)"," case .success(let (data, paging, response)):"," \/\/ access photos"," \/\/ data -> [PSPhoto]"," \/\/ paging -> PSPagingInfo"," \/\/ response -> HTTPURLResponse"," }","}"]},{"anchor":"Demo-Project","level":2,"type":"heading","text":"Demo Project"},{"type":"paragraph","inlineContent":[{"type":"text","text":"I’ve built a simple iOS app - "},{"type":"reference","isActive":true,"identifier":"https:\/\/github.com\/lukepistrol\/PexelsBrowser"},{"type":"text","text":" - using this library and SwiftUI."}]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"variants":[{"paths":["\/documentation\/pexelsswift"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"Pexels.com API client library for the Swift programming language"}],"kind":"symbol","metadata":{"roleHeading":"Framework","externalID":"PexelsSwift","title":"PexelsSwift","symbolKind":"module","role":"collection","modules":[{"name":"PexelsSwift"}]},"hierarchy":{"paths":[[]]},"topicSections":[{"title":"Essentials","identifiers":["doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/Getting-Started","doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/Rate-Limits"]},{"title":"Classes","identifiers":["doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PexelsSwift"]},{"title":"Resources","identifiers":["doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPhoto","doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSVideo","doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSCollection","doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPagingInfo"]},{"title":"Logger","identifiers":["doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSLogger","doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSLogLevel"]},{"title":"Errors","identifiers":["doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSError"]},{"title":"Protocols","identifiers":["doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSLoggerDelegate"]}],"references":{"doc://PexelsSwift/documentation/PexelsSwift":{"role":"collection","title":"PexelsSwift","abstract":[{"type":"text","text":"Pexels.com API client library for the Swift programming language"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift","kind":"symbol","type":"topic","url":"\/documentation\/pexelsswift"},"doc://PexelsSwift/documentation/PexelsSwift/Rate-Limits":{"role":"article","title":"Rate Limits","abstract":[{"type":"text","text":"Statistics for the monthly API quota"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/Rate-Limits","kind":"article","type":"topic","url":"\/documentation\/pexelsswift\/rate-limits"},"Banner.png":{"alt":"Banner","type":"image","identifier":"Banner.png","variants":[{"url":"\/images\/Banner.png","traits":["1x","light"]}]},"doc://PexelsSwift/documentation/PexelsSwift/PSVideo":{"role":"symbol","title":"PSVideo","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSVideo"}],"abstract":[{"type":"text","text":"A structure representing a Video and its metadata."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSVideo","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSVideo"}],"url":"\/documentation\/pexelsswift\/psvideo"},"doc://PexelsSwift/documentation/PexelsSwift/PSPhoto":{"role":"symbol","title":"PSPhoto","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSPhoto"}],"abstract":[{"type":"text","text":"A structure representing a Photo and its metadata."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPhoto","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSPhoto"}],"url":"\/documentation\/pexelsswift\/psphoto"},"https://github.com/lukepistrol/PexelsBrowser":{"title":"PexelsBrowser","titleInlineContent":[{"type":"text","text":"PexelsBrowser"}],"type":"link","identifier":"https:\/\/github.com\/lukepistrol\/PexelsBrowser","url":"https:\/\/github.com\/lukepistrol\/PexelsBrowser"},"https://www.pexels.com/api":{"title":"Pexels API","titleInlineContent":[{"type":"text","text":"Pexels API"}],"type":"link","identifier":"https:\/\/www.pexels.com\/api","url":"https:\/\/www.pexels.com\/api"},"doc://PexelsSwift/documentation/PexelsSwift/PSLogger":{"role":"symbol","title":"PSLogger","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSLogger"}],"abstract":[{"type":"text","text":"A logger for displaying logs in the console."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSLogger","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSLogger"}],"url":"\/documentation\/pexelsswift\/pslogger"},"doc://PexelsSwift/documentation/PexelsSwift/PSLoggerDelegate":{"role":"symbol","title":"PSLoggerDelegate","fragments":[{"kind":"keyword","text":"protocol"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSLoggerDelegate"}],"abstract":[{"type":"text","text":"The delegate for receiving log messages."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSLoggerDelegate","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSLoggerDelegate"}],"url":"\/documentation\/pexelsswift\/psloggerdelegate"},"doc://PexelsSwift/documentation/PexelsSwift/Getting-Started":{"role":"article","title":"Getting Started","abstract":[{"type":"text","text":"This is a quick run through on how to use "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift"},{"type":"text","text":" and what can be done."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/Getting-Started","kind":"article","type":"topic","url":"\/documentation\/pexelsswift\/getting-started"},"doc://PexelsSwift/documentation/PexelsSwift/PexelsSwift":{"role":"symbol","title":"PexelsSwift","fragments":[{"kind":"keyword","text":"class"},{"kind":"text","text":" "},{"kind":"identifier","text":"PexelsSwift"}],"abstract":[{"type":"text","text":"A singleton class for making API calls to the Pexels.com REST API."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PexelsSwift","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PexelsSwift"}],"url":"\/documentation\/pexelsswift\/pexelsswift"},"doc://PexelsSwift/documentation/PexelsSwift/PSCollection":{"role":"symbol","title":"PSCollection","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSCollection"}],"abstract":[{"type":"text","text":"A structure representing a Collection and its metadata."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSCollection","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSCollection"}],"url":"\/documentation\/pexelsswift\/pscollection"},"doc://PexelsSwift/documentation/PexelsSwift/PSLogLevel":{"role":"symbol","title":"PSLogLevel","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSLogLevel"}],"abstract":[{"type":"text","text":"A collection of log levels."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSLogLevel","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSLogLevel"}],"url":"\/documentation\/pexelsswift\/psloglevel"},"doc://PexelsSwift/documentation/PexelsSwift/PSError":{"role":"symbol","title":"PSError","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSError"}],"abstract":[{"type":"text","text":"Error Type indicating why an operation has failed"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSError","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSError"}],"url":"\/documentation\/pexelsswift\/pserror"},"doc://PexelsSwift/documentation/PexelsSwift/PSPagingInfo":{"role":"symbol","title":"PSPagingInfo","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSPagingInfo"}],"abstract":[{"type":"text","text":"Metadata useful for paging (page, total results, next page, …)"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPagingInfo","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSPagingInfo"}],"url":"\/documentation\/pexelsswift\/pspaginginfo"}}}
1 change: 1 addition & 0 deletions data/documentation/pexelsswift/getting-started.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"primaryContentSections":[{"kind":"content","content":[{"anchor":"Overview","level":2,"type":"heading","text":"Overview"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Before you get started head over to the "},{"type":"reference","isActive":true,"identifier":"https:\/\/www.pexels.com\/api"},{"type":"text","text":" site and get your own "},{"type":"codeVoice","code":"API Token"},{"type":"text","text":". After you got your "},{"type":"codeVoice","code":"API Token"},{"type":"text","text":" please make sure to save it for later use."}]},{"anchor":"Add-PexelsSwift-to-your-Project","level":3,"type":"heading","text":"Add PexelsSwift to your Project"},{"type":"paragraph","inlineContent":[{"type":"text","text":"To add "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift"},{"type":"text","text":" to your project simply add the following line to your "},{"type":"codeVoice","code":"Package.swift"},{"type":"text","text":" file’s dependencies:"}]},{"type":"codeListing","syntax":"swift","code":["...","dependencies: ["," .package(url: \"https:\/\/github.com\/lukepistrol\/Pexels-Swift.git\", from: \"0.1.0\")","],","..."]},{"type":"paragraph","inlineContent":[{"type":"text","text":"In case you want to add it directly to your "},{"type":"codeVoice","code":"*.xcodeproj*"},{"type":"text","text":" just go to "},{"type":"codeVoice","code":"File > Add Packages"},{"type":"text","text":" and enter the URL into the search field on the top right."}]},{"anchor":"Setup-PexelsSwift","level":3,"type":"heading","text":"Setup PexelsSwift"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Now you are ready to add some code:"}]},{"type":"codeListing","syntax":"swift","code":["import PexelsSwift","","\/\/ create a reference to the PexelsSwift singleton","let pexels = PexelsSwift.shared","","\/\/ call the setup method to set your API-Key and ","\/\/ optionally the debug level","pexels.setup(apiKey: \"YOUR_API_KEY\", logLevel: .debug)"]},{"style":"note","content":[{"type":"paragraph","inlineContent":[{"type":"text","text":"Since "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift"},{"type":"text","text":" is setup as a singleton you only have to set it up once and you can access it everywhere in your project by calling "},{"type":"codeVoice","code":"PexelsSwift.shared"},{"type":"text","text":"."}]}],"type":"aside","name":"Note"},{"anchor":"Fetch-Featured-Photos","level":3,"type":"heading","text":"Fetch Featured Photos"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Now it is time to fetch some data from the API. For now we will fetch 20 photos from the featured photos endpoint using "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PexelsSwift\/getCuratedPhotos(page:count:completion:)"},{"type":"text","text":". There are methods for "},{"type":"codeVoice","code":"async\/await"},{"type":"text","text":" but in case you prefer completion handlers, they are available to."}]},{"type":"codeListing","syntax":"swift","code":["\/\/ get 20 curated photos asynchronously","let result = await pexels.getCuratedPhotos(count: 20)","","switch result {","\/\/ check for errors","case .failure(let error):"," print(error.description)"," \/\/ handle the error","\/\/ access the result's content","case .success(let (data, paging, response)):"," ...","}"]},{"type":"paragraph","inlineContent":[{"type":"text","text":"In the code above you can see we get "},{"type":"codeVoice","code":"photos"},{"type":"text","text":" and "},{"type":"codeVoice","code":"metadata"},{"type":"text","text":" from our result in the "},{"type":"codeVoice","code":".success"},{"type":"text","text":" case."}]},{"type":"unorderedList","items":[{"content":[{"type":"paragraph","inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"data"}]},{"type":"text","text":" is an array of "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPhoto"},{"type":"text","text":"."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"paging"}]},{"type":"text","text":" is a struct "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPagingInfo"},{"type":"text","text":" which contains some information for paging like the current page, results per page, the URL to the next\/previous page and the number of total results."}]}]},{"content":[{"type":"paragraph","inlineContent":[{"type":"strong","inlineContent":[{"type":"text","text":"response"}]},{"type":"text","text":" is of type "},{"type":"reference","isActive":true,"identifier":"https:\/\/developer.apple.com\/documentation\/foundation\/httpurlresponse"}]}]}]},{"anchor":"Get-the-Image-URL","level":3,"type":"heading","text":"Get the Image URL"},{"type":"paragraph","inlineContent":[{"type":"text","text":"Now we want to get the URLs for the thumbnails of the fetched images."}]},{"type":"codeListing","syntax":"swift","code":["switch result {","...","case .success(let (data, paging, response)):"," let urls = data.compactMap { "," URL(string: $0.source[PSPhoto.Size.tiny.rawValue]) "," }"," \/\/ now you can load the image from each URL and "," \/\/ display it in your UI","}"]}]}],"schemaVersion":{"major":0,"minor":3,"patch":0},"sections":[],"variants":[{"paths":["\/documentation\/pexelsswift\/getting-started"],"traits":[{"interfaceLanguage":"swift"}]}],"identifier":{"url":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/Getting-Started","interfaceLanguage":"swift"},"abstract":[{"type":"text","text":"This is a quick run through on how to use "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift"},{"type":"text","text":" and what can be done."}],"kind":"article","metadata":{"roleHeading":"Article","title":"Getting Started","role":"article","modules":[{"name":"PexelsSwift"}]},"hierarchy":{"paths":[["doc:\/\/PexelsSwift\/documentation\/PexelsSwift"]]},"seeAlsoSections":[{"title":"Essentials","identifiers":["doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/Rate-Limits"],"generated":true}],"references":{"doc://PexelsSwift/documentation/PexelsSwift":{"role":"collection","title":"PexelsSwift","abstract":[{"type":"text","text":"Pexels.com API client library for the Swift programming language"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift","kind":"symbol","type":"topic","url":"\/documentation\/pexelsswift"},"doc://PexelsSwift/documentation/PexelsSwift/PSPhoto":{"role":"symbol","title":"PSPhoto","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSPhoto"}],"abstract":[{"type":"text","text":"A structure representing a Photo and its metadata."}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPhoto","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSPhoto"}],"url":"\/documentation\/pexelsswift\/psphoto"},"doc://PexelsSwift/documentation/PexelsSwift/PexelsSwift/getCuratedPhotos(page:count:completion:)":{"role":"symbol","title":"getCuratedPhotos(page:count:completion:)","fragments":[{"kind":"keyword","text":"func"},{"kind":"text","text":" "},{"kind":"identifier","text":"getCuratedPhotos"},{"kind":"text","text":"("},{"kind":"externalParam","text":"page"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"count"},{"kind":"text","text":": "},{"kind":"typeIdentifier","text":"Int","preciseIdentifier":"s:Si"},{"kind":"text","text":", "},{"kind":"externalParam","text":"completion"},{"kind":"text","text":": ("},{"kind":"typeIdentifier","text":"PhotosResult","preciseIdentifier":"s:11PexelsSwiftAAC12PhotosResulta"},{"kind":"text","text":") -> "},{"kind":"typeIdentifier","text":"Void","preciseIdentifier":"s:s4Voida"},{"kind":"text","text":")"}],"abstract":[{"type":"text","text":"Get a list of curated "},{"type":"reference","isActive":true,"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPhoto"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PexelsSwift\/getCuratedPhotos(page:count:completion:)","kind":"symbol","type":"topic","url":"\/documentation\/pexelsswift\/pexelsswift\/getcuratedphotos(page:count:completion:)"},"doc://PexelsSwift/documentation/PexelsSwift/Rate-Limits":{"role":"article","title":"Rate Limits","abstract":[{"type":"text","text":"Statistics for the monthly API quota"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/Rate-Limits","kind":"article","type":"topic","url":"\/documentation\/pexelsswift\/rate-limits"},"https://developer.apple.com/documentation/foundation/httpurlresponse":{"title":"HTTPURLResponse","titleInlineContent":[{"type":"codeVoice","code":"HTTPURLResponse"}],"type":"link","identifier":"https:\/\/developer.apple.com\/documentation\/foundation\/httpurlresponse","url":"https:\/\/developer.apple.com\/documentation\/foundation\/httpurlresponse"},"https://www.pexels.com/api":{"title":"Pexels API","titleInlineContent":[{"type":"text","text":"Pexels API"}],"type":"link","identifier":"https:\/\/www.pexels.com\/api","url":"https:\/\/www.pexels.com\/api"},"doc://PexelsSwift/documentation/PexelsSwift/PSPagingInfo":{"role":"symbol","title":"PSPagingInfo","fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"PSPagingInfo"}],"abstract":[{"type":"text","text":"Metadata useful for paging (page, total results, next page, …)"}],"identifier":"doc:\/\/PexelsSwift\/documentation\/PexelsSwift\/PSPagingInfo","kind":"symbol","type":"topic","navigatorTitle":[{"kind":"identifier","text":"PSPagingInfo"}],"url":"\/documentation\/pexelsswift\/pspaginginfo"}}}
1 change: 1 addition & 0 deletions data/documentation/pexelsswift/pexelsswift.json

Large diffs are not rendered by default.

Loading

0 comments on commit ab646cc

Please sign in to comment.