See how a minor change to your commit message style can make you a better programmer.
Format: <type>(<scope>): <subject>
<scope> is optional
telegram-scripts.js into JS consoleshowContacts() to get the list of contacts with idssaveChat(userId) where userId is the id from step 3Process can take a while, check console for progress. Occasionall FLOOD_WAIT errors are expected. Once done, browser will download the JSON file.
| import UIKit | |
| /// A UITableViewCell that loads a custom UIView into its .contentView | |
| /// the typed view can be accessed via the .customView property | |
| open class GenericTableViewCell<View: UIView>: UITableViewCell { | |
| // MARK: - Properties | |
| public let customView = View() | |
| // MARK: - Lifecycle | |
| public override init(style: UITableViewCellStyle, reuseIdentifier: String?) { |
| import Foundation | |
| import Mapbox | |
| import SQLite | |
| // MARK: MbtilesSource | |
| enum MBTilesSourceError: Error { | |
| case CouldNotReadFileError | |
| case UnknownFormatError | |
| case UnsupportedFormatError |
| func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { | |
| prepareForTestingUI() | |
| // Handle the actual launch of your application | |
| } | |
| private func prepareForTestingUI() { | |
| guard let contentsURL = Bundle.main.url(forResource: "UITests", withExtension: "xcappdata")?.appendingPathComponent("AppData") else { | |
| return | |
| } |
Nix is a powerful package manager that makes package management reliable and reproducible. It provides atomic upgrades and rollbacks, side-by-side installation of multiple versions of a package, multi-user package management and easy setup of build environments.
| package com.example.sample.offline | |
| import android.util.Log | |
| import java.io.BufferedReader | |
| import java.io.ByteArrayOutputStream | |
| import java.io.FileNotFoundException | |
| import java.io.PrintStream | |
| import java.net.ServerSocket | |
| import java.net.Socket | |
| import kotlin.math.pow |
| extension UIImage { | |
| var flattened: UIImage? { | |
| let ciImage = CIImage(image: self)! | |
| guard let openGLContext = EAGLContext(api: .openGLES2) else { return nil } | |
| let ciContext = CIContext(eaglContext: openGLContext) | |
| let detector = CIDetector(ofType: CIDetectorTypeRectangle, | |
| context: ciContext, | |
| options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])! |
| private extension UIActivityType { | |
| static let postToLINE = UIActivityType("jp.naver.line.Share") | |
| static let gmail = UIActivityType("com.google.Gmail.ShareExtension") | |
| static let postToSlack = UIActivityType("com.tinyspeck.chatlyio.share") | |
| static let facebookMessanger = UIActivityType("com.facebook.Messenger.ShareExtension") | |
| static let tweetbot4 = UIActivityType("com.tapbots.Tweetbot4.shareextension") | |
| static let evernote = UIActivityType("com.evernote.iPhone.Evernote.EvernoteShare") | |
| static let bear = UIActivityType("net.shinyfrog.bear-iOS.Bear-iPhone-Sharing-Extension") | |
| } |