From 81aa0da7cbb88305d9686b7eecfa4dfac7c05f00 Mon Sep 17 00:00:00 2001 From: Damodaram Date: Fri, 18 Sep 2020 12:34:57 +0530 Subject: [PATCH] sending source model to action --- .../FormFields/TextFields/BaseDropdownEntryField.swift | 7 +++++-- MVMCoreUI/Utility/MVMCoreUIConstants.h | 1 + MVMCoreUI/Utility/MVMCoreUIConstants.m | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/MVMCoreUI/Atomic/Atoms/FormFields/TextFields/BaseDropdownEntryField.swift b/MVMCoreUI/Atomic/Atoms/FormFields/TextFields/BaseDropdownEntryField.swift index f50ee379..9a0b6923 100644 --- a/MVMCoreUI/Atomic/Atoms/FormFields/TextFields/BaseDropdownEntryField.swift +++ b/MVMCoreUI/Atomic/Atoms/FormFields/TextFields/BaseDropdownEntryField.swift @@ -30,6 +30,7 @@ import UIKit public var baseDropdownEntryFieldModel: BaseDropdownEntryFieldModel? { return model as? BaseDropdownEntryFieldModel } + var additionalData: [AnyHashable: Any]? //-------------------------------------------------- // MARK: - Property Observers @@ -87,7 +88,7 @@ import UIKit public override func set(with model: MoleculeModelProtocol, _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable: Any]?) { super.set(with: model, delegateObject, additionalData) - + self.additionalData = additionalData guard let model = model as? BaseDropdownEntryFieldModel else { return } dropDownCaretView.setOptional(with: model.caretView, delegateObject, additionalData) @@ -95,7 +96,9 @@ import UIKit private func performDropdownAction() { if let actionModel = baseDropdownEntryFieldModel?.action, let actionMap = actionModel.toJSON() { - MVMCoreActionHandler.shared()?.handleAction(with: actionMap, additionalData: baseDropdownEntryFieldModel?.toJSON(), delegateObject: delegateObject) + var additionalData = self.additionalData ?? [:] + additionalData[KeySourceModel] = baseDropdownEntryFieldModel + MVMCoreActionHandler.shared()?.handleAction(with: actionMap, additionalData: additionalData, delegateObject: delegateObject) } } } diff --git a/MVMCoreUI/Utility/MVMCoreUIConstants.h b/MVMCoreUI/Utility/MVMCoreUIConstants.h index 4c0a3553..684d6044 100644 --- a/MVMCoreUI/Utility/MVMCoreUIConstants.h +++ b/MVMCoreUI/Utility/MVMCoreUIConstants.h @@ -42,6 +42,7 @@ extern NSString * const KeyIsOpaque; extern NSString * const KeyFieldKey; extern NSString * const KeyRequired; +extern NSString * const KeySourceModel; #pragma mark - Values diff --git a/MVMCoreUI/Utility/MVMCoreUIConstants.m b/MVMCoreUI/Utility/MVMCoreUIConstants.m index 5f5a9a45..e4954b01 100644 --- a/MVMCoreUI/Utility/MVMCoreUIConstants.m +++ b/MVMCoreUI/Utility/MVMCoreUIConstants.m @@ -40,6 +40,7 @@ NSString * const KeyTextColor = @"textColor"; NSString * const KeyIsHidden = @"isHidden"; NSString * const KeyIsOpaque = @"isOpaque"; +NSString * const KeySourceModel = @"sourceModel"; #pragma mark - Values