SwiftGen+Strings.swift 23 KB
Newer Older
Jose Blaya's avatar
Jose Blaya committed
1
// swiftlint:disable all
Davide De Rosa's avatar
Davide De Rosa committed
2 3 4 5 6 7 8
// Generated using SwiftGen, by O.Halligon — https://github.com/SwiftGen/SwiftGen

import Foundation

// swiftlint:disable superfluous_disable_command
// swiftlint:disable file_length

Jose Blaya's avatar
Jose Blaya committed
9 10 11 12
// MARK: - Strings

// swiftlint:disable explicit_type_interface function_parameter_count identifier_name line_length
// swiftlint:disable nesting type_body_length type_name
Davide De Rosa's avatar
Davide De Rosa committed
13
internal enum L10n {
Davide De Rosa's avatar
Davide De Rosa committed
14

Davide De Rosa's avatar
Davide De Rosa committed
15
  internal enum About {
Davide De Rosa's avatar
Davide De Rosa committed
16
    /// VPN by Private Internet Access
Davide De Rosa's avatar
Davide De Rosa committed
17
    internal static let app = L10n.tr("Localizable", "about.app")
Davide De Rosa's avatar
Davide De Rosa committed
18
    /// This program uses the following components:
Davide De Rosa's avatar
Davide De Rosa committed
19 20 21
    internal static let intro = L10n.tr("Localizable", "about.intro")
    internal enum Accessibility {
      internal enum Component {
Davide De Rosa's avatar
Davide De Rosa committed
22
        /// Tap to read full license
Davide De Rosa's avatar
Davide De Rosa committed
23
        internal static let expand = L10n.tr("Localizable", "about.accessibility.component.expand")
Davide De Rosa's avatar
Davide De Rosa committed
24 25 26 27
      }
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
28 29
  internal enum Account {
    internal enum Accessibility {
Davide De Rosa's avatar
Davide De Rosa committed
30
      /// Eye icon
Davide De Rosa's avatar
Davide De Rosa committed
31 32 33
      internal static let eye = L10n.tr("Localizable", "account.accessibility.eye")
      internal enum Eye {
        internal enum Hint {
Davide De Rosa's avatar
Davide De Rosa committed
34
          /// Tap to conceal password
Davide De Rosa's avatar
Davide De Rosa committed
35
          internal static let conceal = L10n.tr("Localizable", "account.accessibility.eye.hint.conceal")
Davide De Rosa's avatar
Davide De Rosa committed
36
          /// Tap to reveal password
Davide De Rosa's avatar
Davide De Rosa committed
37
          internal static let reveal = L10n.tr("Localizable", "account.accessibility.eye.hint.reveal")
Davide De Rosa's avatar
Davide De Rosa committed
38 39 40
        }
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
41
    internal enum Email {
Davide De Rosa's avatar
Davide De Rosa committed
42
      /// Email
Davide De Rosa's avatar
Davide De Rosa committed
43
      internal static let caption = L10n.tr("Localizable", "account.email.caption")
Davide De Rosa's avatar
Davide De Rosa committed
44
      /// Email address
Davide De Rosa's avatar
Davide De Rosa committed
45
      internal static let placeholder = L10n.tr("Localizable", "account.email.placeholder")
Davide De Rosa's avatar
Davide De Rosa committed
46
    }
47 48 49 50 51 52 53 54
    internal enum ExpiryDate {
      /// Your plan has expired.
      internal static let expired = L10n.tr("Localizable", "account.expiry_date.expired")
      /// Your plan will expire on %@.
      internal static func information(_ p1: String) -> String {
        return L10n.tr("Localizable", "account.expiry_date.information", p1)
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
55
    internal enum Eye {
Davide De Rosa's avatar
Davide De Rosa committed
56
      /// Tap the eye icon to reveal or conceal your password.
Davide De Rosa's avatar
Davide De Rosa committed
57
      internal static let footer = L10n.tr("Localizable", "account.eye.footer")
Davide De Rosa's avatar
Davide De Rosa committed
58
    }
Davide De Rosa's avatar
Davide De Rosa committed
59
    internal enum Other {
Davide De Rosa's avatar
Davide De Rosa committed
60
      /// Get the Private Internet Access app for your other devices and use the above username and password to login and secure your connection.
Davide De Rosa's avatar
Davide De Rosa committed
61
      internal static let footer = L10n.tr("Localizable", "account.other.footer")
Davide De Rosa's avatar
Davide De Rosa committed
62
    }
Davide De Rosa's avatar
Davide De Rosa committed
63
    internal enum Password {
Davide De Rosa's avatar
Davide De Rosa committed
64
      /// Password
Davide De Rosa's avatar
Davide De Rosa committed
65
      internal static let caption = L10n.tr("Localizable", "account.password.caption")
Davide De Rosa's avatar
Davide De Rosa committed
66
    }
Davide De Rosa's avatar
Davide De Rosa committed
67
    internal enum Restore {
Davide De Rosa's avatar
Davide De Rosa committed
68
      /// RESTORE PURCHASE
Davide De Rosa's avatar
Davide De Rosa committed
69
      internal static let button = L10n.tr("Localizable", "account.restore.button")
Davide De Rosa's avatar
Davide De Rosa committed
70
      /// If you renewed your plan but your account still says it's about to expire, you can restart the renewal from here. You will not be charged during this process.
Davide De Rosa's avatar
Davide De Rosa committed
71
      internal static let description = L10n.tr("Localizable", "account.restore.description")
Davide De Rosa's avatar
Davide De Rosa committed
72
      /// Restore uncredited purchase
Davide De Rosa's avatar
Davide De Rosa committed
73 74
      internal static let title = L10n.tr("Localizable", "account.restore.title")
      internal enum Failure {
Davide De Rosa's avatar
Davide De Rosa committed
75
        /// No redeemable purchase was found for renewal.
Davide De Rosa's avatar
Davide De Rosa committed
76
        internal static let message = L10n.tr("Localizable", "account.restore.failure.message")
Davide De Rosa's avatar
Davide De Rosa committed
77
        /// Restore purchase
Davide De Rosa's avatar
Davide De Rosa committed
78
        internal static let title = L10n.tr("Localizable", "account.restore.failure.title")
Davide De Rosa's avatar
Davide De Rosa committed
79 80
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
81
    internal enum Reveal {
Davide De Rosa's avatar
Davide De Rosa committed
82
      /// Authenticate to reveal
Davide De Rosa's avatar
Davide De Rosa committed
83
      internal static let prompt = L10n.tr("Localizable", "account.reveal.prompt")
Davide De Rosa's avatar
Davide De Rosa committed
84
    }
Davide De Rosa's avatar
Davide De Rosa committed
85
    internal enum Save {
Davide De Rosa's avatar
Davide De Rosa committed
86
      /// Update
Davide De Rosa's avatar
Davide De Rosa committed
87
      internal static let item = L10n.tr("Localizable", "account.save.item")
Davide De Rosa's avatar
Davide De Rosa committed
88
      /// Authenticate to save changes
Davide De Rosa's avatar
Davide De Rosa committed
89
      internal static let prompt = L10n.tr("Localizable", "account.save.prompt")
Davide De Rosa's avatar
Davide De Rosa committed
90
      /// Your email address has been saved.
Davide De Rosa's avatar
Davide De Rosa committed
91
      internal static let success = L10n.tr("Localizable", "account.save.success")
Davide De Rosa's avatar
Davide De Rosa committed
92
    }
Davide De Rosa's avatar
Davide De Rosa committed
93
    internal enum Username {
Davide De Rosa's avatar
Davide De Rosa committed
94
      /// Username
Davide De Rosa's avatar
Davide De Rosa committed
95
      internal static let caption = L10n.tr("Localizable", "account.username.caption")
Davide De Rosa's avatar
Davide De Rosa committed
96 97 98
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
99
  internal enum ContentBlocker {
Davide De Rosa's avatar
Davide De Rosa committed
100
    /// Content Blocker
Davide De Rosa's avatar
Davide De Rosa committed
101 102
    internal static let title = L10n.tr("Localizable", "content_blocker.title")
    internal enum Body {
Davide De Rosa's avatar
Davide De Rosa committed
103
      /// Please note: You do not need to be connected to the VPN for this Content Blocker to work, but it will only work while browsing with Safari.
Davide De Rosa's avatar
Davide De Rosa committed
104
      internal static let footer = L10n.tr("Localizable", "content_blocker.body.footer")
Davide De Rosa's avatar
Davide De Rosa committed
105
      /// To enable our Content Blocker for use with Safari please go to Settings > Safari, and under General touch Content Blockers toggle on PIA VPN.
Davide De Rosa's avatar
Davide De Rosa committed
106
      internal static let subtitle = L10n.tr("Localizable", "content_blocker.body.subtitle")
Davide De Rosa's avatar
Davide De Rosa committed
107 108 109
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
110
  internal enum Dashboard {
Davide De Rosa's avatar
Davide De Rosa committed
111
    /// Status
Davide De Rosa's avatar
Davide De Rosa committed
112 113 114
    internal static let status = L10n.tr("Localizable", "dashboard.status")
    internal enum Connection {
      internal enum Ip {
Davide De Rosa's avatar
Davide De Rosa committed
115
        /// PUBLIC IP
Davide De Rosa's avatar
Davide De Rosa committed
116
        internal static let caption = L10n.tr("Localizable", "dashboard.connection.ip.caption")
Davide De Rosa's avatar
Davide De Rosa committed
117
        /// Internet unreachable
Davide De Rosa's avatar
Davide De Rosa committed
118
        internal static let unreachable = L10n.tr("Localizable", "dashboard.connection.ip.unreachable")
Davide De Rosa's avatar
Davide De Rosa committed
119
      }
Davide De Rosa's avatar
Davide De Rosa committed
120
      internal enum Region {
Davide De Rosa's avatar
Davide De Rosa committed
121
        /// CURRENT REGION
Davide De Rosa's avatar
Davide De Rosa committed
122
        internal static let caption = L10n.tr("Localizable", "dashboard.connection.region.caption")
Davide De Rosa's avatar
Davide De Rosa committed
123
        /// CHANGE REGION
Davide De Rosa's avatar
Davide De Rosa committed
124
        internal static let change = L10n.tr("Localizable", "dashboard.connection.region.change")
Davide De Rosa's avatar
Davide De Rosa committed
125 126
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
127 128
    internal enum ContentBlocker {
      internal enum Intro {
Davide De Rosa's avatar
Davide De Rosa committed
129
        /// This version replaces MACE with our Safari Content Blocker.\n\nCheck it out in the 'Settings' section.
Davide De Rosa's avatar
Davide De Rosa committed
130
        internal static let message = L10n.tr("Localizable", "dashboard.content_blocker.intro.message")
Davide De Rosa's avatar
Davide De Rosa committed
131 132
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
133
    internal enum Vpn {
Davide De Rosa's avatar
Davide De Rosa committed
134
      /// Changing region...
Davide De Rosa's avatar
Davide De Rosa committed
135
      internal static let changingRegion = L10n.tr("Localizable", "dashboard.vpn.changing_region")
Davide De Rosa's avatar
Davide De Rosa committed
136
      /// Connected to VPN
Davide De Rosa's avatar
Davide De Rosa committed
137
      internal static let connected = L10n.tr("Localizable", "dashboard.vpn.connected")
Davide De Rosa's avatar
Davide De Rosa committed
138
      /// Connecting...
Davide De Rosa's avatar
Davide De Rosa committed
139
      internal static let connecting = L10n.tr("Localizable", "dashboard.vpn.connecting")
Davide De Rosa's avatar
Davide De Rosa committed
140
      /// Disconnected
Davide De Rosa's avatar
Davide De Rosa committed
141
      internal static let disconnected = L10n.tr("Localizable", "dashboard.vpn.disconnected")
Davide De Rosa's avatar
Davide De Rosa committed
142
      /// Disconnecting...
Davide De Rosa's avatar
Davide De Rosa committed
143
      internal static let disconnecting = L10n.tr("Localizable", "dashboard.vpn.disconnecting")
144 145
      /// VPN: ON
      internal static let on = L10n.tr("Localizable", "dashboard.vpn.on")
Davide De Rosa's avatar
Davide De Rosa committed
146 147 148
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
149
  internal enum Expiration {
Davide De Rosa's avatar
Davide De Rosa committed
150
    /// Your subscription expires soon. Renew to stay protected.
Davide De Rosa's avatar
Davide De Rosa committed
151
    internal static let message = L10n.tr("Localizable", "expiration.message")
Davide De Rosa's avatar
Davide De Rosa committed
152
    /// Renewal
Davide De Rosa's avatar
Davide De Rosa committed
153
    internal static let title = L10n.tr("Localizable", "expiration.title")
Davide De Rosa's avatar
Davide De Rosa committed
154 155
  }

Davide De Rosa's avatar
Davide De Rosa committed
156
  internal enum Global {
Davide De Rosa's avatar
Davide De Rosa committed
157
    /// Automatic
Davide De Rosa's avatar
Davide De Rosa committed
158
    internal static let automatic = L10n.tr("Localizable", "global.automatic")
Davide De Rosa's avatar
Davide De Rosa committed
159
    /// Cancel
Davide De Rosa's avatar
Davide De Rosa committed
160
    internal static let cancel = L10n.tr("Localizable", "global.cancel")
161 162
    /// Clear
    internal static let clear = L10n.tr("Localizable", "global.clear")
Davide De Rosa's avatar
Davide De Rosa committed
163
    /// Close
Davide De Rosa's avatar
Davide De Rosa committed
164
    internal static let close = L10n.tr("Localizable", "global.close")
165 166
    /// Edit
    internal static let edit = L10n.tr("Localizable", "global.edit")
Davide De Rosa's avatar
Davide De Rosa committed
167
    /// Error
Davide De Rosa's avatar
Davide De Rosa committed
168
    internal static let error = L10n.tr("Localizable", "global.error")
Davide De Rosa's avatar
Davide De Rosa committed
169
    /// OK
Davide De Rosa's avatar
Davide De Rosa committed
170
    internal static let ok = L10n.tr("Localizable", "global.ok")
171 172 173 174 175 176
    /// Optional
    internal static let `optional` = L10n.tr("Localizable", "global.optional")
    /// Required
    internal static let `required` = L10n.tr("Localizable", "global.required")
    /// Update
    internal static let update = L10n.tr("Localizable", "global.update")
Davide De Rosa's avatar
Davide De Rosa committed
177 178
  }

Davide De Rosa's avatar
Davide De Rosa committed
179 180
  internal enum Menu {
    internal enum Accessibility {
Davide De Rosa's avatar
Davide De Rosa committed
181
      /// Menu
Davide De Rosa's avatar
Davide De Rosa committed
182
      internal static let item = L10n.tr("Localizable", "menu.accessibility.item")
Davide De Rosa's avatar
Davide De Rosa committed
183
      /// Logged in as %@
Davide De Rosa's avatar
Davide De Rosa committed
184
      internal static func loggedAs(_ p1: String) -> String {
Davide De Rosa's avatar
Davide De Rosa committed
185 186 187
        return L10n.tr("Localizable", "menu.accessibility.logged_as", p1)
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
188
    internal enum Expiration {
Davide De Rosa's avatar
Davide De Rosa committed
189
      /// %d days
Davide De Rosa's avatar
Davide De Rosa committed
190
      internal static func days(_ p1: Int) -> String {
Davide De Rosa's avatar
Davide De Rosa committed
191 192 193
        return L10n.tr("Localizable", "menu.expiration.days", p1)
      }
      /// Subscription expires in
Davide De Rosa's avatar
Davide De Rosa committed
194
      internal static let expiresIn = L10n.tr("Localizable", "menu.expiration.expires_in")
Davide De Rosa's avatar
Davide De Rosa committed
195
      /// %d hours
Davide De Rosa's avatar
Davide De Rosa committed
196
      internal static func hours(_ p1: Int) -> String {
Davide De Rosa's avatar
Davide De Rosa committed
197 198 199
        return L10n.tr("Localizable", "menu.expiration.hours", p1)
      }
      /// one hour
Davide De Rosa's avatar
Davide De Rosa committed
200
      internal static let oneHour = L10n.tr("Localizable", "menu.expiration.one_hour")
Davide De Rosa's avatar
Davide De Rosa committed
201
      /// UPGRADE ACCOUNT
Davide De Rosa's avatar
Davide De Rosa committed
202
      internal static let upgrade = L10n.tr("Localizable", "menu.expiration.upgrade")
Davide De Rosa's avatar
Davide De Rosa committed
203
    }
Davide De Rosa's avatar
Davide De Rosa committed
204
    internal enum Item {
Davide De Rosa's avatar
Davide De Rosa committed
205
      /// About
Davide De Rosa's avatar
Davide De Rosa committed
206
      internal static let about = L10n.tr("Localizable", "menu.item.about")
Davide De Rosa's avatar
Davide De Rosa committed
207
      /// Account
Davide De Rosa's avatar
Davide De Rosa committed
208
      internal static let account = L10n.tr("Localizable", "menu.item.account")
Davide De Rosa's avatar
Davide De Rosa committed
209
      /// Log out
Davide De Rosa's avatar
Davide De Rosa committed
210
      internal static let logout = L10n.tr("Localizable", "menu.item.logout")
Davide De Rosa's avatar
Davide De Rosa committed
211
      /// Region selection
Davide De Rosa's avatar
Davide De Rosa committed
212
      internal static let region = L10n.tr("Localizable", "menu.item.region")
Davide De Rosa's avatar
Davide De Rosa committed
213
      /// Settings
Davide De Rosa's avatar
Davide De Rosa committed
214 215
      internal static let settings = L10n.tr("Localizable", "menu.item.settings")
      internal enum Web {
Davide De Rosa's avatar
Davide De Rosa committed
216
        /// Home page
Davide De Rosa's avatar
Davide De Rosa committed
217
        internal static let home = L10n.tr("Localizable", "menu.item.web.home")
Davide De Rosa's avatar
Davide De Rosa committed
218
        /// Privacy policy
Davide De Rosa's avatar
Davide De Rosa committed
219
        internal static let privacy = L10n.tr("Localizable", "menu.item.web.privacy")
Davide De Rosa's avatar
Davide De Rosa committed
220
        /// Support
Davide De Rosa's avatar
Davide De Rosa committed
221
        internal static let support = L10n.tr("Localizable", "menu.item.web.support")
Davide De Rosa's avatar
Davide De Rosa committed
222 223
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
224
    internal enum Logout {
Davide De Rosa's avatar
Davide De Rosa committed
225
      /// Log out
Davide De Rosa's avatar
Davide De Rosa committed
226
      internal static let confirm = L10n.tr("Localizable", "menu.logout.confirm")
Davide De Rosa's avatar
Davide De Rosa committed
227
      /// Logging out will disable the VPN and leave you unprotected.
Davide De Rosa's avatar
Davide De Rosa committed
228
      internal static let message = L10n.tr("Localizable", "menu.logout.message")
Davide De Rosa's avatar
Davide De Rosa committed
229
      /// Log out
Davide De Rosa's avatar
Davide De Rosa committed
230
      internal static let title = L10n.tr("Localizable", "menu.logout.title")
Davide De Rosa's avatar
Davide De Rosa committed
231
    }
Davide De Rosa's avatar
Davide De Rosa committed
232
    internal enum Renewal {
Davide De Rosa's avatar
Davide De Rosa committed
233
      /// Purchase
Davide De Rosa's avatar
Davide De Rosa committed
234
      internal static let purchase = L10n.tr("Localizable", "menu.renewal.purchase")
Davide De Rosa's avatar
Davide De Rosa committed
235
      /// Renew
Davide De Rosa's avatar
Davide De Rosa committed
236
      internal static let renew = L10n.tr("Localizable", "menu.renewal.renew")
Davide De Rosa's avatar
Davide De Rosa committed
237
      /// Renewal
Davide De Rosa's avatar
Davide De Rosa committed
238 239
      internal static let title = L10n.tr("Localizable", "menu.renewal.title")
      internal enum Message {
Davide De Rosa's avatar
Davide De Rosa committed
240
        /// Trial accounts are not eligible for renewal. Please purchase a new account upon expiry to continue service.
Davide De Rosa's avatar
Davide De Rosa committed
241
        internal static let trial = L10n.tr("Localizable", "menu.renewal.message.trial")
Davide De Rosa's avatar
Davide De Rosa committed
242
        /// Apple servers currently unavailable. Please try again later.
Davide De Rosa's avatar
Davide De Rosa committed
243
        internal static let unavailable = L10n.tr("Localizable", "menu.renewal.message.unavailable")
Davide De Rosa's avatar
Davide De Rosa committed
244
        /// Please use our website to renew your subscription.
Davide De Rosa's avatar
Davide De Rosa committed
245
        internal static let website = L10n.tr("Localizable", "menu.renewal.message.website")
Davide De Rosa's avatar
Davide De Rosa committed
246 247 248 249
      }
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
250 251
  internal enum Notifications {
    internal enum Disabled {
Davide De Rosa's avatar
Davide De Rosa committed
252
      /// Enable notifications to get a reminder to renew your subscription before it expires.
Davide De Rosa's avatar
Davide De Rosa committed
253
      internal static let message = L10n.tr("Localizable", "notifications.disabled.message")
Davide De Rosa's avatar
Davide De Rosa committed
254
      /// Settings
Davide De Rosa's avatar
Davide De Rosa committed
255
      internal static let settings = L10n.tr("Localizable", "notifications.disabled.settings")
Davide De Rosa's avatar
Davide De Rosa committed
256
      /// Notifications disabled
Davide De Rosa's avatar
Davide De Rosa committed
257
      internal static let title = L10n.tr("Localizable", "notifications.disabled.title")
Davide De Rosa's avatar
Davide De Rosa committed
258 259 260
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
261 262
  internal enum Renewal {
    internal enum Failure {
Davide De Rosa's avatar
Davide De Rosa committed
263
      /// Your purchase receipt couldn't be submitted, please retry at a later time.
Davide De Rosa's avatar
Davide De Rosa committed
264
      internal static let message = L10n.tr("Localizable", "renewal.failure.message")
Davide De Rosa's avatar
Davide De Rosa committed
265
    }
Davide De Rosa's avatar
Davide De Rosa committed
266
    internal enum Success {
Davide De Rosa's avatar
Davide De Rosa committed
267
      /// Your account was successfully renewed.
Davide De Rosa's avatar
Davide De Rosa committed
268
      internal static let message = L10n.tr("Localizable", "renewal.success.message")
Davide De Rosa's avatar
Davide De Rosa committed
269
      /// Thank you
Davide De Rosa's avatar
Davide De Rosa committed
270
      internal static let title = L10n.tr("Localizable", "renewal.success.title")
Davide De Rosa's avatar
Davide De Rosa committed
271 272 273
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
274 275
  internal enum Settings {
    internal enum ApplicationInformation {
Davide De Rosa's avatar
Davide De Rosa committed
276
      /// APPLICATION INFORMATION
Davide De Rosa's avatar
Davide De Rosa committed
277 278
      internal static let title = L10n.tr("Localizable", "settings.application_information.title")
      internal enum Debug {
Davide De Rosa's avatar
Davide De Rosa committed
279
        /// Send debug to support
Davide De Rosa's avatar
Davide De Rosa committed
280 281
        internal static let title = L10n.tr("Localizable", "settings.application_information.debug.title")
        internal enum Empty {
Davide De Rosa's avatar
Davide De Rosa committed
282
          /// Debug information is empty, please attempt a connection before retrying submission.
Davide De Rosa's avatar
Davide De Rosa committed
283
          internal static let message = L10n.tr("Localizable", "settings.application_information.debug.empty.message")
Davide De Rosa's avatar
Davide De Rosa committed
284
          /// Empty debug information
Davide De Rosa's avatar
Davide De Rosa committed
285
          internal static let title = L10n.tr("Localizable", "settings.application_information.debug.empty.title")
Davide De Rosa's avatar
Davide De Rosa committed
286
        }
Davide De Rosa's avatar
Davide De Rosa committed
287
        internal enum Failure {
Davide De Rosa's avatar
Davide De Rosa committed
288
          /// Debug information could not be submitted. Please disconnect from the VPN and retry.
Davide De Rosa's avatar
Davide De Rosa committed
289
          internal static let message = L10n.tr("Localizable", "settings.application_information.debug.failure.message")
Davide De Rosa's avatar
Davide De Rosa committed
290
          /// Error during submission
Davide De Rosa's avatar
Davide De Rosa committed
291
          internal static let title = L10n.tr("Localizable", "settings.application_information.debug.failure.title")
Davide De Rosa's avatar
Davide De Rosa committed
292
        }
Davide De Rosa's avatar
Davide De Rosa committed
293
        internal enum Success {
Davide De Rosa's avatar
Davide De Rosa committed
294
          /// Debug information successfully submitted.\nID: %@\nPlease note this ID, as our support team will require this to locate your submission.
Davide De Rosa's avatar
Davide De Rosa committed
295
          internal static func message(_ p1: String) -> String {
Davide De Rosa's avatar
Davide De Rosa committed
296 297 298
            return L10n.tr("Localizable", "settings.application_information.debug.success.message", p1)
          }
          /// Debug information submitted
Davide De Rosa's avatar
Davide De Rosa committed
299
          internal static let title = L10n.tr("Localizable", "settings.application_information.debug.success.title")
Davide De Rosa's avatar
Davide De Rosa committed
300 301 302
        }
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
303
    internal enum ApplicationSettings {
Davide De Rosa's avatar
Davide De Rosa committed
304
      /// APPLICATION SETTINGS
Davide De Rosa's avatar
Davide De Rosa committed
305 306
      internal static let title = L10n.tr("Localizable", "settings.application_settings.title")
      internal enum DarkTheme {
Davide De Rosa's avatar
Davide De Rosa committed
307
        /// Dark theme
Davide De Rosa's avatar
Davide De Rosa committed
308
        internal static let title = L10n.tr("Localizable", "settings.application_settings.dark_theme.title")
Davide De Rosa's avatar
Davide De Rosa committed
309
      }
Davide De Rosa's avatar
Davide De Rosa committed
310
      internal enum KillSwitch {
311
        /// The VPN kill switch prevents access to the Internet if the VPN connection is reconnecting. This excludes disconnecting manually.
Davide De Rosa's avatar
Davide De Rosa committed
312
        internal static let footer = L10n.tr("Localizable", "settings.application_settings.kill_switch.footer")
313
        /// VPN kill switch
Davide De Rosa's avatar
Davide De Rosa committed
314
        internal static let title = L10n.tr("Localizable", "settings.application_settings.kill_switch.title")
315
      }
Davide De Rosa's avatar
Davide De Rosa committed
316
      internal enum Mace {
Davide De Rosa's avatar
Davide De Rosa committed
317
        /// PIA MACE™ blocks ads, trackers, and malware while you're connected to the VPN.
Davide De Rosa's avatar
Davide De Rosa committed
318
        internal static let footer = L10n.tr("Localizable", "settings.application_settings.mace.footer")
Davide De Rosa's avatar
Davide De Rosa committed
319
        /// PIA MACE™
Davide De Rosa's avatar
Davide De Rosa committed
320
        internal static let title = L10n.tr("Localizable", "settings.application_settings.mace.title")
Davide De Rosa's avatar
Davide De Rosa committed
321 322
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
323 324
    internal enum Commit {
      internal enum Buttons {
Davide De Rosa's avatar
Davide De Rosa committed
325
        /// Later
Davide De Rosa's avatar
Davide De Rosa committed
326
        internal static let later = L10n.tr("Localizable", "settings.commit.buttons.later")
Davide De Rosa's avatar
Davide De Rosa committed
327
        /// Reconnect
Davide De Rosa's avatar
Davide De Rosa committed
328
        internal static let reconnect = L10n.tr("Localizable", "settings.commit.buttons.reconnect")
Davide De Rosa's avatar
Davide De Rosa committed
329
      }
Davide De Rosa's avatar
Davide De Rosa committed
330
      internal enum Messages {
Davide De Rosa's avatar
Davide De Rosa committed
331
        /// The VPN must reconnect for some changes to take effect.
Davide De Rosa's avatar
Davide De Rosa committed
332
        internal static let mustDisconnect = L10n.tr("Localizable", "settings.commit.messages.must_disconnect")
Davide De Rosa's avatar
Davide De Rosa committed
333
        /// Reconnect the VPN to apply changes.
Davide De Rosa's avatar
Davide De Rosa committed
334
        internal static let shouldReconnect = L10n.tr("Localizable", "settings.commit.messages.should_reconnect")
Davide De Rosa's avatar
Davide De Rosa committed
335 336
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
337
    internal enum Connection {
Davide De Rosa's avatar
Davide De Rosa committed
338
      /// CONNECTION
Davide De Rosa's avatar
Davide De Rosa committed
339 340
      internal static let title = L10n.tr("Localizable", "settings.connection.title")
      internal enum RemotePort {
Davide De Rosa's avatar
Davide De Rosa committed
341
        /// Remote port
Davide De Rosa's avatar
Davide De Rosa committed
342
        internal static let title = L10n.tr("Localizable", "settings.connection.remote_port.title")
Davide De Rosa's avatar
Davide De Rosa committed
343
      }
Davide De Rosa's avatar
Davide De Rosa committed
344
      internal enum SocketProtocol {
Davide De Rosa's avatar
Davide De Rosa committed
345
        /// Socket
Davide De Rosa's avatar
Davide De Rosa committed
346
        internal static let title = L10n.tr("Localizable", "settings.connection.socket_protocol.title")
Davide De Rosa's avatar
Davide De Rosa committed
347
      }
Davide De Rosa's avatar
Davide De Rosa committed
348
      internal enum VpnProtocol {
Davide De Rosa's avatar
Davide De Rosa committed
349
        /// Protocol
Davide De Rosa's avatar
Davide De Rosa committed
350
        internal static let title = L10n.tr("Localizable", "settings.connection.vpn_protocol.title")
Davide De Rosa's avatar
Davide De Rosa committed
351 352
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
353
    internal enum ContentBlocker {
Davide De Rosa's avatar
Davide De Rosa committed
354
      /// To enable or disable Content Blocker go to Settings > Safari > Content Blockers and toggle PIA VPN.
Davide De Rosa's avatar
Davide De Rosa committed
355
      internal static let footer = L10n.tr("Localizable", "settings.content_blocker.footer")
Davide De Rosa's avatar
Davide De Rosa committed
356
      /// Safari Content Blocker
Davide De Rosa's avatar
Davide De Rosa committed
357 358
      internal static let title = L10n.tr("Localizable", "settings.content_blocker.title")
      internal enum Refresh {
Davide De Rosa's avatar
Davide De Rosa committed
359
        /// Refresh block list
Davide De Rosa's avatar
Davide De Rosa committed
360
        internal static let title = L10n.tr("Localizable", "settings.content_blocker.refresh.title")
Davide De Rosa's avatar
Davide De Rosa committed
361
      }
Davide De Rosa's avatar
Davide De Rosa committed
362
      internal enum State {
Davide De Rosa's avatar
Davide De Rosa committed
363
        /// Current state
Davide De Rosa's avatar
Davide De Rosa committed
364
        internal static let title = L10n.tr("Localizable", "settings.content_blocker.state.title")
Davide De Rosa's avatar
Davide De Rosa committed
365 366
      }
    }
367 368 369 370 371 372 373 374 375 376 377 378 379 380 381
    internal enum Dns {
      /// Custom
      internal static let custom = L10n.tr("Localizable", "settings.dns.custom")
      /// Primary DNS
      internal static let primaryDNS = L10n.tr("Localizable", "settings.dns.primaryDNS")
      /// Secondary DNS
      internal static let secondaryDNS = L10n.tr("Localizable", "settings.dns.secondaryDNS")
      internal enum Alert {
        internal enum Clear {
          /// This will clear your custom DNS and default to PIA DNS.
          internal static let message = L10n.tr("Localizable", "settings.dns.alert.clear.message")
          /// Clear DNS
          internal static let title = L10n.tr("Localizable", "settings.dns.alert.clear.title")
        }
        internal enum Create {
382
          /// Using non PIA DNS could expose your DNS traffic to third parties and compromise your privacy.
383 384 385 386 387 388 389 390 391
          internal static let message = L10n.tr("Localizable", "settings.dns.alert.create.message")
        }
      }
      internal enum Custom {
        /// Custom DNS
        internal static let dns = L10n.tr("Localizable", "settings.dns.custom.dns")
      }
      internal enum Validation {
        internal enum Primary {
392
          /// Primary DNS is not valid.
393
          internal static let invalid = L10n.tr("Localizable", "settings.dns.validation.primary.invalid")
394
          /// Primary DNS is mandatory.
395 396 397
          internal static let mandatory = L10n.tr("Localizable", "settings.dns.validation.primary.mandatory")
        }
        internal enum Secondary {
398
          /// Secondary DNS is not valid.
399 400 401 402
          internal static let invalid = L10n.tr("Localizable", "settings.dns.validation.secondary.invalid")
        }
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
403
    internal enum Encryption {
Davide De Rosa's avatar
Davide De Rosa committed
404
      /// ENCRYPTION
Davide De Rosa's avatar
Davide De Rosa committed
405 406
      internal static let title = L10n.tr("Localizable", "settings.encryption.title")
      internal enum Cipher {
Davide De Rosa's avatar
Davide De Rosa committed
407
        /// Data encryption
Davide De Rosa's avatar
Davide De Rosa committed
408
        internal static let title = L10n.tr("Localizable", "settings.encryption.cipher.title")
Davide De Rosa's avatar
Davide De Rosa committed
409
      }
Davide De Rosa's avatar
Davide De Rosa committed
410
      internal enum Digest {
Davide De Rosa's avatar
Davide De Rosa committed
411
        /// Data authentication
Davide De Rosa's avatar
Davide De Rosa committed
412
        internal static let title = L10n.tr("Localizable", "settings.encryption.digest.title")
Davide De Rosa's avatar
Davide De Rosa committed
413
      }
Davide De Rosa's avatar
Davide De Rosa committed
414
      internal enum Handshake {
Davide De Rosa's avatar
Davide De Rosa committed
415
        /// Handshake
Davide De Rosa's avatar
Davide De Rosa committed
416
        internal static let title = L10n.tr("Localizable", "settings.encryption.handshake.title")
Davide De Rosa's avatar
Davide De Rosa committed
417 418
      }
    }
Davide De Rosa's avatar
Davide De Rosa committed
419
    internal enum Reset {
Davide De Rosa's avatar
Davide De Rosa committed
420
      /// This will reset all of the above settings to default.
Davide De Rosa's avatar
Davide De Rosa committed
421
      internal static let footer = L10n.tr("Localizable", "settings.reset.footer")
Davide De Rosa's avatar
Davide De Rosa committed
422
      /// RESET
Davide De Rosa's avatar
Davide De Rosa committed
423 424
      internal static let title = L10n.tr("Localizable", "settings.reset.title")
      internal enum Defaults {
Davide De Rosa's avatar
Davide De Rosa committed
425
        /// Reset to default settings
Davide De Rosa's avatar
Davide De Rosa committed
426 427
        internal static let title = L10n.tr("Localizable", "settings.reset.defaults.title")
        internal enum Confirm {
Davide De Rosa's avatar
Davide De Rosa committed
428
          /// Reset
Davide De Rosa's avatar
Davide De Rosa committed
429
          internal static let button = L10n.tr("Localizable", "settings.reset.defaults.confirm.button")
Davide De Rosa's avatar
Davide De Rosa committed
430
          /// This will bring the app back to default. You will lose all changes you have made.
Davide De Rosa's avatar
Davide De Rosa committed
431
          internal static let message = L10n.tr("Localizable", "settings.reset.defaults.confirm.message")
Davide De Rosa's avatar
Davide De Rosa committed
432
          /// Reset settings
Davide De Rosa's avatar
Davide De Rosa committed
433
          internal static let title = L10n.tr("Localizable", "settings.reset.defaults.confirm.title")
Davide De Rosa's avatar
Davide De Rosa committed
434 435 436 437 438
        }
      }
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
439
  internal enum Shortcuts {
Davide De Rosa's avatar
Davide De Rosa committed
440
    /// Connect
Davide De Rosa's avatar
Davide De Rosa committed
441
    internal static let connect = L10n.tr("Localizable", "shortcuts.connect")
Davide De Rosa's avatar
Davide De Rosa committed
442
    /// Disconnect
Davide De Rosa's avatar
Davide De Rosa committed
443
    internal static let disconnect = L10n.tr("Localizable", "shortcuts.disconnect")
Davide De Rosa's avatar
Davide De Rosa committed
444
    /// Select a region
Davide De Rosa's avatar
Davide De Rosa committed
445
    internal static let selectRegion = L10n.tr("Localizable", "shortcuts.select_region")
Davide De Rosa's avatar
Davide De Rosa committed
446 447
  }

Davide De Rosa's avatar
Davide De Rosa committed
448
  internal enum VpnPermission {
Davide De Rosa's avatar
Davide De Rosa committed
449
    /// PIA
Davide De Rosa's avatar
Davide De Rosa committed
450 451
    internal static let title = L10n.tr("Localizable", "vpn_permission.title")
    internal enum Body {
Davide De Rosa's avatar
Davide De Rosa committed
452
      /// We don’t monitor, filter or log any network activity.
Davide De Rosa's avatar
Davide De Rosa committed
453
      internal static let footer = L10n.tr("Localizable", "vpn_permission.body.footer")
Jose Blaya's avatar
Jose Blaya committed
454
      /// You’ll see a prompt for PIA VPN and need to allow access to VPN configurations.\nTo proceed tap on “%@”.
Davide De Rosa's avatar
Davide De Rosa committed
455
      internal static func subtitle(_ p1: String) -> String {
Davide De Rosa's avatar
Davide De Rosa committed
456 457 458
        return L10n.tr("Localizable", "vpn_permission.body.subtitle", p1)
      }
      /// PIA needs access to your VPN profiles to secure your traffic
Davide De Rosa's avatar
Davide De Rosa committed
459
      internal static let title = L10n.tr("Localizable", "vpn_permission.body.title")
Davide De Rosa's avatar
Davide De Rosa committed
460
    }
Davide De Rosa's avatar
Davide De Rosa committed
461
    internal enum Disallow {
Davide De Rosa's avatar
Davide De Rosa committed
462
      /// Contact
Davide De Rosa's avatar
Davide De Rosa committed
463 464
      internal static let contact = L10n.tr("Localizable", "vpn_permission.disallow.contact")
      internal enum Message {
Davide De Rosa's avatar
Davide De Rosa committed
465
        /// We need this permission for the application to function.
Davide De Rosa's avatar
Davide De Rosa committed
466
        internal static let basic = L10n.tr("Localizable", "vpn_permission.disallow.message.basic")
Davide De Rosa's avatar
Davide De Rosa committed
467
        /// You can also get in touch with customer support if you need assistance.
Davide De Rosa's avatar
Davide De Rosa committed
468
        internal static let support = L10n.tr("Localizable", "vpn_permission.disallow.message.support")
Davide De Rosa's avatar
Davide De Rosa committed
469 470 471 472
      }
    }
  }

Davide De Rosa's avatar
Davide De Rosa committed
473 474
  internal enum Walkthrough {
    internal enum Action {
Davide De Rosa's avatar
Davide De Rosa committed
475
      /// DONE
Davide De Rosa's avatar
Davide De Rosa committed
476
      internal static let done = L10n.tr("Localizable", "walkthrough.action.done")
Davide De Rosa's avatar
Davide De Rosa committed
477
      /// NEXT
Davide De Rosa's avatar
Davide De Rosa committed
478
      internal static let next = L10n.tr("Localizable", "walkthrough.action.next")
Davide De Rosa's avatar
Davide De Rosa committed
479
      /// SKIP
Davide De Rosa's avatar
Davide De Rosa committed
480
      internal static let skip = L10n.tr("Localizable", "walkthrough.action.skip")
Davide De Rosa's avatar
Davide De Rosa committed
481
    }
Davide De Rosa's avatar
Davide De Rosa committed
482 483
    internal enum Page {
      internal enum _1 {
Davide De Rosa's avatar
Davide De Rosa committed
484
        /// Protect yourself on up to 5 devices at a time.
Davide De Rosa's avatar
Davide De Rosa committed
485
        internal static let description = L10n.tr("Localizable", "walkthrough.page.1.description")
Davide De Rosa's avatar
Davide De Rosa committed
486
        /// Support 5 devices at once
Davide De Rosa's avatar
Davide De Rosa committed
487
        internal static let title = L10n.tr("Localizable", "walkthrough.page.1.title")
Davide De Rosa's avatar
Davide De Rosa committed
488
      }
Davide De Rosa's avatar
Davide De Rosa committed
489
      internal enum _2 {
Davide De Rosa's avatar
Davide De Rosa committed
490
        /// With servers around the globe, you are always under protection.
Davide De Rosa's avatar
Davide De Rosa committed
491
        internal static let description = L10n.tr("Localizable", "walkthrough.page.2.description")
Davide De Rosa's avatar
Davide De Rosa committed
492
        /// Connect to any region easily
Davide De Rosa's avatar
Davide De Rosa committed
493
        internal static let title = L10n.tr("Localizable", "walkthrough.page.2.title")
Davide De Rosa's avatar
Davide De Rosa committed
494
      }
Davide De Rosa's avatar
Davide De Rosa committed
495
      internal enum _3 {
Davide De Rosa's avatar
Davide De Rosa committed
496
        /// Enabling our Content Blocker prevents ads from showing in Safari.
Davide De Rosa's avatar
Davide De Rosa committed
497
        internal static let description = L10n.tr("Localizable", "walkthrough.page.3.description")
Davide De Rosa's avatar
Davide De Rosa committed
498
        /// Protect yourself from ads
Davide De Rosa's avatar
Davide De Rosa committed
499
        internal static let title = L10n.tr("Localizable", "walkthrough.page.3.title")
Davide De Rosa's avatar
Davide De Rosa committed
500 501 502 503
      }
    }
  }
}
Jose Blaya's avatar
Jose Blaya committed
504 505 506 507
// swiftlint:enable explicit_type_interface function_parameter_count identifier_name line_length
// swiftlint:enable nesting type_body_length type_name

// MARK: - Implementation Details
Davide De Rosa's avatar
Davide De Rosa committed
508 509 510 511 512 513 514 515 516

extension L10n {
  private static func tr(_ table: String, _ key: String, _ args: CVarArg...) -> String {
    let format = NSLocalizedString(key, tableName: table, bundle: Bundle(for: BundleToken.self), comment: "")
    return String(format: format, locale: Locale.current, arguments: args)
  }
}

private final class BundleToken {}