unioil-loyalty-rn-app/ios/Pods/lottie-ios/Sources/Private/Model/Objects/DashPattern.swift

45 lines
933 B
Swift

//
// DashPattern.swift
// lottie-swift
//
// Created by Brandon Withrow on 1/22/19.
//
import Foundation
// MARK: - DashElementType
enum DashElementType: String, Codable {
case offset = "o"
case dash = "d"
case gap = "g"
}
// MARK: - DashElement
final class DashElement: Codable, DictionaryInitializable {
// MARK: Lifecycle
init(dictionary: [String: Any]) throws {
let typeRawValue: String = try dictionary.value(for: CodingKeys.type)
guard let type = DashElementType(rawValue: typeRawValue) else {
throw InitializableError.invalidInput
}
self.type = type
let valueDictionary: [String: Any] = try dictionary.value(for: CodingKeys.value)
value = try KeyframeGroup<Vector1D>(dictionary: valueDictionary)
}
// MARK: Internal
enum CodingKeys: String, CodingKey {
case type = "n"
case value = "v"
}
let type: DashElementType
let value: KeyframeGroup<Vector1D>
}