Protection Domain (pdmn) | Keychain Accessibility Values |
---|---|
ck |
kSecAttrAccessibleAfterFirstUnlock |
cku |
kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly |
dk |
kSecAttrAccessibleAlways |
akpu |
kSecAttrAccessibleWhenPasscodeSetThisDeviceOnly |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<? | |
// <readme> | |
/* | |
This is a lite version of Olark's and Intercom's functionality (without the chat part). | |
It lets you get feedback from users on your site to your email. | |
And you won't have to rely on another company anymore! | |
#killyourdependencies |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Created by Vasily Ulianov on 09.02.17, updated in 2019. | |
// License: MIT | |
import Foundation | |
/// Subclass of `Operation` that adds support of asynchronous operations. | |
/// 1. Call `super.main()` when override `main` method. | |
/// 2. When operation is finished or cancelled set `state = .finished` or `finish()` | |
open class AsynchronousOperation: Operation { | |
public override var isAsynchronous: Bool { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// RepeatingTimer mimics the API of DispatchSourceTimer but in a way that prevents | |
/// crashes that occur from calling resume multiple times on a timer that is | |
/// already resumed (noted by https://github.com/SiftScience/sift-ios/issues/52 | |
class RepeatingTimer { | |
let timeInterval: TimeInterval | |
init(timeInterval: TimeInterval) { | |
self.timeInterval = timeInterval | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// ViewController.swift | |
// NetworkTest | |
// | |
// Created by Kraig Spear on 10/10/17. | |
// Copyright © 2017 spearware. All rights reserved. | |
// | |
import UIKit | |
import NetworkExtension |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
This sample code is available under the MIT license. | |
*/ | |
@available(iOS 12.0, *) | |
public final class ShortcutManager { | |
/** | |
This enum specifies the different intents available in our app and their various properties for the `INIntent`. | |
Replace this with your own shortcuts. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import UIKit | |
private func isExcluded(_ kind: AnyClass) -> Bool { | |
let name = String(describing: kind) | |
return (name.count > 2 && name.prefix(2) == "UI") || | |
(name.count > 3 && name.prefix(3) == "_UI") | |
} | |
extension UIControl { | |
override open var accessibilityIdentifier: String? { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// InfiniteScrollChart.swift | |
// ChartsGallery | |
// | |
// Created by beader on 2022/11/3. | |
// | |
import SwiftUI | |
import Charts |