Compare commits

...

38 Commits

Author SHA1 Message Date
Arthur Ariel Sabintsev d322afa41a Updated podspec 2017-04-26 10:34:01 -04:00
Txai Wieser a5a95c43af Update pt-BR localization (#140)
In Portuguese from Brazil you say "o aplicativo" (the application) with masculine pronoun, you can say "a aplicação" too but it's not very common, and its a little weird. So "A new version the 'Application'" would be translated to "Uma nova versão DO `Aplicativo`" and NOT "Uma nova versão DA 'Aplicação'"

Thank you! :)
2017-04-26 10:33:17 -04:00
Txai Wieser a6a521c8d1 Fixed Enum cases typo (#139) 2017-04-20 09:49:49 -04:00
Arthur Ariel Sabintsev 18a56fa45e Update README.md 2017-04-08 23:56:26 -04:00
Arthur Ariel Sabintsev 278d9e863e Update README.md 2017-04-08 23:55:37 -04:00
Arthur Ariel Sabintsev ba2bc03263 Update README.md 2017-04-08 03:13:26 -04:00
Arthur Ariel Sabintsev 28aba0f794 Updated gems 2017-04-08 03:11:25 -04:00
Arthur Ariel Sabintsev e8ac4b78e1 Update ISSUE_TEMPLATE.md 2017-04-08 02:30:53 -04:00
Arthur Ariel Sabintsev daaa063c60 Update ISSUE_TEMPLATE.md 2017-04-08 02:25:29 -04:00
Arthur Ariel Sabintsev f339fab54d Update ISSUE_TEMPLATE.md 2017-04-08 02:23:52 -04:00
Arthur Ariel Sabintsev 69d49689ce SirenVersionCheckType is now Siren.VersionCheckType. Updated docs and podspec. 2017-04-08 02:12:18 -04:00
Arthur Ariel Sabintsev bd4b17fafc Updated docs 2017-04-08 02:09:18 -04:00
Arthur Ariel Sabintsev 950830d94d Merge pull request #136 from ArtSabintsev/improvement/delayed-launch
2.0.0
2017-04-08 01:50:29 -04:00
Arthur Ariel Sabintsev 11bfdca77a README updates 2017-04-08 01:49:54 -04:00
Arthur Ariel Sabintsev 3e1aa263cb Updated readme and sample project 2017-04-08 01:46:39 -04:00
Arthur Ariel Sabintsev 628ff9bb8d Updated sample project, readme, podspec, project hierarchy 2017-04-08 01:41:49 -04:00
Arthur Ariel Sabintsev 4dd92112eb Added JSONKeys 2017-04-08 01:23:51 -04:00
Arthur Ariel Sabintsev 7c5f153e1f printMessage change 2017-04-08 01:11:56 -04:00
Arthur Ariel Sabintsev 3717686bf8 Documentation changes and sanity check 2017-04-08 01:05:15 -04:00
Arthur Ariel Sabintsev 404e61bcf2 Removed extra new line 2017-04-08 00:58:44 -04:00
Arthur Ariel Sabintsev 4d4fb66fd1 showAlertAfterCurrentVersionHasBeenReleasedForDays is a non-optional Int defaulting to 1 day. Added SirenTestHelper 2017-04-08 00:57:49 -04:00
Arthur Ariel Sabintsev 43232c3e94 Updated swiftlint rules 2017-04-08 00:26:00 -04:00
Arthur Ariel Sabintsev 04ecdc5d86 Updated swiftlint rules 2017-04-08 00:22:56 -04:00
Arthur Ariel Sabintsev c14ffbeaca Updated tests 2017-04-08 00:22:08 -04:00
Arthur Ariel Sabintsev c6dd2e38d9 Created SirenDelegate. Better namespacing 2017-04-08 00:21:28 -04:00
Arthur Ariel Sabintsev f37197e2d6 Removed unncessary self declarations 2017-04-07 23:56:56 -04:00
Arthur Ariel Sabintsev 1301d13b19 Update README.md 2017-04-03 18:49:31 -04:00
Arthur Ariel Sabintsev 868fd61abb Update README.md 2017-03-22 18:35:50 -04:00
Arthur Ariel Sabintsev fd3160ead2 Update README.md 2017-03-22 18:35:01 -04:00
Arthur Ariel Sabintsev bbf166c41e Updated Docs 2017-03-22 00:19:29 -04:00
Arthur Ariel Sabintsev fa410383fb Update README.md 2017-03-21 23:37:07 -04:00
Arthur Ariel Sabintsev 28f7595712 Update README.md 2017-03-21 23:36:38 -04:00
Arthur Ariel Sabintsev d49d41a147 Updated README 2017-03-21 23:34:58 -04:00
Arthur Ariel Sabintsev 4a329bafff Updated Podspec 2017-03-21 23:31:06 -04:00
Arthur Ariel Sabintsev 4569b1352c Merge pull request #134 from ArtSabintsev/improvement/Date-Extension-Safety
Added SirenDateExtension. Improved app safety.
2017-03-21 23:30:19 -04:00
Arthur Ariel Sabintsev 2632a9b661 Added SirenDateExtension. Improved app safety. 2017-03-21 23:26:07 -04:00
Arthur Ariel Sabintsev 74f266aaf0 Updated Podspec and README 2017-03-21 23:12:13 -04:00
Arthur Ariel Sabintsev 7a66d39eaa Added assets 2017-03-18 00:27:43 -04:00
70 changed files with 2292 additions and 5898 deletions
+3 -5
View File
@@ -1,10 +1,9 @@
======
Before posting an issue, please make sure your issue has not already been resolved or answered elsehwere.
Before posting an issue, please make sure your issue has not already been resolved or answered elsewhere.
Common Issue #1:
> "Error retrieving iOS version number as there was no data returned."
Check if your app is available in the US App Store, otherwise add the corresponding country code when setting up Siren: https://github.com/ArtSabintsev/Siren/blob/master/Siren/Siren.swift#L198
Check if your app is available in the US App Store, otherwise add the corresponding country code when setting up Siren.
Common Issue #2:
> "Support for macOS App Store."
@@ -14,7 +13,6 @@ Siren does not and will not support the macOS App Store.
Common Issue #3:
> "Support for prompting TestFlight users to update to the newest beta build."
Siren does not support this functionality. There is no publicly accessible TstFlight API akin to that of the public App Store API that Siren can utilize to provide this functionality.
Siren does not support this functionality. There is no publicly accessible TestFlight API akin to that of the public App Store API that Siren can utilize to provide this functionality.
Please delete this text before submitting a new issue.
======
+9 -3
View File
@@ -1,10 +1,16 @@
reporter: "xcode"
included:
- ../Sources/
disabled_rules:
- cyclomatic_complexity
- file_length
- line_length
- unused_optional_binding
- variable_name
reporter: "xcode"
# Specialized Rules
file_length:
- 1000
line_length:
- 200
Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

+6 -6
View File
@@ -42,12 +42,13 @@ GEM
netrc (= 0.7.8)
cocoapods-try (1.1.0)
colored (1.2)
colored2 (3.1.2)
escape (0.0.4)
fourflusher (2.0.1)
fuzzy_match (2.0.4)
gh_inspector (1.0.3)
i18n (0.8.1)
jazzy (0.7.4)
jazzy (0.7.5)
cocoapods (~> 1.0)
mustache (~> 0.99)
open4
@@ -70,15 +71,14 @@ GEM
sass (3.4.23)
sqlite3 (1.3.13)
thread_safe (0.3.6)
tzinfo (1.2.2)
tzinfo (1.2.3)
thread_safe (~> 0.1)
xcinvoke (0.3.0)
liferaft (~> 0.0.6)
xcodeproj (1.4.2)
xcodeproj (1.4.4)
CFPropertyList (~> 2.3.3)
activesupport (>= 3)
claide (>= 1.0.1, < 2.0)
colored (~> 1.2)
colored2 (~> 3.1)
nanaimo (~> 0.2.3)
PLATFORMS
@@ -89,4 +89,4 @@ DEPENDENCIES
jazzy
BUNDLED WITH
1.14.5
1.14.6
+70 -49
View File
@@ -1,10 +1,27 @@
# Siren
# Siren 🚨
### Notify users when a new version of your app is available and prompt them to upgrade.
[![BuddyBuild](https://dashboard.buddybuild.com/api/statusImage?appID=58c4d0d85601d40100c5c51d&branch=master&build=latest)](https://dashboard.buddybuild.com/apps/58c4d0d85601d40100c5c51d/build/latest?branch=master) [![CocoaPods](https://img.shields.io/cocoapods/v/Siren.svg)](https://cocoapods.org/pods/Siren) [![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![SwiftPM Compatible](https://img.shields.io/badge/SwiftPM-Compatible-brightgreen.svg)](https://swift.org/package-manager/) [![CocoaPods](https://img.shields.io/cocoapods/dt/Siren.svg)](https://cocoapods.org/pods/Siren) [![CocoaPods](https://img.shields.io/cocoapods/dm/Siren.svg)](https://cocoapods.org/pods/Siren)
---
## Table of Contents
- [About](https://github.com/ArtSabintsev/Siren#about)
- [Features](https://github.com/ArtSabintsev/Siren#features)
- [Screenshots](https://github.com/ArtSabintsev/Siren#screenshots)
- [Installation Instructions](https://github.com/ArtSabintsev/Siren#installation-instructions)
- [Example Code](https://github.com/ArtSabintsev/Siren#example-code)
- [Granular/Differentiated Version Management](https://github.com/ArtSabintsev/Siren#granular-version-update-management)
- [Delegates (Optional)](https://github.com/ArtSabintsev/Siren#optional-delegate-and-delegate-methods)
- [Localization](https://github.com/ArtSabintsev/Siren#localization)
- [Device Compatibility](https://github.com/ArtSabintsev/Siren#device-compatibility)
- [Testing Siren](https://github.com/ArtSabintsev/Siren#testing-siren)
- [App Store Review & Submissions](https://github.com/ArtSabintsev/Siren#app-store-submissions)
- [Words of Caution](https://github.com/ArtSabintsev/Siren#words-of-caution)
- [Ports](https://github.com/ArtSabintsev/Siren#ports)
- [Attribution](https://github.com/ArtSabintsev/Siren#created-and-maintained-by)
---
## About
**Siren** checks a user's currently installed version of your iOS app against the version that is currently available in the App Store.
@@ -15,41 +32,27 @@ If a new version is available, an alert can be presented to the user informing t
- Siren also supports two-number versioning (e.g., 1.0) and four-number versioning (e.g., 1.0.0.0)
- Siren is actively maintained by [**Arthur Sabintsev**](http://github.com/ArtSabintsev) and [**Aaron Brager**](http://twitter.com/getaaron)
## README Translations
### README Translations
- [**简体中文**](README.zh_CN.md) (by [**Daniel Hu**](http://www.jianshu.com/u/d8bbc4831623))
## Ports
- **Objective-C (iOS)**
- [**Harpy**](http://github.com/ArtSabintsev/Harpy)
- Siren was ported _from_ Harpy, as Siren and Harpy are maintained by the same developer.
- **Java (Android)**
- [**Egghead Games' Siren library**](https://github.com/eggheadgames/Siren)
- The Siren Swift library inspired the Java library.
- **React Native (iOS)**
- [**Gant Laborde's Siren library**](https://github.com/GantMan/react-native-siren)
- The Siren Swift library inspired the React Native library.
## Features
- [x] CocoaPods Support
- [x] Carthage Support
- [x] Swift Package Manager Support
- [x] Localized for 30+ languages (See **Localization**)
- [x] Pre-Update Device Compatibility Check (See **Device Compatibility**)
- [x] Three types of alerts (see **Screenshots**)
- [x] Optional delegate methods (see **Optional Delegate**)
- [x] Localized for 30+ languages (see [Localization](https://github.com/ArtSabintsev/Siren#localization))
- [x] Pre-Update Device Compatibility Check (see [Device Compatibility](https://github.com/ArtSabintsev/Siren#device-compatibility)
- [x] Three types of alerts (see [Screenshots](https://github.com/ArtSabintsev/Siren#screenshots))
- [x] Optional delegate methods (see [Delegates (Optional)](https://github.com/ArtSabintsev/Siren#optional-delegate-and-delegate-methods)
- [x] Unit Tests
- [x] Documentation can be found at http://sabintsev.com/Siren
- [x] Documentation can be found at http://sabintsev.com/Siren.
## Screenshots
- The **left picture** forces the user to update the app.
- The **center picture** gives the user the option to update the app.
- The **right picture** gives the user the option to skip the current update.
- These options are controlled by the `SirenAlertType` enum.
- These options are controlled by the `Siren.AlertType` enum.
<img src="https://github.com/ArtSabintsev/Harpy/blob/master/Assets/picForcedUpdate.png?raw=true" height=480">
<img src="https://github.com/ArtSabintsev/Harpy/blob/master/Assets/picOptionalUpdate.png?raw=true" height=480">
<img src="https://github.com/ArtSabintsev/Harpy/blob/master/Assets/picSkippedUpdate.png?raw=true" height=480">
<img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picForcedUpdate.png?raw=true" height="480"><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picOptionalUpdate.png?raw=true" height="480"><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picSkippedUpdate.png?raw=true" height="480">
## Installation Instructions
@@ -85,27 +88,31 @@ github "ArtSabintsev/Siren" "swift2.3"
### Swift Package Manager
```swift
.Package(url: "https://github.com/ArtSabintsev/Siren.git", majorVersion: 1)
.Package(url: "https://github.com/ArtSabintsev/Siren.git", majorVersion: 2)
```
## Setup
## Example Code
Here's some commented sample code. Adapt this to meet your app's needs. For a full list of optional settings/preferences, please refer to https://github.com/ArtSabintsev/Siren/blob/master/Sample%20App/Sample%20App/AppDelegate.swift in the Sample Project.
Below is some commented sample code. Adapt this to meet your app's needs.
For a full list of optional settings/preferences, please refer to https://github.com/ArtSabintsev/Siren/blob/master/SirenExample/SirenExample/AppDelegate.swift in the Sample Project.
```Swift
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
/* Siren code should go below window?.makeKeyAndVisible() */
// Siren is a singleton
let siren = Siren.shared
// Siren is a singleton
let siren = Siren.shared
// Optional: Defaults to .Option
siren.alertType = <#SirenAlertType_Enum_Value#>
// Optional: Defaults to .option
siren.alertType = <#Siren.AlertType_Enum_Value#>
/*
Replace .Immediately with .Daily or .Weekly to specify a maximum daily or weekly frequency for version
checks.
*/
// Optional: Set this variable if you would only like to show an alert if your app has been available on the store for a few days.
// This default value is set to 1 to avoid this issue: https://github.com/ArtSabintsev/Siren#words-of-caution
// To show the update immediately after Apple has updated their JSON, set this value to 0. Not recommended due to aforementioned reason in https://github.com/ArtSabintsev/Siren#words-of-caution.
siren.showAlertAfterCurrentVersionHasBeenReleasedForDays = 3
// Replace .immediately with .daily or .weekly to specify a maximum daily or weekly frequency for version checks.
siren.checkVersion(checkType: .immediately)
return true
@@ -113,7 +120,7 @@ func application(application: UIApplication, didFinishLaunchingWithOptions launc
func applicationDidBecomeActive(application: UIApplication) {
/*
Perform daily (.Daily) or weekly (.Weekly) checks for new version of your app.
Perform daily (.daily) or weekly (.weekly) checks for new version of your app.
Useful if user returns to your app from the background after extended period of time.
Place in applicationDidBecomeActive(_:). */
@@ -122,10 +129,10 @@ func applicationDidBecomeActive(application: UIApplication) {
func applicationWillEnterForeground(application: UIApplication) {
/*
Useful if user returns to your app from the background after being sent to the
App Store, but doesn't update their app before coming back to your app.
Useful if user returns to your app from the background after being sent to the
App Store, but doesn't update their app before coming back to your app.
ONLY USE WITH SirenAlertType.Force
ONLY USE WITH Siren.AlertType.immediately
*/
Siren.shared.checkVersion(checkType: .immediately)
@@ -142,7 +149,7 @@ Some developers may want to display a less obtrusive custom interface, like a ba
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
...
siren.delegate = self
siren.alertType = .None
siren.alertType = .none
...
}
@@ -156,15 +163,15 @@ extension AppDelegate: SirenDelegate {
Siren will call the `sirenDidDetectNewVersionWithoutAlert(message: String)` delegate method, passing a localized, suggested update string suitable for display. Implement this method to display your own messaging, optionally using `message`.
## Differentiated Alerts for Revision, Patch, Minor, and Major Updates
## Granular Version Update Management
If you would like to set a different type of alert for revision, patch, minor, and/or major updates, simply add one or all of the following *optional* lines to your setup *before* calling the `checkVersion()` method:
```swift
/* Siren defaults to SirenAlertType.Option for all updates */
siren.shared.revisionUpdateAlertType = <#SirenAlertType_Enum_Value#>
siren.shared.patchUpdateAlertType = <#SirenAlertType_Enum_Value#>
siren.shared.minorUpdateAlertType = <#SirenAlertType_Enum_Value#>
siren.shared.majorUpdateAlertType = <#SirenAlertType_Enum_Value#>
/* Siren defaults to Siren.AlertType.option for all updates */
siren.shared.revisionUpdateAlertType = <#Siren.AlertType_Enum_Value#>
siren.shared.patchUpdateAlertType = <#Siren.AlertType_Enum_Value#>
siren.shared.minorUpdateAlertType = <#Siren.AlertType_Enum_Value#>
siren.shared.majorUpdateAlertType = <#Siren.AlertType_Enum_Value#>
```
## Optional Delegate and Delegate Methods
@@ -172,7 +179,7 @@ Six delegate methods allow you to handle or track the user's behavior. Each meth
``` swift
public protocol SirenDelegate: class {
func sirenDidShowUpdateDialog(alertType: SirenAlertType) // User presented with update dialog
func sirenDidShowUpdateDialog(alertType: Siren.AlertType) // User presented with update dialog
func sirenUserDidLaunchAppStore() // User did click on button that launched App Store.app
func sirenUserDidSkipVersion() // User did click on button that skips version update
func sirenUserDidCancel() // User did click on button that cancels update dialog
@@ -218,13 +225,13 @@ Siren is localized for
You may want the update dialog to *always* appear in a certain language, ignoring iOS's language setting (e.g. apps released in a specific country).
You can enable it like this:
You can enable it like so:
```swift
Siren.shared.forceLanguageLocalization = SirenLanguageType.<#SirenLanguageType_Enum_Value#>
Siren.shared.forceLanguageLocalization = Siren.LanguageType.<#Siren.LanguageType_Enum_Value#>
```
## Device Compatibility
If an app update is available, Siren checks to make sure that the version of iOS on the user's device is compatible the one that is required by the app update. For example, if a user has iOS 9 installed on their device, but the app update requires iOS 10, an alert will not be shown. This takes care of the *false positive* case regarding app updating.
If an app update is available, Siren checks to make sure that the version of iOS on the user's device is compatible with the one that is required by the app update. For example, if a user has iOS 9 installed on their device, but the app update requires iOS 10, an alert will not be shown. This takes care of the *false positive* case regarding app updating.
## Testing Siren
Temporarily change the version string in Xcode (within the `.xcodeproj`) to an older version than the one that's currently available in the App Store. Afterwards, build and run your app, and you should see the alert.
@@ -236,5 +243,19 @@ For your convenience, you may turn on debugging statements by setting `self.debu
## App Store Submissions
The App Store reviewer will **not** see the alert. The version in the App Store will always be older than the version being reviewed.
## Words of Caution
Occasionally, the iTunes JSON will update faster than the App Store CDN, meaning the JSON may state that the new version of the app has been release, while no new binary is made available for download via the App Store. It is for this reason that Siren will, by default, wait 24 hours after the JSON has been updated to prompt the user to update. To change the default setting, please modify the value of `showAlertAfterCurrentVersionHasBeenReleasedForDays`.
## Ports
- **Objective-C (iOS)**
- [**Harpy**](http://github.com/ArtSabintsev/Harpy)
- Siren was ported _from_ Harpy, as Siren and Harpy are maintained by the same developer.
- **Java (Android)**
- [**Egghead Games' Siren library**](https://github.com/eggheadgames/Siren)
- The Siren Swift library inspired the Java library.
- **React Native (iOS)**
- [**Gant Laborde's Siren library**](https://github.com/GantMan/react-native-siren)
- The Siren Swift library inspired the React Native library.
## Created and maintained by
[Arthur Ariel Sabintsev](http://www.sabintsev.com/) & [Aaron Brager](http://twitter.com/getaaron)
+2 -6
View File
@@ -1,14 +1,10 @@
Pod::Spec.new do |s|
s.name = "Siren"
s.version = "1.2.4"
s.version = "2.0.2"
s.summary = "Notify users when a new version of your iOS app is available, and prompt them with the App Store link.."
s.description = <<-DESC
Siren is checks a users currently installed version of your iOS app against the version that is currently available in the App Store. If a new version is available, an instance of UIAlertController can be presented to the user informing them of the newer version, and giving them the option to update the application. Alternatively, Siren can notify your app programmatically, enabling you to inform the user through alternative means, such as a custom interface.
Siren is built to work with the Semantic Versioning system.
Siren is a Swift port of Harpy, an Objective-C library that achieves the same functionality.
Siren is actively maintained by Arthur Sabintsev and Aaron Brager.
Siren is checks a users currently installed version of your iOS app against the version that is currently available in the App Store.
DESC
s.homepage = "https://github.com/ArtSabintsev/Siren"
@@ -13,6 +13,9 @@
55EC36601E6BB99B00726F13 /* Siren.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 55EC365E1E6BB99B00726F13 /* Siren.bundle */; };
55EC36611E6BB99B00726F13 /* Siren.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55EC365F1E6BB99B00726F13 /* Siren.swift */; };
8E1635A91E6A0B9C0060CE27 /* SirenTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EE6C74C1E6A0AE100DBE454 /* SirenTests.swift */; };
8E43D6231E8223EE00ECFFC8 /* SirenDateExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E43D6221E8223EE00ECFFC8 /* SirenDateExtension.swift */; };
8E528A301E989A7A00B643C4 /* SirenDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E528A2F1E989A7A00B643C4 /* SirenDelegate.swift */; };
8E528A321E989E0A00B643C4 /* SirenTestHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E528A311E989E0A00B643C4 /* SirenTestHelper.swift */; };
8E9C238B1E7CDB42000ED3DA /* SirenBundleExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9C238A1E7CDB42000ED3DA /* SirenBundleExtension.swift */; };
8E9C238D1E7CDD31000ED3DA /* SirenUIAlertControllerExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9C238C1E7CDD31000ED3DA /* SirenUIAlertControllerExtension.swift */; };
8E9C238F1E7CDDE7000ED3DA /* SirenViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9C238E1E7CDDE7000ED3DA /* SirenViewController.swift */; };
@@ -61,6 +64,9 @@
55EC365E1E6BB99B00726F13 /* Siren.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; name = Siren.bundle; path = ../../Sources/Siren.bundle; sourceTree = "<group>"; };
55EC365F1E6BB99B00726F13 /* Siren.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = Siren.swift; path = ../../Sources/Siren.swift; sourceTree = "<group>"; };
8E3A6C041D07CB6F00A8B7CF /* SirenExampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SirenExampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
8E43D6221E8223EE00ECFFC8 /* SirenDateExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SirenDateExtension.swift; path = ../../Sources/SirenDateExtension.swift; sourceTree = "<group>"; };
8E528A2F1E989A7A00B643C4 /* SirenDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SirenDelegate.swift; path = ../../Sources/SirenDelegate.swift; sourceTree = "<group>"; };
8E528A311E989E0A00B643C4 /* SirenTestHelper.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SirenTestHelper.swift; path = ../../Sources/SirenTestHelper.swift; sourceTree = "<group>"; };
8E9C238A1E7CDB42000ED3DA /* SirenBundleExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SirenBundleExtension.swift; path = ../../Sources/SirenBundleExtension.swift; sourceTree = "<group>"; };
8E9C238C1E7CDD31000ED3DA /* SirenUIAlertControllerExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SirenUIAlertControllerExtension.swift; path = ../../Sources/SirenUIAlertControllerExtension.swift; sourceTree = "<group>"; };
8E9C238E1E7CDDE7000ED3DA /* SirenViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SirenViewController.swift; path = ../../Sources/SirenViewController.swift; sourceTree = "<group>"; };
@@ -106,7 +112,10 @@
children = (
55EC365E1E6BB99B00726F13 /* Siren.bundle */,
55EC365F1E6BB99B00726F13 /* Siren.swift */,
8E528A2F1E989A7A00B643C4 /* SirenDelegate.swift */,
8E9C238A1E7CDB42000ED3DA /* SirenBundleExtension.swift */,
8E43D6221E8223EE00ECFFC8 /* SirenDateExtension.swift */,
8E528A311E989E0A00B643C4 /* SirenTestHelper.swift */,
8E9C238C1E7CDD31000ED3DA /* SirenUIAlertControllerExtension.swift */,
8E9C238E1E7CDDE7000ED3DA /* SirenViewController.swift */,
55EC36491E6BB98A00726F13 /* Siren.h */,
@@ -119,14 +128,22 @@
isa = PBXGroup;
children = (
8EE6C7411E6A0AA500DBE454 /* AppDelegate.swift */,
8E528A331E98AED300B643C4 /* Supporting Files */,
);
name = SirenExample;
path = "Sample App";
sourceTree = "<group>";
};
8E528A331E98AED300B643C4 /* Supporting Files */ = {
isa = PBXGroup;
children = (
8EE6C7421E6A0AA500DBE454 /* ViewController.swift */,
8EBDF8211E6A0C41006C87B4 /* LaunchScreen.xib */,
8EBDF8231E6A0C41006C87B4 /* Main.storyboard */,
8EE6C7461E6A0AB800DBE454 /* Images.xcassets */,
8EE6C7471E6A0AB800DBE454 /* Info.plist */,
);
name = SirenExample;
path = "Sample App";
name = "Supporting Files";
sourceTree = "<group>";
};
8EC391781A58B465001C121E = {
@@ -327,9 +344,12 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8E528A321E989E0A00B643C4 /* SirenTestHelper.swift in Sources */,
8E9C238F1E7CDDE7000ED3DA /* SirenViewController.swift in Sources */,
55EC36611E6BB99B00726F13 /* Siren.swift in Sources */,
8E43D6231E8223EE00ECFFC8 /* SirenDateExtension.swift in Sources */,
8E9C238B1E7CDB42000ED3DA /* SirenBundleExtension.swift in Sources */,
8E528A301E989A7A00B643C4 /* SirenDelegate.swift in Sources */,
8E9C238D1E7CDD31000ED3DA /* SirenUIAlertControllerExtension.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
+8 -6
View File
@@ -31,9 +31,9 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
// Optional
siren.debugEnabled = true
// Optional
siren.appName = "Test App Name"
// Optional - Change the name of your app. Useful if you have a long app name and want to display a shortened version in the update dialog (e.g., the UIAlertController).
// siren.appName = "Test App Name"
// Optional - Defaults to .Option
// siren.alertType = .Option // or .Force, .Skip, .None
@@ -49,8 +49,10 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
// Optional - Set this variable if your app is not available in the U.S. App Store. List of codes: https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Appendices/AppStoreTerritories.html
// siren.countryCode = ""
// Optional - Set this variable if you would only like to show an alert if your app has been available on the store for a few days. The number 5 is used as an example.
// siren.showAlertAfterCurrentVersionHasBeenReleasedForDays = 5
// Optional - Set this variable if you would only like to show an alert if your app has been available on the store for a few days.
// This default value is set to 1 to avoid this issue: https://github.com/ArtSabintsev/Siren#words-of-caution
// To show the update immediately after Apple has updated their JSON, set this value to 0. Not recommended due to aforementioned reason in https://github.com/ArtSabintsev/Siren#words-of-caution.
// siren.showAlertAfterCurrentVersionHasBeenReleasedForDays = 3
// Required
siren.checkVersion(checkType: .immediately)
@@ -69,7 +71,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
extension AppDelegate: SirenDelegate
{
func sirenDidShowUpdateDialog(alertType: SirenAlertType) {
func sirenDidShowUpdateDialog(alertType: Siren.AlertType) {
print(#function, alertType)
}
+35 -35
View File
@@ -139,7 +139,7 @@ extension SirenTests {
extension SirenTests {
func testArabicLocalization() {
let language: SirenLanguageType = .Arabic
let language: Siren.LanguageType = .Arabic
siren.forceLanguageLocalization = language
// Update Available
@@ -156,7 +156,7 @@ extension SirenTests {
}
func testArmenianLocalization() {
let language: SirenLanguageType = .Armenian
let language: Siren.LanguageType = .Armenian
siren.forceLanguageLocalization = language
// Update Available
@@ -173,7 +173,7 @@ extension SirenTests {
}
func testBasqueLocalization() {
let language: SirenLanguageType = .Basque
let language: Siren.LanguageType = .Basque
siren.forceLanguageLocalization = language
// Update Available
@@ -190,7 +190,7 @@ extension SirenTests {
}
func testChineseSimplifiedLocalization() {
let language: SirenLanguageType = .ChineseSimplified
let language: Siren.LanguageType = .ChineseSimplified
siren.forceLanguageLocalization = language
// Update Available
@@ -207,7 +207,7 @@ extension SirenTests {
}
func testChineseTraditionalLocalization() {
let language: SirenLanguageType = .ChineseTraditional
let language: Siren.LanguageType = .ChineseTraditional
siren.forceLanguageLocalization = language
// Update Available
@@ -224,7 +224,7 @@ extension SirenTests {
}
func testCroatianLocalization() {
let language: SirenLanguageType = .Croatian
let language: Siren.LanguageType = .Croatian
siren.forceLanguageLocalization = language
// Update Available
@@ -241,7 +241,7 @@ extension SirenTests {
}
func testDanishLocalization() {
let language: SirenLanguageType = .Danish
let language: Siren.LanguageType = .Danish
siren.forceLanguageLocalization = language
// Update Available
@@ -258,7 +258,7 @@ extension SirenTests {
}
func testDutchLocalization() {
let language: SirenLanguageType = .Dutch
let language: Siren.LanguageType = .Dutch
siren.forceLanguageLocalization = language
// Update Available
@@ -275,7 +275,7 @@ extension SirenTests {
}
func testEstonianLocalization() {
let language: SirenLanguageType = .Estonian
let language: Siren.LanguageType = .Estonian
siren.forceLanguageLocalization = language
// Update Available
@@ -292,7 +292,7 @@ extension SirenTests {
}
func testFinnishLocalization() {
let language: SirenLanguageType = .Finnish
let language: Siren.LanguageType = .Finnish
siren.forceLanguageLocalization = language
// Update Available
@@ -309,7 +309,7 @@ extension SirenTests {
}
func testFrenchLocalization() {
let language: SirenLanguageType = .French
let language: Siren.LanguageType = .French
siren.forceLanguageLocalization = language
// Update Available
@@ -326,7 +326,7 @@ extension SirenTests {
}
func testGermanLocalization() {
let language: SirenLanguageType = .German
let language: Siren.LanguageType = .German
siren.forceLanguageLocalization = language
// Update Available
@@ -343,7 +343,7 @@ extension SirenTests {
}
func testGreekLocalization() {
let language: SirenLanguageType = .Greek
let language: Siren.LanguageType = .Greek
siren.forceLanguageLocalization = language
// Update Available
@@ -360,7 +360,7 @@ extension SirenTests {
}
func testHebrewLocalization() {
let language: SirenLanguageType = .Hebrew
let language: Siren.LanguageType = .Hebrew
siren.forceLanguageLocalization = language
// Update Available
@@ -377,7 +377,7 @@ extension SirenTests {
}
func testHungarianLocalization() {
let language: SirenLanguageType = .Hungarian
let language: Siren.LanguageType = .Hungarian
siren.forceLanguageLocalization = language
// Update Available
@@ -394,7 +394,7 @@ extension SirenTests {
}
func testIndonesianLocalization() {
let language: SirenLanguageType = .Indonesian
let language: Siren.LanguageType = .Indonesian
siren.forceLanguageLocalization = language
// Update Available
@@ -411,7 +411,7 @@ extension SirenTests {
}
func testItalianLocalization() {
let language: SirenLanguageType = .Italian
let language: Siren.LanguageType = .Italian
siren.forceLanguageLocalization = language
// Update Available
@@ -428,7 +428,7 @@ extension SirenTests {
}
func testJapaneseLocalization() {
let language: SirenLanguageType = .Japanese
let language: Siren.LanguageType = .Japanese
siren.forceLanguageLocalization = language
// Update Available
@@ -445,7 +445,7 @@ extension SirenTests {
}
func testKoreanLocalization() {
let language: SirenLanguageType = .Korean
let language: Siren.LanguageType = .Korean
siren.forceLanguageLocalization = language
// Update Available
@@ -462,7 +462,7 @@ extension SirenTests {
}
func testLatvianLocalization() {
let language: SirenLanguageType = .Latvian
let language: Siren.LanguageType = .Latvian
siren.forceLanguageLocalization = language
// Update Available
@@ -479,7 +479,7 @@ extension SirenTests {
}
func testLithuanianLocalization() {
let language: SirenLanguageType = .Lithuanian
let language: Siren.LanguageType = .Lithuanian
siren.forceLanguageLocalization = language
// Update Available
@@ -496,7 +496,7 @@ extension SirenTests {
}
func testMalayLocalization() {
let language: SirenLanguageType = .Malay
let language: Siren.LanguageType = .Malay
siren.forceLanguageLocalization = language
// Update Available
@@ -513,7 +513,7 @@ extension SirenTests {
}
func testNorwegianLocalization() {
let language: SirenLanguageType = .Norwegian
let language: Siren.LanguageType = .Norwegian
siren.forceLanguageLocalization = language
// Update Available
@@ -530,7 +530,7 @@ extension SirenTests {
}
func testPolishLocalization() {
let language: SirenLanguageType = .Polish
let language: Siren.LanguageType = .Polish
siren.forceLanguageLocalization = language
// Update Available
@@ -547,7 +547,7 @@ extension SirenTests {
}
func testPortugueseBrazilLocalization() {
let language: SirenLanguageType = .PortugueseBrazil
let language: Siren.LanguageType = .PortugueseBrazil
siren.forceLanguageLocalization = language
// Update Available
@@ -564,7 +564,7 @@ extension SirenTests {
}
func testPortuguesePortugalLocalization() {
let language: SirenLanguageType = .PortuguesePortugal
let language: Siren.LanguageType = .PortuguesePortugal
siren.forceLanguageLocalization = language
// Update Available
@@ -581,7 +581,7 @@ extension SirenTests {
}
func testRussianLocalization() {
let language: SirenLanguageType = .Russian
let language: Siren.LanguageType = .Russian
siren.forceLanguageLocalization = language
// Update Available
@@ -598,7 +598,7 @@ extension SirenTests {
}
func testSerbianCyrillicLocalization() {
let language: SirenLanguageType = .SerbianCyrillic
let language: Siren.LanguageType = .SerbianCyrillic
siren.forceLanguageLocalization = language
// Update Available
@@ -615,7 +615,7 @@ extension SirenTests {
}
func testSerbianLatinLocalization() {
let language: SirenLanguageType = .SerbianLatin
let language: Siren.LanguageType = .SerbianLatin
siren.forceLanguageLocalization = language
// Update Available
@@ -632,7 +632,7 @@ extension SirenTests {
}
func testSlovenianLocalization() {
let language: SirenLanguageType = .Slovenian
let language: Siren.LanguageType = .Slovenian
siren.forceLanguageLocalization = language
// Update Available
@@ -649,7 +649,7 @@ extension SirenTests {
}
func testSpanishLocalization() {
let language: SirenLanguageType = .Spanish
let language: Siren.LanguageType = .Spanish
siren.forceLanguageLocalization = language
// Update Available
@@ -666,7 +666,7 @@ extension SirenTests {
}
func testSwedishLocalization() {
let language: SirenLanguageType = .Swedish
let language: Siren.LanguageType = .Swedish
siren.forceLanguageLocalization = language
// Update Available
@@ -683,7 +683,7 @@ extension SirenTests {
}
func testThaiLocalization() {
let language: SirenLanguageType = .Thai
let language: Siren.LanguageType = .Thai
siren.forceLanguageLocalization = language
// Update Available
@@ -700,7 +700,7 @@ extension SirenTests {
}
func testTurkishLocalization() {
let language: SirenLanguageType = .Turkish
let language: Siren.LanguageType = .Turkish
siren.forceLanguageLocalization = language
// Update Available
@@ -717,7 +717,7 @@ extension SirenTests {
}
func testVietnameseLocalization() {
let language: SirenLanguageType = .Vietnamese
let language: Siren.LanguageType = .Vietnamese
siren.forceLanguageLocalization = language
// Update Available
+194 -247
View File
@@ -8,166 +8,28 @@
import UIKit
// MARK: - SirenDelegate Protocol
/// Delegate that handles all codepaths for Siren upon version check completion.
public protocol SirenDelegate: class {
/// User presented with update dialog
func sirenDidShowUpdateDialog(alertType: SirenAlertType)
/// User did click on button that launched App Store.app
func sirenUserDidLaunchAppStore()
/// User did click on button that skips version update
func sirenUserDidSkipVersion()
/// User did click on button that cancels update dialog
func sirenUserDidCancel()
/// Siren failed to perform version check (may return system-level error)
func sirenDidFailVersionCheck(error: NSError)
/// Siren performed version check and did not display alert
func sirenDidDetectNewVersionWithoutAlert(message: String)
/// Siren performed version check and latest version is installed
func sirenLatestVersionInstalled()
}
// MARK: - SirenDelegate Protocol Extension
public extension SirenDelegate {
func sirenDidShowUpdateDialog(alertType: SirenAlertType) {}
func sirenUserDidLaunchAppStore() {}
func sirenUserDidSkipVersion() {}
func sirenUserDidCancel() {}
func sirenDidFailVersionCheck(error: NSError) {}
func sirenDidDetectNewVersionWithoutAlert(message: String) {}
func sirenLatestVersionInstalled() {}
}
/// Determines the type of alert to present after a successful version check has been performed.
public enum SirenAlertType {
/// Forces user to update your app (1 button alert).
case force
/// (DEFAULT) Presents user with option to update app now or at next launch (2 button alert).
case option
/// Presents user with option to update the app now, at next launch, or to skip this version all together (3 button alert).
case skip
/// Doesn't show the alert, but instead returns a localized message for use in a custom UI within the sirenDidDetectNewVersionWithoutAlert() delegate method.
case none
}
/// Determines the frequency in which the the version check is performed.
///
public enum SirenVersionCheckType: Int {
/// Version check performed every time the app is launched.
case immediately = 0
/// Version check performed once a day.
case daily = 1
/// Version check performed once a week.
case weekly = 7
}
/// Determines the available languages in which the update message and alert button titles should appear.
///
/// By default, the operating system's default lanuage setting is used. However, you can force a specific language
/// by setting the forceLanguageLocalization property before calling checkVersion()
public enum SirenLanguageType: String {
case Arabic = "ar"
case Armenian = "hy"
case Basque = "eu"
case ChineseSimplified = "zh-Hans"
case ChineseTraditional = "zh-Hant"
case Croatian = "hr"
case Danish = "da"
case Dutch = "nl"
case English = "en"
case Estonian = "et"
case Finnish = "fi"
case French = "fr"
case German = "de"
case Greek = "el"
case Hebrew = "he"
case Hungarian = "hu"
case Indonesian = "id"
case Italian = "it"
case Japanese = "ja"
case Korean = "ko"
case Latvian = "lv"
case Lithuanian = "lt"
case Malay = "ms"
case Norwegian = "nb-NO"
case Polish = "pl"
case PortugueseBrazil = "pt"
case PortuguesePortugal = "pt-PT"
case Russian = "ru"
case SerbianCyrillic = "sr-Cyrl"
case SerbianLatin = "sr-Latn"
case Slovenian = "sl"
case Spanish = "es"
case Swedish = "sv"
case Thai = "th"
case Turkish = "tr"
case Vietnamese = "vi"
}
/// Siren-specific Error Codes
private enum SirenErrorCode: Int {
case malformedURL = 1000
case recentlyCheckedAlready
case noUpdateAvailable
case appStoreDataRetrievalFailure
case appStoreJSONParsingFailure
case appStoreOSVersionNumberFailure
case appStoreOSVersionUnsupported
case appStoreVersionNumberFailure
case appStoreVersionArrayFailure
case appStoreAppIDFailure
}
/// Siren-specific Throwable Errors
private enum SirenError: Error {
case malformedURL
case missingBundleIdOrAppId
}
/// Siren-specific UserDefaults Keys
private enum SirenUserDefaults: String {
/// Key that stores the timestamp of the last version check in UserDefaults
case StoredVersionCheckDate
/// Key that stores the version that a user decided to skip in UserDefaults.
case StoredSkippedVersion
}
// MARK: - Siren
/// The Siren Class. A singleton that is initialized using the shared() method.
public final class Siren: NSObject {
///Current installed version of your app
fileprivate var currentInstalledVersion: String? = {
/// Current installed version of your app.
internal var currentInstalledVersion: String? = {
return Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String
}()
/// The error domain for all errors created by Siren
/// The error domain for all errors created by Siren.
public let SirenErrorDomain = "Siren Error Domain"
/// The SirenDelegate variable, which should be set if you'd like to be notified:
///
/// When a user views or interacts with the alert
/// - sirenDidShowUpdateDialog(alertType: SirenAlertType)
/// - sirenDidShowUpdateDialog(alertType: AlertType)
/// - sirenUserDidLaunchAppStore()
/// - sirenUserDidSkipVersion()
/// - sirenUserDidCancel()
///
/// When a new version has been detected, and you would like to present a localized message in a custom UI
/// When a new version has been detected, and you would like to present a localized message in a custom UI. use this delegate method:
/// - sirenDidDetectNewVersionWithoutAlert(message: String)
public weak var delegate: SirenDelegate?
@@ -176,8 +38,8 @@ public final class Siren: NSObject {
public lazy var debugEnabled = false
/// Determines the type of alert that should be shown.
/// See the SirenAlertType enum for full details.
public var alertType = SirenAlertType.option {
/// See the Siren.AlertType enum for full details.
public var alertType = AlertType.option {
didSet {
majorUpdateAlertType = alertType
minorUpdateAlertType = alertType
@@ -187,24 +49,24 @@ public final class Siren: NSObject {
}
/// Determines the type of alert that should be shown for major version updates: A.b.c
/// Defaults to SirenAlertType.Option.
/// See the SirenAlertType enum for full details.
public lazy var majorUpdateAlertType = SirenAlertType.option
/// Defaults to Siren.AlertType.option.
/// See the Siren.AlertType enum for full details.
public lazy var majorUpdateAlertType = AlertType.option
/// Determines the type of alert that should be shown for minor version updates: a.B.c
/// Defaults to SirenAlertType.Option.
/// See the SirenAlertType enum for full details.
public lazy var minorUpdateAlertType = SirenAlertType.option
/// Defaults to Siren.AlertType.option.
/// See the Siren.AlertType enum for full details.
public lazy var minorUpdateAlertType = AlertType.option
/// Determines the type of alert that should be shown for minor patch updates: a.b.C
/// Defaults to SirenAlertType.Option.
/// See the SirenAlertType enum for full details.
public lazy var patchUpdateAlertType = SirenAlertType.option
/// Defaults to Siren.AlertType.option.
/// See the Siren.AlertType enum for full details.
public lazy var patchUpdateAlertType = AlertType.option
/// Determines the type of alert that should be shown for revision updates: a.b.c.D
/// Defaults to SirenAlertType.Option.
/// See the SirenAlertType enum for full details.
public lazy var revisionUpdateAlertType = SirenAlertType.option
/// Defaults to Siren.AlertType.option.
/// See the Siren.AlertType enum for full details.
public lazy var revisionUpdateAlertType = AlertType.option
/// The name of your app.
/// By default, it's set to the name of the app that's stored in your plist.
@@ -216,17 +78,18 @@ public final class Siren: NSObject {
public var countryCode: String?
/// Overrides the default localization of a user's device when presenting the update message and button titles in the alert.
/// See the SirenLanguageType enum for more details.
public var forceLanguageLocalization: SirenLanguageType?
/// See the Siren.LanguageType enum for more details.
public var forceLanguageLocalization: Siren.LanguageType?
/// Overrides the tint color for UIAlertController.
public var alertControllerTintColor: UIColor?
/// When this is set, the alert will only show up if the current version has already been released for X days
public var showAlertAfterCurrentVersionHasBeenReleasedForDays: Int?
/// Defaults to 1 day to avoid an issue where Apple updates the JSON faster than the app binary propogates to the App Store.
public var showAlertAfterCurrentVersionHasBeenReleasedForDays: Int = 1
/// The current version of your app that is available for download on the App Store
public fileprivate(set) var currentAppStoreVersion: String?
public internal(set) var currentAppStoreVersion: String?
internal var updaterWindow: UIWindow?
fileprivate var appID: Int?
@@ -240,7 +103,7 @@ public final class Siren: NSObject {
public static let sharedInstance = Siren()
override init() {
lastVersionCheckPerformedOnDate = UserDefaults.standard.object(forKey: SirenUserDefaults.StoredVersionCheckDate.rawValue) as? Date
lastVersionCheckPerformedOnDate = UserDefaults.standard.object(forKey: SirenDefaults.StoredVersionCheckDate.rawValue) as? Date
}
/// Checks the currently installed version of your app against the App Store.
@@ -248,8 +111,8 @@ public final class Siren: NSObject {
/// you should set the `countryCode` property before calling this method. Please refer to the countryCode property for more information.
///
/// - Parameters:
/// - checkType: The frequency in days in which you want a check to be performed. Please refer to the SirenVersionCheckType enum for more details.
public func checkVersion(checkType: SirenVersionCheckType) {
/// - checkType: The frequency in days in which you want a check to be performed. Please refer to the Siren.VersionCheckType enum for more details.
public func checkVersion(checkType: VersionCheckType) {
guard let _ = Bundle.bundleID() else {
printMessage(message: "Please make sure that you have set a `Bundle Identifier` in your project.")
return
@@ -263,7 +126,7 @@ public final class Siren: NSObject {
return
}
if days(since: lastVersionCheckPerformedOnDate) >= checkType.rawValue {
if Date.days(since: lastVersionCheckPerformedOnDate) >= checkType.rawValue {
performVersionCheck()
} else {
postError(.recentlyCheckedAlready, underlyingError: nil)
@@ -290,59 +153,63 @@ private extension Siren {
func processResults(withData data: Data?, response: URLResponse?, error: Error?) {
if let error = error {
self.postError(.appStoreDataRetrievalFailure, underlyingError: error)
postError(.appStoreDataRetrievalFailure, underlyingError: error)
} else {
guard let data = data else {
self.postError(.appStoreDataRetrievalFailure, underlyingError: nil)
postError(.appStoreDataRetrievalFailure, underlyingError: nil)
return
}
do {
let jsonData = try JSONSerialization.jsonObject(with: data, options: JSONSerialization.ReadingOptions.allowFragments)
let jsonData = try JSONSerialization.jsonObject(with: data, options: [])
guard let appData = jsonData as? [String: Any],
self.isUpdateCompatibleWithDeviceOS(appData: appData) else {
self.postError(.appStoreJSONParsingFailure, underlyingError: nil)
isUpdateCompatibleWithDeviceOS(appData: appData) else {
postError(.appStoreJSONParsingFailure, underlyingError: nil)
return
}
DispatchQueue.main.async {
DispatchQueue.main.async { [unowned self] in
// Print iTunesLookup results from appData
self.printMessage(message: "JSON results: \(appData)")
// Process Results (e.g., extract current version that is available on the AppStore)
self.processVersionCheck(withResults: appData)
self.processVersionCheck(with: appData)
}
} catch let error as NSError {
self.postError(.appStoreDataRetrievalFailure, underlyingError: error)
postError(.appStoreDataRetrievalFailure, underlyingError: error)
}
}
}
func processVersionCheck(withResults results: [String: Any]) {
func processVersionCheck(with payload: [String: Any]) {
storeVersionCheckDate() // Store version comparison date
guard let allResults = results["results"] as? [[String: Any]] else {
self.postError(.appStoreVersionNumberFailure, underlyingError: nil)
guard let results = payload[JSONKeys.results] as? [[String: Any]] else {
postError(.appStoreVersionNumberFailure, underlyingError: nil)
return
}
/// Condition satisfied when app not in App Store
guard !allResults.isEmpty else {
guard !results.isEmpty else {
postError(.appStoreDataRetrievalFailure, underlyingError: nil)
return
}
guard let appID = allResults.first?["trackId"] as? Int else {
guard let info = results.first else {
postError(.appStoreDataRetrievalFailure, underlyingError: nil)
return
}
guard let appID = info[JSONKeys.appID] as? Int else {
postError(.appStoreAppIDFailure, underlyingError: nil)
return
}
self.appID = appID
guard let currentAppStoreVersion = allResults.first?["version"] as? String else {
self.postError(.appStoreVersionArrayFailure, underlyingError: nil)
guard let currentAppStoreVersion = info[JSONKeys.version] as? String else {
postError(.appStoreVersionArrayFailure, underlyingError: nil)
return
}
@@ -354,19 +221,18 @@ private extension Siren {
return
}
guard let alertDays = showAlertAfterCurrentVersionHasBeenReleasedForDays else {
showAlertIfCurrentAppStoreVersionNotSkipped()
guard let currentVersionReleaseDate = info[JSONKeys.currentVersionReleaseDate] as? String,
let daysSinceRelease = Date.days(since: currentVersionReleaseDate) else {
return
}
guard let currentVersionReleaseDate = allResults.first?["currentVersionReleaseDate"] as? String,
let daysSinceRelease = days(since: currentVersionReleaseDate),
daysSinceRelease >= alertDays else {
return
guard daysSinceRelease >= showAlertAfterCurrentVersionHasBeenReleasedForDays else {
let message = "Your app has been released for \(daysSinceRelease) days, but Siren cannot prompt the user until \(showAlertAfterCurrentVersionHasBeenReleasedForDays) days have passed."
self.printMessage(message: message)
return
}
showAlertIfCurrentAppStoreVersionNotSkipped()
showAlertAfterCurrentVersionHasBeenReleasedForDays = nil
}
func iTunesURLFromString() throws -> URL {
@@ -398,7 +264,7 @@ private extension Siren {
func showAlertIfCurrentAppStoreVersionNotSkipped() {
alertType = setAlertType()
guard let previouslySkippedVersion = UserDefaults.standard.object(forKey: SirenUserDefaults.StoredSkippedVersion.rawValue) as? String else {
guard let previouslySkippedVersion = UserDefaults.standard.object(forKey: SirenDefaults.StoredSkippedVersion.rawValue) as? String else {
showAlert()
return
}
@@ -469,7 +335,7 @@ private extension Siren {
let action = UIAlertAction(title: title, style: .default) { [unowned self] _ in
if let currentAppStoreVersion = self.currentAppStoreVersion {
UserDefaults.standard.set(currentAppStoreVersion, forKey: SirenUserDefaults.StoredSkippedVersion.rawValue)
UserDefaults.standard.set(currentAppStoreVersion, forKey: SirenDefaults.StoredSkippedVersion.rawValue)
UserDefaults.standard.synchronize()
}
@@ -482,7 +348,7 @@ private extension Siren {
return action
}
func setAlertType() -> SirenAlertType {
func setAlertType() -> Siren.AlertType {
guard let currentInstalledVersion = currentInstalledVersion,
let currentAppStoreVersion = currentAppStoreVersion else {
return .option
@@ -538,7 +404,7 @@ private extension Siren {
// MARK: - Helpers (Version)
private extension Siren {
extension Siren {
func isAppStoreVersionNewer() -> Bool {
var newVersionExists = false
@@ -552,56 +418,35 @@ private extension Siren {
return newVersionExists
}
func storeVersionCheckDate() {
fileprivate func storeVersionCheckDate() {
lastVersionCheckPerformedOnDate = Date()
if let lastVersionCheckPerformedOnDate = lastVersionCheckPerformedOnDate {
UserDefaults.standard.set(lastVersionCheckPerformedOnDate, forKey: SirenUserDefaults.StoredVersionCheckDate.rawValue)
UserDefaults.standard.set(lastVersionCheckPerformedOnDate, forKey: SirenDefaults.StoredVersionCheckDate.rawValue)
UserDefaults.standard.synchronize()
}
}
}
// MARK: - Helpers (Date)
private extension Siren {
static func setupDateFormatter() -> DateFormatter {
let dateformatter = DateFormatter()
dateformatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss'Z'"
return dateformatter
}
func days(since date: Date) -> Int {
let calendar = Calendar.current
let components = calendar.dateComponents([.day], from: date, to: Date())
return components.day!
}
func days(since dateString: String) -> Int? {
let dateformatter = Siren.setupDateFormatter()
guard let releaseDate = dateformatter.date(from: dateString) else { return nil }
return days(since: releaseDate)
}
}
// MARK: - Helpers (Misc.)
private extension Siren {
func isUpdateCompatibleWithDeviceOS(appData: [String: Any]) -> Bool {
guard let results = appData["results"] as? [[String: Any]],
let requiredOSVersion = results.first?["minimumOsVersion"] as? String else {
guard let results = appData[JSONKeys.results] as? [[String: Any]],
let info = results.first,
let requiredOSVersion = info[JSONKeys.minimumOSVersion] as? String else {
postError(.appStoreOSVersionNumberFailure, underlyingError: nil)
return false
}
let systemVersion = UIDevice.current.systemVersion
if systemVersion.compare(requiredOSVersion, options: .numeric) == .orderedDescending ||
systemVersion.compare(requiredOSVersion, options: .numeric) == .orderedSame {
return true
} else {
guard systemVersion.compare(requiredOSVersion, options: .numeric) == .orderedDescending ||
systemVersion.compare(requiredOSVersion, options: .numeric) == .orderedSame else {
postError(.appStoreOSVersionUnsupported, underlyingError: nil)
return false
}
return true
}
func hideWindow() {
@@ -612,17 +457,14 @@ private extension Siren {
}
func launchAppStore() {
guard let appID = appID else {
guard let appID = appID,
let iTunesURL = URL(string: "https://itunes.apple.com/app/id\(appID)") else {
return
}
let iTunesString = "https://itunes.apple.com/app/id\(appID)"
let iTunesURL = URL(string: iTunesString)
DispatchQueue.main.async {
UIApplication.shared.openURL(iTunesURL!)
UIApplication.shared.openURL(iTunesURL)
}
}
func printMessage(message: String) {
@@ -632,10 +474,129 @@ private extension Siren {
}
}
// MARK: - Enumerated Types (Public)
public extension Siren {
/// Determines the type of alert to present after a successful version check has been performed.
enum AlertType {
/// Forces user to update your app (1 button alert).
case force
/// (DEFAULT) Presents user with option to update app now or at next launch (2 button alert).
case option
/// Presents user with option to update the app now, at next launch, or to skip this version all together (3 button alert).
case skip
/// Doesn't show the alert, but instead returns a localized message
/// for use in a custom UI within the sirenDidDetectNewVersionWithoutAlert() delegate method.
case none
}
/// Determines the frequency in which the the version check is performed and the user is prompted to update the app.
///
enum VersionCheckType: Int {
/// Version check performed every time the app is launched.
case immediately = 0
/// Version check performed once a day.
case daily = 1
/// Version check performed once a week.
case weekly = 7
}
/// Determines the available languages in which the update message and alert button titles should appear.
///
/// By default, the operating system's default lanuage setting is used. However, you can force a specific language
/// by setting the forceLanguageLocalization property before calling checkVersion()
enum LanguageType: String {
case Arabic = "ar"
case Armenian = "hy"
case Basque = "eu"
case ChineseSimplified = "zh-Hans"
case ChineseTraditional = "zh-Hant"
case Croatian = "hr"
case Danish = "da"
case Dutch = "nl"
case English = "en"
case Estonian = "et"
case Finnish = "fi"
case French = "fr"
case German = "de"
case Greek = "el"
case Hebrew = "he"
case Hungarian = "hu"
case Indonesian = "id"
case Italian = "it"
case Japanese = "ja"
case Korean = "ko"
case Latvian = "lv"
case Lithuanian = "lt"
case Malay = "ms"
case Norwegian = "nb-NO"
case Polish = "pl"
case PortugueseBrazil = "pt"
case PortuguesePortugal = "pt-PT"
case Russian = "ru"
case SerbianCyrillic = "sr-Cyrl"
case SerbianLatin = "sr-Latn"
case Slovenian = "sl"
case Spanish = "es"
case Swedish = "sv"
case Thai = "th"
case Turkish = "tr"
case Vietnamese = "vi"
}
}
// MARK: - Enumerated Types (Private)
private extension Siren {
/// Siren-specific Error Codes
enum ErrorCode: Int {
case malformedURL = 1000
case recentlyCheckedAlready
case noUpdateAvailable
case appStoreDataRetrievalFailure
case appStoreJSONParsingFailure
case appStoreOSVersionNumberFailure
case appStoreOSVersionUnsupported
case appStoreVersionNumberFailure
case appStoreVersionArrayFailure
case appStoreAppIDFailure
case appStoreReleaseDateFailure
}
/// Siren-specific Throwable Errors
enum SirenError: Error {
case malformedURL
case missingBundleIdOrAppId
}
/// Siren-specific UserDefaults Keys
enum SirenDefaults: String {
/// Key that stores the timestamp of the last version check in UserDefaults
case StoredVersionCheckDate
/// Key that stores the version that a user decided to skip in UserDefaults.
case StoredSkippedVersion
}
struct JSONKeys {
static let appID = "trackId"
static let currentVersionReleaseDate = "currentVersionReleaseDate"
static let minimumOSVersion = "minimumOsVersion"
static let results = "results"
static let version = "version"
}
}
// MARK: - Error Handling
private extension Siren {
func postError(_ code: SirenErrorCode, underlyingError: Error?) {
func postError(_ code: ErrorCode, underlyingError: Error?) {
let description: String
switch code {
@@ -656,9 +617,11 @@ private extension Siren {
case .appStoreVersionNumberFailure:
description = "Error retrieving App Store version number as there was no data returned."
case .appStoreVersionArrayFailure:
description = "Error retrieving App Store verson number as results.first does not contain a 'version' key."
description = "Error retrieving App Store verson number as the JSON does not contain a 'version' key."
case .appStoreAppIDFailure:
description = "Error retrieving trackId as results.first does not contain a 'trackId' key."
description = "Error retrieving trackId as the JSON does not contain a 'trackId' key."
case .appStoreReleaseDateFailure:
description = "Error retrieving trackId as the JSON does not contain a 'currentVersionReleaseDate' key."
}
var userInfo: [String: Any] = [NSLocalizedDescriptionKey: description]
@@ -674,19 +637,3 @@ private extension Siren {
printMessage(message: error.localizedDescription)
}
}
// MARK: - Helpers (Testing Target)
extension Siren {
func testSetCurrentInstalledVersion(version: String) {
currentInstalledVersion = version
}
func testSetAppStoreVersion(version: String) {
currentAppStoreVersion = version
}
func testIsAppStoreVersionNewer() -> Bool {
return isAppStoreVersionNewer()
}
}
+3 -3
View File
@@ -19,13 +19,13 @@ internal extension Bundle {
return Bundle(for: Siren.self).path(forResource: "Siren", ofType: "bundle") as String!
}
func sirenForcedBundlePath(forceLanguageLocalization: SirenLanguageType) -> String {
func sirenForcedBundlePath(forceLanguageLocalization: Siren.LanguageType) -> String {
let path = sirenBundlePath()
let name = forceLanguageLocalization.rawValue
return Bundle(path: path)!.path(forResource: name, ofType: "lproj")!
}
func localizedString(stringKey: String, forceLanguageLocalization: SirenLanguageType?) -> String {
func localizedString(stringKey: String, forceLanguageLocalization: Siren.LanguageType?) -> String {
var path: String
let table = "SirenLocalizable"
if let forceLanguageLocalization = forceLanguageLocalization {
@@ -48,7 +48,7 @@ internal extension Bundle {
// MARK: - Bundle Extension for Testing Siren
extension Bundle {
func testLocalizedString(stringKey: String, forceLanguageLocalization: SirenLanguageType?) -> String {
func testLocalizedString(stringKey: String, forceLanguageLocalization: Siren.LanguageType?) -> String {
return Bundle().localizedString(stringKey: stringKey, forceLanguageLocalization: forceLanguageLocalization)
}
}
+28
View File
@@ -0,0 +1,28 @@
//
// SirenDateExtension.swift
// SirenExample
//
// Created by Arthur Sabintsev on 3/21/17.
// Copyright © 2017 Sabintsev iOS Projects. All rights reserved.
//
import Foundation
internal extension Date {
static func days(since date: Date) -> Int {
let calendar = Calendar.current
let components = calendar.dateComponents([.day], from: date, to: Date())
return components.day ?? 0
}
static func days(since dateString: String) -> Int? {
let dateformatter = DateFormatter()
dateformatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss'Z'"
guard let releaseDate = dateformatter.date(from: dateString) else {
return nil
}
return days(since: releaseDate)
}
}
+69
View File
@@ -0,0 +1,69 @@
//
// SirenDelegate.swift
// SirenExample
//
// Created by Arthur Sabintsev on 4/8/17.
// Copyright © 2017 Sabintsev iOS Projects. All rights reserved.
//
import Foundation
// MARK: - SirenDelegate Protocol
/// Delegate that handles all codepaths for Siren upon version check completion.
public protocol SirenDelegate: class {
/// User presented with update dialog.
func sirenDidShowUpdateDialog(alertType: Siren.AlertType)
/// User did click on button that launched App Store.app.
func sirenUserDidLaunchAppStore()
/// User did click on button that skips version update.
func sirenUserDidSkipVersion()
/// User did click on button that cancels update dialog.
func sirenUserDidCancel()
/// Siren failed to perform version check (may return system-level error).
func sirenDidFailVersionCheck(error: NSError)
/// Siren performed version check and did not display alert.
func sirenDidDetectNewVersionWithoutAlert(message: String)
/// Siren performed version check and latest version is installed.
func sirenLatestVersionInstalled()
}
// MARK: - SirenDelegate Protocol Extension
public extension SirenDelegate {
func sirenDidShowUpdateDialog(alertType: Siren.AlertType) {
assertionFailure("An attempt to reach \(#function) failed as it was called without being implemented.")
}
func sirenUserDidLaunchAppStore() {
assertionFailure("An attempt to reach \(#function) failed as it was called without being implemented.")
}
func sirenUserDidSkipVersion() {
assertionFailure("An attempt to reach \(#function) failed as it was called without being implemented.")
}
func sirenUserDidCancel() {
assertionFailure("An attempt to reach \(#function) failed as it was called without being implemented.")
}
func sirenDidFailVersionCheck(error: NSError) {
assertionFailure("An attempt to reach \(#function) failed as it was called without being implemented.")
}
func sirenDidDetectNewVersionWithoutAlert(message: String) {
assertionFailure("An attempt to reach \(#function) failed as it was called without being implemented.")
}
func sirenLatestVersionInstalled() {
assertionFailure("An attempt to reach \(#function) failed as it was called without being implemented.")
}
}
+25
View File
@@ -0,0 +1,25 @@
//
// SirenTestHelper.swift
// SirenExample
//
// Created by Arthur Sabintsev on 4/8/17.
// Copyright © 2017 Sabintsev iOS Projects. All rights reserved.
//
import Foundation
// MARK: - Helpers (Testing Target)
extension Siren {
func testSetCurrentInstalledVersion(version: String) {
currentInstalledVersion = version
}
func testSetAppStoreVersion(version: String) {
currentAppStoreVersion = version
}
func testIsAppStoreVersionNewer() -> Bool {
return isAppStoreVersionNewer()
}
}
+8 -12
View File
@@ -13,12 +13,13 @@
<a title="Classes Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
<p><a href="index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<a href="index.html">Siren Reference</a>
<img id="carat" src="img/carat.png" />
Classes Reference
</p>
@@ -32,19 +33,14 @@
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
<a href="Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -108,8 +104,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
+140 -52
View File
@@ -14,12 +14,13 @@
<a title="Siren Class Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<a href="../index.html">Siren Reference</a>
<img id="carat" src="../img/carat.png" />
Siren Class Reference
</p>
@@ -33,19 +34,14 @@
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
<a href="../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -88,7 +84,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The error domain for all errors created by Siren</p>
<p>The error domain for all errors created by Siren.</p>
</div>
<div class="declaration">
@@ -118,12 +114,12 @@
<p>The SirenDelegate variable, which should be set if you&rsquo;d like to be notified:</p>
<p>When a user views or interacts with the alert
- sirenDidShowUpdateDialog(alertType: SirenAlertType)
- sirenDidShowUpdateDialog(alertType: AlertType)
- sirenUserDidLaunchAppStore()
- sirenUserDidSkipVersion()
- sirenUserDidCancel()</p>
<p>When a new version has been detected, and you would like to present a localized message in a custom UI
<p>When a new version has been detected, and you would like to present a localized message in a custom UI. use this delegate method:
- sirenDidDetectNewVersionWithoutAlert(message: String)</p>
</div>
@@ -169,9 +165,9 @@ When enabled, a stream of println() statements are logged to your console when a
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren9alertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren9alertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/alertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren9alertTypeOS_14SirenAlertType">alertType</a>
<a class="token" href="#/s:vC5Siren5Siren9alertTypeOS0_9AlertType">alertType</a>
</code>
</div>
<div class="height-container">
@@ -180,14 +176,14 @@ When enabled, a stream of println() statements are logged to your console when a
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown.
See the SirenAlertType enum for full details.</p>
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">alertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">alertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -197,9 +193,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20majorUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren20majorUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/majorUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20majorUpdateAlertTypeOS_14SirenAlertType">majorUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren20majorUpdateAlertTypeOS0_9AlertType">majorUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -208,15 +204,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for major version updates: A.b.c
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">majorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">majorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -226,9 +222,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20minorUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren20minorUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/minorUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20minorUpdateAlertTypeOS_14SirenAlertType">minorUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren20minorUpdateAlertTypeOS0_9AlertType">minorUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -237,15 +233,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for minor version updates: a.B.c
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">minorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">minorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -255,9 +251,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20patchUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren20patchUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/patchUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20patchUpdateAlertTypeOS_14SirenAlertType">patchUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren20patchUpdateAlertTypeOS0_9AlertType">patchUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -266,15 +262,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for minor patch updates: a.b.C
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">patchUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">patchUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -284,9 +280,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren23revisionUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren23revisionUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/revisionUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren23revisionUpdateAlertTypeOS_14SirenAlertType">revisionUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren23revisionUpdateAlertTypeOS0_9AlertType">revisionUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -295,15 +291,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for revision updates: a.b.c.D
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">revisionUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">revisionUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -370,9 +366,9 @@ If your app is not available in the US App Store, set it to the identifier of at
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS_17SirenLanguageType_"></a>
<a name="/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS0_12LanguageType_"></a>
<a name="//apple_ref/swift/Property/forceLanguageLocalization" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS_17SirenLanguageType_">forceLanguageLocalization</a>
<a class="token" href="#/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS0_12LanguageType_">forceLanguageLocalization</a>
</code>
</div>
<div class="height-container">
@@ -381,14 +377,14 @@ If your app is not available in the US App Store, set it to the identifier of at
<div class="pointer"></div>
<div class="abstract">
<p>Overrides the default localization of a user&rsquo;s device when presenting the update message and button titles in the alert.
See the SirenLanguageType enum for more details.</p>
See the Siren.LanguageType enum for more details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">forceLanguageLocalization</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenLanguageType.html">SirenLanguageType</a></span><span class="p">?</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">forceLanguageLocalization</span><span class="p">:</span> <span class="kt">Siren</span><span class="o">.</span><span class="kt"><a href="../Classes/Siren/LanguageType.html">LanguageType</a></span><span class="p">?</span></code></pre>
</div>
</div>
@@ -425,9 +421,9 @@ See the SirenLanguageType enum for more details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysGSqSi_"></a>
<a name="/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysSi"></a>
<a name="//apple_ref/swift/Property/showAlertAfterCurrentVersionHasBeenReleasedForDays" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysGSqSi_">showAlertAfterCurrentVersionHasBeenReleasedForDays</a>
<a class="token" href="#/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysSi">showAlertAfterCurrentVersionHasBeenReleasedForDays</a>
</code>
</div>
<div class="height-container">
@@ -435,14 +431,15 @@ See the SirenLanguageType enum for more details.</p>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>When this is set, the alert will only show up if the current version has already been released for X days</p>
<p>When this is set, the alert will only show up if the current version has already been released for X days
Defaults to 1 day to avoid an issue where Apple updates the JSON faster than the app binary propogates to the App Store.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">showAlertAfterCurrentVersionHasBeenReleasedForDays</span><span class="p">:</span> <span class="kt">Int</span><span class="p">?</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">showAlertAfterCurrentVersionHasBeenReleasedForDays</span><span class="p">:</span> <span class="kt">Int</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
</div>
</div>
@@ -469,7 +466,7 @@ See the SirenLanguageType enum for more details.</p>
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="nf">fileprivate</span><span class="p">(</span><span class="k">set</span><span class="p">)</span> <span class="k">var</span> <span class="nv">currentAppStoreVersion</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">internal(set)</span> <span class="k">var</span> <span class="nv">currentAppStoreVersion</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span></code></pre>
</div>
</div>
@@ -506,9 +503,9 @@ See the SirenLanguageType enum for more details.</p>
<li class="item">
<div>
<code>
<a name="/s:FC5Siren5Siren12checkVersionFT9checkTypeOS_21SirenVersionCheckType_T_"></a>
<a name="/s:FC5Siren5Siren12checkVersionFT9checkTypeOS0_16VersionCheckType_T_"></a>
<a name="//apple_ref/swift/Method/checkVersion(checkType:)" class="dashAnchor"></a>
<a class="token" href="#/s:FC5Siren5Siren12checkVersionFT9checkTypeOS_21SirenVersionCheckType_T_">checkVersion(checkType:)</a>
<a class="token" href="#/s:FC5Siren5Siren12checkVersionFT9checkTypeOS0_16VersionCheckType_T_">checkVersion(checkType:)</a>
</code>
</div>
<div class="height-container">
@@ -525,7 +522,7 @@ you should set the <code><a href="../Classes/Siren.html#/s:vC5Siren5Siren11count
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">checkVersion</span><span class="p">(</span><span class="nv">checkType</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a></span><span class="p">)</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">checkVersion</span><span class="p">(</span><span class="nv">checkType</span><span class="p">:</span> <span class="kt"><a href="../Classes/Siren/VersionCheckType.html">VersionCheckType</a></span><span class="p">)</span></code></pre>
</div>
</div>
@@ -541,7 +538,7 @@ you should set the <code><a href="../Classes/Siren.html#/s:vC5Siren5Siren11count
</td>
<td>
<div>
<p>The frequency in days in which you want a check to be performed. Please refer to the SirenVersionCheckType enum for more details.</p>
<p>The frequency in days in which you want a check to be performed. Please refer to the Siren.VersionCheckType enum for more details.</p>
</div>
</td>
@@ -554,11 +551,102 @@ you should set the <code><a href="../Classes/Siren.html#/s:vC5Siren5Siren11count
</li>
</ul>
</div>
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:OC5Siren5Siren9AlertType"></a>
<a name="//apple_ref/swift/Enum/AlertType" class="dashAnchor"></a>
<a class="token" href="#/s:OC5Siren5Siren9AlertType">AlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert to present after a successful version check has been performed.</p>
<a href="../Classes/Siren/AlertType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">AlertType</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:OC5Siren5Siren16VersionCheckType"></a>
<a name="//apple_ref/swift/Enum/VersionCheckType" class="dashAnchor"></a>
<a class="token" href="#/s:OC5Siren5Siren16VersionCheckType">VersionCheckType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the frequency in which the the version check is performed and the user is prompted to update the app.</p>
<a href="../Classes/Siren/VersionCheckType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">VersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:OC5Siren5Siren12LanguageType"></a>
<a name="//apple_ref/swift/Enum/LanguageType" class="dashAnchor"></a>
<a class="token" href="#/s:OC5Siren5Siren12LanguageType">LanguageType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the available languages in which the update message and alert button titles should appear.</p>
<p>By default, the operating system&rsquo;s default lanuage setting is used. However, you can force a specific language
by setting the forceLanguageLocalization property before calling checkVersion()</p>
<a href="../Classes/Siren/LanguageType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -1,59 +1,55 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenAlertType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<title>AlertType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
<script src="../../js/jquery.min.js" defer></script>
<script src="../../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenAlertType" class="dashAnchor"></a>
<a title="SirenAlertType Enum Reference"></a>
<a name="//apple_ref/swift/Enum/AlertType" class="dashAnchor"></a>
<a title="AlertType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
SirenAlertType Enum Reference
<a href="../../index.html">Siren Reference</a>
<img id="carat" src="../../img/carat.png" />
AlertType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<a href="../../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
<a href="../../Classes/Siren.html">Siren</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<a href="../../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
<a href="../../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
@@ -62,10 +58,10 @@
<article class="main-content">
<section>
<section class="section">
<h1>SirenAlertType</h1>
<h1>AlertType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenAlertType</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">AlertType</span></code></pre>
</div>
</div>
@@ -78,9 +74,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType5forceFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType5forceFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/force" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType5forceFMS0_S0_">force</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType5forceFMS1_S1_">force</a>
</code>
</div>
<div class="height-container">
@@ -109,9 +105,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType6optionFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType6optionFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/option" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType6optionFMS0_S0_">option</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType6optionFMS1_S1_">option</a>
</code>
</div>
<div class="height-container">
@@ -140,9 +136,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType4skipFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType4skipFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/skip" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType4skipFMS0_S0_">skip</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType4skipFMS1_S1_">skip</a>
</code>
</div>
<div class="height-container">
@@ -171,9 +167,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType4noneFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType4noneFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/none" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType4noneFMS0_S0_">none</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType4noneFMS1_S1_">none</a>
</code>
</div>
<div class="height-container">
@@ -181,7 +177,8 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Doesn&rsquo;t show the alert, but instead returns a localized message for use in a custom UI within the sirenDidDetectNewVersionWithoutAlert() delegate method.</p>
<p>Doesn&rsquo;t show the alert, but instead returns a localized message
for use in a custom UI within the sirenDidDetectNewVersionWithoutAlert() delegate method.</p>
</div>
<div class="declaration">
@@ -200,8 +197,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -1,59 +1,55 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenLanguageType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<title>LanguageType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
<script src="../../js/jquery.min.js" defer></script>
<script src="../../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenLanguageType" class="dashAnchor"></a>
<a title="SirenLanguageType Enum Reference"></a>
<a name="//apple_ref/swift/Enum/LanguageType" class="dashAnchor"></a>
<a title="LanguageType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
SirenLanguageType Enum Reference
<a href="../../index.html">Siren Reference</a>
<img id="carat" src="../../img/carat.png" />
LanguageType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<a href="../../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
<a href="../../Classes/Siren.html">Siren</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<a href="../../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
<a href="../../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
@@ -62,10 +58,10 @@
<article class="main-content">
<section>
<section class="section">
<h1>SirenLanguageType</h1>
<h1>LanguageType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -81,9 +77,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6ArabicFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6ArabicFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Arabic" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6ArabicFMS0_S0_">Arabic</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6ArabicFMS1_S1_">Arabic</a>
</code>
</div>
<div class="height-container">
@@ -98,7 +94,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -112,9 +108,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8ArmenianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8ArmenianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Armenian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8ArmenianFMS0_S0_">Armenian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8ArmenianFMS1_S1_">Armenian</a>
</code>
</div>
<div class="height-container">
@@ -129,7 +125,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -143,9 +139,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6BasqueFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6BasqueFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Basque" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6BasqueFMS0_S0_">Basque</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6BasqueFMS1_S1_">Basque</a>
</code>
</div>
<div class="height-container">
@@ -160,7 +156,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -174,9 +170,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType17ChineseSimplifiedFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType17ChineseSimplifiedFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/ChineseSimplified" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType17ChineseSimplifiedFMS0_S0_">ChineseSimplified</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType17ChineseSimplifiedFMS1_S1_">ChineseSimplified</a>
</code>
</div>
<div class="height-container">
@@ -191,7 +187,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -205,9 +201,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType18ChineseTraditionalFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType18ChineseTraditionalFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/ChineseTraditional" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType18ChineseTraditionalFMS0_S0_">ChineseTraditional</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType18ChineseTraditionalFMS1_S1_">ChineseTraditional</a>
</code>
</div>
<div class="height-container">
@@ -222,7 +218,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -236,9 +232,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8CroatianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8CroatianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Croatian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8CroatianFMS0_S0_">Croatian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8CroatianFMS1_S1_">Croatian</a>
</code>
</div>
<div class="height-container">
@@ -253,7 +249,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -267,9 +263,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6DanishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6DanishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Danish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6DanishFMS0_S0_">Danish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6DanishFMS1_S1_">Danish</a>
</code>
</div>
<div class="height-container">
@@ -284,7 +280,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -298,9 +294,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType5DutchFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType5DutchFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Dutch" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType5DutchFMS0_S0_">Dutch</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType5DutchFMS1_S1_">Dutch</a>
</code>
</div>
<div class="height-container">
@@ -315,7 +311,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -329,9 +325,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7EnglishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7EnglishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/English" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7EnglishFMS0_S0_">English</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7EnglishFMS1_S1_">English</a>
</code>
</div>
<div class="height-container">
@@ -346,7 +342,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -360,9 +356,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8EstonianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8EstonianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Estonian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8EstonianFMS0_S0_">Estonian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8EstonianFMS1_S1_">Estonian</a>
</code>
</div>
<div class="height-container">
@@ -377,7 +373,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -391,9 +387,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7FinnishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7FinnishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Finnish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7FinnishFMS0_S0_">Finnish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7FinnishFMS1_S1_">Finnish</a>
</code>
</div>
<div class="height-container">
@@ -408,7 +404,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -422,9 +418,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6FrenchFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6FrenchFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/French" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6FrenchFMS0_S0_">French</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6FrenchFMS1_S1_">French</a>
</code>
</div>
<div class="height-container">
@@ -439,7 +435,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -453,9 +449,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6GermanFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6GermanFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/German" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6GermanFMS0_S0_">German</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6GermanFMS1_S1_">German</a>
</code>
</div>
<div class="height-container">
@@ -470,7 +466,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -484,9 +480,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType5GreekFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType5GreekFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Greek" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType5GreekFMS0_S0_">Greek</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType5GreekFMS1_S1_">Greek</a>
</code>
</div>
<div class="height-container">
@@ -501,7 +497,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -515,9 +511,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6HebrewFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6HebrewFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Hebrew" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6HebrewFMS0_S0_">Hebrew</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6HebrewFMS1_S1_">Hebrew</a>
</code>
</div>
<div class="height-container">
@@ -532,7 +528,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -546,9 +542,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType9HungarianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType9HungarianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Hungarian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType9HungarianFMS0_S0_">Hungarian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType9HungarianFMS1_S1_">Hungarian</a>
</code>
</div>
<div class="height-container">
@@ -563,7 +559,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -577,9 +573,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType10IndonesianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType10IndonesianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Indonesian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType10IndonesianFMS0_S0_">Indonesian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType10IndonesianFMS1_S1_">Indonesian</a>
</code>
</div>
<div class="height-container">
@@ -594,7 +590,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -608,9 +604,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7ItalianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7ItalianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Italian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7ItalianFMS0_S0_">Italian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7ItalianFMS1_S1_">Italian</a>
</code>
</div>
<div class="height-container">
@@ -625,7 +621,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -639,9 +635,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8JapaneseFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8JapaneseFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Japanese" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8JapaneseFMS0_S0_">Japanese</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8JapaneseFMS1_S1_">Japanese</a>
</code>
</div>
<div class="height-container">
@@ -656,7 +652,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -670,9 +666,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6KoreanFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6KoreanFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Korean" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6KoreanFMS0_S0_">Korean</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6KoreanFMS1_S1_">Korean</a>
</code>
</div>
<div class="height-container">
@@ -687,7 +683,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -701,9 +697,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7LatvianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7LatvianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Latvian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7LatvianFMS0_S0_">Latvian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7LatvianFMS1_S1_">Latvian</a>
</code>
</div>
<div class="height-container">
@@ -718,7 +714,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -732,9 +728,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType10LithuanianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType10LithuanianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Lithuanian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType10LithuanianFMS0_S0_">Lithuanian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType10LithuanianFMS1_S1_">Lithuanian</a>
</code>
</div>
<div class="height-container">
@@ -749,7 +745,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -763,9 +759,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType5MalayFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType5MalayFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Malay" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType5MalayFMS0_S0_">Malay</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType5MalayFMS1_S1_">Malay</a>
</code>
</div>
<div class="height-container">
@@ -780,7 +776,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -794,9 +790,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType9NorwegianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType9NorwegianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Norwegian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType9NorwegianFMS0_S0_">Norwegian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType9NorwegianFMS1_S1_">Norwegian</a>
</code>
</div>
<div class="height-container">
@@ -811,7 +807,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -825,9 +821,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6PolishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6PolishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Polish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6PolishFMS0_S0_">Polish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6PolishFMS1_S1_">Polish</a>
</code>
</div>
<div class="height-container">
@@ -842,7 +838,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -856,9 +852,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType16PortugueseBrazilFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType16PortugueseBrazilFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/PortugueseBrazil" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType16PortugueseBrazilFMS0_S0_">PortugueseBrazil</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType16PortugueseBrazilFMS1_S1_">PortugueseBrazil</a>
</code>
</div>
<div class="height-container">
@@ -873,7 +869,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -887,9 +883,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType18PortuguesePortugalFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType18PortuguesePortugalFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/PortuguesePortugal" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType18PortuguesePortugalFMS0_S0_">PortuguesePortugal</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType18PortuguesePortugalFMS1_S1_">PortuguesePortugal</a>
</code>
</div>
<div class="height-container">
@@ -904,7 +900,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -918,9 +914,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7RussianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7RussianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Russian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7RussianFMS0_S0_">Russian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7RussianFMS1_S1_">Russian</a>
</code>
</div>
<div class="height-container">
@@ -935,7 +931,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -949,9 +945,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType15SerbianCyrillicFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType15SerbianCyrillicFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/SerbianCyrillic" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType15SerbianCyrillicFMS0_S0_">SerbianCyrillic</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType15SerbianCyrillicFMS1_S1_">SerbianCyrillic</a>
</code>
</div>
<div class="height-container">
@@ -966,7 +962,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -980,9 +976,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType12SerbianLatinFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType12SerbianLatinFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/SerbianLatin" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType12SerbianLatinFMS0_S0_">SerbianLatin</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType12SerbianLatinFMS1_S1_">SerbianLatin</a>
</code>
</div>
<div class="height-container">
@@ -997,7 +993,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1011,9 +1007,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType9SlovenianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType9SlovenianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Slovenian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType9SlovenianFMS0_S0_">Slovenian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType9SlovenianFMS1_S1_">Slovenian</a>
</code>
</div>
<div class="height-container">
@@ -1028,7 +1024,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1042,9 +1038,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7SpanishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7SpanishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Spanish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7SpanishFMS0_S0_">Spanish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7SpanishFMS1_S1_">Spanish</a>
</code>
</div>
<div class="height-container">
@@ -1059,7 +1055,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1073,9 +1069,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7SwedishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7SwedishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Swedish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7SwedishFMS0_S0_">Swedish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7SwedishFMS1_S1_">Swedish</a>
</code>
</div>
<div class="height-container">
@@ -1090,7 +1086,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1104,9 +1100,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType4ThaiFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType4ThaiFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Thai" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType4ThaiFMS0_S0_">Thai</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType4ThaiFMS1_S1_">Thai</a>
</code>
</div>
<div class="height-container">
@@ -1121,7 +1117,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1135,9 +1131,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7TurkishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7TurkishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Turkish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7TurkishFMS0_S0_">Turkish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7TurkishFMS1_S1_">Turkish</a>
</code>
</div>
<div class="height-container">
@@ -1152,7 +1148,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1166,9 +1162,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType10VietnameseFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType10VietnameseFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Vietnamese" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType10VietnameseFMS0_S0_">Vietnamese</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType10VietnameseFMS1_S1_">Vietnamese</a>
</code>
</div>
<div class="height-container">
@@ -1183,7 +1179,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1195,8 +1191,8 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -1,59 +1,55 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenVersionCheckType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<title>VersionCheckType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
<script src="../../js/jquery.min.js" defer></script>
<script src="../../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenVersionCheckType" class="dashAnchor"></a>
<a title="SirenVersionCheckType Enum Reference"></a>
<a name="//apple_ref/swift/Enum/VersionCheckType" class="dashAnchor"></a>
<a title="VersionCheckType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
SirenVersionCheckType Enum Reference
<a href="../../index.html">Siren Reference</a>
<img id="carat" src="../../img/carat.png" />
VersionCheckType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<a href="../../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
<a href="../../Classes/Siren.html">Siren</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<a href="../../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
<a href="../../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
@@ -62,14 +58,14 @@
<article class="main-content">
<section>
<section class="section">
<h1>SirenVersionCheckType</h1>
<h1>VersionCheckType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenVersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">VersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
<p>Determines the frequency in which the the version check is performed.</p>
<p>Determines the frequency in which the the version check is performed and the user is prompted to update the app.</p>
</section>
<section class="section task-group-section">
@@ -78,9 +74,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType11immediatelyFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren16VersionCheckType11immediatelyFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/immediately" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType11immediatelyFMS0_S0_">immediately</a>
<a class="token" href="#/s:FOC5Siren5Siren16VersionCheckType11immediatelyFMS1_S1_">immediately</a>
</code>
</div>
<div class="height-container">
@@ -109,9 +105,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType5dailyFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren16VersionCheckType5dailyFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/daily" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType5dailyFMS0_S0_">daily</a>
<a class="token" href="#/s:FOC5Siren5Siren16VersionCheckType5dailyFMS1_S1_">daily</a>
</code>
</div>
<div class="height-container">
@@ -140,9 +136,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType6weeklyFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren16VersionCheckType6weeklyFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/weekly" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType6weeklyFMS0_S0_">weekly</a>
<a class="token" href="#/s:FOC5Siren5Siren16VersionCheckType6weeklyFMS1_S1_">weekly</a>
</code>
</div>
<div class="height-container">
@@ -169,8 +165,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
-177
View File
@@ -1,177 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Enums Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title="Enums Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<img id="carat" src="img/carat.png" />
Enums Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Enums</h1>
<p>The following enums are available globally.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<div class="task-name-container">
<a name="/SirenDelegate%20Protocol%20Extension"></a>
<a name="//apple_ref/swift/Section/SirenDelegate Protocol Extension" class="dashAnchor"></a>
<a href="#/SirenDelegate%20Protocol%20Extension">
<h3 class="section-name">SirenDelegate Protocol Extension</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/s:O5Siren14SirenAlertType"></a>
<a name="//apple_ref/swift/Enum/SirenAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren14SirenAlertType">SirenAlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert to present after a successful version check has been performed.</p>
<a href="Enums/SirenAlertType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenAlertType</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:O5Siren21SirenVersionCheckType"></a>
<a name="//apple_ref/swift/Enum/SirenVersionCheckType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren21SirenVersionCheckType">SirenVersionCheckType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the frequency in which the the version check is performed.</p>
<a href="Enums/SirenVersionCheckType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenVersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:O5Siren17SirenLanguageType"></a>
<a name="//apple_ref/swift/Enum/SirenLanguageType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren17SirenLanguageType">SirenLanguageType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the available languages in which the update message and alert button titles should appear.</p>
<p>By default, the operating system&rsquo;s default lanuage setting is used. However, you can force a specific language
by setting the forceLanguageLocalization property before calling checkVersion()</p>
<a href="Enums/SirenLanguageType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
-152
View File
@@ -1,152 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Extensions Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title="Extensions Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<img id="carat" src="img/carat.png" />
Extensions Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Extensions.html">Extensions</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Extensions/Bundle.html">Bundle</a>
</li>
<li class="nav-group-task">
<a href="Extensions/UIAlertController.html">UIAlertController</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Extensions</h1>
<p>The following extensions are available globally.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<div class="task-name-container">
<a name="/Bundle%20Extension%20for%20Siren"></a>
<a name="//apple_ref/swift/Section/Bundle Extension for Siren" class="dashAnchor"></a>
<a href="#/Bundle%20Extension%20for%20Siren">
<h3 class="section-name">Bundle Extension for Siren</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/c:objc(cs)NSBundle"></a>
<a name="//apple_ref/swift/Extension/Bundle" class="dashAnchor"></a>
<a class="token" href="#/c:objc(cs)NSBundle">Bundle</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
<a href="Extensions/Bundle.html" class="slightly-smaller">See more</a>
</div>
</section>
</div>
</li>
</ul>
</div>
<div class="task-group">
<div class="task-name-container">
<a name="/UIAlertController%20Extension%20for%20Siren"></a>
<a name="//apple_ref/swift/Section/UIAlertController Extension for Siren" class="dashAnchor"></a>
<a href="#/UIAlertController%20Extension%20for%20Siren">
<h3 class="section-name">UIAlertController Extension for Siren</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/c:objc(cs)UIAlertController"></a>
<a name="//apple_ref/swift/Extension/UIAlertController" class="dashAnchor"></a>
<a class="token" href="#/c:objc(cs)UIAlertController">UIAlertController</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
<a href="Extensions/UIAlertController.html" class="slightly-smaller">See more</a>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
-190
View File
@@ -1,190 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bundle Extension Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Extension/Bundle" class="dashAnchor"></a>
<a title="Bundle Extension Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
Bundle Extension Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Extensions.html">Extensions</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Extensions/Bundle.html">Bundle</a>
</li>
<li class="nav-group-task">
<a href="../Extensions/UIAlertController.html">UIAlertController</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Bundle</h1>
<p>Undocumented</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:ZFE5SirenCSo6Bundle8bundleIDFT_GSqSS_"></a>
<a name="//apple_ref/swift/Method/bundleID()" class="dashAnchor"></a>
<a class="token" href="#/s:ZFE5SirenCSo6Bundle8bundleIDFT_GSqSS_">bundleID()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle15sirenBundlePathFT_SS"></a>
<a name="//apple_ref/swift/Method/sirenBundlePath()" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle15sirenBundlePathFT_SS">sirenBundlePath()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle21sirenForcedBundlePathFT25forceLanguageLocalizationOS_17SirenLanguageType_SS"></a>
<a name="//apple_ref/swift/Method/sirenForcedBundlePath(forceLanguageLocalization:)" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle21sirenForcedBundlePathFT25forceLanguageLocalizationOS_17SirenLanguageType_SS">sirenForcedBundlePath(forceLanguageLocalization:)</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle15localizedStringFT9stringKeySS25forceLanguageLocalizationGSqOS_17SirenLanguageType__SS"></a>
<a name="//apple_ref/swift/Method/localizedString(stringKey:forceLanguageLocalization:)" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle15localizedStringFT9stringKeySS25forceLanguageLocalizationGSqOS_17SirenLanguageType__SS">localizedString(stringKey:forceLanguageLocalization:)</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle19bestMatchingAppNameFT_SS"></a>
<a name="//apple_ref/swift/Method/bestMatchingAppName()" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle19bestMatchingAppNameFT_SS">bestMatchingAppName()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
-114
View File
@@ -1,114 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>UIAlertController Extension Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Extension/UIAlertController" class="dashAnchor"></a>
<a title="UIAlertController Extension Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
UIAlertController Extension Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Extensions.html">Extensions</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Extensions/Bundle.html">Bundle</a>
</li>
<li class="nav-group-task">
<a href="../Extensions/UIAlertController.html">UIAlertController</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>UIAlertController</h1>
<p>Undocumented</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo17UIAlertController4showFT_T_"></a>
<a name="//apple_ref/swift/Method/show()" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo17UIAlertController4showFT_T_">show()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
+8 -12
View File
@@ -13,12 +13,13 @@
<a title="Protocols Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
<p><a href="index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<a href="index.html">Siren Reference</a>
<img id="carat" src="img/carat.png" />
Protocols Reference
</p>
@@ -32,19 +33,14 @@
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
<a href="Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -108,8 +104,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
+18 -22
View File
@@ -14,12 +14,13 @@
<a title="SirenDelegate Protocol Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<a href="../index.html">Siren Reference</a>
<img id="carat" src="../img/carat.png" />
SirenDelegate Protocol Reference
</p>
@@ -33,19 +34,14 @@
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
<a href="../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -78,9 +74,9 @@
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOS_14SirenAlertType_T_"></a>
<a name="/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOCS_5Siren9AlertType_T_"></a>
<a name="//apple_ref/swift/Method/sirenDidShowUpdateDialog(alertType:)" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOS_14SirenAlertType_T_">sirenDidShowUpdateDialog(alertType:)</a>
<a class="token" href="#/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOCS_5Siren9AlertType_T_">sirenDidShowUpdateDialog(alertType:)</a>
</code>
<span class="declaration-note">
Default implementation
@@ -91,7 +87,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User presented with update dialog</p>
<p>User presented with update dialog.</p>
</div>
<h4>Default Implementation</h4>
@@ -102,7 +98,7 @@
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenDidShowUpdateDialog</span><span class="p">(</span><span class="nv">alertType</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="p">)</span></code></pre>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenDidShowUpdateDialog</span><span class="p">(</span><span class="nv">alertType</span><span class="p">:</span> <span class="kt"><a href="../Classes/Siren.html">Siren</a></span><span class="o">.</span><span class="kt">AlertType</span><span class="p">)</span></code></pre>
</div>
</div>
@@ -125,7 +121,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that launched App Store.app</p>
<p>User did click on button that launched App Store.app.</p>
</div>
<h4>Default Implementation</h4>
@@ -159,7 +155,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that skips version update</p>
<p>User did click on button that skips version update.</p>
</div>
<h4>Default Implementation</h4>
@@ -193,7 +189,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that cancels update dialog</p>
<p>User did click on button that cancels update dialog.</p>
</div>
<h4>Default Implementation</h4>
@@ -227,7 +223,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren failed to perform version check (may return system-level error)</p>
<p>Siren failed to perform version check (may return system-level error).</p>
</div>
<h4>Default Implementation</h4>
@@ -261,7 +257,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren performed version check and did not display alert</p>
<p>Siren performed version check and did not display alert.</p>
</div>
<h4>Default Implementation</h4>
@@ -295,7 +291,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren performed version check and latest version is installed</p>
<p>Siren performed version check and latest version is installed.</p>
</div>
<h4>Default Implementation</h4>
@@ -318,8 +314,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
+1 -1
View File
@@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="136" height="20"><linearGradient id="b" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="a"><rect width="136" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#a)"><path fill="#555" d="M0 0h93v20H0z"/><path fill="#4c1" d="M93 0h43v20H93z"/><path fill="url(#b)" d="M0 0h136v20H0z"/></g><g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11"><text x="46.5" y="15" fill="#010101" fill-opacity=".3">documentation</text><text x="46.5" y="14">documentation</text><text x="113.5" y="15" fill="#010101" fill-opacity=".3">100%</text><text x="113.5" y="14">100%</text></g></svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="20"><linearGradient id="b" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="a"><rect width="128" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#a)"><path fill="#555" d="M0 0h93v20H0z"/><path fill="#dfb317" d="M93 0h35v20H93z"/><path fill="url(#b)" d="M0 0h128v20H0z"/></g><g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11"><text x="46.5" y="15" fill="#010101" fill-opacity=".3">documentation</text><text x="46.5" y="14">documentation</text><text x="109.5" y="15" fill="#010101" fill-opacity=".3">55%</text><text x="109.5" y="14">55%</text></g></svg>

Before

Width:  |  Height:  |  Size: 807 B

After

Width:  |  Height:  |  Size: 808 B

-20
View File
@@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleIdentifier</key>
<string>com.jazzy.</string>
<key>CFBundleName</key>
<string></string>
<key>DocSetPlatformFamily</key>
<string></string>
<key>isDashDocset</key>
<true/>
<key>dashIndexFilePath</key>
<string>index.html</string>
<key>isJavaScriptEnabled</key>
<true/>
<key>DashDocSetFamily</key>
<string>dashtoc</string>
</dict>
</plist>
@@ -1,118 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Classes Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title="Classes Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<img id="carat" src="img/carat.png" />
Classes Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Classes</h1>
<p>The following classes are available globally.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<div class="task-name-container">
<a name="/Siren"></a>
<a name="//apple_ref/swift/Section/Siren" class="dashAnchor"></a>
<a href="#/Siren">
<h3 class="section-name">Siren</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/s:C5Siren5Siren"></a>
<a name="//apple_ref/swift/Class/Siren" class="dashAnchor"></a>
<a class="token" href="#/s:C5Siren5Siren">Siren</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The Siren Class. A singleton that is initialized using the shared() method.</p>
<a href="Classes/Siren.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">class</span> <span class="kt">Siren</span><span class="p">:</span> <span class="kt">NSObject</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,567 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Siren Class Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Class/Siren" class="dashAnchor"></a>
<a title="Siren Class Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
Siren Class Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Siren</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">final</span> <span class="kd">class</span> <span class="kt">Siren</span><span class="p">:</span> <span class="kt">NSObject</span></code></pre>
</div>
</div>
<p>The Siren Class. A singleton that is initialized using the shared() method.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren16SirenErrorDomainSS"></a>
<a name="//apple_ref/swift/Property/SirenErrorDomain" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren16SirenErrorDomainSS">SirenErrorDomain</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The error domain for all errors created by Siren</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">SirenErrorDomain</span> <span class="o">=</span> <span class="s">"Siren Error Domain"</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren8delegateXwGSqPS_13SirenDelegate__"></a>
<a name="//apple_ref/swift/Property/delegate" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren8delegateXwGSqPS_13SirenDelegate__">delegate</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The SirenDelegate variable, which should be set if you&rsquo;d like to be notified:</p>
<p>When a user views or interacts with the alert
- sirenDidShowUpdateDialog(alertType: SirenAlertType)
- sirenUserDidLaunchAppStore()
- sirenUserDidSkipVersion()
- sirenUserDidCancel()</p>
<p>When a new version has been detected, and you would like to present a localized message in a custom UI
- sirenDidDetectNewVersionWithoutAlert(message: String)</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">weak</span> <span class="k">var</span> <span class="nv">delegate</span><span class="p">:</span> <span class="kt"><a href="../Protocols/SirenDelegate.html">SirenDelegate</a></span><span class="p">?</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren12debugEnabledSb"></a>
<a name="//apple_ref/swift/Property/debugEnabled" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren12debugEnabledSb">debugEnabled</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The debug flag, which is disabled by default.
When enabled, a stream of println() statements are logged to your console when a version check is performed.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">debugEnabled</span> <span class="o">=</span> <span class="kc">false</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren9alertTypeOS_14SirenAlertType"></a>
<a name="//apple_ref/swift/Property/alertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren9alertTypeOS_14SirenAlertType">alertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown.
See the SirenAlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">alertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20majorUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="//apple_ref/swift/Property/majorUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20majorUpdateAlertTypeOS_14SirenAlertType">majorUpdateAlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for major version updates: A.b.c
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">majorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20minorUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="//apple_ref/swift/Property/minorUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20minorUpdateAlertTypeOS_14SirenAlertType">minorUpdateAlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for minor version updates: a.B.c
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">minorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20patchUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="//apple_ref/swift/Property/patchUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20patchUpdateAlertTypeOS_14SirenAlertType">patchUpdateAlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for minor patch updates: a.b.C
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">patchUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren23revisionUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="//apple_ref/swift/Property/revisionUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren23revisionUpdateAlertTypeOS_14SirenAlertType">revisionUpdateAlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for revision updates: a.b.c.D
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">revisionUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren7appNameSS"></a>
<a name="//apple_ref/swift/Property/appName" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren7appNameSS">appName</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The name of your app.
By default, it&rsquo;s set to the name of the app that&rsquo;s stored in your plist.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">appName</span><span class="p">:</span> <span class="kt">String</span> <span class="o">=</span> <span class="kt">Bundle</span><span class="o">.</span><span class="n">main</span><span class="o">.</span><span class="nf">bestMatchingAppName</span><span class="p">()</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren11countryCodeGSqSS_"></a>
<a name="//apple_ref/swift/Property/countryCode" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren11countryCodeGSqSS_">countryCode</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The region or country of an App Store in which your app is available.
By default, all version checks are performed against the US App Store.
If your app is not available in the US App Store, set it to the identifier of at least one App Store within which it is available.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">countryCode</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS_17SirenLanguageType_"></a>
<a name="//apple_ref/swift/Property/forceLanguageLocalization" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS_17SirenLanguageType_">forceLanguageLocalization</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Overrides the default localization of a user&rsquo;s device when presenting the update message and button titles in the alert.
See the SirenLanguageType enum for more details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">forceLanguageLocalization</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenLanguageType.html">SirenLanguageType</a></span><span class="p">?</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren24alertControllerTintColorGSqCSo7UIColor_"></a>
<a name="//apple_ref/swift/Property/alertControllerTintColor" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren24alertControllerTintColorGSqCSo7UIColor_">alertControllerTintColor</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Overrides the tint color for UIAlertController.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">alertControllerTintColor</span><span class="p">:</span> <span class="kt">UIColor</span><span class="p">?</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysGSqSi_"></a>
<a name="//apple_ref/swift/Property/showAlertAfterCurrentVersionHasBeenReleasedForDays" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysGSqSi_">showAlertAfterCurrentVersionHasBeenReleasedForDays</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>When this is set, the alert will only show up if the current version has already been released for X days</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">showAlertAfterCurrentVersionHasBeenReleasedForDays</span><span class="p">:</span> <span class="kt">Int</span><span class="p">?</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren22currentAppStoreVersionGSqSS_"></a>
<a name="//apple_ref/swift/Property/currentAppStoreVersion" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren22currentAppStoreVersionGSqSS_">currentAppStoreVersion</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The current version of your app that is available for download on the App Store</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="nf">fileprivate</span><span class="p">(</span><span class="k">set</span><span class="p">)</span> <span class="k">var</span> <span class="nv">currentAppStoreVersion</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:ZvC5Siren5Siren6sharedS0_"></a>
<a name="//apple_ref/swift/Variable/shared" class="dashAnchor"></a>
<a class="token" href="#/s:ZvC5Siren5Siren6sharedS0_">shared</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The App&rsquo;s Singleton</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">shared</span> <span class="o">=</span> <span class="kt">Siren</span><span class="p">()</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FC5Siren5Siren12checkVersionFT9checkTypeOS_21SirenVersionCheckType_T_"></a>
<a name="//apple_ref/swift/Method/checkVersion(checkType:)" class="dashAnchor"></a>
<a class="token" href="#/s:FC5Siren5Siren12checkVersionFT9checkTypeOS_21SirenVersionCheckType_T_">checkVersion(checkType:)</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Checks the currently installed version of your app against the App Store.
The default check is against the US App Store, but if your app is not listed in the US,
you should set the <code><a href="../Classes/Siren.html#/s:vC5Siren5Siren11countryCodeGSqSS_">countryCode</a></code> property before calling this method. Please refer to the countryCode property for more information.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">checkVersion</span><span class="p">(</span><span class="nv">checkType</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a></span><span class="p">)</span></code></pre>
</div>
</div>
<div>
<h4>Parameters</h4>
<table class="graybox">
<tbody>
<tr>
<td>
<code>
<em>checkType</em>
</code>
</td>
<td>
<div>
<p>The frequency in days in which you want a check to be performed. Please refer to the SirenVersionCheckType enum for more details.</p>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,177 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Enums Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title="Enums Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<img id="carat" src="img/carat.png" />
Enums Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Enums</h1>
<p>The following enums are available globally.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<div class="task-name-container">
<a name="/SirenDelegate%20Protocol%20Extension"></a>
<a name="//apple_ref/swift/Section/SirenDelegate Protocol Extension" class="dashAnchor"></a>
<a href="#/SirenDelegate%20Protocol%20Extension">
<h3 class="section-name">SirenDelegate Protocol Extension</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/s:O5Siren14SirenAlertType"></a>
<a name="//apple_ref/swift/Enum/SirenAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren14SirenAlertType">SirenAlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert to present after a successful version check has been performed.</p>
<a href="Enums/SirenAlertType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenAlertType</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:O5Siren21SirenVersionCheckType"></a>
<a name="//apple_ref/swift/Enum/SirenVersionCheckType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren21SirenVersionCheckType">SirenVersionCheckType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the frequency in which the the version check is performed.</p>
<a href="Enums/SirenVersionCheckType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenVersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:O5Siren17SirenLanguageType"></a>
<a name="//apple_ref/swift/Enum/SirenLanguageType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren17SirenLanguageType">SirenLanguageType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the available languages in which the update message and alert button titles should appear.</p>
<p>By default, the operating system&rsquo;s default lanuage setting is used. However, you can force a specific language
by setting the forceLanguageLocalization property before calling checkVersion()</p>
<a href="Enums/SirenLanguageType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,152 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Extensions Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title="Extensions Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<img id="carat" src="img/carat.png" />
Extensions Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Extensions.html">Extensions</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Extensions/Bundle.html">Bundle</a>
</li>
<li class="nav-group-task">
<a href="Extensions/UIAlertController.html">UIAlertController</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Extensions</h1>
<p>The following extensions are available globally.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<div class="task-name-container">
<a name="/Bundle%20Extension%20for%20Siren"></a>
<a name="//apple_ref/swift/Section/Bundle Extension for Siren" class="dashAnchor"></a>
<a href="#/Bundle%20Extension%20for%20Siren">
<h3 class="section-name">Bundle Extension for Siren</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/c:objc(cs)NSBundle"></a>
<a name="//apple_ref/swift/Extension/Bundle" class="dashAnchor"></a>
<a class="token" href="#/c:objc(cs)NSBundle">Bundle</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
<a href="Extensions/Bundle.html" class="slightly-smaller">See more</a>
</div>
</section>
</div>
</li>
</ul>
</div>
<div class="task-group">
<div class="task-name-container">
<a name="/UIAlertController%20Extension%20for%20Siren"></a>
<a name="//apple_ref/swift/Section/UIAlertController Extension for Siren" class="dashAnchor"></a>
<a href="#/UIAlertController%20Extension%20for%20Siren">
<h3 class="section-name">UIAlertController Extension for Siren</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/c:objc(cs)UIAlertController"></a>
<a name="//apple_ref/swift/Extension/UIAlertController" class="dashAnchor"></a>
<a class="token" href="#/c:objc(cs)UIAlertController">UIAlertController</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
<a href="Extensions/UIAlertController.html" class="slightly-smaller">See more</a>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,190 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bundle Extension Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Extension/Bundle" class="dashAnchor"></a>
<a title="Bundle Extension Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
Bundle Extension Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Extensions.html">Extensions</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Extensions/Bundle.html">Bundle</a>
</li>
<li class="nav-group-task">
<a href="../Extensions/UIAlertController.html">UIAlertController</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Bundle</h1>
<p>Undocumented</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:ZFE5SirenCSo6Bundle8bundleIDFT_GSqSS_"></a>
<a name="//apple_ref/swift/Method/bundleID()" class="dashAnchor"></a>
<a class="token" href="#/s:ZFE5SirenCSo6Bundle8bundleIDFT_GSqSS_">bundleID()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle15sirenBundlePathFT_SS"></a>
<a name="//apple_ref/swift/Method/sirenBundlePath()" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle15sirenBundlePathFT_SS">sirenBundlePath()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle21sirenForcedBundlePathFT25forceLanguageLocalizationOS_17SirenLanguageType_SS"></a>
<a name="//apple_ref/swift/Method/sirenForcedBundlePath(forceLanguageLocalization:)" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle21sirenForcedBundlePathFT25forceLanguageLocalizationOS_17SirenLanguageType_SS">sirenForcedBundlePath(forceLanguageLocalization:)</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle15localizedStringFT9stringKeySS25forceLanguageLocalizationGSqOS_17SirenLanguageType__SS"></a>
<a name="//apple_ref/swift/Method/localizedString(stringKey:forceLanguageLocalization:)" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle15localizedStringFT9stringKeySS25forceLanguageLocalizationGSqOS_17SirenLanguageType__SS">localizedString(stringKey:forceLanguageLocalization:)</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo6Bundle19bestMatchingAppNameFT_SS"></a>
<a name="//apple_ref/swift/Method/bestMatchingAppName()" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo6Bundle19bestMatchingAppNameFT_SS">bestMatchingAppName()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,114 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>UIAlertController Extension Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Extension/UIAlertController" class="dashAnchor"></a>
<a title="UIAlertController Extension Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
UIAlertController Extension Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Extensions.html">Extensions</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Extensions/Bundle.html">Bundle</a>
</li>
<li class="nav-group-task">
<a href="../Extensions/UIAlertController.html">UIAlertController</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>UIAlertController</h1>
<p>Undocumented</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FE5SirenCSo17UIAlertController4showFT_T_"></a>
<a name="//apple_ref/swift/Method/show()" class="dashAnchor"></a>
<a class="token" href="#/s:FE5SirenCSo17UIAlertController4showFT_T_">show()</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Undocumented</p>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,118 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Protocols Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title="Protocols Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<img id="carat" src="img/carat.png" />
Protocols Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Protocols</h1>
<p>The following protocols are available globally.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<div class="task-name-container">
<a name="/SirenDelegate%20Protocol"></a>
<a name="//apple_ref/swift/Section/SirenDelegate Protocol" class="dashAnchor"></a>
<a href="#/SirenDelegate%20Protocol">
<h3 class="section-name">SirenDelegate Protocol</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/s:P5Siren13SirenDelegate"></a>
<a name="//apple_ref/swift/Protocol/SirenDelegate" class="dashAnchor"></a>
<a class="token" href="#/s:P5Siren13SirenDelegate">SirenDelegate</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Delegate that handles all codepaths for Siren upon version check completion.</p>
<a href="Protocols/SirenDelegate.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">SirenDelegate</span><span class="p">:</span> <span class="kd">class</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,328 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenDelegate Protocol Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Protocol/SirenDelegate" class="dashAnchor"></a>
<a title="SirenDelegate Protocol Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
SirenDelegate Protocol Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>SirenDelegate</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">SirenDelegate</span><span class="p">:</span> <span class="kd">class</span></code></pre>
</div>
</div>
<p>Delegate that handles all codepaths for Siren upon version check completion.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOS_14SirenAlertType_T_"></a>
<a name="//apple_ref/swift/Method/sirenDidShowUpdateDialog(alertType:)" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOS_14SirenAlertType_T_">sirenDidShowUpdateDialog(alertType:)</a>
</code>
<span class="declaration-note">
Default implementation
</span>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User presented with update dialog</p>
</div>
<h4>Default Implementation</h4>
<div class="default_impl abstract">
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenDidShowUpdateDialog</span><span class="p">(</span><span class="nv">alertType</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="p">)</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate26sirenUserDidLaunchAppStoreFT_T_"></a>
<a name="//apple_ref/swift/Method/sirenUserDidLaunchAppStore()" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate26sirenUserDidLaunchAppStoreFT_T_">sirenUserDidLaunchAppStore()</a>
</code>
<span class="declaration-note">
Default implementation
</span>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that launched App Store.app</p>
</div>
<h4>Default Implementation</h4>
<div class="default_impl abstract">
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenUserDidLaunchAppStore</span><span class="p">()</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate23sirenUserDidSkipVersionFT_T_"></a>
<a name="//apple_ref/swift/Method/sirenUserDidSkipVersion()" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate23sirenUserDidSkipVersionFT_T_">sirenUserDidSkipVersion()</a>
</code>
<span class="declaration-note">
Default implementation
</span>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that skips version update</p>
</div>
<h4>Default Implementation</h4>
<div class="default_impl abstract">
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenUserDidSkipVersion</span><span class="p">()</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate18sirenUserDidCancelFT_T_"></a>
<a name="//apple_ref/swift/Method/sirenUserDidCancel()" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate18sirenUserDidCancelFT_T_">sirenUserDidCancel()</a>
</code>
<span class="declaration-note">
Default implementation
</span>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that cancels update dialog</p>
</div>
<h4>Default Implementation</h4>
<div class="default_impl abstract">
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenUserDidCancel</span><span class="p">()</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate24sirenDidFailVersionCheckFT5errorCSo7NSError_T_"></a>
<a name="//apple_ref/swift/Method/sirenDidFailVersionCheck(error:)" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate24sirenDidFailVersionCheckFT5errorCSo7NSError_T_">sirenDidFailVersionCheck(error:)</a>
</code>
<span class="declaration-note">
Default implementation
</span>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren failed to perform version check (may return system-level error)</p>
</div>
<h4>Default Implementation</h4>
<div class="default_impl abstract">
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenDidFailVersionCheck</span><span class="p">(</span><span class="nv">error</span><span class="p">:</span> <span class="kt">NSError</span><span class="p">)</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate36sirenDidDetectNewVersionWithoutAlertFT7messageSS_T_"></a>
<a name="//apple_ref/swift/Method/sirenDidDetectNewVersionWithoutAlert(message:)" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate36sirenDidDetectNewVersionWithoutAlertFT7messageSS_T_">sirenDidDetectNewVersionWithoutAlert(message:)</a>
</code>
<span class="declaration-note">
Default implementation
</span>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren performed version check and did not display alert</p>
</div>
<h4>Default Implementation</h4>
<div class="default_impl abstract">
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenDidDetectNewVersionWithoutAlert</span><span class="p">(</span><span class="nv">message</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate27sirenLatestVersionInstalledFT_T_"></a>
<a name="//apple_ref/swift/Method/sirenLatestVersionInstalled()" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate27sirenLatestVersionInstalledFT_T_">sirenLatestVersionInstalled()</a>
</code>
<span class="declaration-note">
Default implementation
</span>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren performed version check and latest version is installed</p>
</div>
<h4>Default Implementation</h4>
<div class="default_impl abstract">
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenLatestVersionInstalled</span><span class="p">()</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="136" height="20"><linearGradient id="b" x2="0" y2="100%"><stop offset="0" stop-color="#bbb" stop-opacity=".1"/><stop offset="1" stop-opacity=".1"/></linearGradient><clipPath id="a"><rect width="136" height="20" rx="3" fill="#fff"/></clipPath><g clip-path="url(#a)"><path fill="#555" d="M0 0h93v20H0z"/><path fill="#4c1" d="M93 0h43v20H93z"/><path fill="url(#b)" d="M0 0h136v20H0z"/></g><g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11"><text x="46.5" y="15" fill="#010101" fill-opacity=".3">documentation</text><text x="46.5" y="14">documentation</text><text x="113.5" y="15" fill="#010101" fill-opacity=".3">100%</text><text x="113.5" y="14">100%</text></g></svg>

Before

Width:  |  Height:  |  Size: 807 B

@@ -1,200 +0,0 @@
/* Credit to https://gist.github.com/wataru420/2048287 */
.highlight {
/* Comment */
/* Error */
/* Keyword */
/* Operator */
/* Comment.Multiline */
/* Comment.Preproc */
/* Comment.Single */
/* Comment.Special */
/* Generic.Deleted */
/* Generic.Deleted.Specific */
/* Generic.Emph */
/* Generic.Error */
/* Generic.Heading */
/* Generic.Inserted */
/* Generic.Inserted.Specific */
/* Generic.Output */
/* Generic.Prompt */
/* Generic.Strong */
/* Generic.Subheading */
/* Generic.Traceback */
/* Keyword.Constant */
/* Keyword.Declaration */
/* Keyword.Pseudo */
/* Keyword.Reserved */
/* Keyword.Type */
/* Literal.Number */
/* Literal.String */
/* Name.Attribute */
/* Name.Builtin */
/* Name.Class */
/* Name.Constant */
/* Name.Entity */
/* Name.Exception */
/* Name.Function */
/* Name.Namespace */
/* Name.Tag */
/* Name.Variable */
/* Operator.Word */
/* Text.Whitespace */
/* Literal.Number.Float */
/* Literal.Number.Hex */
/* Literal.Number.Integer */
/* Literal.Number.Oct */
/* Literal.String.Backtick */
/* Literal.String.Char */
/* Literal.String.Doc */
/* Literal.String.Double */
/* Literal.String.Escape */
/* Literal.String.Heredoc */
/* Literal.String.Interpol */
/* Literal.String.Other */
/* Literal.String.Regex */
/* Literal.String.Single */
/* Literal.String.Symbol */
/* Name.Builtin.Pseudo */
/* Name.Variable.Class */
/* Name.Variable.Global */
/* Name.Variable.Instance */
/* Literal.Number.Integer.Long */ }
.highlight .c {
color: #999988;
font-style: italic; }
.highlight .err {
color: #a61717;
background-color: #e3d2d2; }
.highlight .k {
color: #000000;
font-weight: bold; }
.highlight .o {
color: #000000;
font-weight: bold; }
.highlight .cm {
color: #999988;
font-style: italic; }
.highlight .cp {
color: #999999;
font-weight: bold; }
.highlight .c1 {
color: #999988;
font-style: italic; }
.highlight .cs {
color: #999999;
font-weight: bold;
font-style: italic; }
.highlight .gd {
color: #000000;
background-color: #ffdddd; }
.highlight .gd .x {
color: #000000;
background-color: #ffaaaa; }
.highlight .ge {
color: #000000;
font-style: italic; }
.highlight .gr {
color: #aa0000; }
.highlight .gh {
color: #999999; }
.highlight .gi {
color: #000000;
background-color: #ddffdd; }
.highlight .gi .x {
color: #000000;
background-color: #aaffaa; }
.highlight .go {
color: #888888; }
.highlight .gp {
color: #555555; }
.highlight .gs {
font-weight: bold; }
.highlight .gu {
color: #aaaaaa; }
.highlight .gt {
color: #aa0000; }
.highlight .kc {
color: #000000;
font-weight: bold; }
.highlight .kd {
color: #000000;
font-weight: bold; }
.highlight .kp {
color: #000000;
font-weight: bold; }
.highlight .kr {
color: #000000;
font-weight: bold; }
.highlight .kt {
color: #445588; }
.highlight .m {
color: #009999; }
.highlight .s {
color: #d14; }
.highlight .na {
color: #008080; }
.highlight .nb {
color: #0086B3; }
.highlight .nc {
color: #445588;
font-weight: bold; }
.highlight .no {
color: #008080; }
.highlight .ni {
color: #800080; }
.highlight .ne {
color: #990000;
font-weight: bold; }
.highlight .nf {
color: #990000; }
.highlight .nn {
color: #555555; }
.highlight .nt {
color: #000080; }
.highlight .nv {
color: #008080; }
.highlight .ow {
color: #000000;
font-weight: bold; }
.highlight .w {
color: #bbbbbb; }
.highlight .mf {
color: #009999; }
.highlight .mh {
color: #009999; }
.highlight .mi {
color: #009999; }
.highlight .mo {
color: #009999; }
.highlight .sb {
color: #d14; }
.highlight .sc {
color: #d14; }
.highlight .sd {
color: #d14; }
.highlight .s2 {
color: #d14; }
.highlight .se {
color: #d14; }
.highlight .sh {
color: #d14; }
.highlight .si {
color: #d14; }
.highlight .sx {
color: #d14; }
.highlight .sr {
color: #009926; }
.highlight .s1 {
color: #d14; }
.highlight .ss {
color: #990073; }
.highlight .bp {
color: #999999; }
.highlight .vc {
color: #008080; }
.highlight .vg {
color: #008080; }
.highlight .vi {
color: #008080; }
.highlight .il {
color: #009999; }
@@ -1,332 +0,0 @@
html, body, div, span, h1, h3, h4, p, a, code, em, img, ul, li, table, tbody, tr, td {
background: transparent;
border: 0;
margin: 0;
outline: 0;
padding: 0;
vertical-align: baseline; }
body {
background-color: #f2f2f2;
font-family: Helvetica, freesans, Arial, sans-serif;
font-size: 14px;
-webkit-font-smoothing: subpixel-antialiased;
word-wrap: break-word; }
h1, h2, h3 {
margin-top: 0.8em;
margin-bottom: 0.3em;
font-weight: 100;
color: black; }
h1 {
font-size: 2.5em; }
h2 {
font-size: 2em;
border-bottom: 1px solid #e2e2e2; }
h4 {
font-size: 13px;
line-height: 1.5;
margin-top: 21px; }
h5 {
font-size: 1.1em; }
h6 {
font-size: 1.1em;
color: #777; }
.section-name {
color: gray;
display: block;
font-family: Helvetica;
font-size: 22px;
font-weight: 100;
margin-bottom: 15px; }
pre, code {
font: 0.95em Menlo, monospace;
color: #777;
word-wrap: normal; }
p code, li code {
background-color: #eee;
padding: 2px 4px;
border-radius: 4px; }
a {
color: #0088cc;
text-decoration: none; }
ul {
padding-left: 15px; }
li {
line-height: 1.8em; }
img {
max-width: 100%; }
blockquote {
margin-left: 0;
padding: 0 10px;
border-left: 4px solid #ccc; }
.content-wrapper {
margin: 0 auto;
width: 980px; }
header {
font-size: 0.85em;
line-height: 26px;
background-color: #414141;
position: fixed;
width: 100%;
z-index: 1; }
header img {
padding-right: 6px;
vertical-align: -4px;
height: 16px; }
header a {
color: #fff; }
header p {
float: left;
color: #999; }
header .header-right {
float: right;
margin-left: 16px; }
#breadcrumbs {
background-color: #f2f2f2;
height: 27px;
padding-top: 17px;
position: fixed;
width: 100%;
z-index: 1;
margin-top: 26px; }
#breadcrumbs #carat {
height: 10px;
margin: 0 5px; }
.sidebar {
background-color: #f9f9f9;
border: 1px solid #e2e2e2;
overflow-y: auto;
overflow-x: hidden;
position: fixed;
top: 70px;
bottom: 0;
width: 230px;
word-wrap: normal; }
.nav-groups {
list-style-type: none;
background: #fff;
padding-left: 0; }
.nav-group-name {
border-bottom: 1px solid #e2e2e2;
font-size: 1.1em;
font-weight: 100;
padding: 15px 0 15px 20px; }
.nav-group-name > a {
color: #333; }
.nav-group-tasks {
margin-top: 5px; }
.nav-group-task {
font-size: 0.9em;
list-style-type: none;
white-space: nowrap; }
.nav-group-task a {
color: #888; }
.main-content {
background-color: #fff;
border: 1px solid #e2e2e2;
margin-left: 246px;
position: absolute;
overflow: hidden;
padding-bottom: 60px;
top: 70px;
width: 734px; }
.main-content p, .main-content a, .main-content code, .main-content em, .main-content ul, .main-content table, .main-content blockquote {
margin-bottom: 1em; }
.main-content p {
line-height: 1.8em; }
.main-content section .section:first-child {
margin-top: 0;
padding-top: 0; }
.main-content section .task-group-section .task-group:first-of-type {
padding-top: 10px; }
.main-content section .task-group-section .task-group:first-of-type .section-name {
padding-top: 15px; }
.section {
padding: 0 25px; }
.highlight {
background-color: #eee;
padding: 10px 12px;
border: 1px solid #e2e2e2;
border-radius: 4px;
overflow-x: auto; }
.declaration .highlight {
overflow-x: initial;
padding: 0 40px 40px 0;
margin-bottom: -25px;
background-color: transparent;
border: none; }
.section-name {
margin: 0;
margin-left: 18px; }
.task-group-section {
padding-left: 6px;
border-top: 1px solid #e2e2e2; }
.task-group {
padding-top: 0px; }
.task-name-container a[name]:before {
content: "";
display: block;
padding-top: 70px;
margin: -70px 0 0; }
.item {
padding-top: 8px;
width: 100%;
list-style-type: none; }
.item a[name]:before {
content: "";
display: block;
padding-top: 70px;
margin: -70px 0 0; }
.item code {
background-color: transparent;
padding: 0; }
.item .token {
padding-left: 3px;
margin-left: 15px;
font-size: 11.9px; }
.item .declaration-note {
font-size: .85em;
color: gray;
font-style: italic; }
.pointer-container {
border-bottom: 1px solid #e2e2e2;
left: -23px;
padding-bottom: 13px;
position: relative;
width: 110%; }
.pointer {
background: #f9f9f9;
border-left: 1px solid #e2e2e2;
border-top: 1px solid #e2e2e2;
height: 12px;
left: 21px;
top: -7px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
position: absolute;
width: 12px; }
.height-container {
display: none;
left: -25px;
padding: 0 25px;
position: relative;
width: 100%;
overflow: hidden; }
.height-container .section {
background: #f9f9f9;
border-bottom: 1px solid #e2e2e2;
left: -25px;
position: relative;
width: 100%;
padding-top: 10px;
padding-bottom: 5px; }
.aside, .language {
padding: 6px 12px;
margin: 12px 0;
border-left: 5px solid #dddddd;
overflow-y: hidden; }
.aside .aside-title, .language .aside-title {
font-size: 9px;
letter-spacing: 2px;
text-transform: uppercase;
padding-bottom: 0;
margin: 0;
color: #aaa;
-webkit-user-select: none; }
.aside p:last-child, .language p:last-child {
margin-bottom: 0; }
.language {
border-left: 5px solid #cde9f4; }
.language .aside-title {
color: #4b8afb; }
.aside-warning {
border-left: 5px solid #ff6666; }
.aside-warning .aside-title {
color: #ff0000; }
.graybox {
border-collapse: collapse;
width: 100%; }
.graybox p {
margin: 0;
word-break: break-word;
min-width: 50px; }
.graybox td {
border: 1px solid #e2e2e2;
padding: 5px 25px 5px 10px;
vertical-align: middle; }
.graybox tr td:first-of-type {
text-align: right;
padding: 7px;
vertical-align: top;
word-break: normal;
width: 40px; }
.slightly-smaller {
font-size: 0.9em; }
#footer {
position: absolute;
bottom: 10px;
margin-left: 25px; }
#footer p {
margin: 0;
color: #aaa;
font-size: 0.8em; }
html.dash header, html.dash #breadcrumbs, html.dash .sidebar {
display: none; }
html.dash .main-content {
width: 980px;
margin-left: 0;
border: none;
width: 100%;
top: 0;
padding-bottom: 0; }
html.dash .height-container {
display: block; }
html.dash .item .token {
margin-left: 0; }
html.dash .content-wrapper {
width: auto; }
html.dash #footer {
position: static; }
Binary file not shown.

Before

Width:  |  Height:  |  Size: 274 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

@@ -1,77 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title> Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title=" Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<img id="carat" src="img/carat.png" />
Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<a href='#authors' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='authors'>Authors</h3>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,46 +0,0 @@
window.jazzy = {'docset': false}
if (typeof window.dash != 'undefined') {
document.documentElement.className += ' dash'
window.jazzy.docset = true
}
if (navigator.userAgent.match(/xcode/i)) {
document.documentElement.className += ' xcode'
window.jazzy.docset = true
}
// On doc load, toggle the URL hash discussion if present
$(document).ready(function() {
if (!window.jazzy.docset) {
var linkToHash = $('a[href="' + window.location.hash +'"]');
linkToHash.trigger("click");
}
});
// On token click, toggle its discussion and animate token.marginLeft
$(".token").click(function(event) {
if (window.jazzy.docset) {
return;
}
var link = $(this);
var animationDuration = 300;
var tokenOffset = "15px";
var original = link.css('marginLeft') == tokenOffset;
link.animate({'margin-left':original ? "0px" : tokenOffset}, animationDuration);
$content = link.parent().parent().next();
$content.slideToggle(animationDuration);
// Keeps the document from jumping to the hash.
var href = $(this).attr('href');
if (history.pushState) {
history.pushState({}, '', href);
} else {
location.hash = href;
}
event.preventDefault();
});
// Dumb down quotes within code blocks that delimit strings instead of quotations
// https://github.com/realm/jazzy/issues/714
$("code q").replaceWith(function () {
return ["\"", $(this).contents(), "\""];
});
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,6 +0,0 @@
{
"warnings": [
],
"source_directory": "/Users/Arthur/Documents/oss/siren/SirenExample"
}
Binary file not shown.
BIN
View File
Binary file not shown.
@@ -13,7 +13,8 @@
<a title="Classes Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html">Siren Docs</a> (100% documented)</p>
<p><a href="index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
@@ -32,19 +33,14 @@
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
<a href="Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -108,8 +104,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -14,7 +14,8 @@
<a title="Siren Class Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html">Siren Docs</a> (100% documented)</p>
<p><a href="../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
@@ -33,19 +34,14 @@
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
<a href="../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -88,7 +84,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>The error domain for all errors created by Siren</p>
<p>The error domain for all errors created by Siren.</p>
</div>
<div class="declaration">
@@ -118,12 +114,12 @@
<p>The SirenDelegate variable, which should be set if you&rsquo;d like to be notified:</p>
<p>When a user views or interacts with the alert
- sirenDidShowUpdateDialog(alertType: SirenAlertType)
- sirenDidShowUpdateDialog(alertType: AlertType)
- sirenUserDidLaunchAppStore()
- sirenUserDidSkipVersion()
- sirenUserDidCancel()</p>
<p>When a new version has been detected, and you would like to present a localized message in a custom UI
<p>When a new version has been detected, and you would like to present a localized message in a custom UI. use this delegate method:
- sirenDidDetectNewVersionWithoutAlert(message: String)</p>
</div>
@@ -169,9 +165,9 @@ When enabled, a stream of println() statements are logged to your console when a
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren9alertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren9alertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/alertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren9alertTypeOS_14SirenAlertType">alertType</a>
<a class="token" href="#/s:vC5Siren5Siren9alertTypeOS0_9AlertType">alertType</a>
</code>
</div>
<div class="height-container">
@@ -180,14 +176,14 @@ When enabled, a stream of println() statements are logged to your console when a
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown.
See the SirenAlertType enum for full details.</p>
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">alertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">alertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -197,9 +193,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20majorUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren20majorUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/majorUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20majorUpdateAlertTypeOS_14SirenAlertType">majorUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren20majorUpdateAlertTypeOS0_9AlertType">majorUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -208,15 +204,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for major version updates: A.b.c
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">majorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">majorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -226,9 +222,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20minorUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren20minorUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/minorUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20minorUpdateAlertTypeOS_14SirenAlertType">minorUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren20minorUpdateAlertTypeOS0_9AlertType">minorUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -237,15 +233,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for minor version updates: a.B.c
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">minorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">minorUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -255,9 +251,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren20patchUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren20patchUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/patchUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren20patchUpdateAlertTypeOS_14SirenAlertType">patchUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren20patchUpdateAlertTypeOS0_9AlertType">patchUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -266,15 +262,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for minor patch updates: a.b.C
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">patchUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">patchUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -284,9 +280,9 @@ See the SirenAlertType enum for full details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren23revisionUpdateAlertTypeOS_14SirenAlertType"></a>
<a name="/s:vC5Siren5Siren23revisionUpdateAlertTypeOS0_9AlertType"></a>
<a name="//apple_ref/swift/Property/revisionUpdateAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren23revisionUpdateAlertTypeOS_14SirenAlertType">revisionUpdateAlertType</a>
<a class="token" href="#/s:vC5Siren5Siren23revisionUpdateAlertTypeOS0_9AlertType">revisionUpdateAlertType</a>
</code>
</div>
<div class="height-container">
@@ -295,15 +291,15 @@ See the SirenAlertType enum for full details.</p>
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert that should be shown for revision updates: a.b.c.D
Defaults to SirenAlertType.Option.
See the SirenAlertType enum for full details.</p>
Defaults to Siren.AlertType.option.
See the Siren.AlertType enum for full details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">revisionUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">lazy</span> <span class="k">var</span> <span class="nv">revisionUpdateAlertType</span> <span class="o">=</span> <span class="kt"><a href="../Classes/Siren/AlertType.html">AlertType</a></span><span class="o">.</span><span class="n">option</span></code></pre>
</div>
</div>
@@ -370,9 +366,9 @@ If your app is not available in the US App Store, set it to the identifier of at
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS_17SirenLanguageType_"></a>
<a name="/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS0_12LanguageType_"></a>
<a name="//apple_ref/swift/Property/forceLanguageLocalization" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS_17SirenLanguageType_">forceLanguageLocalization</a>
<a class="token" href="#/s:vC5Siren5Siren25forceLanguageLocalizationGSqOS0_12LanguageType_">forceLanguageLocalization</a>
</code>
</div>
<div class="height-container">
@@ -381,14 +377,14 @@ If your app is not available in the US App Store, set it to the identifier of at
<div class="pointer"></div>
<div class="abstract">
<p>Overrides the default localization of a user&rsquo;s device when presenting the update message and button titles in the alert.
See the SirenLanguageType enum for more details.</p>
See the Siren.LanguageType enum for more details.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">forceLanguageLocalization</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenLanguageType.html">SirenLanguageType</a></span><span class="p">?</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">forceLanguageLocalization</span><span class="p">:</span> <span class="kt">Siren</span><span class="o">.</span><span class="kt"><a href="../Classes/Siren/LanguageType.html">LanguageType</a></span><span class="p">?</span></code></pre>
</div>
</div>
@@ -425,9 +421,9 @@ See the SirenLanguageType enum for more details.</p>
<li class="item">
<div>
<code>
<a name="/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysGSqSi_"></a>
<a name="/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysSi"></a>
<a name="//apple_ref/swift/Property/showAlertAfterCurrentVersionHasBeenReleasedForDays" class="dashAnchor"></a>
<a class="token" href="#/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysGSqSi_">showAlertAfterCurrentVersionHasBeenReleasedForDays</a>
<a class="token" href="#/s:vC5Siren5Siren50showAlertAfterCurrentVersionHasBeenReleasedForDaysSi">showAlertAfterCurrentVersionHasBeenReleasedForDays</a>
</code>
</div>
<div class="height-container">
@@ -435,14 +431,15 @@ See the SirenLanguageType enum for more details.</p>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>When this is set, the alert will only show up if the current version has already been released for X days</p>
<p>When this is set, the alert will only show up if the current version has already been released for X days
Defaults to 1 day to avoid an issue where Apple updates the JSON faster than the app binary propogates to the App Store.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">showAlertAfterCurrentVersionHasBeenReleasedForDays</span><span class="p">:</span> <span class="kt">Int</span><span class="p">?</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="k">var</span> <span class="nv">showAlertAfterCurrentVersionHasBeenReleasedForDays</span><span class="p">:</span> <span class="kt">Int</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
</div>
</div>
@@ -469,7 +466,7 @@ See the SirenLanguageType enum for more details.</p>
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="nf">fileprivate</span><span class="p">(</span><span class="k">set</span><span class="p">)</span> <span class="k">var</span> <span class="nv">currentAppStoreVersion</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">internal(set)</span> <span class="k">var</span> <span class="nv">currentAppStoreVersion</span><span class="p">:</span> <span class="kt">String</span><span class="p">?</span></code></pre>
</div>
</div>
@@ -506,9 +503,9 @@ See the SirenLanguageType enum for more details.</p>
<li class="item">
<div>
<code>
<a name="/s:FC5Siren5Siren12checkVersionFT9checkTypeOS_21SirenVersionCheckType_T_"></a>
<a name="/s:FC5Siren5Siren12checkVersionFT9checkTypeOS0_16VersionCheckType_T_"></a>
<a name="//apple_ref/swift/Method/checkVersion(checkType:)" class="dashAnchor"></a>
<a class="token" href="#/s:FC5Siren5Siren12checkVersionFT9checkTypeOS_21SirenVersionCheckType_T_">checkVersion(checkType:)</a>
<a class="token" href="#/s:FC5Siren5Siren12checkVersionFT9checkTypeOS0_16VersionCheckType_T_">checkVersion(checkType:)</a>
</code>
</div>
<div class="height-container">
@@ -525,7 +522,7 @@ you should set the <code><a href="../Classes/Siren.html#/s:vC5Siren5Siren11count
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">checkVersion</span><span class="p">(</span><span class="nv">checkType</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a></span><span class="p">)</span></code></pre>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">checkVersion</span><span class="p">(</span><span class="nv">checkType</span><span class="p">:</span> <span class="kt"><a href="../Classes/Siren/VersionCheckType.html">VersionCheckType</a></span><span class="p">)</span></code></pre>
</div>
</div>
@@ -541,7 +538,7 @@ you should set the <code><a href="../Classes/Siren.html#/s:vC5Siren5Siren11count
</td>
<td>
<div>
<p>The frequency in days in which you want a check to be performed. Please refer to the SirenVersionCheckType enum for more details.</p>
<p>The frequency in days in which you want a check to be performed. Please refer to the Siren.VersionCheckType enum for more details.</p>
</div>
</td>
@@ -554,11 +551,102 @@ you should set the <code><a href="../Classes/Siren.html#/s:vC5Siren5Siren11count
</li>
</ul>
</div>
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:OC5Siren5Siren9AlertType"></a>
<a name="//apple_ref/swift/Enum/AlertType" class="dashAnchor"></a>
<a class="token" href="#/s:OC5Siren5Siren9AlertType">AlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert to present after a successful version check has been performed.</p>
<a href="../Classes/Siren/AlertType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">AlertType</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:OC5Siren5Siren16VersionCheckType"></a>
<a name="//apple_ref/swift/Enum/VersionCheckType" class="dashAnchor"></a>
<a class="token" href="#/s:OC5Siren5Siren16VersionCheckType">VersionCheckType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the frequency in which the the version check is performed and the user is prompted to update the app.</p>
<a href="../Classes/Siren/VersionCheckType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">VersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:OC5Siren5Siren12LanguageType"></a>
<a name="//apple_ref/swift/Enum/LanguageType" class="dashAnchor"></a>
<a class="token" href="#/s:OC5Siren5Siren12LanguageType">LanguageType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the available languages in which the update message and alert button titles should appear.</p>
<p>By default, the operating system&rsquo;s default lanuage setting is used. However, you can force a specific language
by setting the forceLanguageLocalization property before calling checkVersion()</p>
<a href="../Classes/Siren/LanguageType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -1,59 +1,55 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenAlertType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<title>AlertType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
<script src="../../js/jquery.min.js" defer></script>
<script src="../../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenAlertType" class="dashAnchor"></a>
<a title="SirenAlertType Enum Reference"></a>
<a name="//apple_ref/swift/Enum/AlertType" class="dashAnchor"></a>
<a title="AlertType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
SirenAlertType Enum Reference
<a href="../../index.html">Siren Reference</a>
<img id="carat" src="../../img/carat.png" />
AlertType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<a href="../../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
<a href="../../Classes/Siren.html">Siren</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<a href="../../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
<a href="../../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
@@ -62,10 +58,10 @@
<article class="main-content">
<section>
<section class="section">
<h1>SirenAlertType</h1>
<h1>AlertType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenAlertType</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">AlertType</span></code></pre>
</div>
</div>
@@ -78,9 +74,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType5forceFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType5forceFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/force" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType5forceFMS0_S0_">force</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType5forceFMS1_S1_">force</a>
</code>
</div>
<div class="height-container">
@@ -109,9 +105,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType6optionFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType6optionFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/option" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType6optionFMS0_S0_">option</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType6optionFMS1_S1_">option</a>
</code>
</div>
<div class="height-container">
@@ -140,9 +136,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType4skipFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType4skipFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/skip" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType4skipFMS0_S0_">skip</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType4skipFMS1_S1_">skip</a>
</code>
</div>
<div class="height-container">
@@ -171,9 +167,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType4noneFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren9AlertType4noneFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/none" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType4noneFMS0_S0_">none</a>
<a class="token" href="#/s:FOC5Siren5Siren9AlertType4noneFMS1_S1_">none</a>
</code>
</div>
<div class="height-container">
@@ -181,7 +177,8 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Doesn&rsquo;t show the alert, but instead returns a localized message for use in a custom UI within the sirenDidDetectNewVersionWithoutAlert() delegate method.</p>
<p>Doesn&rsquo;t show the alert, but instead returns a localized message
for use in a custom UI within the sirenDidDetectNewVersionWithoutAlert() delegate method.</p>
</div>
<div class="declaration">
@@ -200,8 +197,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -1,59 +1,55 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenLanguageType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<title>LanguageType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
<script src="../../js/jquery.min.js" defer></script>
<script src="../../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenLanguageType" class="dashAnchor"></a>
<a title="SirenLanguageType Enum Reference"></a>
<a name="//apple_ref/swift/Enum/LanguageType" class="dashAnchor"></a>
<a title="LanguageType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
SirenLanguageType Enum Reference
<a href="../../index.html">Siren Reference</a>
<img id="carat" src="../../img/carat.png" />
LanguageType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<a href="../../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
<a href="../../Classes/Siren.html">Siren</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<a href="../../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
<a href="../../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
@@ -62,10 +58,10 @@
<article class="main-content">
<section>
<section class="section">
<h1>SirenLanguageType</h1>
<h1>LanguageType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -81,9 +77,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6ArabicFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6ArabicFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Arabic" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6ArabicFMS0_S0_">Arabic</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6ArabicFMS1_S1_">Arabic</a>
</code>
</div>
<div class="height-container">
@@ -98,7 +94,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -112,9 +108,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8ArmenianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8ArmenianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Armenian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8ArmenianFMS0_S0_">Armenian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8ArmenianFMS1_S1_">Armenian</a>
</code>
</div>
<div class="height-container">
@@ -129,7 +125,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -143,9 +139,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6BasqueFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6BasqueFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Basque" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6BasqueFMS0_S0_">Basque</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6BasqueFMS1_S1_">Basque</a>
</code>
</div>
<div class="height-container">
@@ -160,7 +156,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -174,9 +170,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType17ChineseSimplifiedFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType17ChineseSimplifiedFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/ChineseSimplified" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType17ChineseSimplifiedFMS0_S0_">ChineseSimplified</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType17ChineseSimplifiedFMS1_S1_">ChineseSimplified</a>
</code>
</div>
<div class="height-container">
@@ -191,7 +187,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -205,9 +201,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType18ChineseTraditionalFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType18ChineseTraditionalFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/ChineseTraditional" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType18ChineseTraditionalFMS0_S0_">ChineseTraditional</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType18ChineseTraditionalFMS1_S1_">ChineseTraditional</a>
</code>
</div>
<div class="height-container">
@@ -222,7 +218,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -236,9 +232,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8CroatianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8CroatianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Croatian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8CroatianFMS0_S0_">Croatian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8CroatianFMS1_S1_">Croatian</a>
</code>
</div>
<div class="height-container">
@@ -253,7 +249,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -267,9 +263,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6DanishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6DanishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Danish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6DanishFMS0_S0_">Danish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6DanishFMS1_S1_">Danish</a>
</code>
</div>
<div class="height-container">
@@ -284,7 +280,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -298,9 +294,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType5DutchFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType5DutchFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Dutch" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType5DutchFMS0_S0_">Dutch</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType5DutchFMS1_S1_">Dutch</a>
</code>
</div>
<div class="height-container">
@@ -315,7 +311,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -329,9 +325,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7EnglishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7EnglishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/English" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7EnglishFMS0_S0_">English</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7EnglishFMS1_S1_">English</a>
</code>
</div>
<div class="height-container">
@@ -346,7 +342,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -360,9 +356,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8EstonianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8EstonianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Estonian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8EstonianFMS0_S0_">Estonian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8EstonianFMS1_S1_">Estonian</a>
</code>
</div>
<div class="height-container">
@@ -377,7 +373,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -391,9 +387,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7FinnishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7FinnishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Finnish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7FinnishFMS0_S0_">Finnish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7FinnishFMS1_S1_">Finnish</a>
</code>
</div>
<div class="height-container">
@@ -408,7 +404,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -422,9 +418,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6FrenchFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6FrenchFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/French" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6FrenchFMS0_S0_">French</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6FrenchFMS1_S1_">French</a>
</code>
</div>
<div class="height-container">
@@ -439,7 +435,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -453,9 +449,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6GermanFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6GermanFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/German" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6GermanFMS0_S0_">German</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6GermanFMS1_S1_">German</a>
</code>
</div>
<div class="height-container">
@@ -470,7 +466,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -484,9 +480,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType5GreekFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType5GreekFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Greek" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType5GreekFMS0_S0_">Greek</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType5GreekFMS1_S1_">Greek</a>
</code>
</div>
<div class="height-container">
@@ -501,7 +497,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -515,9 +511,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6HebrewFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6HebrewFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Hebrew" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6HebrewFMS0_S0_">Hebrew</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6HebrewFMS1_S1_">Hebrew</a>
</code>
</div>
<div class="height-container">
@@ -532,7 +528,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -546,9 +542,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType9HungarianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType9HungarianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Hungarian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType9HungarianFMS0_S0_">Hungarian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType9HungarianFMS1_S1_">Hungarian</a>
</code>
</div>
<div class="height-container">
@@ -563,7 +559,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -577,9 +573,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType10IndonesianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType10IndonesianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Indonesian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType10IndonesianFMS0_S0_">Indonesian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType10IndonesianFMS1_S1_">Indonesian</a>
</code>
</div>
<div class="height-container">
@@ -594,7 +590,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -608,9 +604,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7ItalianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7ItalianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Italian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7ItalianFMS0_S0_">Italian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7ItalianFMS1_S1_">Italian</a>
</code>
</div>
<div class="height-container">
@@ -625,7 +621,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -639,9 +635,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType8JapaneseFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType8JapaneseFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Japanese" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType8JapaneseFMS0_S0_">Japanese</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType8JapaneseFMS1_S1_">Japanese</a>
</code>
</div>
<div class="height-container">
@@ -656,7 +652,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -670,9 +666,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6KoreanFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6KoreanFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Korean" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6KoreanFMS0_S0_">Korean</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6KoreanFMS1_S1_">Korean</a>
</code>
</div>
<div class="height-container">
@@ -687,7 +683,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -701,9 +697,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7LatvianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7LatvianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Latvian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7LatvianFMS0_S0_">Latvian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7LatvianFMS1_S1_">Latvian</a>
</code>
</div>
<div class="height-container">
@@ -718,7 +714,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -732,9 +728,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType10LithuanianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType10LithuanianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Lithuanian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType10LithuanianFMS0_S0_">Lithuanian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType10LithuanianFMS1_S1_">Lithuanian</a>
</code>
</div>
<div class="height-container">
@@ -749,7 +745,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -763,9 +759,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType5MalayFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType5MalayFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Malay" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType5MalayFMS0_S0_">Malay</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType5MalayFMS1_S1_">Malay</a>
</code>
</div>
<div class="height-container">
@@ -780,7 +776,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -794,9 +790,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType9NorwegianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType9NorwegianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Norwegian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType9NorwegianFMS0_S0_">Norwegian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType9NorwegianFMS1_S1_">Norwegian</a>
</code>
</div>
<div class="height-container">
@@ -811,7 +807,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -825,9 +821,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType6PolishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType6PolishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Polish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType6PolishFMS0_S0_">Polish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType6PolishFMS1_S1_">Polish</a>
</code>
</div>
<div class="height-container">
@@ -842,7 +838,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -856,9 +852,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType16PortugueseBrazilFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType16PortugueseBrazilFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/PortugueseBrazil" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType16PortugueseBrazilFMS0_S0_">PortugueseBrazil</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType16PortugueseBrazilFMS1_S1_">PortugueseBrazil</a>
</code>
</div>
<div class="height-container">
@@ -873,7 +869,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -887,9 +883,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType18PortuguesePortugalFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType18PortuguesePortugalFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/PortuguesePortugal" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType18PortuguesePortugalFMS0_S0_">PortuguesePortugal</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType18PortuguesePortugalFMS1_S1_">PortuguesePortugal</a>
</code>
</div>
<div class="height-container">
@@ -904,7 +900,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -918,9 +914,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7RussianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7RussianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Russian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7RussianFMS0_S0_">Russian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7RussianFMS1_S1_">Russian</a>
</code>
</div>
<div class="height-container">
@@ -935,7 +931,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -949,9 +945,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType15SerbianCyrillicFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType15SerbianCyrillicFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/SerbianCyrillic" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType15SerbianCyrillicFMS0_S0_">SerbianCyrillic</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType15SerbianCyrillicFMS1_S1_">SerbianCyrillic</a>
</code>
</div>
<div class="height-container">
@@ -966,7 +962,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -980,9 +976,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType12SerbianLatinFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType12SerbianLatinFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/SerbianLatin" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType12SerbianLatinFMS0_S0_">SerbianLatin</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType12SerbianLatinFMS1_S1_">SerbianLatin</a>
</code>
</div>
<div class="height-container">
@@ -997,7 +993,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1011,9 +1007,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType9SlovenianFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType9SlovenianFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Slovenian" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType9SlovenianFMS0_S0_">Slovenian</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType9SlovenianFMS1_S1_">Slovenian</a>
</code>
</div>
<div class="height-container">
@@ -1028,7 +1024,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1042,9 +1038,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7SpanishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7SpanishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Spanish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7SpanishFMS0_S0_">Spanish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7SpanishFMS1_S1_">Spanish</a>
</code>
</div>
<div class="height-container">
@@ -1059,7 +1055,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1073,9 +1069,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7SwedishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7SwedishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Swedish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7SwedishFMS0_S0_">Swedish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7SwedishFMS1_S1_">Swedish</a>
</code>
</div>
<div class="height-container">
@@ -1090,7 +1086,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1104,9 +1100,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType4ThaiFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType4ThaiFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Thai" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType4ThaiFMS0_S0_">Thai</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType4ThaiFMS1_S1_">Thai</a>
</code>
</div>
<div class="height-container">
@@ -1121,7 +1117,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1135,9 +1131,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType7TurkishFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType7TurkishFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Turkish" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType7TurkishFMS0_S0_">Turkish</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType7TurkishFMS1_S1_">Turkish</a>
</code>
</div>
<div class="height-container">
@@ -1152,7 +1148,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1166,9 +1162,9 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<li class="item">
<div>
<code>
<a name="/s:FO5Siren17SirenLanguageType10VietnameseFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren12LanguageType10VietnameseFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/Vietnamese" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren17SirenLanguageType10VietnameseFMS0_S0_">Vietnamese</a>
<a class="token" href="#/s:FOC5Siren5Siren12LanguageType10VietnameseFMS1_S1_">Vietnamese</a>
</code>
</div>
<div class="height-container">
@@ -1183,7 +1179,7 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">LanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
@@ -1195,8 +1191,8 @@ by setting the forceLanguageLocalization property before calling checkVersion()<
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -1,59 +1,55 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenVersionCheckType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<title>VersionCheckType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
<script src="../../js/jquery.min.js" defer></script>
<script src="../../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenVersionCheckType" class="dashAnchor"></a>
<a title="SirenVersionCheckType Enum Reference"></a>
<a name="//apple_ref/swift/Enum/VersionCheckType" class="dashAnchor"></a>
<a title="VersionCheckType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html"> Docs</a> (100% documented)</p>
<p><a href="../../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html"> Reference</a>
<img id="carat" src="../img/carat.png" />
SirenVersionCheckType Enum Reference
<a href="../../index.html">Siren Reference</a>
<img id="carat" src="../../img/carat.png" />
VersionCheckType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<a href="../../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
<a href="../../Classes/Siren.html">Siren</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<a href="../../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
<a href="../../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
@@ -62,14 +58,14 @@
<article class="main-content">
<section>
<section class="section">
<h1>SirenVersionCheckType</h1>
<h1>VersionCheckType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenVersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
<pre class="highlight"><code><span class="kd">enum</span> <span class="kt">VersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
<p>Determines the frequency in which the the version check is performed.</p>
<p>Determines the frequency in which the the version check is performed and the user is prompted to update the app.</p>
</section>
<section class="section task-group-section">
@@ -78,9 +74,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType11immediatelyFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren16VersionCheckType11immediatelyFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/immediately" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType11immediatelyFMS0_S0_">immediately</a>
<a class="token" href="#/s:FOC5Siren5Siren16VersionCheckType11immediatelyFMS1_S1_">immediately</a>
</code>
</div>
<div class="height-container">
@@ -109,9 +105,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType5dailyFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren16VersionCheckType5dailyFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/daily" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType5dailyFMS0_S0_">daily</a>
<a class="token" href="#/s:FOC5Siren5Siren16VersionCheckType5dailyFMS1_S1_">daily</a>
</code>
</div>
<div class="height-container">
@@ -140,9 +136,9 @@
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType6weeklyFMS0_S0_"></a>
<a name="/s:FOC5Siren5Siren16VersionCheckType6weeklyFMS1_S1_"></a>
<a name="//apple_ref/swift/Element/weekly" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType6weeklyFMS0_S0_">weekly</a>
<a class="token" href="#/s:FOC5Siren5Siren16VersionCheckType6weeklyFMS1_S1_">weekly</a>
</code>
</div>
<div class="height-container">
@@ -169,8 +165,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -1,177 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Enums Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
<script src="js/jquery.min.js" defer></script>
<script src="js/jazzy.js" defer></script>
</head>
<body>
<a title="Enums Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html">Siren Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html">Siren Reference</a>
<img id="carat" src="img/carat.png" />
Enums Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>Enums</h1>
<p>The following enums are available globally.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<div class="task-name-container">
<a name="/SirenDelegate%20Protocol%20Extension"></a>
<a name="//apple_ref/swift/Section/SirenDelegate Protocol Extension" class="dashAnchor"></a>
<a href="#/SirenDelegate%20Protocol%20Extension">
<h3 class="section-name">SirenDelegate Protocol Extension</h3>
</a>
</div>
<ul>
<li class="item">
<div>
<code>
<a name="/s:O5Siren14SirenAlertType"></a>
<a name="//apple_ref/swift/Enum/SirenAlertType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren14SirenAlertType">SirenAlertType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the type of alert to present after a successful version check has been performed.</p>
<a href="Enums/SirenAlertType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenAlertType</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:O5Siren21SirenVersionCheckType"></a>
<a name="//apple_ref/swift/Enum/SirenVersionCheckType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren21SirenVersionCheckType">SirenVersionCheckType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the frequency in which the the version check is performed.</p>
<a href="Enums/SirenVersionCheckType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenVersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
</section>
</div>
</li>
<li class="item">
<div>
<code>
<a name="/s:O5Siren17SirenLanguageType"></a>
<a name="//apple_ref/swift/Enum/SirenLanguageType" class="dashAnchor"></a>
<a class="token" href="#/s:O5Siren17SirenLanguageType">SirenLanguageType</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Determines the available languages in which the update message and alert button titles should appear.</p>
<p>By default, the operating system&rsquo;s default lanuage setting is used. However, you can force a specific language
by setting the forceLanguageLocalization property before calling checkVersion()</p>
<a href="Enums/SirenLanguageType.html" class="slightly-smaller">See more</a>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenLanguageType</span><span class="p">:</span> <span class="kt">String</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,210 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenAlertType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenAlertType" class="dashAnchor"></a>
<a title="SirenAlertType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html">Siren Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html">Siren Reference</a>
<img id="carat" src="../img/carat.png" />
SirenAlertType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>SirenAlertType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenAlertType</span></code></pre>
</div>
</div>
<p>Determines the type of alert to present after a successful version check has been performed.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType5forceFMS0_S0_"></a>
<a name="//apple_ref/swift/Element/force" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType5forceFMS0_S0_">force</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Forces user to update your app (1 button alert).</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="k">case</span> <span class="n">force</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType6optionFMS0_S0_"></a>
<a name="//apple_ref/swift/Element/option" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType6optionFMS0_S0_">option</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>(DEFAULT) Presents user with option to update app now or at next launch (2 button alert).</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="k">case</span> <span class="n">option</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType4skipFMS0_S0_"></a>
<a name="//apple_ref/swift/Element/skip" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType4skipFMS0_S0_">skip</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Presents user with option to update the app now, at next launch, or to skip this version all together (3 button alert).</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="k">case</span> <span class="n">skip</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FO5Siren14SirenAlertType4noneFMS0_S0_"></a>
<a name="//apple_ref/swift/Element/none" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren14SirenAlertType4noneFMS0_S0_">none</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Doesn&rsquo;t show the alert, but instead returns a localized message for use in a custom UI within the sirenDidDetectNewVersionWithoutAlert() delegate method.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="k">case</span> <span class="k">none</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -1,179 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>SirenVersionCheckType Enum Reference</title>
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
<meta charset='utf-8'>
<script src="../js/jquery.min.js" defer></script>
<script src="../js/jazzy.js" defer></script>
</head>
<body>
<a name="//apple_ref/swift/Enum/SirenVersionCheckType" class="dashAnchor"></a>
<a title="SirenVersionCheckType Enum Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html">Siren Docs</a> (100% documented)</p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="../index.html">Siren Reference</a>
<img id="carat" src="../img/carat.png" />
SirenVersionCheckType Enum Reference
</p>
</div>
<div class="content-wrapper">
<nav class="sidebar">
<ul class="nav-groups">
<li class="nav-group-name">
<a href="../Classes.html">Classes</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Protocols.html">Protocols</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Protocols/SirenDelegate.html">SirenDelegate</a>
</li>
</ul>
</li>
</ul>
</nav>
<article class="main-content">
<section>
<section class="section">
<h1>SirenVersionCheckType</h1>
<div class="declaration">
<div class="language">
<pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">SirenVersionCheckType</span><span class="p">:</span> <span class="kt">Int</span></code></pre>
</div>
</div>
<p>Determines the frequency in which the the version check is performed.</p>
</section>
<section class="section task-group-section">
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType11immediatelyFMS0_S0_"></a>
<a name="//apple_ref/swift/Element/immediately" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType11immediatelyFMS0_S0_">immediately</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Version check performed every time the app is launched.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="k">case</span> <span class="n">immediately</span> <span class="o">=</span> <span class="mi">0</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType5dailyFMS0_S0_"></a>
<a name="//apple_ref/swift/Element/daily" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType5dailyFMS0_S0_">daily</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Version check performed once a day.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="k">case</span> <span class="n">daily</span> <span class="o">=</span> <span class="mi">1</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
<div class="task-group">
<ul>
<li class="item">
<div>
<code>
<a name="/s:FO5Siren21SirenVersionCheckType6weeklyFMS0_S0_"></a>
<a name="//apple_ref/swift/Element/weekly" class="dashAnchor"></a>
<a class="token" href="#/s:FO5Siren21SirenVersionCheckType6weeklyFMS0_S0_">weekly</a>
</code>
</div>
<div class="height-container">
<div class="pointer-container"></div>
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Version check performed once a week.</p>
</div>
<div class="declaration">
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="k">case</span> <span class="n">weekly</span> <span class="o">=</span> <span class="mi">7</span></code></pre>
</div>
</div>
</section>
</div>
</li>
</ul>
</div>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
</body>
</div>
</html>
@@ -13,7 +13,8 @@
<a title="Protocols Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html">Siren Docs</a> (100% documented)</p>
<p><a href="index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
@@ -32,19 +33,14 @@
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
<a href="Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -108,8 +104,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -14,7 +14,8 @@
<a title="SirenDelegate Protocol Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="../index.html">Siren Docs</a> (100% documented)</p>
<p><a href="../index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="../img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
@@ -33,19 +34,14 @@
<li class="nav-group-task">
<a href="../Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="../Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="../Enums/SirenAlertType.html">SirenAlertType</a>
<a href="../Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="../Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="../Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="../Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -78,9 +74,9 @@
<li class="item">
<div>
<code>
<a name="/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOS_14SirenAlertType_T_"></a>
<a name="/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOCS_5Siren9AlertType_T_"></a>
<a name="//apple_ref/swift/Method/sirenDidShowUpdateDialog(alertType:)" class="dashAnchor"></a>
<a class="token" href="#/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOS_14SirenAlertType_T_">sirenDidShowUpdateDialog(alertType:)</a>
<a class="token" href="#/s:FP5Siren13SirenDelegate24sirenDidShowUpdateDialogFT9alertTypeOCS_5Siren9AlertType_T_">sirenDidShowUpdateDialog(alertType:)</a>
</code>
<span class="declaration-note">
Default implementation
@@ -91,7 +87,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User presented with update dialog</p>
<p>User presented with update dialog.</p>
</div>
<h4>Default Implementation</h4>
@@ -102,7 +98,7 @@
<h4>Declaration</h4>
<div class="language">
<p class="aside-title">Swift</p>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenDidShowUpdateDialog</span><span class="p">(</span><span class="nv">alertType</span><span class="p">:</span> <span class="kt"><a href="../Enums/SirenAlertType.html">SirenAlertType</a></span><span class="p">)</span></code></pre>
<pre class="highlight"><code><span class="kd">func</span> <span class="nf">sirenDidShowUpdateDialog</span><span class="p">(</span><span class="nv">alertType</span><span class="p">:</span> <span class="kt"><a href="../Classes/Siren.html">Siren</a></span><span class="o">.</span><span class="kt">AlertType</span><span class="p">)</span></code></pre>
</div>
</div>
@@ -125,7 +121,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that launched App Store.app</p>
<p>User did click on button that launched App Store.app.</p>
</div>
<h4>Default Implementation</h4>
@@ -159,7 +155,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that skips version update</p>
<p>User did click on button that skips version update.</p>
</div>
<h4>Default Implementation</h4>
@@ -193,7 +189,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>User did click on button that cancels update dialog</p>
<p>User did click on button that cancels update dialog.</p>
</div>
<h4>Default Implementation</h4>
@@ -227,7 +223,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren failed to perform version check (may return system-level error)</p>
<p>Siren failed to perform version check (may return system-level error).</p>
</div>
<h4>Default Implementation</h4>
@@ -261,7 +257,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren performed version check and did not display alert</p>
<p>Siren performed version check and did not display alert.</p>
</div>
<h4>Default Implementation</h4>
@@ -295,7 +291,7 @@
<section class="section">
<div class="pointer"></div>
<div class="abstract">
<p>Siren performed version check and latest version is installed</p>
<p>Siren performed version check and latest version is installed.</p>
</div>
<h4>Default Implementation</h4>
@@ -318,8 +314,8 @@
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
@@ -13,7 +13,8 @@
<a title="Siren Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html">Siren Docs</a> (100% documented)</p>
<p><a href="index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
@@ -32,19 +33,14 @@
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
<a href="Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -63,25 +59,275 @@
<section class="section">
<a href='#siren' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h1 id='siren'>Siren</h1>
<a href='#notify-users-when-a-new-version-of-your-ios-app-is-available-and-prompt-them-with-the-app-store-link' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='notify-users-when-a-new-version-of-your-ios-app-is-available-and-prompt-them-with-the-app-store-link'>Notify users when a new version of your iOS app is available, and prompt them with the App Store link..</h3>
<a href='#notify-users-when-a-new-version-of-your-app-is-available-and-prompt-them-to-upgrade' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='notify-users-when-a-new-version-of-your-app-is-available-and-prompt-them-to-upgrade'>Notify users when a new version of your app is available and prompt them to upgrade.</h3>
<a href='#a-href-https-dashboard-buddybuild-com-apps-58c4d0d85601d40100c5c51d-build-latest-branch-master-img-src-https-dashboard-buddybuild-com-api-statusimage-appid-58c4d0d85601d40100c5c51d-branch-master-build-latest-alt-buddybuild-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-v-siren-svg-alt-cocoapods-a-a-href-https-github-com-carthage-carthage-img-src-https-img-shields-io-badge-carthage-compatible-4bc51d-svg-style-flat-alt-carthage-compatible-a-a-href-https-swift-org-package-manager-img-src-https-img-shields-io-badge-swiftpm-compatible-brightgreen-svg-alt-swiftpm-compatible-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dt-siren-svg-alt-cocoapods-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dm-siren-svg-alt-cocoapods-a' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='a-href-https-dashboard-buddybuild-com-apps-58c4d0d85601d40100c5c51d-build-latest-branch-master-img-src-https-dashboard-buddybuild-com-api-statusimage-appid-58c4d0d85601d40100c5c51d-branch-master-build-latest-alt-buddybuild-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-v-siren-svg-alt-cocoapods-a-a-href-https-github-com-carthage-carthage-img-src-https-img-shields-io-badge-carthage-compatible-4bc51d-svg-style-flat-alt-carthage-compatible-a-a-href-https-swift-org-package-manager-img-src-https-img-shields-io-badge-swiftpm-compatible-brightgreen-svg-alt-swiftpm-compatible-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dt-siren-svg-alt-cocoapods-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dm-siren-svg-alt-cocoapods-a'><a href="https://dashboard.buddybuild.com/apps/58c4d0d85601d40100c5c51d/build/latest?branch=master"><img src="https://dashboard.buddybuild.com/api/statusImage?appID=58c4d0d85601d40100c5c51d&branch=master&build=latest" alt="BuddyBuild"></a> <a href="https://cocoapods.org/pods/Siren"><img src="https://img.shields.io/cocoapods/v/Siren.svg" alt="CocoaPods"></a> <a href="https://github.com/Carthage/Carthage"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat" alt="Carthage Compatible"></a> <a href="https://swift.org/package-manager/"><img src="https://img.shields.io/badge/SwiftPM-Compatible-brightgreen.svg" alt="SwiftPM Compatible"></a> <a href="https://cocoapods.org/pods/Siren"><img src="https://img.shields.io/cocoapods/dt/Siren.svg" alt="CocoaPods"></a> <a href="https://cocoapods.org/pods/Siren"><img src="https://img.shields.io/cocoapods/dm/Siren.svg" alt="CocoaPods"></a></h2>
<a href='#table-of-contents' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='table-of-contents'>Table of Contents</h2>
<p>Siren is checks a users currently installed version of your iOS app against the version that is currently available in the App Store. If a new version is available, an instance of UIAlertController can be presented to the user informing them of the newer version, and giving them the option to update the application. Alternatively, Siren can notify your app programmatically, enabling you to inform the user through alternative means, such as a custom interface.</p>
<ul>
<li><a href="https://github.com/ArtSabintsev/Siren#about">About</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#features">Features</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#screenshots">Screenshots</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#installation-instructions">Installation Instructions</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#example-code">Example Code</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#granular-version-update-management">Granular/Differentiated Version Management</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#optional-delegate-and-delegate-methods">Delegates (Optional)</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#localization">Localization</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#device-compatibility">Device Compatibility</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#testing-siren">Testing Siren</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#app-store-submissions">App Store Review &amp; Submissions</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#words-of-caution">Words of Caution</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#ports">Ports</a></li>
</ul>
<a href='#a-href-https-github-com-artsabintsev-siren-created-and-maintained-by-attribution-a' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='a-href-https-github-com-artsabintsev-siren-created-and-maintained-by-attribution-a'>- <a href="https://github.com/ArtSabintsev/Siren#created-and-maintained-by">Attribution</a></h2>
<a href='#about' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='about'>About</h2>
<p>Siren is built to work with the Semantic Versioning system.
Siren is a Swift port of Harpy, an Objective-C library that achieves the same functionality.
Siren is actively maintained by Arthur Sabintsev and Aaron Brager.</p>
<a href='#installation' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='installation'>Installation</h3>
<pre class="highlight ruby"><code><span class="n">pod</span> <span class="s1">'Siren'</span>
<p><strong>Siren</strong> checks a user&rsquo;s currently installed version of your iOS app against the version that is currently available in the App Store.</p>
<p>If a new version is available, an alert can be presented to the user informing them of the newer version, and giving them the option to update the application. Alternatively, Siren can notify your app programmatically, enabling you to inform the user through alternative means, such as a custom interface.</p>
<ul>
<li>Siren is built to work with the <a href="http://semver.org/"><strong>Semantic Versioning</strong></a> system.
<ul>
<li>Semantic Versioning is a three number versioning system (e.g., 1.0.0)</li>
<li>Siren also supports two-number versioning (e.g., 1.0) and four-number versioning (e.g., 1.0.0.0)</li>
</ul></li>
<li>Siren is actively maintained by <a href="http://github.com/ArtSabintsev"><strong>Arthur Sabintsev</strong></a> and <a href="http://twitter.com/getaaron"><strong>Aaron Brager</strong></a></li>
</ul>
<a href='#readme-translations' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='readme-translations'>README Translations</h3>
<ul>
<li><a href="README.zh_CN.md"><strong>简体中文</strong></a> (by <a href="http://www.jianshu.com/u/d8bbc4831623"><strong>Daniel Hu</strong></a>)</li>
</ul>
<a href='#features' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='features'>Features</h2>
<ul>
<li>[x] CocoaPods Support</li>
<li>[x] Carthage Support</li>
<li>[x] Swift Package Manager Support</li>
<li>[x] Localized for 30+ languages (see <a href="https://github.com/ArtSabintsev/Siren#localization">Localization</a>)</li>
<li>[x] Pre-Update Device Compatibility Check (see <a href="https://github.com/ArtSabintsev/Siren#device-compatibility">Device Compatibility</a></li>
<li>[x] Three types of alerts (see <a href="https://github.com/ArtSabintsev/Siren#screenshots">Screenshots</a>)</li>
<li>[x] Optional delegate methods (see <a href="https://github.com/ArtSabintsev/Siren#optional-delegate-and-delegate-methods">Delegates (Optional)</a></li>
<li>[x] Unit Tests</li>
<li>[x] Documentation can be found at <a href="http://sabintsev.com/Siren">http://sabintsev.com/Siren</a>.</li>
</ul>
<a href='#screenshots' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='screenshots'>Screenshots</h2>
<ul>
<li>The <strong>left picture</strong> forces the user to update the app.</li>
<li>The <strong>center picture</strong> gives the user the option to update the app.</li>
<li>The <strong>right picture</strong> gives the user the option to skip the current update.</li>
<li>These options are controlled by the <code>SirenAlertType</code> enum.</li>
</ul>
<p><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picForcedUpdate.png?raw=true" height="480"><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picOptionalUpdate.png?raw=true" height="480"><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picSkippedUpdate.png?raw=true" height="480"></p>
<a href='#installation-instructions' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='installation-instructions'>Installation Instructions</h2>
<a href='#cocoapods' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='cocoapods'>CocoaPods</h3>
<p>For Swift 3 support:
<code>ruby
pod &#39;Siren&#39;
</code></p>
<p>For Swift 2.3 support:
<code>ruby
pod &#39;Siren&#39;, :git =&gt; &#39;https://github.com/ArtSabintsev/Siren.git&#39;, :branch =&gt; &#39;swift2.3&#39;
</code></p>
<p>For Swift 2.2 support:
<code>ruby
pod &#39;Siren&#39;, &#39;0.9.5&#39;
</code></p>
<a href='#carthage' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='carthage'>Carthage</h3>
<p>For Swift 3 support:</p>
<pre class="highlight swift"><code><span class="n">github</span> <span class="s">"ArtSabintsev/Siren"</span>
</code></pre>
<a href='#authors' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='authors'>Authors</h3>
<p>Arthur Ariel Sabintsev and Aaron Brager</p>
<p>For Swift 2.3 support:</p>
<pre class="highlight swift"><code><span class="n">github</span> <span class="s">"ArtSabintsev/Siren"</span> <span class="s">"swift2.3"</span>
</code></pre>
<a href='#swift-package-manager' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='swift-package-manager'>Swift Package Manager</h3>
<pre class="highlight swift"><code><span class="o">.</span><span class="kt">Package</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="s">"https://github.com/ArtSabintsev/Siren.git"</span><span class="p">,</span> <span class="nv">majorVersion</span><span class="p">:</span> <span class="mi">2</span><span class="p">)</span>
</code></pre>
<a href='#example-code' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='example-code'>Example Code</h2>
<p>Below is some commented sample code. Adapt this to meet your app&rsquo;s needs.</p>
<p>For a full list of optional settings/preferences, please refer to <a href="https://github.com/ArtSabintsev/Siren/blob/master/SirenExample/SirenExample/AppDelegate.swift">https://github.com/ArtSabintsev/Siren/blob/master/SirenExample/SirenExample/AppDelegate.swift</a> in the Sample Project.</p>
<pre class="highlight plaintext"><code>func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -&gt; Bool {
/* Siren code should go below window?.makeKeyAndVisible() */
// Siren is a singleton
let siren = Siren.shared
// Optional: Defaults to .Option
siren.alertType = &lt;#SirenAlertType_Enum_Value#&gt;
// Optional: Set this variable if you would only like to show an alert if your app has been available on the store for a few days.
// This default value is set to 1 to avoid this issue: https://github.com/ArtSabintsev/Siren#words-of-caution
// To show the update immediately after Apple has updated their JSON, set this value to 0. Not recommended due to aforementioned reason in https://github.com/ArtSabintsev/Siren#words-of-caution.
siren.showAlertAfterCurrentVersionHasBeenReleasedForDays = 3
// Replace .Immediately with .Daily or .Weekly to specify a maximum daily or weekly frequency for version checks.
siren.checkVersion(checkType: .immediately)
return true
}
func applicationDidBecomeActive(application: UIApplication) {
/*
Perform daily (.Daily) or weekly (.Weekly) checks for new version of your app.
Useful if user returns to your app from the background after extended period of time.
Place in applicationDidBecomeActive(_:). */
Siren.shared.checkVersion(checkType: .daily)
}
func applicationWillEnterForeground(application: UIApplication) {
/*
Useful if user returns to your app from the background after being sent to the
App Store, but doesn't update their app before coming back to your app.
ONLY USE WITH SirenAlertType.Force
*/
Siren.shared.checkVersion(checkType: .immediately)
}
</code></pre>
<p>And you&rsquo;re all set!</p>
<a href='#prompting-for-updates-without-alerts' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='prompting-for-updates-without-alerts'>Prompting for Updates without Alerts</h3>
<p>Some developers may want to display a less obtrusive custom interface, like a banner or small icon. To accomplish this, you can disable alert presentation by doing the following:</p>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">application</span><span class="p">(</span><span class="nv">application</span><span class="p">:</span> <span class="kt">UIApplication</span><span class="p">,</span> <span class="n">didFinishLaunchingWithOptions</span> <span class="nv">launchOptions</span><span class="p">:</span> <span class="p">[</span><span class="kt">NSObject</span><span class="p">:</span> <span class="kt">AnyObject</span><span class="p">]?)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span> <span class="p">{</span>
<span class="o">...</span>
<span class="n">siren</span><span class="o">.</span><span class="n">delegate</span> <span class="o">=</span> <span class="k">self</span>
<span class="n">siren</span><span class="o">.</span><span class="n">alertType</span> <span class="o">=</span> <span class="o">.</span><span class="kt">None</span>
<span class="o">...</span>
<span class="p">}</span>
<span class="kd">extension</span> <span class="kt">AppDelegate</span><span class="p">:</span> <span class="kt">SirenDelegate</span> <span class="p">{</span>
<span class="c1">// Returns a localized message to this delegate method upon performing a successful version check</span>
<span class="kd">func</span> <span class="nf">sirenDidDetectNewVersionWithoutAlert</span><span class="p">(</span><span class="nv">message</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="p">{</span>
<span class="nf">print</span><span class="p">(</span><span class="s">"</span><span class="se">\(</span><span class="n">message</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<p>Siren will call the <code>sirenDidDetectNewVersionWithoutAlert(message: String)</code> delegate method, passing a localized, suggested update string suitable for display. Implement this method to display your own messaging, optionally using <code>message</code>.</p>
<a href='#granular-version-update-management' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='granular-version-update-management'>Granular Version Update Management</h2>
<p>If you would like to set a different type of alert for revision, patch, minor, and/or major updates, simply add one or all of the following <em>optional</em> lines to your setup <em>before</em> calling the <code>checkVersion()</code> method:</p>
<pre class="highlight swift"><code> <span class="cm">/* Siren defaults to SirenAlertType.Option for all updates */</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">revisionUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">patchUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">minorUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">majorUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
</code></pre>
<a href='#optional-delegate-and-delegate-methods' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='optional-delegate-and-delegate-methods'>Optional Delegate and Delegate Methods</h2>
<p>Six delegate methods allow you to handle or track the user&rsquo;s behavior. Each method has a default, empty implementation, effectively making each of these methods optional.</p>
<pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">SirenDelegate</span><span class="p">:</span> <span class="kd">class</span> <span class="p">{</span>
<span class="kd">func</span> <span class="nf">sirenDidShowUpdateDialog</span><span class="p">(</span><span class="nv">alertType</span><span class="p">:</span> <span class="kt">SirenAlertType</span><span class="p">)</span> <span class="c1">// User presented with update dialog</span>
<span class="kd">func</span> <span class="nf">sirenUserDidLaunchAppStore</span><span class="p">()</span> <span class="c1">// User did click on button that launched App Store.app</span>
<span class="kd">func</span> <span class="nf">sirenUserDidSkipVersion</span><span class="p">()</span> <span class="c1">// User did click on button that skips version update</span>
<span class="kd">func</span> <span class="nf">sirenUserDidCancel</span><span class="p">()</span> <span class="c1">// User did click on button that cancels update dialog</span>
<span class="kd">func</span> <span class="nf">sirenDidFailVersionCheck</span><span class="p">(</span><span class="nv">error</span><span class="p">:</span> <span class="kt">NSError</span><span class="p">)</span> <span class="c1">// Siren failed to perform version check (may return system-level error)</span>
<span class="kd">func</span> <span class="nf">sirenDidDetectNewVersionWithoutAlert</span><span class="p">(</span><span class="nv">message</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="c1">// Siren performed version check and did not display alert</span>
<span class="p">}</span>
</code></pre>
<a href='#localization' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='localization'>Localization</h2>
<p>Siren is localized for
- Arabic
- Armenian
- Basque
- Chinese (Simplified and Traditional)
- Danish
- Dutch
- English
- Estonian
- Finnish
- French
- German
- Greek
- Hebrew
- Hungarian
- Indonesian
- Italian
- Japanese
- Korean
- Latvian
- Lithuanian
- Malay
- Norwegian (Bokmål)
- Polish
- Portuguese (Brazil and Portugal)
- Russian
- Serbian (Cyrillic and Latin)
- Slovenian
- Swedish
- Spanish
- Thai
- Turkish
- Vietnamese</p>
<p>You may want the update dialog to <em>always</em> appear in a certain language, ignoring iOS&rsquo;s language setting (e.g. apps released in a specific country).</p>
<p>You can enable it like so:</p>
<pre class="highlight swift"><code><span class="kt">Siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">forceLanguageLocalization</span> <span class="o">=</span> <span class="kt">SirenLanguageType</span><span class="o">.&lt;</span><span class="err">#</span><span class="kt">SirenLanguageType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
</code></pre>
<a href='#device-compatibility' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='device-compatibility'>Device Compatibility</h2>
<p>If an app update is available, Siren checks to make sure that the version of iOS on the user&rsquo;s device is compatible with the one that is required by the app update. For example, if a user has iOS 9 installed on their device, but the app update requires iOS 10, an alert will not be shown. This takes care of the <em>false positive</em> case regarding app updating.</p>
<a href='#testing-siren' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='testing-siren'>Testing Siren</h2>
<p>Temporarily change the version string in Xcode (within the <code>.xcodeproj</code>) to an older version than the one that&rsquo;s currently available in the App Store. Afterwards, build and run your app, and you should see the alert.</p>
<p>If you currently don&rsquo;t have an app in the store, change your bundleID to one that is already in the store. In the sample app packaged with this library, we use the <a href="https://itunes.apple.com/us/app/itunes-connect/id376771144?mt=8">iTunes Connect Mobile</a> app&rsquo;s bundleID: <code>com.apple.itunesconnect.mobile</code>.</p>
<p>For your convenience, you may turn on debugging statements by setting <code>self.debugEnabled = true</code> before calling the <code>checkVersion()</code> method.</p>
<a href='#app-store-submissions' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='app-store-submissions'>App Store Submissions</h2>
<p>The App Store reviewer will <strong>not</strong> see the alert. The version in the App Store will always be older than the version being reviewed.</p>
<a href='#words-of-caution' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='words-of-caution'>Words of Caution</h2>
<p>Occasionally, the iTunes JSON will update faster than the App Store CDN, meaning the JSON may state that the new version of the app has been release, while no new binary is made available for download via the App Store. It is for this reason, I caution developers to not use the <code>Force</code> option unless you are controlling the <code>Force</code> option with a remote configuration file (e.g., enabling Siren remotely only after you have guaranteed that the app has propagated to the App Store).</p>
<p>Also, in even rarer situations, the iTunes JSON may fluctuate between multiple versions of your app shortly after pushing out a new version. This is extremely rare, and has only been reported once in the five years that Siren and Harpy have been around.</p>
<a href='#ports' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='ports'>Ports</h2>
<ul>
<li><strong>Objective-C (iOS)</strong>
<ul>
<li><a href="http://github.com/ArtSabintsev/Harpy"><strong>Harpy</strong></a></li>
<li>Siren was ported <em>from</em> Harpy, as Siren and Harpy are maintained by the same developer.</li>
</ul></li>
<li><strong>Java (Android)</strong>
<ul>
<li><a href="https://github.com/eggheadgames/Siren"><strong>Egghead Games&rsquo; Siren library</strong></a></li>
<li>The Siren Swift library inspired the Java library.</li>
</ul></li>
<li><strong>React Native (iOS)</strong>
<ul>
<li><a href="https://github.com/GantMan/react-native-siren"><strong>Gant Laborde&rsquo;s Siren library</strong></a></li>
<li>The Siren Swift library inspired the React Native library.</li>
</ul></li>
</ul>
<a href='#created-and-maintained-by' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='created-and-maintained-by'>Created and maintained by</h2>
<p><a href="http://www.sabintsev.com/">Arthur Ariel Sabintsev</a> &amp; <a href="http://twitter.com/getaaron">Aaron Brager</a></p>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="https://github.com/ArtSabintsev/Siren" target="_blank" rel="external">Arthur Ariel Sabintsev and Aaron Brager</a>. All rights reserved. (Last updated: 2017-03-04)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
File diff suppressed because one or more lines are too long
@@ -1,6 +1,257 @@
{
"warnings": [
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 514,
"symbol": "Siren.LanguageType.Arabic",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 515,
"symbol": "Siren.LanguageType.Armenian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 516,
"symbol": "Siren.LanguageType.Basque",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 517,
"symbol": "Siren.LanguageType.ChineseSimplified",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 518,
"symbol": "Siren.LanguageType.ChineseTraditional",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 519,
"symbol": "Siren.LanguageType.Croatian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 520,
"symbol": "Siren.LanguageType.Danish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 521,
"symbol": "Siren.LanguageType.Dutch",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 522,
"symbol": "Siren.LanguageType.English",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 523,
"symbol": "Siren.LanguageType.Estonian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 524,
"symbol": "Siren.LanguageType.Finnish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 525,
"symbol": "Siren.LanguageType.French",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 526,
"symbol": "Siren.LanguageType.German",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 527,
"symbol": "Siren.LanguageType.Greek",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 528,
"symbol": "Siren.LanguageType.Hebrew",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 529,
"symbol": "Siren.LanguageType.Hungarian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 530,
"symbol": "Siren.LanguageType.Indonesian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 531,
"symbol": "Siren.LanguageType.Italian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 532,
"symbol": "Siren.LanguageType.Japanese",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 533,
"symbol": "Siren.LanguageType.Korean",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 534,
"symbol": "Siren.LanguageType.Latvian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 535,
"symbol": "Siren.LanguageType.Lithuanian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 536,
"symbol": "Siren.LanguageType.Malay",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 537,
"symbol": "Siren.LanguageType.Norwegian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 538,
"symbol": "Siren.LanguageType.Polish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 539,
"symbol": "Siren.LanguageType.PortugueseBrazil",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 540,
"symbol": "Siren.LanguageType.PortuguesePortugal",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 541,
"symbol": "Siren.LanguageType.Russian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 542,
"symbol": "Siren.LanguageType.SerbianCyrillic",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 543,
"symbol": "Siren.LanguageType.SerbianLatin",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 544,
"symbol": "Siren.LanguageType.Slovenian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 545,
"symbol": "Siren.LanguageType.Spanish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 546,
"symbol": "Siren.LanguageType.Swedish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 547,
"symbol": "Siren.LanguageType.Thai",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 548,
"symbol": "Siren.LanguageType.Turkish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 549,
"symbol": "Siren.LanguageType.Vietnamese",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
}
],
"source_directory": "/Users/sabintseva/Documents/oss/siren/SirenExample"
"source_directory": "/Users/Arthur/Documents/oss/siren"
}
Binary file not shown.
+275 -16
View File
@@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title> Reference</title>
<title>Siren Reference</title>
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
<meta charset='utf-8'>
@@ -10,17 +10,18 @@
</head>
<body>
<a title=" Reference"></a>
<a title="Siren Reference"></a>
<header>
<div class="content-wrapper">
<p><a href="index.html"> Docs</a> (100% documented)</p>
<p><a href="index.html">Siren Docs</a> (55% documented)</p>
<p class="header-right"><a href="https://github.com/artsabintsev/siren"><img src="img/gh.png"/>View on GitHub</a></p>
</div>
</header>
<div class="content-wrapper">
<p id="breadcrumbs">
<a href="index.html"> Reference</a>
<a href="index.html">Siren Reference</a>
<img id="carat" src="img/carat.png" />
Reference
Siren Reference
</p>
</div>
<div class="content-wrapper">
@@ -32,19 +33,14 @@
<li class="nav-group-task">
<a href="Classes/Siren.html">Siren</a>
</li>
</ul>
</li>
<li class="nav-group-name">
<a href="Enums.html">Enums</a>
<ul class="nav-group-tasks">
<li class="nav-group-task">
<a href="Enums/SirenAlertType.html">SirenAlertType</a>
<a href="Classes/Siren/AlertType.html"> AlertType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenLanguageType.html">SirenLanguageType</a>
<a href="Classes/Siren/VersionCheckType.html"> VersionCheckType</a>
</li>
<li class="nav-group-task">
<a href="Enums/SirenVersionCheckType.html">SirenVersionCheckType</a>
<a href="Classes/Siren/LanguageType.html"> LanguageType</a>
</li>
</ul>
</li>
@@ -62,13 +58,276 @@
<section>
<section class="section">
<a href='#authors' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='authors'>Authors</h3>
<a href='#siren' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h1 id='siren'>Siren</h1>
<a href='#notify-users-when-a-new-version-of-your-app-is-available-and-prompt-them-to-upgrade' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='notify-users-when-a-new-version-of-your-app-is-available-and-prompt-them-to-upgrade'>Notify users when a new version of your app is available and prompt them to upgrade.</h3>
<a href='#a-href-https-dashboard-buddybuild-com-apps-58c4d0d85601d40100c5c51d-build-latest-branch-master-img-src-https-dashboard-buddybuild-com-api-statusimage-appid-58c4d0d85601d40100c5c51d-branch-master-build-latest-alt-buddybuild-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-v-siren-svg-alt-cocoapods-a-a-href-https-github-com-carthage-carthage-img-src-https-img-shields-io-badge-carthage-compatible-4bc51d-svg-style-flat-alt-carthage-compatible-a-a-href-https-swift-org-package-manager-img-src-https-img-shields-io-badge-swiftpm-compatible-brightgreen-svg-alt-swiftpm-compatible-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dt-siren-svg-alt-cocoapods-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dm-siren-svg-alt-cocoapods-a' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='a-href-https-dashboard-buddybuild-com-apps-58c4d0d85601d40100c5c51d-build-latest-branch-master-img-src-https-dashboard-buddybuild-com-api-statusimage-appid-58c4d0d85601d40100c5c51d-branch-master-build-latest-alt-buddybuild-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-v-siren-svg-alt-cocoapods-a-a-href-https-github-com-carthage-carthage-img-src-https-img-shields-io-badge-carthage-compatible-4bc51d-svg-style-flat-alt-carthage-compatible-a-a-href-https-swift-org-package-manager-img-src-https-img-shields-io-badge-swiftpm-compatible-brightgreen-svg-alt-swiftpm-compatible-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dt-siren-svg-alt-cocoapods-a-a-href-https-cocoapods-org-pods-siren-img-src-https-img-shields-io-cocoapods-dm-siren-svg-alt-cocoapods-a'><a href="https://dashboard.buddybuild.com/apps/58c4d0d85601d40100c5c51d/build/latest?branch=master"><img src="https://dashboard.buddybuild.com/api/statusImage?appID=58c4d0d85601d40100c5c51d&branch=master&build=latest" alt="BuddyBuild"></a> <a href="https://cocoapods.org/pods/Siren"><img src="https://img.shields.io/cocoapods/v/Siren.svg" alt="CocoaPods"></a> <a href="https://github.com/Carthage/Carthage"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat" alt="Carthage Compatible"></a> <a href="https://swift.org/package-manager/"><img src="https://img.shields.io/badge/SwiftPM-Compatible-brightgreen.svg" alt="SwiftPM Compatible"></a> <a href="https://cocoapods.org/pods/Siren"><img src="https://img.shields.io/cocoapods/dt/Siren.svg" alt="CocoaPods"></a> <a href="https://cocoapods.org/pods/Siren"><img src="https://img.shields.io/cocoapods/dm/Siren.svg" alt="CocoaPods"></a></h2>
<a href='#table-of-contents' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='table-of-contents'>Table of Contents</h2>
<ul>
<li><a href="https://github.com/ArtSabintsev/Siren#about">About</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#features">Features</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#screenshots">Screenshots</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#installation-instructions">Installation Instructions</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#example-code">Example Code</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#granular-version-update-management">Granular/Differentiated Version Management</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#optional-delegate-and-delegate-methods">Delegates (Optional)</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#localization">Localization</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#device-compatibility">Device Compatibility</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#testing-siren">Testing Siren</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#app-store-submissions">App Store Review &amp; Submissions</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#words-of-caution">Words of Caution</a></li>
<li><a href="https://github.com/ArtSabintsev/Siren#ports">Ports</a></li>
</ul>
<a href='#a-href-https-github-com-artsabintsev-siren-created-and-maintained-by-attribution-a' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='a-href-https-github-com-artsabintsev-siren-created-and-maintained-by-attribution-a'>- <a href="https://github.com/ArtSabintsev/Siren#created-and-maintained-by">Attribution</a></h2>
<a href='#about' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='about'>About</h2>
<p><strong>Siren</strong> checks a user&rsquo;s currently installed version of your iOS app against the version that is currently available in the App Store.</p>
<p>If a new version is available, an alert can be presented to the user informing them of the newer version, and giving them the option to update the application. Alternatively, Siren can notify your app programmatically, enabling you to inform the user through alternative means, such as a custom interface.</p>
<ul>
<li>Siren is built to work with the <a href="http://semver.org/"><strong>Semantic Versioning</strong></a> system.
<ul>
<li>Semantic Versioning is a three number versioning system (e.g., 1.0.0)</li>
<li>Siren also supports two-number versioning (e.g., 1.0) and four-number versioning (e.g., 1.0.0.0)</li>
</ul></li>
<li>Siren is actively maintained by <a href="http://github.com/ArtSabintsev"><strong>Arthur Sabintsev</strong></a> and <a href="http://twitter.com/getaaron"><strong>Aaron Brager</strong></a></li>
</ul>
<a href='#readme-translations' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='readme-translations'>README Translations</h3>
<ul>
<li><a href="README.zh_CN.md"><strong>简体中文</strong></a> (by <a href="http://www.jianshu.com/u/d8bbc4831623"><strong>Daniel Hu</strong></a>)</li>
</ul>
<a href='#features' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='features'>Features</h2>
<ul>
<li>[x] CocoaPods Support</li>
<li>[x] Carthage Support</li>
<li>[x] Swift Package Manager Support</li>
<li>[x] Localized for 30+ languages (see <a href="https://github.com/ArtSabintsev/Siren#localization">Localization</a>)</li>
<li>[x] Pre-Update Device Compatibility Check (see <a href="https://github.com/ArtSabintsev/Siren#device-compatibility">Device Compatibility</a></li>
<li>[x] Three types of alerts (see <a href="https://github.com/ArtSabintsev/Siren#screenshots">Screenshots</a>)</li>
<li>[x] Optional delegate methods (see <a href="https://github.com/ArtSabintsev/Siren#optional-delegate-and-delegate-methods">Delegates (Optional)</a></li>
<li>[x] Unit Tests</li>
<li>[x] Documentation can be found at <a href="http://sabintsev.com/Siren">http://sabintsev.com/Siren</a>.</li>
</ul>
<a href='#screenshots' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='screenshots'>Screenshots</h2>
<ul>
<li>The <strong>left picture</strong> forces the user to update the app.</li>
<li>The <strong>center picture</strong> gives the user the option to update the app.</li>
<li>The <strong>right picture</strong> gives the user the option to skip the current update.</li>
<li>These options are controlled by the <code>SirenAlertType</code> enum.</li>
</ul>
<p><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picForcedUpdate.png?raw=true" height="480"><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picOptionalUpdate.png?raw=true" height="480"><img src="https://github.com/ArtSabintsev/Siren/blob/master/Assets/picSkippedUpdate.png?raw=true" height="480"></p>
<a href='#installation-instructions' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='installation-instructions'>Installation Instructions</h2>
<a href='#cocoapods' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='cocoapods'>CocoaPods</h3>
<p>For Swift 3 support:
<code>ruby
pod &#39;Siren&#39;
</code></p>
<p>For Swift 2.3 support:
<code>ruby
pod &#39;Siren&#39;, :git =&gt; &#39;https://github.com/ArtSabintsev/Siren.git&#39;, :branch =&gt; &#39;swift2.3&#39;
</code></p>
<p>For Swift 2.2 support:
<code>ruby
pod &#39;Siren&#39;, &#39;0.9.5&#39;
</code></p>
<a href='#carthage' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='carthage'>Carthage</h3>
<p>For Swift 3 support:</p>
<pre class="highlight swift"><code><span class="n">github</span> <span class="s">"ArtSabintsev/Siren"</span>
</code></pre>
<p>For Swift 2.3 support:</p>
<pre class="highlight swift"><code><span class="n">github</span> <span class="s">"ArtSabintsev/Siren"</span> <span class="s">"swift2.3"</span>
</code></pre>
<a href='#swift-package-manager' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='swift-package-manager'>Swift Package Manager</h3>
<pre class="highlight swift"><code><span class="o">.</span><span class="kt">Package</span><span class="p">(</span><span class="nv">url</span><span class="p">:</span> <span class="s">"https://github.com/ArtSabintsev/Siren.git"</span><span class="p">,</span> <span class="nv">majorVersion</span><span class="p">:</span> <span class="mi">2</span><span class="p">)</span>
</code></pre>
<a href='#example-code' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='example-code'>Example Code</h2>
<p>Below is some commented sample code. Adapt this to meet your app&rsquo;s needs.</p>
<p>For a full list of optional settings/preferences, please refer to <a href="https://github.com/ArtSabintsev/Siren/blob/master/SirenExample/SirenExample/AppDelegate.swift">https://github.com/ArtSabintsev/Siren/blob/master/SirenExample/SirenExample/AppDelegate.swift</a> in the Sample Project.</p>
<pre class="highlight plaintext"><code>func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -&gt; Bool {
/* Siren code should go below window?.makeKeyAndVisible() */
// Siren is a singleton
let siren = Siren.shared
// Optional: Defaults to .Option
siren.alertType = &lt;#SirenAlertType_Enum_Value#&gt;
// Optional: Set this variable if you would only like to show an alert if your app has been available on the store for a few days.
// This default value is set to 1 to avoid this issue: https://github.com/ArtSabintsev/Siren#words-of-caution
// To show the update immediately after Apple has updated their JSON, set this value to 0. Not recommended due to aforementioned reason in https://github.com/ArtSabintsev/Siren#words-of-caution.
siren.showAlertAfterCurrentVersionHasBeenReleasedForDays = 3
// Replace .Immediately with .Daily or .Weekly to specify a maximum daily or weekly frequency for version checks.
siren.checkVersion(checkType: .immediately)
return true
}
func applicationDidBecomeActive(application: UIApplication) {
/*
Perform daily (.Daily) or weekly (.Weekly) checks for new version of your app.
Useful if user returns to your app from the background after extended period of time.
Place in applicationDidBecomeActive(_:). */
Siren.shared.checkVersion(checkType: .daily)
}
func applicationWillEnterForeground(application: UIApplication) {
/*
Useful if user returns to your app from the background after being sent to the
App Store, but doesn't update their app before coming back to your app.
ONLY USE WITH SirenAlertType.Force
*/
Siren.shared.checkVersion(checkType: .immediately)
}
</code></pre>
<p>And you&rsquo;re all set!</p>
<a href='#prompting-for-updates-without-alerts' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h3 id='prompting-for-updates-without-alerts'>Prompting for Updates without Alerts</h3>
<p>Some developers may want to display a less obtrusive custom interface, like a banner or small icon. To accomplish this, you can disable alert presentation by doing the following:</p>
<pre class="highlight swift"><code><span class="kd">func</span> <span class="nf">application</span><span class="p">(</span><span class="nv">application</span><span class="p">:</span> <span class="kt">UIApplication</span><span class="p">,</span> <span class="n">didFinishLaunchingWithOptions</span> <span class="nv">launchOptions</span><span class="p">:</span> <span class="p">[</span><span class="kt">NSObject</span><span class="p">:</span> <span class="kt">AnyObject</span><span class="p">]?)</span> <span class="o">-&gt;</span> <span class="kt">Bool</span> <span class="p">{</span>
<span class="o">...</span>
<span class="n">siren</span><span class="o">.</span><span class="n">delegate</span> <span class="o">=</span> <span class="k">self</span>
<span class="n">siren</span><span class="o">.</span><span class="n">alertType</span> <span class="o">=</span> <span class="o">.</span><span class="kt">None</span>
<span class="o">...</span>
<span class="p">}</span>
<span class="kd">extension</span> <span class="kt">AppDelegate</span><span class="p">:</span> <span class="kt">SirenDelegate</span> <span class="p">{</span>
<span class="c1">// Returns a localized message to this delegate method upon performing a successful version check</span>
<span class="kd">func</span> <span class="nf">sirenDidDetectNewVersionWithoutAlert</span><span class="p">(</span><span class="nv">message</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="p">{</span>
<span class="nf">print</span><span class="p">(</span><span class="s">"</span><span class="se">\(</span><span class="n">message</span><span class="se">)</span><span class="s">"</span><span class="p">)</span>
<span class="p">}</span>
<span class="p">}</span>
</code></pre>
<p>Siren will call the <code>sirenDidDetectNewVersionWithoutAlert(message: String)</code> delegate method, passing a localized, suggested update string suitable for display. Implement this method to display your own messaging, optionally using <code>message</code>.</p>
<a href='#granular-version-update-management' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='granular-version-update-management'>Granular Version Update Management</h2>
<p>If you would like to set a different type of alert for revision, patch, minor, and/or major updates, simply add one or all of the following <em>optional</em> lines to your setup <em>before</em> calling the <code>checkVersion()</code> method:</p>
<pre class="highlight swift"><code> <span class="cm">/* Siren defaults to SirenAlertType.Option for all updates */</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">revisionUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">patchUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">minorUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
<span class="n">siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">majorUpdateAlertType</span> <span class="o">=</span> <span class="o">&lt;</span><span class="err">#</span><span class="kt">SirenAlertType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
</code></pre>
<a href='#optional-delegate-and-delegate-methods' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='optional-delegate-and-delegate-methods'>Optional Delegate and Delegate Methods</h2>
<p>Six delegate methods allow you to handle or track the user&rsquo;s behavior. Each method has a default, empty implementation, effectively making each of these methods optional.</p>
<pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">protocol</span> <span class="kt">SirenDelegate</span><span class="p">:</span> <span class="kd">class</span> <span class="p">{</span>
<span class="kd">func</span> <span class="nf">sirenDidShowUpdateDialog</span><span class="p">(</span><span class="nv">alertType</span><span class="p">:</span> <span class="kt">SirenAlertType</span><span class="p">)</span> <span class="c1">// User presented with update dialog</span>
<span class="kd">func</span> <span class="nf">sirenUserDidLaunchAppStore</span><span class="p">()</span> <span class="c1">// User did click on button that launched App Store.app</span>
<span class="kd">func</span> <span class="nf">sirenUserDidSkipVersion</span><span class="p">()</span> <span class="c1">// User did click on button that skips version update</span>
<span class="kd">func</span> <span class="nf">sirenUserDidCancel</span><span class="p">()</span> <span class="c1">// User did click on button that cancels update dialog</span>
<span class="kd">func</span> <span class="nf">sirenDidFailVersionCheck</span><span class="p">(</span><span class="nv">error</span><span class="p">:</span> <span class="kt">NSError</span><span class="p">)</span> <span class="c1">// Siren failed to perform version check (may return system-level error)</span>
<span class="kd">func</span> <span class="nf">sirenDidDetectNewVersionWithoutAlert</span><span class="p">(</span><span class="nv">message</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="c1">// Siren performed version check and did not display alert</span>
<span class="p">}</span>
</code></pre>
<a href='#localization' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='localization'>Localization</h2>
<p>Siren is localized for
- Arabic
- Armenian
- Basque
- Chinese (Simplified and Traditional)
- Danish
- Dutch
- English
- Estonian
- Finnish
- French
- German
- Greek
- Hebrew
- Hungarian
- Indonesian
- Italian
- Japanese
- Korean
- Latvian
- Lithuanian
- Malay
- Norwegian (Bokmål)
- Polish
- Portuguese (Brazil and Portugal)
- Russian
- Serbian (Cyrillic and Latin)
- Slovenian
- Swedish
- Spanish
- Thai
- Turkish
- Vietnamese</p>
<p>You may want the update dialog to <em>always</em> appear in a certain language, ignoring iOS&rsquo;s language setting (e.g. apps released in a specific country).</p>
<p>You can enable it like so:</p>
<pre class="highlight swift"><code><span class="kt">Siren</span><span class="o">.</span><span class="n">shared</span><span class="o">.</span><span class="n">forceLanguageLocalization</span> <span class="o">=</span> <span class="kt">SirenLanguageType</span><span class="o">.&lt;</span><span class="err">#</span><span class="kt">SirenLanguageType_Enum_Value</span><span class="err">#</span><span class="o">&gt;</span>
</code></pre>
<a href='#device-compatibility' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='device-compatibility'>Device Compatibility</h2>
<p>If an app update is available, Siren checks to make sure that the version of iOS on the user&rsquo;s device is compatible with the one that is required by the app update. For example, if a user has iOS 9 installed on their device, but the app update requires iOS 10, an alert will not be shown. This takes care of the <em>false positive</em> case regarding app updating.</p>
<a href='#testing-siren' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='testing-siren'>Testing Siren</h2>
<p>Temporarily change the version string in Xcode (within the <code>.xcodeproj</code>) to an older version than the one that&rsquo;s currently available in the App Store. Afterwards, build and run your app, and you should see the alert.</p>
<p>If you currently don&rsquo;t have an app in the store, change your bundleID to one that is already in the store. In the sample app packaged with this library, we use the <a href="https://itunes.apple.com/us/app/itunes-connect/id376771144?mt=8">iTunes Connect Mobile</a> app&rsquo;s bundleID: <code>com.apple.itunesconnect.mobile</code>.</p>
<p>For your convenience, you may turn on debugging statements by setting <code>self.debugEnabled = true</code> before calling the <code>checkVersion()</code> method.</p>
<a href='#app-store-submissions' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='app-store-submissions'>App Store Submissions</h2>
<p>The App Store reviewer will <strong>not</strong> see the alert. The version in the App Store will always be older than the version being reviewed.</p>
<a href='#words-of-caution' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='words-of-caution'>Words of Caution</h2>
<p>Occasionally, the iTunes JSON will update faster than the App Store CDN, meaning the JSON may state that the new version of the app has been release, while no new binary is made available for download via the App Store. It is for this reason, I caution developers to not use the <code>Force</code> option unless you are controlling the <code>Force</code> option with a remote configuration file (e.g., enabling Siren remotely only after you have guaranteed that the app has propagated to the App Store).</p>
<p>Also, in even rarer situations, the iTunes JSON may fluctuate between multiple versions of your app shortly after pushing out a new version. This is extremely rare, and has only been reported once in the five years that Siren and Harpy have been around.</p>
<a href='#ports' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='ports'>Ports</h2>
<ul>
<li><strong>Objective-C (iOS)</strong>
<ul>
<li><a href="http://github.com/ArtSabintsev/Harpy"><strong>Harpy</strong></a></li>
<li>Siren was ported <em>from</em> Harpy, as Siren and Harpy are maintained by the same developer.</li>
</ul></li>
<li><strong>Java (Android)</strong>
<ul>
<li><a href="https://github.com/eggheadgames/Siren"><strong>Egghead Games&rsquo; Siren library</strong></a></li>
<li>The Siren Swift library inspired the Java library.</li>
</ul></li>
<li><strong>React Native (iOS)</strong>
<ul>
<li><a href="https://github.com/GantMan/react-native-siren"><strong>Gant Laborde&rsquo;s Siren library</strong></a></li>
<li>The Siren Swift library inspired the React Native library.</li>
</ul></li>
</ul>
<a href='#created-and-maintained-by' class='anchor' aria-hidden=true><span class="header-anchor"></span></a><h2 id='created-and-maintained-by'>Created and maintained by</h2>
<p><a href="http://www.sabintsev.com/">Arthur Ariel Sabintsev</a> &amp; <a href="http://twitter.com/getaaron">Aaron Brager</a></p>
</section>
</section>
<section id="footer">
<p>&copy; 2017 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2017-03-18)</p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.4</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
<p>© 2015-2017 <a class="link" href="http://www.sabintsev.com" target="_blank" rel="external">Arthur Ariel Sabintsev</a></p>
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.7.5</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
</section>
</article>
</div>
+1 -1
View File
File diff suppressed because one or more lines are too long
+253 -2
View File
@@ -1,6 +1,257 @@
{
"warnings": [
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 514,
"symbol": "Siren.LanguageType.Arabic",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 515,
"symbol": "Siren.LanguageType.Armenian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 516,
"symbol": "Siren.LanguageType.Basque",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 517,
"symbol": "Siren.LanguageType.ChineseSimplified",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 518,
"symbol": "Siren.LanguageType.ChineseTraditional",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 519,
"symbol": "Siren.LanguageType.Croatian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 520,
"symbol": "Siren.LanguageType.Danish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 521,
"symbol": "Siren.LanguageType.Dutch",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 522,
"symbol": "Siren.LanguageType.English",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 523,
"symbol": "Siren.LanguageType.Estonian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 524,
"symbol": "Siren.LanguageType.Finnish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 525,
"symbol": "Siren.LanguageType.French",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 526,
"symbol": "Siren.LanguageType.German",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 527,
"symbol": "Siren.LanguageType.Greek",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 528,
"symbol": "Siren.LanguageType.Hebrew",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 529,
"symbol": "Siren.LanguageType.Hungarian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 530,
"symbol": "Siren.LanguageType.Indonesian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 531,
"symbol": "Siren.LanguageType.Italian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 532,
"symbol": "Siren.LanguageType.Japanese",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 533,
"symbol": "Siren.LanguageType.Korean",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 534,
"symbol": "Siren.LanguageType.Latvian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 535,
"symbol": "Siren.LanguageType.Lithuanian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 536,
"symbol": "Siren.LanguageType.Malay",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 537,
"symbol": "Siren.LanguageType.Norwegian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 538,
"symbol": "Siren.LanguageType.Polish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 539,
"symbol": "Siren.LanguageType.PortugueseBrazil",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 540,
"symbol": "Siren.LanguageType.PortuguesePortugal",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 541,
"symbol": "Siren.LanguageType.Russian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 542,
"symbol": "Siren.LanguageType.SerbianCyrillic",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 543,
"symbol": "Siren.LanguageType.SerbianLatin",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 544,
"symbol": "Siren.LanguageType.Slovenian",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 545,
"symbol": "Siren.LanguageType.Spanish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 546,
"symbol": "Siren.LanguageType.Swedish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 547,
"symbol": "Siren.LanguageType.Thai",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 548,
"symbol": "Siren.LanguageType.Turkish",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
},
{
"file": "/Users/Arthur/Documents/oss/siren/Sources/Siren.swift",
"line": 549,
"symbol": "Siren.LanguageType.Vietnamese",
"symbol_kind": "source.lang.swift.decl.enumelement",
"warning": "undocumented"
}
],
"source_directory": "/Users/Arthur/Documents/oss/siren/SirenExample"
"source_directory": "/Users/Arthur/Documents/oss/siren"
}