Skip to content

Instantly share code, notes, and snippets.

View subdan's full-sized avatar

Daniil Subbotin subdan

View GitHub Profile
import UIKit
/// Обобщенный тип лайаут гайда.
///
/// - Note: Обобщение `UIView` и `UILayoutGuide`.
public protocol LayoutGuide {
/// Верхний край.
var topAnchor: NSLayoutYAxisAnchor { get }
/// Нижний край.
var bottomAnchor: NSLayoutYAxisAnchor { get }
class BaseService {
let apiClient: Client
init(apiClient: Client) {
self.apiClient = apiClient
}
func handleError(_ error: Error) -> Error {
guard let afError = error as? AFError else { return error }
if case .responseValidationFailed(let reason) = afError,
import Foundation
import FigmaExportCore
import Logging
import os.signpost
final class FileDownloader {
private let logger = Logger(label: "com.redmadrobot.figma-export.file-downloader")
private let session: URLSession
@subdan
subdan / PhoneNumberFormattable.swift
Created October 29, 2020 06:27
Phone number formatter
import Cocoa
extension String {
func charAt(at: Int) -> Character {
let charIndex = index(startIndex, offsetBy: at)
return self[charIndex]
}
}
protocol PhoneNumberFormattable {
import XCTest
final class LoginAnalyticsTests: TestBase {
private let auth = LoginScreen()
private let onboarding = OnboardingScreen()
// Открытие экрана авторизации
func testOpenAuthMetricEvent() {
launchApp(with: .init(skipAuth: false, sendMetricsToPasteboard: true))
private final class EndpointHandler {
var endpoint: Any!
var errorHandler: (Error) -> Void = { _ in }
var responseHandler: (Any) -> Void = { _ in }
}
final class MockAPIClient: APIClient {
private var endpointHandlers: [EndpointHandler] = []
// Если ни одно устройство не поддерживает запись единого кода, пользователь не должен видеть эту функцию в МП
"1" capabilities: []
"2" capabilities: []
"3" capabilities: []
Пусто
// Если все устройства поддерживает единый код, пользователь не должен видеть дополнительных уведомлений
"1" capabilities: [sip_calls]
"2" capabilities: [sip_calls]

Intro

I'm developing an Adobe AIR Android app that use FileChooser ANE and ZIPManager ANE. A user wants to export his data to a zip file and then import data on the same device.

  1. Compress some data to zip file using ZIPManager ANE
  2. Choose this file using FileChooser ANE
  3. Extract this zip file using ZIPManager ANE

Environment

Android API Version: API level 24 (Android 7.0)

import Foundation
import CoreData
class StationService {
static var shared: StationService = StationService()
private init() {}
private let transport = StationTransport()
import Foundation
import UIKit
protocol StationsPresentationModelDelegate: class {
func stationsChanged()
func networkError()
}
class StationsPresentationModel: NSObject, UICollectionViewDataSource {