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/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.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 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..48080c7 --- /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 { + + public 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/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift similarity index 81% rename from solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift rename to solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift index b49d351..e7a265e 100644 --- a/solutions/devsprint-julio-fernandes-10/FinanceApp/Extensions/UITableViewCell+Extensions.swift +++ b/solutions/devsprint-julio-fernandes-10/Libraries/FinanceFoundations/FinanceFoundations/Classes/Extensions/UITableViewCell+Extensions.swift @@ -1,8 +1,8 @@ // // UITableViewCell+Extensions.swift -// FinanceApp +// FinanceFoundations // -// Created by Rodrigo Borges on 24/02/22. +// Created by Philippe Muniz Gomes on 03/03/23. // import Foundation 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 5da1c90..ab6bbcd 100644 --- a/solutions/devsprint-julio-fernandes-10/Podfile +++ b/solutions/devsprint-julio-fernandes-10/Podfile @@ -10,6 +10,7 @@ target 'FinanceApp' do pod 'ActivityDetails', :path => 'Libraries/ActivityDetails' pod 'Confirmation', :path => 'Libraries/Confirmation' pod 'Components', :path => 'Libraries/Components' + pod 'FinanceFoundations', :path => 'Libraries/FinanceFoundations' target 'FinanceAppTests' do # Pods for testing