-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: [HL-19] Add and configure FormTextField #19
Conversation
} | ||
|
||
private func initView() { | ||
Bundle.main.loadNibNamed(FormTextFieldResources.nibName, owner: self, options: nil) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can use this handy extension to load nibs
extension UIView {
class func loadNib<T: UIView>() -> T {
return Bundle(for: T.self).loadNibNamed(String(describing: T.self), owner: nil, options: nil)!.first as! T
}
}
and your code will be like this
let view: UIView = .loadNib()
Also an improvement for this code, you can create a factory to create the view for you.
class FormTextFieldFactory {
func createView(title: String) -> FormTextField {
var view: FormTextField = .loadNib
view.setTitle(title) // just an example
return view
}
}
let factory = FormTextFieldFactory()
factory.createView(title: "Awesome") // FormTextField view
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
okay, i will read more about factory and apply on this view.
but i have a question! if i don't using this view by programmatically just using by outlet in this way factory is useful ???
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Factory pattern makes creating objects easier for you, you pass the changing values to the factory and it hides from you all the mess like loading from nib in our case.
Check this amazing resource https://refactoring.guru/design-patterns/factory-comparison
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's against the approach of using nib files in the project. The factory would be great if we're following programmatic views.
@@ -6,11 +6,14 @@ class FormTextField: UIView { | |||
// MARK: - Outlets | |||
// | |||
|
|||
@IBOutlet weak private(set) var contentView: UIView! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why changed from private(set)
to private
?
How will you test the outlets if they are private?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
even don't access the outlets from view controller just working with available functions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes but we need to access them for testing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The branch name should follow snack-case.
Good job 🙏🏼
|
||
|
||
enum FormTextFieldResources { | ||
static let nibName: String = "FormTextField" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't use this pattern. Each view should have a reusable identifier.
// MARK: UIView+Reusable Identifier
extension UIView {
static var reusableIdentifier: String {
String("\(Self.self)")
}
}
// | ||
|
||
extension FormTextField { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// | |
extension FormTextField { | |
// | |
extension FormTextField { |
inputTextField.applyTextFieldStyle(.primary) | ||
|
||
// waiting for design of error label style | ||
//MARK: - feat: [HL-4] Add UI label styling new design |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
//MARK: - feat: [HL-4] Add UI label styling new design | |
// TODO: - feat: [HL-4] Add UI label styling new design |
titleLabel.applyStyle(.textFieldTitleLabel) | ||
inputTextField.applyTextFieldStyle(.primary) | ||
|
||
// waiting for design of error label style |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// waiting for design of error label style | |
// Waiting for the design of the error label style |
// MARK: - Outlets | ||
// |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// MARK: - Outlets | |
// | |
// MARK: Outlets |
We don't usually use MARK with separator inside the context
setLeftPaddingPoints() | ||
setRightPaddingPoints() | ||
|
||
layer.masksToBounds = true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To remove the extra edges in text field.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a workaround we may not need. Updating the textField borderStyle
to .none would be enough IMHO.
} | ||
} | ||
|
||
// MARK: - set right / left padding to text field |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We might need to remove this based on the discussion above
<subviews> | ||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="f0b-KT-Zc1"> | ||
<rect key="frame" x="0.0" y="0.0" width="604" height="147"/> | ||
<subviews> | ||
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="8" translatesAutoresizingMaskIntoConstraints="NO" id="kpw-hB-vQE"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why adding the view -- view -- stack view?
The inner view is not needed
<constraints> | ||
<constraint firstItem="kpw-hB-vQE" firstAttribute="leading" secondItem="f0b-KT-Zc1" secondAttribute="leading" id="BV2-PC-nWa"/> | ||
<constraint firstItem="kpw-hB-vQE" firstAttribute="top" secondItem="f0b-KT-Zc1" secondAttribute="top" constant="12" id="WA4-Rw-rgb"/> | ||
<constraint firstAttribute="trailing" secondItem="kpw-hB-vQE" secondAttribute="trailing" id="s96-Y7-ekV"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bottom constraint is missing
<color key="backgroundColor" systemColor="systemBackgroundColor"/> | ||
<constraints> | ||
<constraint firstItem="kpw-hB-vQE" firstAttribute="leading" secondItem="f0b-KT-Zc1" secondAttribute="leading" id="BV2-PC-nWa"/> | ||
<constraint firstItem="kpw-hB-vQE" firstAttribute="top" secondItem="f0b-KT-Zc1" secondAttribute="top" constant="12" id="WA4-Rw-rgb"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
<constraint firstItem="kpw-hB-vQE" firstAttribute="top" secondItem="f0b-KT-Zc1" secondAttribute="top" constant="12" id="WA4-Rw-rgb"/> | |
<constraint firstItem="kpw-hB-vQE" firstAttribute="top" secondItem="f0b-KT-Zc1" secondAttribute="top" id="WA4-Rw-rgb"/> |
Let's add the reusable views without spacing and let the parents do that if needed.
Installing swift lint is mandatory, the code should not compile. |
static let defaultHeight: CGFloat = 55.0 | ||
static let defaultPadding: CGFloat = 12.0 | ||
static let defaultBorderWidth: CGFloat = 1.5 | ||
static let defaultBorderColor: UIColor = UIColor(red: 0.851, green: 0.851, blue: 0.851, alpha: 1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TODO for updating the colors here as well
// | ||
// UIView+ReusableIdentifier.swift | ||
// Healthy | ||
// | ||
// Created by Ahmed Nasr on 25/05/2023. | ||
// | ||
|
||
import UIKit | ||
|
||
|
||
// MARK: UIView+Reusable Identifier |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// | |
// UIView+ReusableIdentifier.swift | |
// Healthy | |
// | |
// Created by Ahmed Nasr on 25/05/2023. | |
// | |
import UIKit | |
// MARK: UIView+Reusable Identifier | |
import UIKit | |
// MARK: UIView+Reusable Identifier |
func setError(_ errorText: String) { | ||
self.errorLabel.text = "" | ||
self.errorLabel.text = errorText | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
func setError(_ errorText: String) { | |
self.errorLabel.text = "" | |
self.errorLabel.text = errorText | |
} | |
func setError(_ errorText: String?) { | |
self.errorLabel.text = errorText | |
} |
This should be computed property as well.
|
||
import UIKit |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
import UIKit | |
import UIKit |
var title: String = "" { | ||
didSet { | ||
self.titleLabel.text = title | ||
} | ||
} | ||
|
||
var placeholder: String = "" { | ||
didSet { | ||
self.inputTextField.placeholder = placeholder | ||
} | ||
} | ||
|
||
var keyboardType: UIKeyboardType = .default { | ||
didSet { | ||
self.inputTextField.keyboardType = keyboardType | ||
} | ||
} | ||
|
||
var error: String = "" { | ||
didSet { | ||
self.errorLabel.text = error | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
var title: String = "" { | |
didSet { | |
self.titleLabel.text = title | |
} | |
} | |
var placeholder: String = "" { | |
didSet { | |
self.inputTextField.placeholder = placeholder | |
} | |
} | |
var keyboardType: UIKeyboardType = .default { | |
didSet { | |
self.inputTextField.keyboardType = keyboardType | |
} | |
} | |
var error: String = "" { | |
didSet { | |
self.errorLabel.text = error | |
} | |
} | |
var title: String = "" { | |
didSet { | |
self.titleLabel.text = title | |
} | |
} | |
var placeholder: String = "" { | |
didSet { | |
self.inputTextField.placeholder = placeholder | |
} | |
} | |
var keyboardType: UIKeyboardType = .default { | |
didSet { | |
self.inputTextField.keyboardType = keyboardType | |
} | |
} | |
var error: String = "" { | |
didSet { | |
self.errorLabel.text = error | |
} | |
} |
- All of these should be moved to a separate extension.
- They can act as setters/getters only without having any value to have only on source of truth (The views)
private func bindTextFieldChanges() { | ||
inputTextField.addTarget(self, action: #selector(textEditingChanged), for: .editingChanged) | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
private func bindTextFieldChanges() { | |
inputTextField.addTarget(self, action: #selector(textEditingChanged), for: .editingChanged) | |
} | |
private func configureTextFieldObserver() { | |
inputTextField.addTarget(self, action: #selector(textEditingChanged), for: .editingChanged) | |
} |
} | ||
} | ||
|
||
// MARK: Internal Handlers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// MARK: Internal Handlers | |
// MARK: Handlers |
We have plans to apply modularity in the app, we mostly will forget to update this title to Public instead of Internal. This is why we may try to avoid namings like this.
@ahmednasr8898 Hello 👀 |
// MARK: Getters & Setters properties | ||
|
||
extension FormTextField { | ||
var title: String { | ||
get { | ||
return self.titleLabel.text ?? "" | ||
} | ||
|
||
set { | ||
self.titleLabel.text = newValue | ||
} | ||
} | ||
|
||
var placeholder: String { | ||
get { | ||
return self.inputTextField.placeholder ?? "" | ||
} | ||
|
||
set { | ||
self.inputTextField.placeholder = newValue | ||
} | ||
} | ||
|
||
var keyboardType: UIKeyboardType { | ||
get { | ||
return self.inputTextField.keyboardType | ||
} | ||
|
||
set { | ||
self.inputTextField.keyboardType = newValue | ||
} | ||
} | ||
|
||
var error: String { | ||
get { | ||
return self.errorLabel.text ?? "" | ||
} | ||
|
||
set { | ||
self.errorLabel.text = newValue | ||
} | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
// MARK: Getters & Setters properties | |
extension FormTextField { | |
var title: String { | |
get { | |
return self.titleLabel.text ?? "" | |
} | |
set { | |
self.titleLabel.text = newValue | |
} | |
} | |
var placeholder: String { | |
get { | |
return self.inputTextField.placeholder ?? "" | |
} | |
set { | |
self.inputTextField.placeholder = newValue | |
} | |
} | |
var keyboardType: UIKeyboardType { | |
get { | |
return self.inputTextField.keyboardType | |
} | |
set { | |
self.inputTextField.keyboardType = newValue | |
} | |
} | |
var error: String { | |
get { | |
return self.errorLabel.text ?? "" | |
} | |
set { | |
self.errorLabel.text = newValue | |
} | |
} | |
} | |
// MARK: Properties | |
extension FormTextField { | |
var title: String { | |
get { | |
return self.titleLabel.text ?? "" | |
} | |
set { | |
self.titleLabel.text = newValue | |
} | |
} | |
var placeholder: String { | |
get { | |
return self.inputTextField.placeholder ?? "" | |
} | |
set { | |
self.inputTextField.placeholder = newValue | |
} | |
} | |
var keyboardType: UIKeyboardType { | |
get { | |
return self.inputTextField.keyboardType | |
} | |
set { | |
self.inputTextField.keyboardType = newValue | |
} | |
} | |
var error: String { | |
get { | |
return self.errorLabel.text ?? "" | |
} | |
set { | |
self.errorLabel.text = newValue | |
} | |
} | |
} |
…gure-formTextField # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Generated/UIImage.Generated.swift
Merging the ticket to unblock the team. TODOs will be addressed in https://motoon-eg.atlassian.net/browse/HL-46. @ahmednasr8898 Please acknowledge the message and LMK if you have any questions. |
commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com>
…eat/HL-23-Create-account-screen-layout * 'develop' of https://github.com/motoon-eg/healthy: feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) feat: [HL-36] Create logger with default logger🍕 (#36) build: Ignore unmodified files in SwiftLint script 🔨 (#42) feat: [HL-19] Add and configure FormTextField (#19) fix: Colors not added to target files (#43) chore: Auto generate colors via SwiftGen 🎨 (#35) revert: feat: [HL-25] add validator with the ability to validate email & password✌️ revert: Missing comments in splash screen 👨🏼🔧 (#40) feat: [HL-20] Create sign button with social media view 📖 (#25) feat: [HL-3] Add splash screen 🍕 (#38) feat: [HL-18] Add and configure Xcode template 🔨 (#22) # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Generated/UIImage.Generated.swift # Healthy/Classes/Modules/Login/LoginViewController.swift
* Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com>
commit 32f59ac Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346e. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a1 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e525 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com>
commit 32f59ac Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346e. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a1 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e525 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com>
commit 9b89675 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346e. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a1 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e525 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com>
* Set LoginViewController tests * Set signInWithGoogle and Facebook tests * Use setUp method * Squashed commit of the following: commit 32f59ac Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346e. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a1 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e525 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 32f59ac Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346e. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a1 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e525 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 9b89675 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346e. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a1 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 7872063 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28c Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e525 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Resolve Conflicts
commit 56c1f16edb70588000d4ca80248947d2f5b77ac1 Author: abdallah-7698 <andro7698@gmail.com> Date: Thu Jun 15 22:38:09 2023 +0300 Squashed commit of the following: commit 29531dc78ac7b84397875b1850f757a122f3c56f Author: abdallah-7698 <andro7698@gmail.com> Date: Thu Jun 15 18:36:41 2023 +0300 make code better commit cfb994fbefa0c8aeb956135562010a8129fee2c7 Author: abdallah-7698 <andro7698@gmail.com> Date: Tue Jun 6 19:52:00 2023 +0300 add code review changes commit 766d8e0fe47a3c13605d63549cdf9b23b5b2cd48 Merge: e93aab1 3bb72bc Author: abdallah-7698 <andro7698@gmail.com> Date: Fri Jun 2 09:16:38 2023 +0300 Merge branch 'develop' into feat/add-fonts-and-provide-access-for-it # Conflicts: # Healthy.xcodeproj/project.pbxproj commit e93aab1ebc7f0afcbcde8a264781862c1c331b65 Author: abdallah-7698 <andro7698@gmail.com> Date: Fri Jun 2 02:17:21 2023 +0300 Replace the font and adjust the names commit 66006526f46d76ef236983c18f0d0fb618d20d53 Author: Ahmed M. Hassan <ahmdmhasn@gmail.com> Date: Fri Jun 2 00:53:34 2023 +0300 Add fonts commit 13fc58a40a98ef92bb2236ec7952316f969abeb1 Author: abdallah-7698 <andro7698@gmail.com> Date: Thu Jun 1 20:04:31 2023 +0300 Add custom fonts to extension commit 05b5cc4d8089c2e67065a12276bc646e390f3dae Author: abdallah-7698 <andro7698@gmail.com> Date: Thu Jun 1 15:05:12 2023 +0300 Add fonts to info.plist and add appFont func on the UIFont extension commit 6140f9d17b08fadfa94e916ef88de8bef3c9e7e8 Author: abdallah-7698 <andro7698@gmail.com> Date: Thu Jun 1 14:02:20 2023 +0300 Create UIFont+Style Extension commit 13284ace8cf37b7b4793752931ccd976d3ebf611 Author: abdallah-7698 <andro7698@gmail.com> Date: Wed May 31 18:12:40 2023 +0300 Add new folder with name Fonts and add custom fonts to it commit 26df4bb20db9284bc72f53ee309daaf20ca8b3a5 Author: abdallah-7698 <andro7698@gmail.com> Date: Thu Jun 15 22:19:07 2023 +0300 Squashed commit of the following: commit e57171dea68b31e6397995c727fdf7927afd633c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Thu Jun 15 20:47:10 2023 +0300 Update Healthy/Classes/Extensions/UILabel+Style/UILabelStyle.swift commit 16e1104b64c400f41c6eeb63fff531e7700e0138 Author: abdallah-7698 <andro7698@gmail.com> Date: Thu Jun 15 18:49:55 2023 +0300 add and fix review comments commit adc92a27a56b2c67ccfbc0334768dabd40c97ce8 Author: abdallah-7698 <andro7698@gmail.com> Date: Mon Jun 5 23:23:40 2023 +0300 Apply comment fix commit cb13857f457423f207f8d49dc2f502e0c65801a9 Author: Ahmed M. Hassan <ahmdmhasn@gmail.com> Date: Mon Jun 5 21:37:27 2023 +0300 Fix project settings issues commit 18b49bd27ca217fc808a4ec0a18b55877db8e88f Author: Ahmed M. Hassan <ahmdmhasn@gmail.com> Date: Mon Jun 5 21:30:07 2023 +0300 Fix merge conflicts commit b85e8ce9a10306ca4f3de2433452de8695bfa9bb Author: abdallah-7698 <andro7698@gmail.com> Date: Fri May 26 10:46:32 2023 +0300 Create UILabel with protocol and apply this protocol to UILabel styles commit ed08b5e015ee64826d5fedea199dbf7587788deb Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 10:33:21 2023 +0300 Feat:[HL-26] Sign-in page <ViewModel> Logic.🍕 (#33) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * bind with combine . * refactoring code style. * Update LoginViewController.swift --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit c63a3eb5701bcc7db3d6195105ef1048da247e42 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Wed Jun 14 02:39:54 2023 +0300 fix: Transition from SplashVC to LoginVC (#58) commit 43a111ac596fd85893649f387be9f4a3909bf602 Author: djayyab <djayyab@gmail.com> Date: Wed Jun 14 02:05:42 2023 +0300 feat: Splash screen updates 🍕 (#49) * feat/new-splash-screen🍕 * commit befor adding the UILabel+Style * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * feat/new-splash-screen🍕 * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * Rebase against develop branch * Feat[HL-3]new splash screen🍕 * fixing fsdfffggffffffffffffffffffffffffffffffffffffffffghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgjyjlt sh👩🏻🔧 * fixing splash screen 👩🏻🔧 * update splash screen 👩🏻🔧🛸 * add target * Remove additionally added launch screen and images --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ec35e4a95ad3f43c741281468dfc0c599c14c117 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 01:45:51 2023 +0300 feat: [HL-46] Enhance FormTextField borders and styles (#45) * enhance form text field * remove workaround. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 3e4d30b02c1e25613a01dfd12406feb5c1437b4d Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Tue Jun 13 21:25:54 2023 +0300 style: Update SwiftLint config and fix run script not running 🖌️ (#55) * Update SwiftLint run script * Update project in correspondence to swiftlint changes * Remove deprecated swiftlint rule * Apply code changes to match the requirements * Re-add app delegate * Update swiftlint rule * Update iOS minimum deployment target * Fix typo * Update swiftlint.yml * Remove disabled swiftlint in app delegate commit 6f128893467e8dfd6a62eef6a49f51b827d8ac17 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Sun Jun 11 22:43:21 2023 +0300 Fix build failures due to force push (#54) commit 5aee8de71722e0f21e74ae3f5261a91954bd6640 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 21:50:54 2023 +0300 feat: Add default home low level architecture 🏡 (#51) * Commit dashboard view with stack and scroll view layout * add default implementation using header view * Add missing files to project * Add assets to project * Fix git ignore commit 4f3f4e51b9bc88099ef20e0ba20a0fb250116d18 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 01:19:00 2023 +0300 test: [HL-40] Sign-in view controller <> Unit Testing 🌟. (#46) * Set LoginViewController tests * Set signInWithGoogle and Facebook tests * Use setUp method * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Resolve Conflicts commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation …
commit ed08b5e015ee64826d5fedea199dbf7587788deb Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 10:33:21 2023 +0300 Feat:[HL-26] Sign-in page <ViewModel> Logic.🍕 (#33) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * bind with combine . * refactoring code style. * Update LoginViewController.swift --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit c63a3eb5701bcc7db3d6195105ef1048da247e42 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Wed Jun 14 02:39:54 2023 +0300 fix: Transition from SplashVC to LoginVC (#58) commit 43a111ac596fd85893649f387be9f4a3909bf602 Author: djayyab <djayyab@gmail.com> Date: Wed Jun 14 02:05:42 2023 +0300 feat: Splash screen updates 🍕 (#49) * feat/new-splash-screen🍕 * commit befor adding the UILabel+Style * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * feat/new-splash-screen🍕 * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * Rebase against develop branch * Feat[HL-3]new splash screen🍕 * fixing fsdfffggffffffffffffffffffffffffffffffffffffffffghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgjyjlt sh👩🏻🔧 * fixing splash screen 👩🏻🔧 * update splash screen 👩🏻🔧🛸 * add target * Remove additionally added launch screen and images --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ec35e4a95ad3f43c741281468dfc0c599c14c117 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 01:45:51 2023 +0300 feat: [HL-46] Enhance FormTextField borders and styles (#45) * enhance form text field * remove workaround. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 3e4d30b02c1e25613a01dfd12406feb5c1437b4d Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Tue Jun 13 21:25:54 2023 +0300 style: Update SwiftLint config and fix run script not running 🖌️ (#55) * Update SwiftLint run script * Update project in correspondence to swiftlint changes * Remove deprecated swiftlint rule * Apply code changes to match the requirements * Re-add app delegate * Update swiftlint rule * Update iOS minimum deployment target * Fix typo * Update swiftlint.yml * Remove disabled swiftlint in app delegate commit 6f128893467e8dfd6a62eef6a49f51b827d8ac17 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Sun Jun 11 22:43:21 2023 +0300 Fix build failures due to force push (#54) commit 5aee8de71722e0f21e74ae3f5261a91954bd6640 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 21:50:54 2023 +0300 feat: Add default home low level architecture 🏡 (#51) * Commit dashboard view with stack and scroll view layout * add default implementation using header view * Add missing files to project * Add assets to project * Fix git ignore commit 4f3f4e51b9bc88099ef20e0ba20a0fb250116d18 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 01:19:00 2023 +0300 test: [HL-40] Sign-in view controller <> Unit Testing 🌟. (#46) * Set LoginViewController tests * Set signInWithGoogle and Facebook tests * Use setUp method * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Resolve Conflicts commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> co…
commit ed08b5e015ee64826d5fedea199dbf7587788deb Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 10:33:21 2023 +0300 Feat:[HL-26] Sign-in page <ViewModel> Logic.🍕 (#33) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * bind with combine . * refactoring code style. * Update LoginViewController.swift --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit c63a3eb5701bcc7db3d6195105ef1048da247e42 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Wed Jun 14 02:39:54 2023 +0300 fix: Transition from SplashVC to LoginVC (#58) commit 43a111ac596fd85893649f387be9f4a3909bf602 Author: djayyab <djayyab@gmail.com> Date: Wed Jun 14 02:05:42 2023 +0300 feat: Splash screen updates 🍕 (#49) * feat/new-splash-screen🍕 * commit befor adding the UILabel+Style * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * feat/new-splash-screen🍕 * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * Rebase against develop branch * Feat[HL-3]new splash screen🍕 * fixing fsdfffggffffffffffffffffffffffffffffffffffffffffghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgjyjlt sh👩🏻🔧 * fixing splash screen 👩🏻🔧 * update splash screen 👩🏻🔧🛸 * add target * Remove additionally added launch screen and images --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ec35e4a95ad3f43c741281468dfc0c599c14c117 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 01:45:51 2023 +0300 feat: [HL-46] Enhance FormTextField borders and styles (#45) * enhance form text field * remove workaround. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 3e4d30b02c1e25613a01dfd12406feb5c1437b4d Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Tue Jun 13 21:25:54 2023 +0300 style: Update SwiftLint config and fix run script not running 🖌️ (#55) * Update SwiftLint run script * Update project in correspondence to swiftlint changes * Remove deprecated swiftlint rule * Apply code changes to match the requirements * Re-add app delegate * Update swiftlint rule * Update iOS minimum deployment target * Fix typo * Update swiftlint.yml * Remove disabled swiftlint in app delegate commit 6f128893467e8dfd6a62eef6a49f51b827d8ac17 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Sun Jun 11 22:43:21 2023 +0300 Fix build failures due to force push (#54) commit 5aee8de71722e0f21e74ae3f5261a91954bd6640 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 21:50:54 2023 +0300 feat: Add default home low level architecture 🏡 (#51) * Commit dashboard view with stack and scroll view layout * add default implementation using header view * Add missing files to project * Add assets to project * Fix git ignore commit 4f3f4e51b9bc88099ef20e0ba20a0fb250116d18 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 01:19:00 2023 +0300 test: [HL-40] Sign-in view controller <> Unit Testing 🌟. (#46) * Set LoginViewController tests * Set signInWithGoogle and Facebook tests * Use setUp method * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Resolve Conflicts commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> co…
commit ed08b5e015ee64826d5fedea199dbf7587788deb Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 10:33:21 2023 +0300 Feat:[HL-26] Sign-in page <ViewModel> Logic.🍕 (#33) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * bind with combine . * refactoring code style. * Update LoginViewController.swift --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit c63a3eb5701bcc7db3d6195105ef1048da247e42 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Wed Jun 14 02:39:54 2023 +0300 fix: Transition from SplashVC to LoginVC (#58) commit 43a111ac596fd85893649f387be9f4a3909bf602 Author: djayyab <djayyab@gmail.com> Date: Wed Jun 14 02:05:42 2023 +0300 feat: Splash screen updates 🍕 (#49) * feat/new-splash-screen🍕 * commit befor adding the UILabel+Style * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * feat/new-splash-screen🍕 * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * Rebase against develop branch * Feat[HL-3]new splash screen🍕 * fixing fsdfffggffffffffffffffffffffffffffffffffffffffffghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgjyjlt sh👩🏻🔧 * fixing splash screen 👩🏻🔧 * update splash screen 👩🏻🔧🛸 * add target * Remove additionally added launch screen and images --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ec35e4a95ad3f43c741281468dfc0c599c14c117 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 01:45:51 2023 +0300 feat: [HL-46] Enhance FormTextField borders and styles (#45) * enhance form text field * remove workaround. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 3e4d30b02c1e25613a01dfd12406feb5c1437b4d Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Tue Jun 13 21:25:54 2023 +0300 style: Update SwiftLint config and fix run script not running 🖌️ (#55) * Update SwiftLint run script * Update project in correspondence to swiftlint changes * Remove deprecated swiftlint rule * Apply code changes to match the requirements * Re-add app delegate * Update swiftlint rule * Update iOS minimum deployment target * Fix typo * Update swiftlint.yml * Remove disabled swiftlint in app delegate commit 6f128893467e8dfd6a62eef6a49f51b827d8ac17 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Sun Jun 11 22:43:21 2023 +0300 Fix build failures due to force push (#54) commit 5aee8de71722e0f21e74ae3f5261a91954bd6640 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 21:50:54 2023 +0300 feat: Add default home low level architecture 🏡 (#51) * Commit dashboard view with stack and scroll view layout * add default implementation using header view * Add missing files to project * Add assets to project * Fix git ignore commit 4f3f4e51b9bc88099ef20e0ba20a0fb250116d18 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 01:19:00 2023 +0300 test: [HL-40] Sign-in view controller <> Unit Testing 🌟. (#46) * Set LoginViewController tests * Set signInWithGoogle and Facebook tests * Use setUp method * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Resolve Conflicts commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> co…
* Create UILabel with protocol and apply this protocol to UILabel styles * Fix merge conflicts * Fix project settings issues * Apply comment fix * add and fix review comments * Update Healthy/Classes/Extensions/UILabel+Style/UILabelStyle.swift * Squashed commit of the following: commit ed08b5e015ee64826d5fedea199dbf7587788deb Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 10:33:21 2023 +0300 Feat:[HL-26] Sign-in page <ViewModel> Logic.🍕 (#33) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * bind with combine . * refactoring code style. * Update LoginViewController.swift --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit c63a3eb5701bcc7db3d6195105ef1048da247e42 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Wed Jun 14 02:39:54 2023 +0300 fix: Transition from SplashVC to LoginVC (#58) commit 43a111ac596fd85893649f387be9f4a3909bf602 Author: djayyab <djayyab@gmail.com> Date: Wed Jun 14 02:05:42 2023 +0300 feat: Splash screen updates 🍕 (#49) * feat/new-splash-screen🍕 * commit befor adding the UILabel+Style * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * feat/new-splash-screen🍕 * splash screen after reviewing * splash screen after the conflict with login * After revision and solve another conflict * Rebase against develop branch * Feat[HL-3]new splash screen🍕 * fixing fsdfffggffffffffffffffffffffffffffffffffffffffffghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgjyjlt sh👩🏻🔧 * fixing splash screen 👩🏻🔧 * update splash screen 👩🏻🔧🛸 * add target * Remove additionally added launch screen and images --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ec35e4a95ad3f43c741281468dfc0c599c14c117 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Wed Jun 14 01:45:51 2023 +0300 feat: [HL-46] Enhance FormTextField borders and styles (#45) * enhance form text field * remove workaround. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 3e4d30b02c1e25613a01dfd12406feb5c1437b4d Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Tue Jun 13 21:25:54 2023 +0300 style: Update SwiftLint config and fix run script not running 🖌️ (#55) * Update SwiftLint run script * Update project in correspondence to swiftlint changes * Remove deprecated swiftlint rule * Apply code changes to match the requirements * Re-add app delegate * Update swiftlint rule * Update iOS minimum deployment target * Fix typo * Update swiftlint.yml * Remove disabled swiftlint in app delegate commit 6f128893467e8dfd6a62eef6a49f51b827d8ac17 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Sun Jun 11 22:43:21 2023 +0300 Fix build failures due to force push (#54) commit 5aee8de71722e0f21e74ae3f5261a91954bd6640 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 21:50:54 2023 +0300 feat: Add default home low level architecture 🏡 (#51) * Commit dashboard view with stack and scroll view layout * add default implementation using header view * Add missing files to project * Add assets to project * Fix git ignore commit 4f3f4e51b9bc88099ef20e0ba20a0fb250116d18 Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 01:19:00 2023 +0300 test: [HL-40] Sign-in view controller <> Unit Testing 🌟. (#46) * Set LoginViewController tests * Set signInWithGoogle and Facebook tests * Use setUp method * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Squashed commit of the following: commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * refactor: Rename checkbox icons to icon-checkbox - Change unselected icon name from ic_checkbox_not_selected to icon-checkbox-not-selected - Change selected icon name from ic_checkbox_selected to icon-checkbox-selected * chore: Remove `WorkspaceSettings.xcsettings` * style: Add mark comments for better readability and organization * 📝 docs: Add documentation for `Checkbox.swift` * style: Resolve lint warnings 🧹 --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> * Resolve Conflicts commit 9b89675089354baa4678cff0f60482b70d6bc319 Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Fri Jun 9 00:41:16 2023 +0300 build: Add Schema and skip UI tests 🧪 (#50) * Add Healthy Scheme * Add healthy tests to scheme * Add UITests and skip it commit 32f59ac3b6f797ad715ad869cffb0648470181a1 Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:27:19 2023 +0300 test: [HL-38] Create account view model <> Unit Testing ✅ 💫 (#48) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * create account view model logic * fix indentation * Fix build failures --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit 4abd92e3ee85a1b7cf27dc6db621b7621422597f Author: esraa khaled <45472327+esraakhaled@users.noreply.github.com> Date: Fri Jun 9 00:16:26 2023 +0300 feat: [HL-24] Create account screen logic (ViewModel) 🍕 (#31) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * add validator with the ability to validate email & password✌️ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * resolve conflict * Update HealthyValidationRule .swift * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == self * style: Reformat the code * revert(Assets): Remove the icons from the directory * style: Reformat the code * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * 1.add file createAccount logic 2.add both Input,output for create account logic 3.add regex to validate name * add logic to create account view controller * apply validation rules on create account logic * apply requested changes * apply requested changes * delete unused validator * modify images to PDF Format * revert file checkbox to its previous state * revert unwanted files * revert doubled files and apply the new validator * add requested changes inside CheckBoxButton * fix indentation * Apply indentation fixes * Add assertion failure for unexpected text field * Revert "Add CreateAccountViewController ✨" This reverts commit 36b127a7f7a1d074932a8ce6212938cf8ae88126. # Conflicts: # Healthy.xcodeproj/project.pbxproj # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.swift # Healthy/Classes/Modules/CreateAccount/CreateAccountViewController.xib * Revert "revert unwanted files" This reverts commit 0c5346eb9c8955668ac4f882de2fcdb4613a81e3. * Update generated images --------- Co-authored-by: AFawzy <fawzy3171@gmail.com> Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ab018a137f1c791e1506af3ead70005d70d2674b Author: Mohamed Atallah <100219531+mhmdatallaa@users.noreply.github.com> Date: Fri Jun 9 00:05:17 2023 +0300 feat: [HL-29] Sign-In with Google✨ (#34) * Configure Sing-In with Goole Button * Set transition between Splash view and Login view * clean some code * Add SignIn validator + fix test class error * Remove imported google SignIn package from SignInVC * SetUP Google SignIn adapter * remove the return keyword * delete a space * modifie authentication files * add adapter file * remove unneeded files * Rearrange authentication files * remove client ID * set link binary with googleSignIn * configure performSignIn method * fix Google signin Authentication logic * Resolve conflicts * Configure signIn method * Resolve conflicts * Resolve conflicts * Squashed commit of the following: commit 787206387b4fcce8cf6b5d34862eba12f131721c Author: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> Date: Mon Jun 5 22:55:34 2023 +0300 feat: [HL-22] add validator with the ability to validate email & password✌️ (#37) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * add validator with the ability to validate email & password✌️ resolve conflict Update HealthyValidationRule .swift * Add validators * Merge pull request #29 from motoon-eg/feat/create-validator Feat: [HL-25] add validator with the ability to validate email & password✌️ # Conflicts: # Healthy.xcodeproj/project.pbxproj * Rearrange validators * remove and restore broken refs * remove auto generated files * apply the awesome open - closed principle to the validator 💃🏻 * Update validation comments * Fix build issues --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> commit c1713ce35205d3ac35d81d1c4415e86b8a310bd3 Author: djayyab <djayyab@gmail.com> Date: Mon Jun 5 22:22:50 2023 +0300 feat: [HL-36] Create logger with default logger🍕 (#36) * add validator with the ability to validate email & password✌️ * resolve conflict * Update HealthyValidationRule .swift * Feat[HL-3]new splash screen🍕 * add-logger🍕after changes * Add logger files to project * Feat[HL-36]Add-logger🍕 * Feat[HL-36]Add-logger🍕 * Fix spaces and styling --------- Co-authored-by: Clara Mounir Adly <claramounir555@gmail.com> Co-authored-by: claramounir <107275541+claramounir@users.noreply.github.com> Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit b1ae73bbd175a8f8099e086e41719bafa21db97b Author: Ahmad Ayman Mansour <87352168+a7maad-ayman@users.noreply.github.com> Date: Mon Jun 5 22:13:51 2023 +0300 build: Ignore unmodified files in SwiftLint script 🔨 (#42) * feat(swiftlint): Ignore unmodified files in SwiftLint script * Fix asset not added to project issue --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> commit ce1e28cbe46df3cd56593b2de406dd3b047b9d3f Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Mon Jun 5 21:24:02 2023 +0300 feat: [HL-19] Add and configure FormTextField (#19) * add FormTextField Nib * configure form text field * configure project * refactoring code style. * refactoring code. * refactoring code style. * Fix linting issues * Enhance reusable identifier * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * fix property name * Refactor Signin with google implementation. * Code refactoring * Update Healthy/Classes/Utilities/Authentication/Login/GoogleLoginAuthenticator.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Update Healthy/Classes/System/Constants.swift Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Ahmed M. Hassan <ahmdmhasn@gmail.com> Co-authored-by: Ahmed M. Hassan <45182214+ahmdmhasn@users.noreply.github.com> commit 77a885b817277eecc334b979ac7d4c142c338960 Author: AhmedNasr <63086808+ahmednasr8898@users.noreply.github.com> Date: Thu Jun 8 23:53:40 2023 +0300 test: [HL-39] Sign-in page logic <> Unit Testing ✅ 💫. (#47) * finished login view model logic. * Update LoginViewModelType.swift * refactoring code style in Login View Model logic. * change naming convention. * init login view model test * make login view model test. --------- Co-authored-by: Ahmed Nasr <ahmedkhalil@paymob.com> commit 0d9e52530b04866f55e1f34c15abee78ce8ed297 Author: Abdelhamid Nasser <38096011+abdelhamid-f-nasser@users.noreply.github.com> Date: Tue Jun 6 07:33:58 2023 +0300 feat: [HL-23] Create account screen layout 🍕 (#28) * Add checkbox asset files 🖼️ - Add checkbox assets Note: Selected is png not pdf (asset unavailable) * Create CheckboxButton.swift Add checkbox button * Add CreateAccountViewController ✨ * Resolve lint warnings 🔧 - Fix File Header Violation in `CreateAccountViewController.swift` line 5 - Fix line length Violation in `CheckboxButton.swift` line 21 - Fix line length Violation in `CreateAccountViewController.swift` line 29 * Adjust layout to decrease use of constraints Adjust spacing and limit use of constraints * Refactor(CheckboxButton): change checkedImage, uncheckedImage to private * Change access modifier of IBOutlet in signUpButton to private Update the access modifiers of IBOutlets to hide the setter from external classes * refactor(Checkbox): Use ternary operator for button status checks - Use ternary operator for checking the current button statusRemove - Remove redundant properties * refactor(Checkbox): encapsulate buttonClicked() method - Changed buttonClicked to private for better privacy and encapsulation - Remove redundant check for sender == …
Description:
1- add UITextField Style in extension.
2- add FormTextField Reusable view.