From 4569bf2c2daba9fc0e373389dd346ba773f9ebb7 Mon Sep 17 00:00:00 2001 From: munizin Date: Sun, 5 Mar 2023 21:12:28 -0300 Subject: [PATCH 1/5] Create FinanceFoudations SDK --- .../FinanceFoundations/.swiftlint.yml | 132 ++++++++++++++++++ .../Extensions/String+Extensions.swift | 15 ++ .../UITableViewCell+Extensions.swift | 20 +++ .../Generated/Strings.swift | 0 .../FinanceFoundations/Info.plist | 22 +++ .../Resources/Localizable.strings | 3 + .../FinanceFoundationsInitializerTests.swift | 15 ++ .../FinanceFoundationsTests/Info.plist | 22 +++ .../Libraries/FinanceFoundations/Gemfile | 5 + .../Libraries/FinanceFoundations/Podfile | 24 ++++ .../SampleApp/SampleApp/AppDelegate.swift | 24 ++++ .../AppIcon.appiconset/Contents.json | 98 +++++++++++++ .../SampleApp/Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 ++++ .../SampleApp/Base.lproj/Main.storyboard | 24 ++++ .../SampleApp/SampleApp/Info.plist | 43 ++++++ .../SampleApp/SampleApp/ViewController.swift | 21 +++ .../FinanceFoundations/SampleApp/project.yml | 84 +++++++++++ .../Libraries/FinanceFoundations/project.yml | 103 ++++++++++++++ .../Libraries/FinanceFoundations/swiftgen.yml | 14 ++ .../devsprint-julio-fernandes-10/Podfile | 1 + .../Output/FinanceFoundations/.swiftlint.yml | 132 ++++++++++++++++++ .../FinanceFoundations.podspec | 34 +++++ .../Extensions/String+Extensions.swift | 15 ++ .../UITableViewCell+Extensions.swift | 20 +++ .../Generated/Strings.swift | 0 .../FinanceFoundations/Info.plist | 22 +++ .../Resources/Localizable.strings | 3 + .../FinanceFoundationsInitializerTests.swift | 15 ++ .../FinanceFoundationsTests/Info.plist | 22 +++ .../Support/Output/FinanceFoundations/Gemfile | 5 + .../Support/Output/FinanceFoundations/Podfile | 24 ++++ .../SampleApp/SampleApp/AppDelegate.swift | 24 ++++ .../AppIcon.appiconset/Contents.json | 98 +++++++++++++ .../SampleApp/Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 ++++ .../SampleApp/Base.lproj/Main.storyboard | 24 ++++ .../SampleApp/SampleApp/Info.plist | 43 ++++++ .../SampleApp/SampleApp/ViewController.swift | 21 +++ .../FinanceFoundations/SampleApp/project.yml | 84 +++++++++++ .../Output/FinanceFoundations/project.yml | 103 ++++++++++++++ .../Output/FinanceFoundations/swiftgen.yml | 14 ++ 42 files changed, 1435 insertions(+) create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/.swiftlint.yml create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Generated/Strings.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Info.plist create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/Info.plist create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Gemfile create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Podfile create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Info.plist create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/ViewController.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/project.yml create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/project.yml create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/swiftgen.yml create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Generated/Strings.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml create mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/.swiftlint.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/.swiftlint.yml new file mode 100644 index 0000000..73a07e6 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/.swiftlint.yml @@ -0,0 +1,132 @@ +# ------------------------------------------------------------------------------ +# INCLUDE, EXCLUDE & IGNORED PATHS +# ------------------------------------------------------------------------------ + +# paths to ignore during linting. +excluded: + - Pods + - SampleApp + - SampleAppTests + +# ------------------------------------------------------------------------------ +# EXCLUDE & IGNORED RULES +# ------------------------------------------------------------------------------ + +# rule identifiers to exclude from running +disabled_rules: + - trailing_whitespace + - large_tuple + - missing_docs + - cyclomatic_complexity + - for_where + - class_delegate_protocol + - private_over_fileprivate +opt_in_rules: # some rules are only opt-in + - overridden_super_call + - closure_spacing + - closure_end_indentation + - redundant_nil_coalescing + - operator_usage_whitespace + - explicit_init + - vertical_parameter_alignment_on_call + - conditional_returns_on_newline + # Find all the available rules by running: + # swiftlint rules + +# ------------------------------------------------------------------------------ +# LENGHT RULES +# ------------------------------------------------------------------------------ + +# file +file_length: + warning: 1500 # lenght considered warning + error: 1700 +# type body +type_body_length: + - 400 # lenght considered warning + +# code line +line_length: 500 + +#function_parameter_count +function_parameter_count: + warning: 15 + error: 20 + +# ------------------------------------------------------------------------------ +# NAMING RULES +# ------------------------------------------------------------------------------ + +identifier_name: + severity: warning + min_length: 1 # only warning + max_length: 80 # warning + excluded: # excluded via string array + - id + - URL + - url + - map + - key + - rhs + - lhs + - Strings + allowed_symbols: ["_"] # these are allowed in type names + +type_name: + min_length: 3 # only warning + max_length: # warning and error + warning: 40 + error: 200 + excluded: iPhone # excluded via string + allowed_symbols: ["_"] # these are allowed in type names + +shorthand_operator: warning +type_name: warning +force_cast: warning + +# ------------------------------------------------------------------------------ +# CUSTOM RULES +# ------------------------------------------------------------------------------ + +custom_rules: + + # Style Guide + sg_nil_verification: + name: "SG nil verification" + regex: "(!=[ ]*nil[ ]*[{][ ]*[}]|==[ ]*nil[ ]*[{][ ]*[}])" + message: "Avoid use != nil {} or == nil {}. Example: instead of using 'param != nil {} else', use 'param == nil'" + severity: warning + + # Style Guide + is_not_empty_rule: + name: "Not empty verification SG" + regex: "([.]count|[.]length[(][)] )[ ]*>[ ]*0" + message: "Use IsNotEmpty instead of count > 0" + severity: warning + + # Style Guide + isEmpty_rule: + name: "Empty verification SG" + regex: "([.]count|[.]length[(][)] )[ ]*==[ ]*0" + message: "Use isEmpty instead of count == 0" + severity: warning + + # Use to avoid unnecessary inheritance + viewModel_unnecessary_inheritance: + name: "Presenter Inheritance " + regex: "Presenter[ ]*:[ ]*NSObject" + message: "Presenter unnecessary inheritance" + severity: warning + + # Use localized before to upperCase or lowerCase a String + localized_rule: + name: "Localized rule" + regex: "cased[(][])].localized" + message: "Use localized before to upperCase or lowerCase a String" + severity: warning + +# ------------------------------------------------------------------------------ +# REPORTER TYPE (xcode, json, csv, checkstyle, junit, html, emoji) +# ------------------------------------------------------------------------------ + +reporter: "xcode" diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift new file mode 100644 index 0000000..06b941a --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift @@ -0,0 +1,15 @@ +// +// String+Extensions.swift +// FinanceFoundations +// +// Created by Philippe Muniz Gomes on 03/03/23. +// + +import Foundation + +extension String { + + static func activityDetails(with price: Float, and time: String) -> String { + return "$\(price) • \(time)" + } +} diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift new file mode 100644 index 0000000..e7a265e --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift @@ -0,0 +1,20 @@ +// +// UITableViewCell+Extensions.swift +// FinanceFoundations +// +// Created by Philippe Muniz Gomes on 03/03/23. +// + +import Foundation +import UIKit + +extension UITableViewCell { + + class func classIdentifier() -> String { + guard let className = String(describing: self).components(separatedBy: ".").last else { + return "" + } + + return className + } +} diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Generated/Strings.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Generated/Strings.swift new file mode 100644 index 0000000..e69de29 diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Info.plist b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Info.plist new file mode 100644 index 0000000..2bbb57f --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings new file mode 100644 index 0000000..583c2ec --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings @@ -0,0 +1,3 @@ +// MARK: - Feature + +"Feature.Example.HelloWorld" = "Hello World from SDK!!"; \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift new file mode 100644 index 0000000..a83090e --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift @@ -0,0 +1,15 @@ +// +// FinanceFoundationsInitializerTests.swift +// FinanceFoundationsTests +// + +import XCTest +@testable import FinanceFoundations + +final class FinanceFoundationsInitializerTests: XCTestCase { + + func testHellorWorld() { + XCTAssertEqual(FinanceFoundationsInitializer.helloWorld(), "Hello World from SDK!!") + } + +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/Info.plist b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/Info.plist new file mode 100644 index 0000000..00f941d --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundationsTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Gemfile b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Gemfile new file mode 100644 index 0000000..dbc0b8e --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Gemfile @@ -0,0 +1,5 @@ +source "https://rubygems.org" + +gem "xcpretty" +gem "cocoapods", '1.10.2' +gem "xcode-install" \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Podfile b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Podfile new file mode 100644 index 0000000..c742d9c --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/Podfile @@ -0,0 +1,24 @@ + +source 'https://cdn.cocoapods.org/' + +platform :ios, '13.0' + +inhibit_all_warnings! +use_frameworks! + +workspace 'FinanceFoundations' + +target 'FinanceFoundations' do + + pod 'SwiftLint' + pod 'SwiftGen', '6.5.1' + + target 'FinanceFoundationsTests' do + # pod 'Dependency', '~> 1.0.0' + end +end + +target 'SampleApp' do + project 'SampleApp/SampleApp' + pod 'FinanceFoundations', :path => './' +end \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift new file mode 100644 index 0000000..3579659 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift @@ -0,0 +1,24 @@ +// +// AppDelegate.swift +// SampleApp +// + +import UIKit + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + + var window: UIWindow? + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + + let window = UIWindow(frame: UIScreen.main.bounds) + window.backgroundColor = .white + window.makeKeyAndVisible() + window.rootViewController = UINavigationController(rootViewController: ViewController()) + self.window = window + + return true + } + +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d8db8d6 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json new file mode 100644 index 0000000..da4a164 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..dc004f9 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard new file mode 100644 index 0000000..7ab00a0 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Info.plist b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Info.plist new file mode 100644 index 0000000..fbef167 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/Info.plist @@ -0,0 +1,43 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/ViewController.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/ViewController.swift new file mode 100644 index 0000000..8a2c5e8 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/SampleApp/ViewController.swift @@ -0,0 +1,21 @@ +// +// ViewController.swift +// SampleApp +// + +import UIKit +import FinanceFoundations + +final class ViewController: UIViewController { + + override func viewDidAppear(_ animated: Bool) { + super.viewDidAppear(animated) + + title = "Sample App" + + let alert = UIAlertController(title: "FinanceFoundations", message: FinanceFoundationsInitializer.helloWorld(), preferredStyle: .alert) + alert.addAction(.init(title: "OK", style: .default, handler: nil)) + present(alert, animated: true, completion: nil) + } + +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/project.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/project.yml new file mode 100644 index 0000000..65d71b7 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/SampleApp/project.yml @@ -0,0 +1,84 @@ +#================================================================================================== +# Xcodegen documentation +# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme +#================================================================================================== + +#================================================================================================== +name: SampleApp +#================================================================================================== + +settings: + MARKETING_VERSION: "1.0.0" + SWIFT_VERSION: 5.4 + VERSIONING_SYSTEM: "apple-generic" + CODE_SIGN_IDENTITY: "iPhone Developer" + CLANG_ENABLE_OBJC_WEAK: "YES" + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES" + ARCHS: $(ARCHS_STANDARD) + +options: + xcodeVersion: "13.0" + createIntermediateGroups: true + deploymentTarget: + iOS: "13.0" + +configs: + Release: release + Adhoc: release + Debug: debug + +#================================================================================================== +targets: +#================================================================================================== + + SampleApp: + + platform: iOS + type: application + + sources: + - path: SampleApp + + settings: + groups: + - commonSettings + + base: + INFOPLIST_FILE: SampleApp/Info.plist + +#================================================================================================== +schemes: +#================================================================================================== + +#____________________________________________________________ +# Debug + + Sample: + build: + targets: + SampleApp: [run, archive] + parallelizeBuild: true + buildImplicitDependencies: true + run: + config: Debug + archive: + config: Release + +#================================================================================================== +settingGroups: +#================================================================================================== + +# Common build settings + + commonSettings: + base: + PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendgenerator.sample-app + CODE_SIGN_STYLE: "Manual" + DEVELOPMENT_TEAM: "" + ENABLE_BITCODE: "NO" + TARGETED_DEVICE_FAMILY: "1" + ARCHS: "$(ARCHS_STANDARD)" + LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks" + OTHER_SWIFT_FLAGS: "$(inherited) -D COCOAPODS" + +#================================================================================================== diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/project.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/project.yml new file mode 100644 index 0000000..a5c75b1 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/project.yml @@ -0,0 +1,103 @@ +#================================================================================================== +# Xcodegen documentation +# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme +#================================================================================================== + +#================================================================================================== +name: FinanceFoundations +#================================================================================================== + +settings: + MARKETING_VERSION: "0.1.0" + SWIFT_VERSION: 5.4 + VERSIONING_SYSTEM: "apple-generic" + CODE_SIGN_IDENTITY: "iPhone Developer" + CLANG_ENABLE_OBJC_WEAK: "YES" + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES" + ARCHS: $(ARCHS_STANDARD) + +options: + xcodeVersion: "13.0" + createIntermediateGroups: true + developmentLanguage: "pt-BR" + deploymentTarget: + iOS: "13.0" + +configs: + Debug: debug + Release: release + +#================================================================================================== +targets: +#================================================================================================== + +#____________________________________________________________ +# Framework + + FinanceFoundations: + + platform: iOS + type: framework + + sources: + - path: FinanceFoundations + + preBuildScripts: + - script: "${PODS_ROOT}/SwiftGen/bin/swiftgen" + name: SwiftGen + + postBuildScripts: + - script: "${PODS_ROOT}/SwiftLint/swiftlint" + name: SwiftLint + + settings: + CODE_SIGN_STYLE: "Manual" + DEVELOPMENT_TEAM: "" + PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendGenerator.FinanceFoundations + INFOPLIST_FILE: FinanceFoundations/Info.plist + + ENABLE_BITCODE: "NO" + TARGETED_DEVICE_FAMILY: "1" + LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks" + ARCHS: $(ARCHS_STANDARD) + +#____________________________________________________________ +# Tests + + FinanceFoundationsTests: + + platform: iOS + type: bundle.unit-test + + sources: + - path: FinanceFoundationsTests + excludes: + - "__Snapshots__" + - "**/__Snapshots__" + + dependencies: + - target: FinanceFoundations + +#================================================================================================== +schemes: +#================================================================================================== + + FinanceFoundationsSDK: + build: + targets: + FinanceFoundations: [run, test] + parallelizeBuild: true + buildImplicitDependencies: true + archive: + config: Release + run: + config: Debug + test: + config: Debug + gatherCoverageData: true + coverageTargets: + - FinanceFoundations + targets: + - FinanceFoundationsTests + +#================================================================================================== \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/swiftgen.yml b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/swiftgen.yml new file mode 100644 index 0000000..e88ed56 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/swiftgen.yml @@ -0,0 +1,14 @@ +strings: + inputs: FinanceFoundations/Resources/Localizable.strings + outputs: + - templateName: structured-swift5 + params: + enumName: Localization + output: FinanceFoundations/Generated/Strings.swift + +# xcassets: +# inputs: +# - FinanceFoundations/Resources/Assets.xcassets +# outputs: +# - templateName: swift5 +# output: FinanceFoundations/Generated/Images.swift \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Podfile b/solutions/devsprint-julio-fernandes-10/Podfile index 47889cb..4c24b2f 100644 --- a/solutions/devsprint-julio-fernandes-10/Podfile +++ b/solutions/devsprint-julio-fernandes-10/Podfile @@ -7,6 +7,7 @@ target 'FinanceApp' do # Comment the next line if you don't want to use dynamic frameworks pod 'SwiftLint' pod 'FinanceService', :path => 'Libraries/FinanceService' + pod 'FinanceFoundations', :path => 'Libraries/FinanceFoundations' target 'FinanceAppTests' do # Pods for testing diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml new file mode 100644 index 0000000..73a07e6 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml @@ -0,0 +1,132 @@ +# ------------------------------------------------------------------------------ +# INCLUDE, EXCLUDE & IGNORED PATHS +# ------------------------------------------------------------------------------ + +# paths to ignore during linting. +excluded: + - Pods + - SampleApp + - SampleAppTests + +# ------------------------------------------------------------------------------ +# EXCLUDE & IGNORED RULES +# ------------------------------------------------------------------------------ + +# rule identifiers to exclude from running +disabled_rules: + - trailing_whitespace + - large_tuple + - missing_docs + - cyclomatic_complexity + - for_where + - class_delegate_protocol + - private_over_fileprivate +opt_in_rules: # some rules are only opt-in + - overridden_super_call + - closure_spacing + - closure_end_indentation + - redundant_nil_coalescing + - operator_usage_whitespace + - explicit_init + - vertical_parameter_alignment_on_call + - conditional_returns_on_newline + # Find all the available rules by running: + # swiftlint rules + +# ------------------------------------------------------------------------------ +# LENGHT RULES +# ------------------------------------------------------------------------------ + +# file +file_length: + warning: 1500 # lenght considered warning + error: 1700 +# type body +type_body_length: + - 400 # lenght considered warning + +# code line +line_length: 500 + +#function_parameter_count +function_parameter_count: + warning: 15 + error: 20 + +# ------------------------------------------------------------------------------ +# NAMING RULES +# ------------------------------------------------------------------------------ + +identifier_name: + severity: warning + min_length: 1 # only warning + max_length: 80 # warning + excluded: # excluded via string array + - id + - URL + - url + - map + - key + - rhs + - lhs + - Strings + allowed_symbols: ["_"] # these are allowed in type names + +type_name: + min_length: 3 # only warning + max_length: # warning and error + warning: 40 + error: 200 + excluded: iPhone # excluded via string + allowed_symbols: ["_"] # these are allowed in type names + +shorthand_operator: warning +type_name: warning +force_cast: warning + +# ------------------------------------------------------------------------------ +# CUSTOM RULES +# ------------------------------------------------------------------------------ + +custom_rules: + + # Style Guide + sg_nil_verification: + name: "SG nil verification" + regex: "(!=[ ]*nil[ ]*[{][ ]*[}]|==[ ]*nil[ ]*[{][ ]*[}])" + message: "Avoid use != nil {} or == nil {}. Example: instead of using 'param != nil {} else', use 'param == nil'" + severity: warning + + # Style Guide + is_not_empty_rule: + name: "Not empty verification SG" + regex: "([.]count|[.]length[(][)] )[ ]*>[ ]*0" + message: "Use IsNotEmpty instead of count > 0" + severity: warning + + # Style Guide + isEmpty_rule: + name: "Empty verification SG" + regex: "([.]count|[.]length[(][)] )[ ]*==[ ]*0" + message: "Use isEmpty instead of count == 0" + severity: warning + + # Use to avoid unnecessary inheritance + viewModel_unnecessary_inheritance: + name: "Presenter Inheritance " + regex: "Presenter[ ]*:[ ]*NSObject" + message: "Presenter unnecessary inheritance" + severity: warning + + # Use localized before to upperCase or lowerCase a String + localized_rule: + name: "Localized rule" + regex: "cased[(][])].localized" + message: "Use localized before to upperCase or lowerCase a String" + severity: warning + +# ------------------------------------------------------------------------------ +# REPORTER TYPE (xcode, json, csv, checkstyle, junit, html, emoji) +# ------------------------------------------------------------------------------ + +reporter: "xcode" diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec new file mode 100644 index 0000000..8f0e2b2 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec @@ -0,0 +1,34 @@ +Pod::Spec.new do |spec| + + spec.name = 'FinanceFoundations' + spec.version = '0.1.0' + spec.summary = 'Framework description.' + spec.homepage = 'https://framework.com' + spec.author = { 'Framework Author' => "author@email.com" } + spec.license = { :type => 'Private' } + spec.source = { :git => 'https://framework-source-code.git', + :tag => spec.version.to_s } + + spec.ios.deployment_target = '13.0' + spec.requires_arc = true + + spec.cocoapods_version = '>= 1.5' + spec.swift_version = '5.4' + + spec.source_files = 'FinanceFoundations/**/*.{h,m,swift}' + + spec.resource_bundles = { + 'FinanceFoundations' => [ + 'FinanceFoundations/**/*.xcassets', + 'FinanceFoundations/**/*.xib' + ] + } + + spec.resources = [ + 'FinanceFoundations/**/*.strings' + ] + + # spec.dependency 'Dependency', '~> 1.0.0' #Framework remoto + # spec.dependency 'Dependency' #Framework local + +end \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift new file mode 100644 index 0000000..06b941a --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift @@ -0,0 +1,15 @@ +// +// String+Extensions.swift +// FinanceFoundations +// +// Created by Philippe Muniz Gomes on 03/03/23. +// + +import Foundation + +extension String { + + static func activityDetails(with price: Float, and time: String) -> String { + return "$\(price) • \(time)" + } +} diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift new file mode 100644 index 0000000..e7a265e --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift @@ -0,0 +1,20 @@ +// +// UITableViewCell+Extensions.swift +// FinanceFoundations +// +// Created by Philippe Muniz Gomes on 03/03/23. +// + +import Foundation +import UIKit + +extension UITableViewCell { + + class func classIdentifier() -> String { + guard let className = String(describing: self).components(separatedBy: ".").last else { + return "" + } + + return className + } +} diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Generated/Strings.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Generated/Strings.swift new file mode 100644 index 0000000..e69de29 diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist new file mode 100644 index 0000000..2bbb57f --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings new file mode 100644 index 0000000..583c2ec --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings @@ -0,0 +1,3 @@ +// MARK: - Feature + +"Feature.Example.HelloWorld" = "Hello World from SDK!!"; \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift new file mode 100644 index 0000000..a83090e --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift @@ -0,0 +1,15 @@ +// +// FinanceFoundationsInitializerTests.swift +// FinanceFoundationsTests +// + +import XCTest +@testable import FinanceFoundations + +final class FinanceFoundationsInitializerTests: XCTestCase { + + func testHellorWorld() { + XCTAssertEqual(FinanceFoundationsInitializer.helloWorld(), "Hello World from SDK!!") + } + +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist new file mode 100644 index 0000000..00f941d --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile new file mode 100644 index 0000000..dbc0b8e --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile @@ -0,0 +1,5 @@ +source "https://rubygems.org" + +gem "xcpretty" +gem "cocoapods", '1.10.2' +gem "xcode-install" \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile new file mode 100644 index 0000000..c742d9c --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile @@ -0,0 +1,24 @@ + +source 'https://cdn.cocoapods.org/' + +platform :ios, '13.0' + +inhibit_all_warnings! +use_frameworks! + +workspace 'FinanceFoundations' + +target 'FinanceFoundations' do + + pod 'SwiftLint' + pod 'SwiftGen', '6.5.1' + + target 'FinanceFoundationsTests' do + # pod 'Dependency', '~> 1.0.0' + end +end + +target 'SampleApp' do + project 'SampleApp/SampleApp' + pod 'FinanceFoundations', :path => './' +end \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift new file mode 100644 index 0000000..3579659 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift @@ -0,0 +1,24 @@ +// +// AppDelegate.swift +// SampleApp +// + +import UIKit + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + + var window: UIWindow? + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + + let window = UIWindow(frame: UIScreen.main.bounds) + window.backgroundColor = .white + window.makeKeyAndVisible() + window.rootViewController = UINavigationController(rootViewController: ViewController()) + self.window = window + + return true + } + +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d8db8d6 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json new file mode 100644 index 0000000..da4a164 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..dc004f9 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard new file mode 100644 index 0000000..7ab00a0 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist new file mode 100644 index 0000000..fbef167 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist @@ -0,0 +1,43 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift new file mode 100644 index 0000000..8a2c5e8 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift @@ -0,0 +1,21 @@ +// +// ViewController.swift +// SampleApp +// + +import UIKit +import FinanceFoundations + +final class ViewController: UIViewController { + + override func viewDidAppear(_ animated: Bool) { + super.viewDidAppear(animated) + + title = "Sample App" + + let alert = UIAlertController(title: "FinanceFoundations", message: FinanceFoundationsInitializer.helloWorld(), preferredStyle: .alert) + alert.addAction(.init(title: "OK", style: .default, handler: nil)) + present(alert, animated: true, completion: nil) + } + +} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml new file mode 100644 index 0000000..65d71b7 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml @@ -0,0 +1,84 @@ +#================================================================================================== +# Xcodegen documentation +# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme +#================================================================================================== + +#================================================================================================== +name: SampleApp +#================================================================================================== + +settings: + MARKETING_VERSION: "1.0.0" + SWIFT_VERSION: 5.4 + VERSIONING_SYSTEM: "apple-generic" + CODE_SIGN_IDENTITY: "iPhone Developer" + CLANG_ENABLE_OBJC_WEAK: "YES" + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES" + ARCHS: $(ARCHS_STANDARD) + +options: + xcodeVersion: "13.0" + createIntermediateGroups: true + deploymentTarget: + iOS: "13.0" + +configs: + Release: release + Adhoc: release + Debug: debug + +#================================================================================================== +targets: +#================================================================================================== + + SampleApp: + + platform: iOS + type: application + + sources: + - path: SampleApp + + settings: + groups: + - commonSettings + + base: + INFOPLIST_FILE: SampleApp/Info.plist + +#================================================================================================== +schemes: +#================================================================================================== + +#____________________________________________________________ +# Debug + + Sample: + build: + targets: + SampleApp: [run, archive] + parallelizeBuild: true + buildImplicitDependencies: true + run: + config: Debug + archive: + config: Release + +#================================================================================================== +settingGroups: +#================================================================================================== + +# Common build settings + + commonSettings: + base: + PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendgenerator.sample-app + CODE_SIGN_STYLE: "Manual" + DEVELOPMENT_TEAM: "" + ENABLE_BITCODE: "NO" + TARGETED_DEVICE_FAMILY: "1" + ARCHS: "$(ARCHS_STANDARD)" + LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks" + OTHER_SWIFT_FLAGS: "$(inherited) -D COCOAPODS" + +#================================================================================================== diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml new file mode 100644 index 0000000..a5c75b1 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml @@ -0,0 +1,103 @@ +#================================================================================================== +# Xcodegen documentation +# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme +#================================================================================================== + +#================================================================================================== +name: FinanceFoundations +#================================================================================================== + +settings: + MARKETING_VERSION: "0.1.0" + SWIFT_VERSION: 5.4 + VERSIONING_SYSTEM: "apple-generic" + CODE_SIGN_IDENTITY: "iPhone Developer" + CLANG_ENABLE_OBJC_WEAK: "YES" + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES" + ARCHS: $(ARCHS_STANDARD) + +options: + xcodeVersion: "13.0" + createIntermediateGroups: true + developmentLanguage: "pt-BR" + deploymentTarget: + iOS: "13.0" + +configs: + Debug: debug + Release: release + +#================================================================================================== +targets: +#================================================================================================== + +#____________________________________________________________ +# Framework + + FinanceFoundations: + + platform: iOS + type: framework + + sources: + - path: FinanceFoundations + + preBuildScripts: + - script: "${PODS_ROOT}/SwiftGen/bin/swiftgen" + name: SwiftGen + + postBuildScripts: + - script: "${PODS_ROOT}/SwiftLint/swiftlint" + name: SwiftLint + + settings: + CODE_SIGN_STYLE: "Manual" + DEVELOPMENT_TEAM: "" + PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendGenerator.FinanceFoundations + INFOPLIST_FILE: FinanceFoundations/Info.plist + + ENABLE_BITCODE: "NO" + TARGETED_DEVICE_FAMILY: "1" + LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks" + ARCHS: $(ARCHS_STANDARD) + +#____________________________________________________________ +# Tests + + FinanceFoundationsTests: + + platform: iOS + type: bundle.unit-test + + sources: + - path: FinanceFoundationsTests + excludes: + - "__Snapshots__" + - "**/__Snapshots__" + + dependencies: + - target: FinanceFoundations + +#================================================================================================== +schemes: +#================================================================================================== + + FinanceFoundationsSDK: + build: + targets: + FinanceFoundations: [run, test] + parallelizeBuild: true + buildImplicitDependencies: true + archive: + config: Release + run: + config: Debug + test: + config: Debug + gatherCoverageData: true + coverageTargets: + - FinanceFoundations + targets: + - FinanceFoundationsTests + +#================================================================================================== \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml new file mode 100644 index 0000000..e88ed56 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml @@ -0,0 +1,14 @@ +strings: + inputs: FinanceFoundations/Resources/Localizable.strings + outputs: + - templateName: structured-swift5 + params: + enumName: Localization + output: FinanceFoundations/Generated/Strings.swift + +# xcassets: +# inputs: +# - FinanceFoundations/Resources/Assets.xcassets +# outputs: +# - templateName: swift5 +# output: FinanceFoundations/Generated/Images.swift \ No newline at end of file From 921318d7ed2447b2ebfbecfae8f36d14cb3723c9 Mon Sep 17 00:00:00 2001 From: munizin Date: Sun, 5 Mar 2023 21:12:46 -0300 Subject: [PATCH 2/5] Edit SDK podspec --- .../FinanceFoundations.podspec | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations.podspec diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations.podspec b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations.podspec new file mode 100644 index 0000000..7e2b348 --- /dev/null +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations.podspec @@ -0,0 +1,31 @@ +Pod::Spec.new do |spec| + + spec.name = 'FinanceFoundations' + spec.version = '0.1.0' + spec.summary = 'Foundations Framework.' + spec.homepage = 'https://framework.com' + spec.author = { 'Munizin' => "pmdm.sys@gmail.com" } + spec.license = { :type => 'Private' } + spec.source = { :git => 'https://framework-source-code.git', + :tag => spec.version.to_s } + + spec.ios.deployment_target = '13.0' + spec.requires_arc = true + + spec.cocoapods_version = '>= 1.5' + spec.swift_version = '5.4' + + spec.source_files = 'FinanceFoundations/**/*.{h,m,swift}' + + spec.resource_bundles = { + 'FinanceFoundations' => [ + 'FinanceFoundations/**/*.xcassets', + 'FinanceFoundations/**/*.xib' + ] + } + + spec.resources = [ + 'FinanceFoundations/**/*.strings' + ] + +end \ No newline at end of file From eeff7873a3e7a96f2b64a09c704cde6a2a1ffeea Mon Sep 17 00:00:00 2001 From: munizin Date: Tue, 7 Mar 2023 13:31:17 -0300 Subject: [PATCH 3/5] Remove Extension Files --- .../Extensions/String+Extensions.swift | 16 --------------- .../UITableViewCell+Extensions.swift | 20 ------------------- 2 files changed, 36 deletions(-) delete mode 100644 solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/String+Extensions.swift delete mode 100644 solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift diff --git a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/String+Extensions.swift b/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/String+Extensions.swift deleted file mode 100644 index 0189ed3..0000000 --- a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/String+Extensions.swift +++ /dev/null @@ -1,16 +0,0 @@ -// -// String+Extensions.swift -// FinanceApp -// -// Created by Rodrigo Borges on 24/02/22. -// - -import Foundation - -extension String { - - static func activityDetails(with price: Float, and time: String) -> String { - - return "$\(price) • \(time)" - } -} diff --git a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift b/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift deleted file mode 100644 index b49d351..0000000 --- a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift +++ /dev/null @@ -1,20 +0,0 @@ -// -// UITableViewCell+Extensions.swift -// FinanceApp -// -// Created by Rodrigo Borges on 24/02/22. -// - -import Foundation -import UIKit - -extension UITableViewCell { - - class func classIdentifier() -> String { - guard let className = String(describing: self).components(separatedBy: ".").last else { - return "" - } - - return className - } -} From ea12f6a641bb28652111ef3145fc67ae919b0840 Mon Sep 17 00:00:00 2001 From: munizin Date: Tue, 7 Mar 2023 13:33:12 -0300 Subject: [PATCH 4/5] Remove SDK from Output Folder --- .../Output/FinanceFoundations/.swiftlint.yml | 132 ------------------ .../FinanceFoundations.podspec | 34 ----- .../Extensions/String+Extensions.swift | 15 -- .../UITableViewCell+Extensions.swift | 20 --- .../Generated/Strings.swift | 0 .../FinanceFoundations/Info.plist | 22 --- .../Resources/Localizable.strings | 3 - .../FinanceFoundationsInitializerTests.swift | 15 -- .../FinanceFoundationsTests/Info.plist | 22 --- .../Support/Output/FinanceFoundations/Gemfile | 5 - .../Support/Output/FinanceFoundations/Podfile | 24 ---- .../SampleApp/SampleApp/AppDelegate.swift | 24 ---- .../AppIcon.appiconset/Contents.json | 98 ------------- .../SampleApp/Assets.xcassets/Contents.json | 6 - .../Base.lproj/LaunchScreen.storyboard | 25 ---- .../SampleApp/Base.lproj/Main.storyboard | 24 ---- .../SampleApp/SampleApp/Info.plist | 43 ------ .../SampleApp/SampleApp/ViewController.swift | 21 --- .../FinanceFoundations/SampleApp/project.yml | 84 ----------- .../Output/FinanceFoundations/project.yml | 103 -------------- .../Output/FinanceFoundations/swiftgen.yml | 14 -- 21 files changed, 734 deletions(-) delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Generated/Strings.swift delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml delete mode 100644 solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml deleted file mode 100644 index 73a07e6..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/.swiftlint.yml +++ /dev/null @@ -1,132 +0,0 @@ -# ------------------------------------------------------------------------------ -# INCLUDE, EXCLUDE & IGNORED PATHS -# ------------------------------------------------------------------------------ - -# paths to ignore during linting. -excluded: - - Pods - - SampleApp - - SampleAppTests - -# ------------------------------------------------------------------------------ -# EXCLUDE & IGNORED RULES -# ------------------------------------------------------------------------------ - -# rule identifiers to exclude from running -disabled_rules: - - trailing_whitespace - - large_tuple - - missing_docs - - cyclomatic_complexity - - for_where - - class_delegate_protocol - - private_over_fileprivate -opt_in_rules: # some rules are only opt-in - - overridden_super_call - - closure_spacing - - closure_end_indentation - - redundant_nil_coalescing - - operator_usage_whitespace - - explicit_init - - vertical_parameter_alignment_on_call - - conditional_returns_on_newline - # Find all the available rules by running: - # swiftlint rules - -# ------------------------------------------------------------------------------ -# LENGHT RULES -# ------------------------------------------------------------------------------ - -# file -file_length: - warning: 1500 # lenght considered warning - error: 1700 -# type body -type_body_length: - - 400 # lenght considered warning - -# code line -line_length: 500 - -#function_parameter_count -function_parameter_count: - warning: 15 - error: 20 - -# ------------------------------------------------------------------------------ -# NAMING RULES -# ------------------------------------------------------------------------------ - -identifier_name: - severity: warning - min_length: 1 # only warning - max_length: 80 # warning - excluded: # excluded via string array - - id - - URL - - url - - map - - key - - rhs - - lhs - - Strings - allowed_symbols: ["_"] # these are allowed in type names - -type_name: - min_length: 3 # only warning - max_length: # warning and error - warning: 40 - error: 200 - excluded: iPhone # excluded via string - allowed_symbols: ["_"] # these are allowed in type names - -shorthand_operator: warning -type_name: warning -force_cast: warning - -# ------------------------------------------------------------------------------ -# CUSTOM RULES -# ------------------------------------------------------------------------------ - -custom_rules: - - # Style Guide - sg_nil_verification: - name: "SG nil verification" - regex: "(!=[ ]*nil[ ]*[{][ ]*[}]|==[ ]*nil[ ]*[{][ ]*[}])" - message: "Avoid use != nil {} or == nil {}. Example: instead of using 'param != nil {} else', use 'param == nil'" - severity: warning - - # Style Guide - is_not_empty_rule: - name: "Not empty verification SG" - regex: "([.]count|[.]length[(][)] )[ ]*>[ ]*0" - message: "Use IsNotEmpty instead of count > 0" - severity: warning - - # Style Guide - isEmpty_rule: - name: "Empty verification SG" - regex: "([.]count|[.]length[(][)] )[ ]*==[ ]*0" - message: "Use isEmpty instead of count == 0" - severity: warning - - # Use to avoid unnecessary inheritance - viewModel_unnecessary_inheritance: - name: "Presenter Inheritance " - regex: "Presenter[ ]*:[ ]*NSObject" - message: "Presenter unnecessary inheritance" - severity: warning - - # Use localized before to upperCase or lowerCase a String - localized_rule: - name: "Localized rule" - regex: "cased[(][])].localized" - message: "Use localized before to upperCase or lowerCase a String" - severity: warning - -# ------------------------------------------------------------------------------ -# REPORTER TYPE (xcode, json, csv, checkstyle, junit, html, emoji) -# ------------------------------------------------------------------------------ - -reporter: "xcode" diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec deleted file mode 100644 index 8f0e2b2..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations.podspec +++ /dev/null @@ -1,34 +0,0 @@ -Pod::Spec.new do |spec| - - spec.name = 'FinanceFoundations' - spec.version = '0.1.0' - spec.summary = 'Framework description.' - spec.homepage = 'https://framework.com' - spec.author = { 'Framework Author' => "author@email.com" } - spec.license = { :type => 'Private' } - spec.source = { :git => 'https://framework-source-code.git', - :tag => spec.version.to_s } - - spec.ios.deployment_target = '13.0' - spec.requires_arc = true - - spec.cocoapods_version = '>= 1.5' - spec.swift_version = '5.4' - - spec.source_files = 'FinanceFoundations/**/*.{h,m,swift}' - - spec.resource_bundles = { - 'FinanceFoundations' => [ - 'FinanceFoundations/**/*.xcassets', - 'FinanceFoundations/**/*.xib' - ] - } - - spec.resources = [ - 'FinanceFoundations/**/*.strings' - ] - - # spec.dependency 'Dependency', '~> 1.0.0' #Framework remoto - # spec.dependency 'Dependency' #Framework local - -end \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift deleted file mode 100644 index 06b941a..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift +++ /dev/null @@ -1,15 +0,0 @@ -// -// String+Extensions.swift -// FinanceFoundations -// -// Created by Philippe Muniz Gomes on 03/03/23. -// - -import Foundation - -extension String { - - static func activityDetails(with price: Float, and time: String) -> String { - return "$\(price) • \(time)" - } -} diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift deleted file mode 100644 index e7a265e..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift +++ /dev/null @@ -1,20 +0,0 @@ -// -// UITableViewCell+Extensions.swift -// FinanceFoundations -// -// Created by Philippe Muniz Gomes on 03/03/23. -// - -import Foundation -import UIKit - -extension UITableViewCell { - - class func classIdentifier() -> String { - guard let className = String(describing: self).components(separatedBy: ".").last else { - return "" - } - - return className - } -} diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Generated/Strings.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Generated/Strings.swift deleted file mode 100644 index e69de29..0000000 diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist deleted file mode 100644 index 2bbb57f..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - $(PRODUCT_BUNDLE_PACKAGE_TYPE) - CFBundleShortVersionString - 1.0 - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - - \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings deleted file mode 100644 index 583c2ec..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundations/Resources/Localizable.strings +++ /dev/null @@ -1,3 +0,0 @@ -// MARK: - Feature - -"Feature.Example.HelloWorld" = "Hello World from SDK!!"; \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift deleted file mode 100644 index a83090e..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/FinanceFoundationsInitializerTests.swift +++ /dev/null @@ -1,15 +0,0 @@ -// -// FinanceFoundationsInitializerTests.swift -// FinanceFoundationsTests -// - -import XCTest -@testable import FinanceFoundations - -final class FinanceFoundationsInitializerTests: XCTestCase { - - func testHellorWorld() { - XCTAssertEqual(FinanceFoundationsInitializer.helloWorld(), "Hello World from SDK!!") - } - -} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist deleted file mode 100644 index 00f941d..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/FinanceFoundationsTests/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - $(PRODUCT_BUNDLE_PACKAGE_TYPE) - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile deleted file mode 100644 index dbc0b8e..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Gemfile +++ /dev/null @@ -1,5 +0,0 @@ -source "https://rubygems.org" - -gem "xcpretty" -gem "cocoapods", '1.10.2' -gem "xcode-install" \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile deleted file mode 100644 index c742d9c..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/Podfile +++ /dev/null @@ -1,24 +0,0 @@ - -source 'https://cdn.cocoapods.org/' - -platform :ios, '13.0' - -inhibit_all_warnings! -use_frameworks! - -workspace 'FinanceFoundations' - -target 'FinanceFoundations' do - - pod 'SwiftLint' - pod 'SwiftGen', '6.5.1' - - target 'FinanceFoundationsTests' do - # pod 'Dependency', '~> 1.0.0' - end -end - -target 'SampleApp' do - project 'SampleApp/SampleApp' - pod 'FinanceFoundations', :path => './' -end \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift deleted file mode 100644 index 3579659..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/AppDelegate.swift +++ /dev/null @@ -1,24 +0,0 @@ -// -// AppDelegate.swift -// SampleApp -// - -import UIKit - -@UIApplicationMain -class AppDelegate: UIResponder, UIApplicationDelegate { - - var window: UIWindow? - - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { - - let window = UIWindow(frame: UIScreen.main.bounds) - window.backgroundColor = .white - window.makeKeyAndVisible() - window.rootViewController = UINavigationController(rootViewController: ViewController()) - self.window = window - - return true - } - -} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d8db8d6..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "83.5x83.5", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", - "size" : "1024x1024", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json deleted file mode 100644 index da4a164..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index dc004f9..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard deleted file mode 100644 index 7ab00a0..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Base.lproj/Main.storyboard +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist deleted file mode 100644 index fbef167..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/Info.plist +++ /dev/null @@ -1,43 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift deleted file mode 100644 index 8a2c5e8..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/SampleApp/ViewController.swift +++ /dev/null @@ -1,21 +0,0 @@ -// -// ViewController.swift -// SampleApp -// - -import UIKit -import FinanceFoundations - -final class ViewController: UIViewController { - - override func viewDidAppear(_ animated: Bool) { - super.viewDidAppear(animated) - - title = "Sample App" - - let alert = UIAlertController(title: "FinanceFoundations", message: FinanceFoundationsInitializer.helloWorld(), preferredStyle: .alert) - alert.addAction(.init(title: "OK", style: .default, handler: nil)) - present(alert, animated: true, completion: nil) - } - -} \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml deleted file mode 100644 index 65d71b7..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/SampleApp/project.yml +++ /dev/null @@ -1,84 +0,0 @@ -#================================================================================================== -# Xcodegen documentation -# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme -#================================================================================================== - -#================================================================================================== -name: SampleApp -#================================================================================================== - -settings: - MARKETING_VERSION: "1.0.0" - SWIFT_VERSION: 5.4 - VERSIONING_SYSTEM: "apple-generic" - CODE_SIGN_IDENTITY: "iPhone Developer" - CLANG_ENABLE_OBJC_WEAK: "YES" - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES" - ARCHS: $(ARCHS_STANDARD) - -options: - xcodeVersion: "13.0" - createIntermediateGroups: true - deploymentTarget: - iOS: "13.0" - -configs: - Release: release - Adhoc: release - Debug: debug - -#================================================================================================== -targets: -#================================================================================================== - - SampleApp: - - platform: iOS - type: application - - sources: - - path: SampleApp - - settings: - groups: - - commonSettings - - base: - INFOPLIST_FILE: SampleApp/Info.plist - -#================================================================================================== -schemes: -#================================================================================================== - -#____________________________________________________________ -# Debug - - Sample: - build: - targets: - SampleApp: [run, archive] - parallelizeBuild: true - buildImplicitDependencies: true - run: - config: Debug - archive: - config: Release - -#================================================================================================== -settingGroups: -#================================================================================================== - -# Common build settings - - commonSettings: - base: - PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendgenerator.sample-app - CODE_SIGN_STYLE: "Manual" - DEVELOPMENT_TEAM: "" - ENABLE_BITCODE: "NO" - TARGETED_DEVICE_FAMILY: "1" - ARCHS: "$(ARCHS_STANDARD)" - LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks" - OTHER_SWIFT_FLAGS: "$(inherited) -D COCOAPODS" - -#================================================================================================== diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml deleted file mode 100644 index a5c75b1..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/project.yml +++ /dev/null @@ -1,103 +0,0 @@ -#================================================================================================== -# Xcodegen documentation -# https://github.com/yonaskolb/XcodeGen/blob/master/Docs/ProjectSpec.md#target-scheme -#================================================================================================== - -#================================================================================================== -name: FinanceFoundations -#================================================================================================== - -settings: - MARKETING_VERSION: "0.1.0" - SWIFT_VERSION: 5.4 - VERSIONING_SYSTEM: "apple-generic" - CODE_SIGN_IDENTITY: "iPhone Developer" - CLANG_ENABLE_OBJC_WEAK: "YES" - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: "YES" - ARCHS: $(ARCHS_STANDARD) - -options: - xcodeVersion: "13.0" - createIntermediateGroups: true - developmentLanguage: "pt-BR" - deploymentTarget: - iOS: "13.0" - -configs: - Debug: debug - Release: release - -#================================================================================================== -targets: -#================================================================================================== - -#____________________________________________________________ -# Framework - - FinanceFoundations: - - platform: iOS - type: framework - - sources: - - path: FinanceFoundations - - preBuildScripts: - - script: "${PODS_ROOT}/SwiftGen/bin/swiftgen" - name: SwiftGen - - postBuildScripts: - - script: "${PODS_ROOT}/SwiftLint/swiftlint" - name: SwiftLint - - settings: - CODE_SIGN_STYLE: "Manual" - DEVELOPMENT_TEAM: "" - PRODUCT_BUNDLE_IDENTIFIER: br.com.microfrontendGenerator.FinanceFoundations - INFOPLIST_FILE: FinanceFoundations/Info.plist - - ENABLE_BITCODE: "NO" - TARGETED_DEVICE_FAMILY: "1" - LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks" - ARCHS: $(ARCHS_STANDARD) - -#____________________________________________________________ -# Tests - - FinanceFoundationsTests: - - platform: iOS - type: bundle.unit-test - - sources: - - path: FinanceFoundationsTests - excludes: - - "__Snapshots__" - - "**/__Snapshots__" - - dependencies: - - target: FinanceFoundations - -#================================================================================================== -schemes: -#================================================================================================== - - FinanceFoundationsSDK: - build: - targets: - FinanceFoundations: [run, test] - parallelizeBuild: true - buildImplicitDependencies: true - archive: - config: Release - run: - config: Debug - test: - config: Debug - gatherCoverageData: true - coverageTargets: - - FinanceFoundations - targets: - - FinanceFoundationsTests - -#================================================================================================== \ No newline at end of file diff --git a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml b/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml deleted file mode 100644 index e88ed56..0000000 --- a/solutions/devsprint-julio-fernandes-10/Support/Output/FinanceFoundations/swiftgen.yml +++ /dev/null @@ -1,14 +0,0 @@ -strings: - inputs: FinanceFoundations/Resources/Localizable.strings - outputs: - - templateName: structured-swift5 - params: - enumName: Localization - output: FinanceFoundations/Generated/Strings.swift - -# xcassets: -# inputs: -# - FinanceFoundations/Resources/Assets.xcassets -# outputs: -# - templateName: swift5 -# output: FinanceFoundations/Generated/Images.swift \ No newline at end of file From 240793fefdecdaa9b7f3c96e6a1d7fdba6b34035 Mon Sep 17 00:00:00 2001 From: munizin Date: Tue, 7 Mar 2023 13:44:11 -0300 Subject: [PATCH 5/5] Change Access Modifier --- .../Classes/Extensions/String+Extensions.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift index 06b941a..48080c7 100644 --- a/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/String+Extensions.swift @@ -9,7 +9,7 @@ import Foundation extension String { - static func activityDetails(with price: Float, and time: String) -> String { + public static func activityDetails(with price: Float, and time: String) -> String { return "$\(price) • \(time)" } }