<commit_before># SmileLock

[![GitHub Issues](http://img.shields.io/github/issues/recruit-lifestyle/Smile-Lock.svg?style=flat)](https://github.com/recruit-lifestyle/Smile-Lock/issues)
<a href="https://github.com/Carthage/Carthage/"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat"></a>
[![Version](https://img.shields.io/cocoapods/v/SmileLock.svg?style=flat)](http://cocoadocs.org/docsets/SmileLock)
[![License](https://img.shields.io/cocoapods/l/SmileLock.svg?style=flat)](http://cocoadocs.org/docsets/SmileLock)
[![Platform](https://img.shields.io/cocoapods/p/SmileLock.svg?style=flat)](http://cocoadocs.org/docsets/SmileLock)

A library for make a beautiful Passcode Lock View, also support Touch ID.

<img src="SmileLock-Example/demo_gif/smilelock_logo.png" width="600">

<img src="SmileLock-Example/demo_gif/demo.gif" width="400">
<img src="SmileLock-Example/demo_gif/demo_blur.gif" width="400">


# Requirements

- iOS 9.0+
- Swift 3 (pod version 2.x), Swift 2.3 (pod version 1.x)

#What can it do for you?


#### 1. Create a beautiful passcode lock view simply.

``` swift
let kPasswordDigit = 6
passwordContainerView = PasswordContainerView.createWithDigit(kPasswordDigit)
```

#### 2. Passcode input completed delegate callback.

``` swift
let passwordContainerView: PasswordContainerView = ...
passwordContainerView.delegate = self

extension ViewController: PasswordInputCompleteProtocol {
    func passwordInputComplete(passwordContainerView: PasswordContainerView, input: String) {
        print("input completed -> \(input)")
        //handle validation wrong || success
    }<commit_msg>mod. gif size<commit_after># SmileLock

[![GitHub Issues](http://img.shields.io/github/issues/recruit-lifestyle/Smile-Lock.svg?style=flat)](https://github.com/recruit-lifestyle/Smile-Lock/issues)
<a href="https://github.com/Carthage/Carthage/"><img src="https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat"></a>
[![Version](https://img.shields.io/cocoapods/v/SmileLock.svg?style=flat)](http://cocoadocs.org/docsets/SmileLock)
[![License](https://img.shields.io/cocoapods/l/SmileLock.svg?style=flat)](http://cocoadocs.org/docsets/SmileLock)
[![Platform](https://img.shields.io/cocoapods/p/SmileLock.svg?style=flat)](http://cocoadocs.org/docsets/SmileLock)

A library for make a beautiful Passcode Lock View, also support Touch ID.

<img src="SmileLock-Example/demo_gif/smilelock_logo.png" width="600">

<img src="SmileLock-Example/demo_gif/demo.gif" width="300">
<img src="SmileLock-Example/demo_gif/demo_blur.gif" width="300">


# Requirements

- iOS 9.0+
- Swift 3 (pod version 2.x), Swift 2.3 (pod version 1.x)

#What can it do for you?


#### 1. Create a beautiful passcode lock view simply.

``` swift
let kPasswordDigit = 6
passwordContainerView = PasswordContainerView.createWithDigit(kPasswordDigit)
```

#### 2. Passcode input completed delegate callback.

``` swift
let passwordContainerView: PasswordContainerView = ...
passwordContainerView.delegate = self

extension ViewController: PasswordInputCompleteProtocol {
    func passwordInputComplete(passwordContainerView: PasswordContainerView, input: String) {
        print("input completed -> \(input)")
        //handle validation wrong || success
    }
{'fraction_non_alphanumeric': 0.15565749235474005, 'fraction_numerical': 0.01345565749235474, 'mean_word_length': 5.413725490196079, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 17, 'https://': 12, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7332861', 'n_tokens_mistral': 1177, 'n_tokens_neox': 1075, 'n_words': 186}