Swiftpack.co -  chausovSurfStudio/TextFieldsCatalog as Swift Package
Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
chausovSurfStudio/TextFieldsCatalog
This is catalog of various input field with great opportunities for validation and formatting.
.package(url: "https://github.com/chausovSurfStudio/TextFieldsCatalog.git", from: "0.14.0")

TextFieldsCatalog

GitHubActions Build Status Documentation Version Platform License Swift Version codebeat badge

Overview

Данный репозиторий содержит коллекцию различных полей ввода, предоставляющих богатые возможности по проверке введенных значений и форматированию текста при вводе. К тому же, они просто симпатичные и хорошо кастомизируются :)

Полная документация - доступна на GitHub Pages

Installation

Cocoapods

Просто добавьте следующую строку в ваш Podfile:

pod 'TextFieldsCatalog'

First Step Guide

Предположим, вам необходимо реализовать поле ввода для Имени пользователя, которое должно быть от 5 до 25 символов и вас устраивает дизайн UnderlinedTextField, предоставляемый из коробки.

Вам необходимо выполнить следующие шаги:

  • добавить в Podfile pod 'TextFieldsCatalog', выполнить pod install, открыть .workspace
  • добавить на экран UIView, изменить его класс на UnderlinedTextField, установить высоту равной 77
  • во ViewController сделать IBOutlet на это поле, назвать, к примеру, textField
  • сконфигурировать поле ввода
textField.configure(placeholder: "Имя", maxLength: 25)
textField.configure(autocapitalizationType: .words)
textField.validator = TextFieldValidator(minLength: 5, maxLength: 25, regex: nil)

Этих действий вполне достаточно для базовой конфигурации поля ввода. Для получения более подробной информации - рекомендуется посмотреть Example проект и прочитать документацию.

Строение репозитория

Фактически, репозиторий включает в себя как и сам pod, так и полноценный Example проект, на котором можно сразу протестировать на деле новое поле или изменения в существующих.

Документация

Документация по тестовому проекту

Документ по проекту с каталогом полей ввода

Документация по возможностям полей ввода

Лицензия

TextFieldsCatalog распространяется под MIT лицензией

GitHub

link
Stars: 19
Last commit: 3 days ago

Ad: Job Offers

iOS Software Engineer @ Perry Street Software
Perry Street Software is Jack’d and SCRUFF. We are two of the world’s largest gay, bi, trans and queer social dating apps on iOS and Android. Our brands reach more than 20 million members worldwide so members can connect, meet and express themselves on a platform that prioritizes privacy and security. We invest heavily into SwiftUI and using Swift Packages to modularize the codebase.

Release Notes

Абстрактный сервис для подсказок под полем ввода
12 weeks ago

В эту пачку обновлений вошли задачи:

  • поправлена логика trimSpaces, теперь если запросить текст до снятия фокуса с поля ввода - пробелы в нем будут так же обрезаны при необходимости (https://github.com/chausovSurfStudio/TextFieldsCatalog/pull/107)
  • добавлен абстрактный HintService, возможность написать свой и подсунуть к полю вводу его
  • дополнительно - теперь появилась возможность выбирать состояния, когда подсказка под полем ввода должна быть видима (по-умолчанию сохранено прошлое поведение, когда подсказка показывалась для активного поля и для поля в состоянии ошибки). Метод setup(visibleHintStates:)
  • также была убрана одна из heightPolicy (ранее помеченная как deprecated, так что если кто пользовался - сами виноваты ☺️ ), + немного изменен нейминг/интерфейс для другой
  • необходимые действия для корректной миграции можно подсмотреть здесь https://github.com/chausovSurfStudio/TextFieldsCatalog/pull/106/files#diff-45b10d405566664fc0efe6061796c0a741d967c7f8e702a6b15f50f679a1c493)
  • соответствующий ПР - https://github.com/chausovSurfStudio/TextFieldsCatalog/pull/106
  • убрана необходимость вызывать метод setup(heightConstraint:) для корректного изменения высоты поля ввода - теперь достаточно просто задать в xib-файле (если вы его, конечно, используете) placeholder-размер поля, а изменение его высоты будут происходить автоматически на основе intrinsicContentSize (https://github.com/chausovSurfStudio/TextFieldsCatalog/pull/108)

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API