Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 11 additions & 9 deletions Example/SwiftDataTables.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -399,7 +399,7 @@
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 1020;
LastUpgradeCheck = 0940;
LastUpgradeCheck = 1250;
ORGANIZATIONNAME = CocoaPods;
TargetAttributes = {
05D66E6B22B94942003004D9 = {
Expand Down Expand Up @@ -623,6 +623,7 @@
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
Expand All @@ -648,7 +649,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
Expand Down Expand Up @@ -679,6 +680,7 @@
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
Expand All @@ -697,7 +699,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
Expand All @@ -716,7 +718,7 @@
DEVELOPMENT_TEAM = "";
FRAMEWORK_SEARCH_PATHS = "";
INFOPLIST_FILE = "$(SRCROOT)/DemoSwiftDataTables/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MODULE_NAME = ExampleApp;
OTHER_LDFLAGS = "";
Expand All @@ -742,7 +744,7 @@
DEVELOPMENT_TEAM = "";
FRAMEWORK_SEARCH_PATHS = "";
INFOPLIST_FILE = "$(SRCROOT)/DemoSwiftDataTables/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
MODULE_NAME = ExampleApp;
OTHER_LDFLAGS = "";
Expand All @@ -766,7 +768,7 @@
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_IDENTITY = "iPhone Developer";
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = dwarf;
Expand All @@ -778,7 +780,7 @@
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = SwiftDataTables/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
Expand All @@ -803,7 +805,7 @@
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_IDENTITY = "iPhone Developer";
CODE_SIGN_IDENTITY = "";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
DEFINES_MODULE = YES;
Expand All @@ -814,7 +816,7 @@
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = SwiftDataTables/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = demo.SwiftDataTables.SwiftDataTables;
Expand Down
2 changes: 1 addition & 1 deletion SwiftDataTables.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

Pod::Spec.new do |s|
s.name = 'SwiftDataTables'
s.version = '0.8.1'
s.version = '0.8.3'
s.summary = 'A Swift Data Table package that allows ordering, searching, and paging with extensible options.'
s.swift_version = '5.0'

Expand Down
48 changes: 32 additions & 16 deletions SwiftDataTables/Classes/Models/DataTableValueType.swift
Original file line number Diff line number Diff line change
Expand Up @@ -14,22 +14,38 @@ import Foundation
public enum DataTableValueType {

//MARK: - Properties
case string(String)
case int(Int)
case float(Float)
case double(Double)
case string(String, String? = nil)
case int(Int, String? = nil)
case float(Float, String? = nil)
case double(Double, String? = nil)

public var stringRepresentation: String {
get {
switch self {
case .string(let value):
return String(value)
case .int(let value):
return String(value)
case .float(let value):
return String(value)
case .double(let value):
return String(value)
case .string(let value, let format):
if let format = format {
return String(format: format, value)
} else {
return String(value)
}
case .int(let value, let format):
if let format = format {
return String(format: format, value)
} else {
return String(value)
}
case .float(let value, let format):
if let format = format {
return String(format: format, value)
} else {
return String(value)
}
case .double(let value, let format):
if let format = format {
return String(format: format, value)
} else {
return String(value)
}
}
}
}
Expand Down Expand Up @@ -67,13 +83,13 @@ extension DataTableValueType: Comparable {
}
public static func < (lhs: DataTableValueType, rhs: DataTableValueType) -> Bool {
switch (lhs, rhs) {
case (.string(let lhsValue), .string(let rhsValue)):
case (.string(let lhsValue, _), .string(let rhsValue, _)):
return lhsValue < rhsValue
case (.int(let lhsValue), .int(let rhsValue)):
case (.int(let lhsValue, _), .int(let rhsValue, _)):
return lhsValue < rhsValue
case (.float(let lhsValue), .float(let rhsValue)):
case (.float(let lhsValue, _), .float(let rhsValue, _)):
return lhsValue < rhsValue
case (.double(let lhsValue), .double(let rhsValue)):
case (.double(let lhsValue, _), .double(let rhsValue, _)):
return lhsValue < rhsValue
default:
return lhs.stringRepresentation < rhs.stringRepresentation
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import UIKit
//public let SwiftDataTableAutomaticColumnWidth: CGFloat = CGFloat.greatestFiniteMagnitude

/// This is an optional data source, you can also set static data in the initialiser of the `SwiftDataTable` class so you can avoid conforming to the data source. But for those with more dynamic content, use this protocol.
public protocol SwiftDataTableDataSource: class {
public protocol SwiftDataTableDataSource: AnyObject {

/// The number of columns to display
///
Expand Down Expand Up @@ -44,7 +44,7 @@ public protocol SwiftDataTableDataSource: class {
}

/// An optional delegate for further customisation. Default values will be used retrieved from the SwiftDataTableConfiguration file. This will can be overridden and passed into the SwiftDataTable constructor incase you wish not to use the delegate.
@objc public protocol SwiftDataTableDelegate: class {
@objc public protocol SwiftDataTableDelegate: AnyObject {

/// Fired when a cell is selected.
///
Expand Down