diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml new file mode 100644 index 00000000..6baf5303 --- /dev/null +++ b/.github/workflows/ios.yml @@ -0,0 +1,44 @@ +name: iOS starter workflow + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + build: + name: Build and Test default scheme using any available iPhone simulator + runs-on: macos-latest + + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Set Default Scheme + run: | + scheme_list=$(xcodebuild -list -json | tr -d "\n") + default=$(echo $scheme_list | ruby -e "require 'json'; puts JSON.parse(STDIN.gets)['project']['schemes'][0]") + echo $default | cat >default + echo Using default scheme: $default + - name: Build + env: + scheme: ${{ 'default' }} + platform: ${{ 'iOS Simulator' }} + run: | + # xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959) + device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*?[^\(]+' | head -1 | awk '{$1=$1;print}' | sed -e "s/ Simulator$//"` + if [ $scheme = default ]; then scheme=$(cat default); fi + if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi + file_to_build=`echo $file_to_build | awk '{$1=$1;print}'` + xcodebuild build-for-testing -scheme "$scheme" -"$filetype_parameter" "$file_to_build" -destination "platform=$platform,name=$device" -skipPackagePluginValidation -skipMacroValidation + - name: Test + env: + scheme: ${{ 'default' }} + platform: ${{ 'iOS Simulator' }} + run: | + # xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959) + device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*?[^\(]+' | head -1 | awk '{$1=$1;print}' | sed -e "s/ Simulator$//"` + if [ $scheme = default ]; then scheme=$(cat default); fi + if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi + file_to_build=`echo $file_to_build | awk '{$1=$1;print}'` + xcodebuild test-without-building -scheme "$scheme" -"$filetype_parameter" "$file_to_build" -destination "platform=$platform,name=$device" diff --git a/.jazzy.yaml b/.jazzy.yaml index d4d1c3a3..19aed412 100644 --- a/.jazzy.yaml +++ b/.jazzy.yaml @@ -9,7 +9,7 @@ hide_documentation_coverage: true clean: true module: NVActivityIndicatorView -module_version: 5.0.0 +module_version: 5.2.0 build_tool_arguments: - -scheme - NVActivityIndicatorView-Package diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 0c5fd869..00000000 --- a/.travis.yml +++ /dev/null @@ -1,5 +0,0 @@ -language: objective-c -osx_image: xcode11.3 -xcode_project: NVActivityIndicatorView.xcodeproj -xcode_scheme: Example -xcode_destination: platform=iOS Simulator,name=iPhone 8 diff --git a/CHANGELOG.md b/CHANGELOG.md index b16c280e..fe7ce792 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Change log +## [5.2.0](https://github.com/ninjaprox/NVActivityIndicatorView/releases/tag/5.2.0) + +- Add privacy manifest (#349) + ## [5.1.1](https://github.com/ninjaprox/NVActivityIndicatorView/releases/tag/5.1.1) - Fix #319 (amendment) diff --git a/Example/Info.plist b/Example/Info.plist index 93ac601a..caaaf847 100644 --- a/Example/Info.plist +++ b/Example/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 5.1.1 + 5.2.0 CFBundleVersion - 47 + 48 LSRequiresIPhoneOS UIApplicationSceneManifest diff --git a/Example/ViewController.swift b/Example/ViewController.swift index c42c1817..4bcddb6a 100644 --- a/Example/ViewController.swift +++ b/Example/ViewController.swift @@ -37,17 +37,30 @@ class ViewController: UIViewController, NVActivityIndicatorViewable { override func viewDidLoad() { super.viewDidLoad() - self.view.backgroundColor = UIColor(red: CGFloat(237 / 255.0), green: CGFloat(85 / 255.0), blue: CGFloat(101 / 255.0), alpha: 1) + } + + override func viewDidLayoutSubviews() { + super.viewDidLayoutSubviews() + let safeArea = view.safeAreaLayoutGuide.layoutFrame - let cols = 4 - let rows = 8 - let cellWidth = Int(self.view.frame.width / CGFloat(cols)) - let cellHeight = Int(self.view.frame.height / CGFloat(rows)) + var cols = 4 + var rows = Int(ceil(Double(presentingIndicatorTypes.count) / 4.0)) + if safeArea.width > safeArea.height { + //Landscape + cols = Int(ceil(Double(presentingIndicatorTypes.count) / 4.0)) + rows = 4 + } + let cellWidth = Int(safeArea.width / CGFloat(cols)) + let cellHeight = Int(safeArea.height / CGFloat(rows)) + + self.view.subviews.forEach { + $0.removeFromSuperview() + } for (index, indicatorType) in presentingIndicatorTypes.enumerated() { - let x = index % cols * cellWidth - let y = index / cols * cellHeight + let x = index % cols * cellWidth + Int(safeArea.origin.x) + let y = index / cols * cellHeight + Int(safeArea.origin.y) let frame = CGRect(x: x, y: y, width: cellWidth, height: cellHeight) let activityIndicatorView = NVActivityIndicatorView(frame: frame, type: indicatorType) @@ -55,6 +68,7 @@ class ViewController: UIViewController, NVActivityIndicatorViewable { animationTypeLabel.text = String(index) animationTypeLabel.sizeToFit() + animationTypeLabel.allowsDefaultTighteningForTruncation = true animationTypeLabel.textColor = UIColor.white animationTypeLabel.frame.origin.x += 5 animationTypeLabel.frame.origin.y += CGFloat(cellHeight) - animationTypeLabel.frame.size.height diff --git a/NVActivityIndicatorView.podspec b/NVActivityIndicatorView.podspec index 54288888..ef6b9ebf 100644 --- a/NVActivityIndicatorView.podspec +++ b/NVActivityIndicatorView.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'NVActivityIndicatorView' - s.version = '5.1.1' + s.version = '5.2.0' s.summary = 'A collection of awesome loading animations' s.homepage = 'https://github.com/ninjaprox/NVActivityIndicatorView' s.screenshot = 'https://raw.githubusercontent.com/ninjaprox/NVActivityIndicatorView/master/Demo.gif' diff --git a/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorViewExtended_Info.plist b/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorViewExtended_Info.plist index 86d0f6a3..d5182d37 100644 --- a/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorViewExtended_Info.plist +++ b/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorViewExtended_Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 5.1.1 + 5.2.0 CFBundleSignature ???? CFBundleVersion - 47 + 48 NSPrincipalClass diff --git a/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorView_Info.plist b/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorView_Info.plist index 86d0f6a3..d5182d37 100644 --- a/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorView_Info.plist +++ b/NVActivityIndicatorView.xcodeproj/NVActivityIndicatorView_Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 5.1.1 + 5.2.0 CFBundleSignature ???? CFBundleVersion - 47 + 48 NSPrincipalClass diff --git a/NVActivityIndicatorView.xcodeproj/project.pbxproj b/NVActivityIndicatorView.xcodeproj/project.pbxproj index 76111bf9..4fe6fa57 100644 --- a/NVActivityIndicatorView.xcodeproj/project.pbxproj +++ b/NVActivityIndicatorView.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -116,6 +116,7 @@ 1F183708248CF31500583430 /* NVActivityIndicatorPresenterTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NVActivityIndicatorPresenterTests.swift; sourceTree = ""; }; 1F183709248CF31500583430 /* NVActivityIndicatorViewTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NVActivityIndicatorViewTests.swift; sourceTree = ""; }; 1F18370A248CF31500583430 /* NVActivityIndicatorTypeTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NVActivityIndicatorTypeTests.swift; sourceTree = ""; }; + 1F73073E2BCFFEC700FBF25A /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; "NVActivityIndicatorView::NVActivityIndicatorView::Product" /* NVActivityIndicatorView.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = NVActivityIndicatorView.framework; sourceTree = BUILT_PRODUCTS_DIR; }; "NVActivityIndicatorView::NVActivityIndicatorViewExtended::Product" /* NVActivityIndicatorViewExtended.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = NVActivityIndicatorViewExtended.framework; sourceTree = BUILT_PRODUCTS_DIR; }; OBJ_10 /* NVActivityIndicatorAnimationAudioEqualizer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NVActivityIndicatorAnimationAudioEqualizer.swift; sourceTree = ""; }; @@ -241,9 +242,9 @@ OBJ_5 = { isa = PBXGroup; children = ( + 1F73073E2BCFFEC700FBF25A /* PrivacyInfo.xcprivacy */, OBJ_6 /* Package.swift */, OBJ_7 /* Sources */, - OBJ_50 /* Tests */, 1F1836DE248CEFC200583430 /* Example */, 1F1836FC248CF25600583430 /* Tests */, OBJ_51 /* Products */, @@ -251,13 +252,6 @@ ); sourceTree = ""; }; - OBJ_50 /* Tests */ = { - isa = PBXGroup; - children = ( - ); - name = Tests; - sourceTree = SOURCE_ROOT; - }; OBJ_51 /* Products */ = { isa = PBXGroup; children = ( @@ -381,6 +375,7 @@ buildRules = ( ); dependencies = ( + 1F0742D12F6A40C600304500 /* PBXTargetDependency */, ); name = NVActivityIndicatorView; productName = NVActivityIndicatorView; @@ -397,6 +392,7 @@ buildRules = ( ); dependencies = ( + 1F0742D32F6A40CF00304500 /* PBXTargetDependency */, OBJ_106 /* PBXTargetDependency */, ); name = NVActivityIndicatorViewExtended; @@ -424,9 +420,10 @@ OBJ_1 /* Project object */ = { isa = PBXProject; attributes = { + BuildIndependentTargetsInParallel = YES; LastSwiftMigration = 9999; LastSwiftUpdateCheck = 1130; - LastUpgradeCheck = 9999; + LastUpgradeCheck = 2630; TargetAttributes = { 1F1836DC248CEFC200583430 = { CreatedOnToolsVersion = 11.3.1; @@ -449,6 +446,9 @@ Base, ); mainGroup = OBJ_5; + packageReferences = ( + 1F0742CF2F6A408300304500 /* XCRemoteSwiftPackageReference "SwiftLintPlugins" */, + ); productRefGroup = OBJ_51 /* Products */; projectDirPath = ""; projectRoot = ""; @@ -568,6 +568,14 @@ /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ + 1F0742D12F6A40C600304500 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + productRef = 1F0742D02F6A40C600304500 /* SwiftLintBuildToolPlugin */; + }; + 1F0742D32F6A40CF00304500 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + productRef = 1F0742D22F6A40CF00304500 /* SwiftLintBuildToolPlugin */; + }; 1F1836F5248CF08B00583430 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = "NVActivityIndicatorView::NVActivityIndicatorViewExtended" /* NVActivityIndicatorViewExtended */; @@ -655,7 +663,11 @@ GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = Example/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = me.vinhis.Example; @@ -712,7 +724,11 @@ GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = Example/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = me.vinhis.Example; @@ -773,7 +789,12 @@ GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = Tests/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = me.vinhis.Tests; @@ -833,7 +854,12 @@ GCC_WARN_UNUSED_VARIABLE = YES; INFOPLIST_FILE = Tests/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 13.2; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; PRODUCT_BUNDLE_IDENTIFIER = me.vinhis.Tests; @@ -849,7 +875,8 @@ OBJ_100 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - CURRENT_PROJECT_VERSION = 47; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 48; ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -857,9 +884,12 @@ ); HEADER_SEARCH_PATHS = "$(inherited)"; INFOPLIST_FILE = NVActivityIndicatorView.xcodeproj/NVActivityIndicatorViewExtended_Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.10; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "$(TOOLCHAIN_DIR)/usr/lib/swift/macosx", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 5.1.0; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; @@ -872,7 +902,7 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; TARGET_NAME = NVActivityIndicatorViewExtended; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Release; @@ -880,7 +910,9 @@ OBJ_109 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CODE_SIGN_IDENTITY = ""; LD = /usr/bin/true; + MACOSX_DEPLOYMENT_TARGET = 11.0; OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -target x86_64-apple-macosx10.10 -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -package-description-version 5"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -890,7 +922,9 @@ OBJ_110 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CODE_SIGN_IDENTITY = ""; LD = /usr/bin/true; + MACOSX_DEPLOYMENT_TARGET = 11.0; OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -target x86_64-apple-macosx10.10 -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -package-description-version 5"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -901,23 +935,52 @@ isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_NS_ASSERTIONS = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "$(inherited)", "SWIFT_PACKAGE=1", "DEBUG=1", ); - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MACOSX_DEPLOYMENT_TARGET = 10.10; ONLY_ACTIVE_ARCH = YES; OTHER_SWIFT_FLAGS = "$(inherited) -DXcode"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; + STRING_CATALOG_GENERATE_SYMBOLS = YES; SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE DEBUG"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; @@ -930,23 +993,52 @@ isa = XCBuildConfiguration; buildSettings = { CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = s; GCC_PREPROCESSOR_DEFINITIONS = ( "$(inherited)", "SWIFT_PACKAGE=1", ); - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_SWIFT_FLAGS = "$(inherited) -DXcode"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; + STRING_CATALOG_GENERATE_SYMBOLS = YES; SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE"; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_VERSION = 5.0; USE_HEADERMAP = NO; }; @@ -955,7 +1047,8 @@ OBJ_56 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CURRENT_PROJECT_VERSION = 47; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 48; ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -963,9 +1056,12 @@ ); HEADER_SEARCH_PATHS = "$(inherited)"; INFOPLIST_FILE = NVActivityIndicatorView.xcodeproj/NVActivityIndicatorView_Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.10; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "$(TOOLCHAIN_DIR)/usr/lib/swift/macosx", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 5.1.0; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; @@ -978,7 +1074,7 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; TARGET_NAME = NVActivityIndicatorView; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Debug; @@ -986,7 +1082,8 @@ OBJ_57 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - CURRENT_PROJECT_VERSION = 47; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 48; ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -994,9 +1091,12 @@ ); HEADER_SEARCH_PATHS = "$(inherited)"; INFOPLIST_FILE = NVActivityIndicatorView.xcodeproj/NVActivityIndicatorView_Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.10; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "$(TOOLCHAIN_DIR)/usr/lib/swift/macosx", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 5.1.0; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; @@ -1009,7 +1109,7 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; TARGET_NAME = NVActivityIndicatorView; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Release; @@ -1017,7 +1117,8 @@ OBJ_99 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CURRENT_PROJECT_VERSION = 47; + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 48; ENABLE_TESTABILITY = YES; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", @@ -1025,9 +1126,12 @@ ); HEADER_SEARCH_PATHS = "$(inherited)"; INFOPLIST_FILE = NVActivityIndicatorView.xcodeproj/NVActivityIndicatorViewExtended_Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx"; - MACOSX_DEPLOYMENT_TARGET = 10.10; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "$(TOOLCHAIN_DIR)/usr/lib/swift/macosx", + ); + MACOSX_DEPLOYMENT_TARGET = 11.0; MARKETING_VERSION = 5.1.0; OTHER_CFLAGS = "$(inherited)"; OTHER_LDFLAGS = "$(inherited)"; @@ -1040,7 +1144,7 @@ SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; TARGET_NAME = NVActivityIndicatorViewExtended; - TVOS_DEPLOYMENT_TARGET = 9.0; + TVOS_DEPLOYMENT_TARGET = 12.0; WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Debug; @@ -1103,6 +1207,30 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCRemoteSwiftPackageReference section */ + 1F0742CF2F6A408300304500 /* XCRemoteSwiftPackageReference "SwiftLintPlugins" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/SimplyDanny/SwiftLintPlugins"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 0.63.2; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + 1F0742D02F6A40C600304500 /* SwiftLintBuildToolPlugin */ = { + isa = XCSwiftPackageProductDependency; + package = 1F0742CF2F6A408300304500 /* XCRemoteSwiftPackageReference "SwiftLintPlugins" */; + productName = "plugin:SwiftLintBuildToolPlugin"; + }; + 1F0742D22F6A40CF00304500 /* SwiftLintBuildToolPlugin */ = { + isa = XCSwiftPackageProductDependency; + package = 1F0742CF2F6A408300304500 /* XCRemoteSwiftPackageReference "SwiftLintPlugins" */; + productName = "plugin:SwiftLintBuildToolPlugin"; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = OBJ_1 /* Project object */; } diff --git a/NVActivityIndicatorView.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/NVActivityIndicatorView.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved new file mode 100644 index 00000000..f488017c --- /dev/null +++ b/NVActivityIndicatorView.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -0,0 +1,15 @@ +{ + "originHash" : "1fa961aa1dc717cea452f3389668f0f99a254f07e4eb11d190768a53798f744f", + "pins" : [ + { + "identity" : "swiftlintplugins", + "kind" : "remoteSourceControl", + "location" : "https://github.com/SimplyDanny/SwiftLintPlugins", + "state" : { + "revision" : "8a4640d14777685ba8f14e832373160498fbab92", + "version" : "0.63.2" + } + } + ], + "version" : 3 +} diff --git a/NVActivityIndicatorView.xcodeproj/xcshareddata/xcschemes/Example.xcscheme b/NVActivityIndicatorView.xcodeproj/xcshareddata/xcschemes/Example.xcscheme index 8c300cda..ccacb36b 100644 --- a/NVActivityIndicatorView.xcodeproj/xcshareddata/xcschemes/Example.xcscheme +++ b/NVActivityIndicatorView.xcodeproj/xcshareddata/xcschemes/Example.xcscheme @@ -1,6 +1,6 @@ + + + + NSPrivacyTracking + + + diff --git a/README.md b/README.md index 56c893a9..db531e9c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # NVActivityIndicatorView -[](https://travis-ci.com/ninjaprox/NVActivityIndicatorView) +[](https://github.com/ninjaprox/NVActivityIndicatorView/actions/workflows/ios.yml) [](https://img.shields.io/cocoapods/v/NVActivityIndicatorView.svg) [](https://github.com/Carthage/Carthage) diff --git a/Sources/Base/NVActivityIndicatorView.swift b/Sources/Base/NVActivityIndicatorView.swift index ebd47719..9cda1b8c 100644 --- a/Sources/Base/NVActivityIndicatorView.swift +++ b/Sources/Base/NVActivityIndicatorView.swift @@ -532,11 +532,9 @@ public final class NVActivityIndicatorView: UIView { // swiftlint:disable:next identifier_name func _setTypeName(_ typeName: String) { - for item in NVActivityIndicatorType.allCases { - if String(describing: item).caseInsensitiveCompare(typeName) == ComparisonResult.orderedSame { - type = item - break - } + for item in NVActivityIndicatorType.allCases where String(describing: item).caseInsensitiveCompare(typeName) == .orderedSame { + type = item + break } } diff --git a/Tests/Info.plist b/Tests/Info.plist index 3def15d5..eaf22198 100644 --- a/Tests/Info.plist +++ b/Tests/Info.plist @@ -15,8 +15,8 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 5.1.1 + 5.2.0 CFBundleVersion - 47 + 48 diff --git a/docs/Classes.html b/docs/Classes.html index 30327971..5dbc480d 100644 --- a/docs/Classes.html +++ b/docs/Classes.html @@ -18,7 +18,7 @@ - NVActivityIndicatorView 5.0.0 Docs + NVActivityIndicatorView 5.2.0 Docs @@ -26,7 +26,7 @@ - + View on GitHub @@ -34,8 +34,8 @@ - NVActivityIndicatorView Reference - + NVActivityIndicatorView + Classes Reference @@ -62,10 +62,10 @@ Type Aliases - FadeInAnimation + FadeInAnimation - FadeOutAnimation + FadeOutAnimation @@ -88,9 +88,9 @@ Classes - + - NVActivityIndicatorView + NVActivityIndicatorView @@ -102,14 +102,6 @@ Classes See more - - Declaration - - Swift - public final class NVActivityIndicatorView : UIView - - - @@ -121,9 +113,8 @@ Declaration - © 2020 Vinh Nguyen. All rights reserved. (Last updated: 2020-07-02) - Generated by jazzy ♪♫ v0.13.4, a Realm project. + © 2026 Vinh Nguyen. All rights reserved. (Last updated: 2026-03-18) + Generated by jazzy ♪♫ v0.15.4, a Realm project.
- NVActivityIndicatorView 5.0.0 Docs + NVActivityIndicatorView 5.2.0 Docs
- + View on GitHub
- NVActivityIndicatorView Reference - + NVActivityIndicatorView + Classes Reference
- + - NVActivityIndicatorView + NVActivityIndicatorView
Swift
public final class NVActivityIndicatorView : UIView
© 2020 Vinh Nguyen. All rights reserved. (Last updated: 2020-07-02)
Generated by jazzy ♪♫ v0.13.4, a Realm project.
© 2026 Vinh Nguyen. All rights reserved. (Last updated: 2026-03-18)
Generated by jazzy ♪♫ v0.15.4, a Realm project.