From 2102258f7a57190351a59b9c71f2242a131c9a28 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Sat, 4 Sep 2021 10:19:32 -0400 Subject: [PATCH 01/23] mkdir fix --- Scripts/build_aggregate.sh | 2 ++ Scripts/download_dependencies.sh | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index 514d0075..4803094c 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -1,3 +1,5 @@ +#!/bin/bash -e + unset TOOLCHAINS #Xcode 7.3 BUG FIX http://stackoverflow.com/questions/36184930/xcodebuild-7-3-cant-enable-bitcode # define output folder environment variable diff --git a/Scripts/download_dependencies.sh b/Scripts/download_dependencies.sh index f03a25e8..96c36c54 100755 --- a/Scripts/download_dependencies.sh +++ b/Scripts/download_dependencies.sh @@ -15,7 +15,7 @@ BUILD_DIR=$(xcodebuild -showBuildSettings -project ./MVMCoreUI.xcodeproj | grep FRAMEWORKS_DIR=$BUILD_DIR/Frameworks if [ ! -d $FRAMEWORKS_DIR ]; then - mkdir $FRAMEWORKS_DIR + mkdir -p $FRAMEWORKS_DIR fi ./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/MVMCore.framework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCore/1.0/MVMCore-1.0-Debug-SNAPSHOT.zip From 3c4d432f8c11d12986c793d6412eae4a3925101a Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 7 Sep 2021 12:43:47 -0400 Subject: [PATCH 02/23] testing --- Scripts/build_aggregate.sh | 2 +- Scripts/download_dependencies.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index 4803094c..e5b007ce 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -8,7 +8,7 @@ PHONE_CONFIGURATION="Release" SIMULATOR_CONFIGURATION="Debug" BUILD_DIR=$(xcodebuild -showBuildSettings -project ./MVMCoreUI.xcodeproj | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) SIMULATOR_LIBRARY_PATH="${BUILD_DIR}/${SIMULATOR_CONFIGURATION}-iphonesimulator/${C_PROJECT_NAME}.framework" -FRAMEWORKS_DIR=$BUILD_DIR/Frameworks +FRAMEWORKS_DIR=$BUILD_DIR/../../../Frameworks/MVMCoreUI UNIVERSAL_OUTPUTFOLDER=${BUILD_DIR}/universal # Step 1. Build Device and Simulator versions diff --git a/Scripts/download_dependencies.sh b/Scripts/download_dependencies.sh index 96c36c54..10d11351 100755 --- a/Scripts/download_dependencies.sh +++ b/Scripts/download_dependencies.sh @@ -12,7 +12,7 @@ if [ -z $ARTIFACTORY_URL ]; then fi BUILD_DIR=$(xcodebuild -showBuildSettings -project ./MVMCoreUI.xcodeproj | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) -FRAMEWORKS_DIR=$BUILD_DIR/Frameworks +FRAMEWORKS_DIR=$BUILD_DIR/../../../Frameworks/MVMCoreUI if [ ! -d $FRAMEWORKS_DIR ]; then mkdir -p $FRAMEWORKS_DIR From 5af99eb6939b2fb177f21de76deffd8bb7167f27 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 7 Sep 2021 12:48:03 -0400 Subject: [PATCH 03/23] change checksum location --- Scripts/download_framework.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Scripts/download_framework.sh b/Scripts/download_framework.sh index 9e9e2bb5..5d602e0a 100755 --- a/Scripts/download_framework.sh +++ b/Scripts/download_framework.sh @@ -14,7 +14,7 @@ LOGFILE=$3 LOCALDIR=$(dirname "${LOCALPATH}") LOCALBASE=$(basename "${LOCALPATH}") NEWFILEPATH="${LOCALDIR}"/$(basename "${REMOTEPATH}") -VERSIONFILE=$LOCALDIR/../Checksums/"${LOCALBASE}".txt +VERSIONFILE=$LOCALDIR/Checksums/"${LOCALBASE}".txt if [ -z $URL ]; then echo "The artifactory instance url must be specified as the first argument!" From ddcb21b493eb23ddbb692ca0f48379619a2076ea Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 7 Sep 2021 13:32:40 -0400 Subject: [PATCH 04/23] branch change --- .gitlab-ci.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d475e062..8fe891d2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -16,7 +16,6 @@ download_artifacts: script: - ./Scripts/download_dependencies.sh only: - - branches - develop tags: - bash_shell @@ -31,7 +30,6 @@ build_project: script: - ./Scripts/build_aggregate.sh only: - - branches - develop tags: - xcode_12_2 @@ -41,7 +39,6 @@ deploy_snapshot: script: - cd Scripts && ./upload_core_ui_frameworks.sh only: - - branches - develop tags: - bash_shell From f841b4d904021be60b9b347c9163938f066756ea Mon Sep 17 00:00:00 2001 From: Krishna Kishore Bandaru Date: Tue, 28 Jun 2022 18:32:08 +0530 Subject: [PATCH 05/23] Added actions for expand & collapsed to track analytics data --- .../Atomic/Molecules/Items/AccordionListItemModel.swift | 9 ++++++++- .../Molecules/Items/AccordionMoleculeTableViewCell.swift | 4 ++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/MVMCoreUI/Atomic/Molecules/Items/AccordionListItemModel.swift b/MVMCoreUI/Atomic/Molecules/Items/AccordionListItemModel.swift index a864d1c2..1d07a6f5 100644 --- a/MVMCoreUI/Atomic/Molecules/Items/AccordionListItemModel.swift +++ b/MVMCoreUI/Atomic/Molecules/Items/AccordionListItemModel.swift @@ -18,7 +18,8 @@ class AccordionListItemModel: MoleculeListItemModel { public var molecules: [ListItemModelProtocol & MoleculeModelProtocol] public var hideLineWhenExpanded: Bool = false public var selected: Bool = false - + public var expandAction: ActionModelProtocol? + public var collapseAction: ActionModelProtocol? private var added: Bool = false //-------------------------------------------------- @@ -31,6 +32,8 @@ class AccordionListItemModel: MoleculeListItemModel { case molecule case hideLineWhenExpanded case selected + case expandAction + case collapseAction } //-------------------------------------------------- @@ -62,6 +65,8 @@ class AccordionListItemModel: MoleculeListItemModel { if let hideLine = try typeContainer.decodeIfPresent(Bool.self, forKey: .hideLineWhenExpanded) { hideLineWhenExpanded = hideLine } + expandAction = try typeContainer.decodeModelIfPresent(codingKey: .expandAction) + collapseAction = try typeContainer.decodeModelIfPresent(codingKey: .collapseAction) try super.init(from: decoder) } @@ -72,6 +77,8 @@ class AccordionListItemModel: MoleculeListItemModel { try container.encodeModels(molecules, forKey: .molecules) try container.encode(selected, forKey: .selected) try container.encodeIfPresent(hideLineWhenExpanded, forKey: .hideLineWhenExpanded) + try container.encodeModelIfPresent(expandAction, forKey: .expandAction) + try container.encodeModelIfPresent(collapseAction, forKey: .collapseAction) } } diff --git a/MVMCoreUI/Atomic/Molecules/Items/AccordionMoleculeTableViewCell.swift b/MVMCoreUI/Atomic/Molecules/Items/AccordionMoleculeTableViewCell.swift index c3d37ca9..6975f8cb 100644 --- a/MVMCoreUI/Atomic/Molecules/Items/AccordionMoleculeTableViewCell.swift +++ b/MVMCoreUI/Atomic/Molecules/Items/AccordionMoleculeTableViewCell.swift @@ -54,6 +54,10 @@ if (accordionListItemModel?.hideLineWhenExpanded ?? false) && (self.bottomSeparatorView?.shouldBeVisible() ?? false) { bottomSeparatorView?.isHidden = accordionButton.isSelected } + + if let actionModel = accordionButton.isSelected ? accordionListItemModel?.expandAction : accordionListItemModel?.collapseAction { + MVMCoreActionHandler.shared()?.asyncHandleAction(with: actionModel, additionalData: [KeySourceModel: model], delegateObject: delegateObject) + } } public override func set(with model: MoleculeModelProtocol, _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable: Any]?) { From f4fa73057c6898765b836be66bac2c8cd278dab8 Mon Sep 17 00:00:00 2001 From: Sumanth Nadigadda Date: Fri, 1 Jul 2022 11:23:30 +0530 Subject: [PATCH 06/23] Fix for CXTDT-298428, New image set for Nav close button with padding. --- .../nav_close.imageset/Close-1.png | Bin 571 -> 435 bytes .../nav_close.imageset/Close-2.png | Bin 810 -> 631 bytes .../Media.xcassets/nav_close.imageset/Close.png | Bin 365 -> 257 bytes .../nav_close.imageset/Contents.json | 12 ++++++------ 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Close-1.png b/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Close-1.png index b89b3636546a466c7ceba73ec52998e856f71fbe..dd579598756b1895983ffe741e27bea3afd76bdc 100644 GIT binary patch literal 435 zcmV;k0ZjghP)X#ilqF@_H8`DvTMfWH4Fm85 zFxAGhTgs5Lq(Ap+{tDcjjiLw072MM17QkU;*McWGN~f*q2T@_^p_^Qgk?sTeU`2 zmT2mGuy5;VfE$}kxm@{>y&n_fpqGZzhBSfGgfxTGf;5HGfHa3=L%M*YdU^@M@^%Hs zsNoJyx|T~g$(nBAq-wi{lgQv6t~E=|wC_grtC=*1TS0El+|tH_*t2T@o?Qd* d?CKj3zz38L+0W2kewF|L002ovPDHLkV1gc>zia>i literal 571 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyy~ySip>6gB0F2&*1?oTk7fJ7?Qzy zb(VMDVFMnQW}T{?^GtWgty>-Pcv=I?3?uu)Qv?-GO!GJ=ebO=E!1mkuzhw?5f9c=< z`y8{xL9SDxSwP>DLqgu0UqT-nqiA`6Vj2LFd^s1Z4Gj={{d9cP)PQiao=zO7c z#?40p5*E3ZHSFHHBF=Lj+pWL3`8Ruvg+I;eDy-y=0F>2cF0wsZ%honiZO zWtbZRlet&w8nw>cYH}}ipVNj#&zN-0r#emD%KxvZabeK1z_5tEGO3qQUz&v1lzCoW zB6`Wg{B!2pl1AP+rJ831{I*Q8d~`?W9SggU$(1uHd_9v?KIz@mV-|X}=8Ep)+x1x= szR6cVn32e&-njVHy#pNA9(zxf@7vbycWZ%rE-2zWUHx3vIVCg!0QnK%ZU6uP diff --git a/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Close-2.png b/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Close-2.png index db8470f741a56daf2686bea532645a9b3e90902f..3cbe291bc07a9ab4e5c50ff9d7e41c3d2f3c4756 100644 GIT binary patch literal 631 zcmeAS@N?(olHy`uVBq!ia0vp^At21b1|(&&1r7o!&H|6fVg?39a}Z`Uj+kG?z`&&G z>EaktG3V`_hq=uL0;~^;)laCUw)C9gkX(3IMS6$RqM%lVqvtmNeOKY{^tW-+?%z{{ z9QZV!=WyxCZ#v?(-~oq-Okrgez;cJ3uxSl*Rd-#Iw zoKxk_iN2q;CzM8>KYYfnysUnGegC(+#pli+)1Ak4^?cSp$GhC3%Qmjv7oGU7-frT0 zr}oUA(~|y+f|6!kYk%a-UiHah*PCjCb^c44bpHe`a#_k~TX<_rxzAJQtDUtQv{hrP z_zrz(dc}2_d6l(KS;+JmXIA7HMh3+hkT#5jEGh8O*)!6jh#` zh&ztis>`M*1wBynXM>RIm7!Zrg`SfX)W%Z*V-{+5*ocJXWp<2R_coSZ_4Ea PrX&VWS3j3^P6ocq5`F=Q22Zqonn9FyBt&GWndHoN-g z-na9w2cO<6R92{O;nY0^M-Eb!orCmrzdu6d#!pZ!Y=N)Y00UR zzjmDR$~vhjcjWBP*CErwb_VpV*L&%4t}oU$pl9C+vokg}4?A6FMxGU(?{UrKaY^Hm zO$j+0oH|nu&V0bioO&@Lqg6KbqT~zSj!kzq?KWjPRdoK%y#lAOh-({;F>g9#+{SJ( zVX9j6EQP6SN@g0do|>}s*O{U}A(O)V3`HdkHkCgNmsM_Z`x0`p!sLYUhV=FBdzO8c zJ7`-qIDD;pc4 zp6xiWVO9@Ae^2UD-j%BvulI0rzQ4LfJ>lwama>2SDpRG^Up;>3))c!`yl(N-ElcKn z+WB3j_4H2-&-=$~*s4}9|HI1_?<)9eOVP9`B`WS=-EUldYGaaAzdkupdUi%fsQ-IQ zCOe~Pa(5OtvfeN{-pqP0nXM#EPo^bMfU#r6!GziCI$4~r&0=#FNnkL{Qi^ELHgKG= zwcSxy*oMKTD&ofOVw>jbZ?BrN*<4uqUaTxEG*>gqNO^B9xK>z_Dec6CqRFr3pDLMj ziS?Gc{PCZ@yT-G@yGywoOl3exx diff --git a/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Close.png b/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Close.png index f45880aa78c1d1cc38ffec9d806e6679a3aa35a9..dac97806313a32257b84e9a751a3d51f2cdfece3 100644 GIT binary patch literal 257 zcmeAS@N?(olHy`uVBq!ia0vp^G9b*s1|*Ak?@s|zoCO|{#S9GGLLkg|>2BR0px|at z7sn8f&bwg;c^edX_E<40@Az-h_kbfO;4+JlqwvCBab-^V%=bP!rwNC$7VCy=^B3qk zp{1nBl_SwsYPrFBjdTNR3WIb*iQVj*)1nP{vU4r04oR(uyQJRpvW4TO?!xIMCh9x} zveJ4NQ%s${KhoM8&J$PY`s7{kr;G=@D_4iVJp6mM>e8;ZTVhv^E$=gX^@%)0aPBjmQH!pTX1B&t;ucLK6Us Ca$k!8 literal 365 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjjKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlfUUH5cx4DsMS zI<=AWu!4w7uC>d;&!W46ceyQpp*DBXUg4JYHDBwrTz;s$x@&Ff5#;rV*PrKqrAxr*gwkY1$tbpeyc<7sU7h=Y>xfyZ4{Ni+O>J)9h#SI&E?d%kZ?)g& z)%R3Bkg@K^(&g-*j;TcWUttQrJ5%d?TT9;Gorh$uY+U{PqmJz&v2**(w`IRqzL4R^ z70l3ejJI1t`Id~B*#Xt+l!cq$uPoOpSnxJr`o*~!oKE*sKOUFa^>4C*^rl#aeT(c? juy;9X-{PJi{pv3>vtr_r#QA4-gS_hL>gTe~DWM4f#-DwR diff --git a/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Contents.json b/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Contents.json index 795c8827..ffda34e6 100644 --- a/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Contents.json +++ b/MVMCoreUI/SupportingFiles/Media.xcassets/nav_close.imageset/Contents.json @@ -1,23 +1,23 @@ { "images" : [ { - "idiom" : "universal", "filename" : "Close.png", + "idiom" : "universal", "scale" : "1x" }, { - "idiom" : "universal", "filename" : "Close-1.png", + "idiom" : "universal", "scale" : "2x" }, { - "idiom" : "universal", "filename" : "Close-2.png", + "idiom" : "universal", "scale" : "3x" } ], "info" : { - "version" : 1, - "author" : "xcode" + "author" : "xcode", + "version" : 1 } -} \ No newline at end of file +} From 35763a8e616c499532e7c46655a3d362ab6526d8 Mon Sep 17 00:00:00 2001 From: Sumanth Nadigadda Date: Tue, 5 Jul 2022 14:27:48 +0530 Subject: [PATCH 07/23] invoking check box toggle state, only when the check box is enabled. --- .../List/LeftVariable/ListLeftVariableCheckboxBodyText.swift | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/MVMCoreUI/Atomic/Molecules/DesignedComponents/List/LeftVariable/ListLeftVariableCheckboxBodyText.swift b/MVMCoreUI/Atomic/Molecules/DesignedComponents/List/LeftVariable/ListLeftVariableCheckboxBodyText.swift index 83f0469f..1d173406 100644 --- a/MVMCoreUI/Atomic/Molecules/DesignedComponents/List/LeftVariable/ListLeftVariableCheckboxBodyText.swift +++ b/MVMCoreUI/Atomic/Molecules/DesignedComponents/List/LeftVariable/ListLeftVariableCheckboxBodyText.swift @@ -76,7 +76,9 @@ } public override func didSelectCell(at index: IndexPath, delegateObject: MVMCoreUIDelegateObject?, additionalData: [AnyHashable: Any]?) { - checkbox.isSelected.toggle() + if checkbox.isEnabled { + checkbox.isSelected.toggle() + } } //---------------------------------------------------- From 008a2a382a262871fe0a6697abf4843f695a44da Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 15:57:01 -0400 Subject: [PATCH 08/23] XCFramework and warning fixes --- MVMCoreUI.xcodeproj/project.pbxproj | 28 +++++---- MVMCoreUI/Alerts/MVMCoreAlertHandler.m | 8 +-- MVMCoreUI/Alerts/MVMCoreAlertObject.h | 6 +- MVMCoreUI/Alerts/MVMCoreAlertObject.m | 20 +++--- MVMCoreUI/Alerts/MVMCoreAlertOperation.h | 2 +- MVMCoreUI/Alerts/MVMCoreAlertOperation.m | 4 +- .../Atomic/Atoms/Selectors/RadioBoxes.swift | 2 +- .../Extensions/UIPickerView+Extension.swift | 1 - MVMCoreUI/BaseClasses/TextField.swift | 2 +- .../MVMCoreUISplitViewController.m | 4 +- .../MVMCoreUIActionDelegateProtocol.h | 2 +- .../OtherHandlers/MVMCoreUIActionHandler.h | 2 +- .../MVMCoreUIViewControllerMappingObject.h | 2 +- .../MVMCoreUIViewControllerMappingObject.m | 2 +- MVMCoreUI/TopAlert/MVMCoreTopAlertObject.m | 6 +- MVMCoreUI/TopAlert/MVMCoreTopAlertOperation.h | 2 +- .../TopAlert/MVMCoreUITopAlertBaseView.h | 2 +- .../TopAlert/MVMCoreUITopAlertBaseView.m | 10 +-- .../MVMCoreUITopAlertExpandableView.m | 6 +- .../TopAlert/MVMCoreUITopAlertMainView.m | 6 +- .../Utility/MVMCoreUICommonViewsUtility.m | 1 - MVMCoreUI/Utility/MVMCoreUIUtility.m | 12 ++-- MVMCoreUI/Utility/Sizing/MFSizeObject.m | 5 +- Scripts/build_aggregate.sh | 61 +++++++++++++------ Scripts/download_dependencies.sh | 8 ++- Scripts/upload_core_ui_frameworks.sh | 5 +- 26 files changed, 119 insertions(+), 90 deletions(-) diff --git a/MVMCoreUI.xcodeproj/project.pbxproj b/MVMCoreUI.xcodeproj/project.pbxproj index b263a72f..99952700 100644 --- a/MVMCoreUI.xcodeproj/project.pbxproj +++ b/MVMCoreUI.xcodeproj/project.pbxproj @@ -197,7 +197,6 @@ 9445891F2385D2E900DE9FD4 /* CaretViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9445891E2385D2E900DE9FD4 /* CaretViewModel.swift */; }; 944589212385D6E900DE9FD4 /* DashLineModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 944589202385D6E900DE9FD4 /* DashLineModel.swift */; }; 944589232385DA9600DE9FD4 /* ImageViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 944589222385DA9500DE9FD4 /* ImageViewModel.swift */; }; - 9455B19C234F8A0400A574DB /* MVMAnimationFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9455B19B234F8A0400A574DB /* MVMAnimationFramework.framework */; }; 9458C3172406C8FD00930963 /* UIFont+FontWrapping.h in Headers */ = {isa = PBXBuildFile; fileRef = 9458C3152406C8FD00930963 /* UIFont+FontWrapping.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9458C3182406C8FD00930963 /* UIFont+FontWrapping.m in Sources */ = {isa = PBXBuildFile; fileRef = 9458C3162406C8FD00930963 /* UIFont+FontWrapping.m */; }; 948DB67E2326DCD90011F916 /* MultiProgress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 948DB67D2326DCD90011F916 /* MultiProgress.swift */; }; @@ -276,6 +275,7 @@ AAE7270E24AC8B9300A3ED0E /* HeadersH2CaretLink.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAE7270D24AC8B9300A3ED0E /* HeadersH2CaretLink.swift */; }; AAE96FA225341F6A0037A989 /* ListStoreLocatorModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAE96FA125341F6A0037A989 /* ListStoreLocatorModel.swift */; }; AAE96FA525341F7D0037A989 /* ListStoreLocator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAE96FA425341F7D0037A989 /* ListStoreLocator.swift */; }; + AF81F990287498F4006F7F11 /* MVMAnimationFramework.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = AF81F98F287498F3006F7F11 /* MVMAnimationFramework.xcframework */; }; AFE4A1D127DFB5EE00C458D0 /* VDSColorTokens.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = AFE4A1D027DFB5EE00C458D0 /* VDSColorTokens.xcframework */; }; AFE4A1D627DFBB6F00C458D0 /* UINavigationController+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFE4A1D527DFBB6F00C458D0 /* UINavigationController+Extension.swift */; }; BB105859248DEFF70069D008 /* UICollectionViewLeftAlignedLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB105858248DEFF60069D008 /* UICollectionViewLeftAlignedLayout.swift */; }; @@ -789,7 +789,6 @@ 9445891E2385D2E900DE9FD4 /* CaretViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CaretViewModel.swift; sourceTree = ""; }; 944589202385D6E900DE9FD4 /* DashLineModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DashLineModel.swift; sourceTree = ""; }; 944589222385DA9500DE9FD4 /* ImageViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageViewModel.swift; sourceTree = ""; }; - 9455B19B234F8A0400A574DB /* MVMAnimationFramework.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MVMAnimationFramework.framework; path = ../SharedFrameworks/MVMAnimationFramework.framework; sourceTree = ""; }; 9458C3152406C8FD00930963 /* UIFont+FontWrapping.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIFont+FontWrapping.h"; sourceTree = ""; }; 9458C3162406C8FD00930963 /* UIFont+FontWrapping.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIFont+FontWrapping.m"; sourceTree = ""; }; 948DB67D2326DCD90011F916 /* MultiProgress.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MultiProgress.swift; sourceTree = ""; }; @@ -867,6 +866,7 @@ AAE7270D24AC8B9300A3ED0E /* HeadersH2CaretLink.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HeadersH2CaretLink.swift; sourceTree = ""; }; AAE96FA125341F6A0037A989 /* ListStoreLocatorModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ListStoreLocatorModel.swift; sourceTree = ""; }; AAE96FA425341F7D0037A989 /* ListStoreLocator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ListStoreLocator.swift; sourceTree = ""; }; + AF81F98F287498F3006F7F11 /* MVMAnimationFramework.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMAnimationFramework.xcframework; path = ../SharedFrameworks/MVMAnimationFramework.xcframework; sourceTree = ""; }; AFE4A1D027DFB5EE00C458D0 /* VDSColorTokens.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = VDSColorTokens.xcframework; path = ../SharedFrameworks/VDSColorTokens.xcframework; sourceTree = ""; }; AFE4A1D527DFBB6F00C458D0 /* UINavigationController+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UINavigationController+Extension.swift"; sourceTree = ""; }; BB105858248DEFF60069D008 /* UICollectionViewLeftAlignedLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UICollectionViewLeftAlignedLayout.swift; sourceTree = ""; }; @@ -1194,8 +1194,8 @@ files = ( D29DF0E621E4F3C7003B2FB9 /* MVMCore.framework in Frameworks */, AFE4A1D127DFB5EE00C458D0 /* VDSColorTokens.xcframework in Frameworks */, - 9455B19C234F8A0400A574DB /* MVMAnimationFramework.framework in Frameworks */, 187FEB2A2844D2A600BF29C2 /* VDSFormControlsTokens.xcframework in Frameworks */, + AF81F990287498F4006F7F11 /* MVMAnimationFramework.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2028,10 +2028,10 @@ D29DF0E421E4F3C7003B2FB9 /* Frameworks */ = { isa = PBXGroup; children = ( + AF81F98F287498F3006F7F11 /* MVMAnimationFramework.xcframework */, 187FEB292844D2A600BF29C2 /* VDSFormControlsTokens.xcframework */, AFE4A1D027DFB5EE00C458D0 /* VDSColorTokens.xcframework */, - D29DF0E521E4F3C7003B2FB9 /* MVMCore.framework */, - 9455B19B234F8A0400A574DB /* MVMAnimationFramework.framework */, + D29DF0E521E4F3C7003B2FB9 /* MVMCore.framework */, ); name = Frameworks; sourceTree = ""; @@ -2581,7 +2581,7 @@ D29DF0C321E404D4003B2FB9 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1010; + LastUpgradeCheck = 1320; ORGANIZATIONNAME = "Verizon Wireless"; TargetAttributes = { D29DF0CB21E404D4003B2FB9 = { @@ -3185,7 +3185,9 @@ D29DF0D221E404D4003B2FB9 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; + BUILD_LIBRARY_FOR_DISTRIBUTION = YES; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; @@ -3209,6 +3211,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -3221,7 +3224,6 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -3236,7 +3238,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; ONLY_ACTIVE_ARCH = YES; @@ -3251,7 +3253,9 @@ D29DF0D321E404D4003B2FB9 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ALWAYS_SEARCH_USER_PATHS = NO; + BUILD_LIBRARY_FOR_DISTRIBUTION = YES; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; @@ -3275,6 +3279,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -3287,7 +3292,6 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -3296,7 +3300,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = iphoneos; @@ -3323,7 +3327,7 @@ FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../SharedFrameworks"; INFOPLIST_FILE = MVMCoreUI/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -3354,7 +3358,7 @@ FRAMEWORK_SEARCH_PATHS = "$(PROJECT_DIR)/../SharedFrameworks"; INFOPLIST_FILE = MVMCoreUI/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", diff --git a/MVMCoreUI/Alerts/MVMCoreAlertHandler.m b/MVMCoreUI/Alerts/MVMCoreAlertHandler.m index 977e6293..75dab8f1 100644 --- a/MVMCoreUI/Alerts/MVMCoreAlertHandler.m +++ b/MVMCoreUI/Alerts/MVMCoreAlertHandler.m @@ -8,12 +8,12 @@ #import "MVMCoreAlertHandler.h" #import "MVMCoreAlertObject.h" -#import +@import MVMCore.MVMCoreAlertController; #import "MVMCoreAlertOperation.h" #import "MVMCoreTopAlertOperation.h" -#import -#import -#import +@import MVMCore.MVMCoreJSONConstants; +@import MVMCore.NSDictionary_MFConvenience; +@import MVMCore.NSArray_MFConvenience; #import @interface MVMCoreAlertHandler () diff --git a/MVMCoreUI/Alerts/MVMCoreAlertObject.h b/MVMCoreUI/Alerts/MVMCoreAlertObject.h index 87c5050a..03748c98 100644 --- a/MVMCoreUI/Alerts/MVMCoreAlertObject.h +++ b/MVMCoreUI/Alerts/MVMCoreAlertObject.h @@ -8,9 +8,9 @@ // An object for keeping track of all alert variables. Easier to pass around. #import -#import -#import -#import +@import MVMCore.MVMCoreActionDelegateProtocol; +@import MVMCore.MVMCoreLoadDelegateProtocol; +@import MVMCore.MVMCorePresentationDelegateProtocol; #import @class MVMCoreErrorObject; diff --git a/MVMCoreUI/Alerts/MVMCoreAlertObject.m b/MVMCoreUI/Alerts/MVMCoreAlertObject.m index 17b7f113..7c61dd08 100644 --- a/MVMCoreUI/Alerts/MVMCoreAlertObject.m +++ b/MVMCoreUI/Alerts/MVMCoreAlertObject.m @@ -9,16 +9,16 @@ #import "MVMCoreAlertObject.h" #import "MVMCoreAlertHandler.h" #import "MVMCoreTopAlertObject.h" -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import +@import MVMCore.MVMCoreCache; +@import MVMCore.MVMCoreErrorConstants; +@import MVMCore.MVMCoreErrorObject; +@import MVMCore.MVMCoreLoadObject; +@import MVMCore.MVMCoreGetterUtility; +@import MVMCore.NSDictionary_MFConvenience; +@import MVMCore.MVMCoreHardcodedStringsConstants; +@import MVMCore.MVMCoreJSONConstants; +@import MVMCore.MVMCoreActionHandler; +@import MVMCore.Swift; #import @interface MVMCoreAlertObject () diff --git a/MVMCoreUI/Alerts/MVMCoreAlertOperation.h b/MVMCoreUI/Alerts/MVMCoreAlertOperation.h index a8031e5e..2347acd7 100644 --- a/MVMCoreUI/Alerts/MVMCoreAlertOperation.h +++ b/MVMCoreUI/Alerts/MVMCoreAlertOperation.h @@ -9,7 +9,7 @@ #import #import -#import +@import MVMCore.MVMCoreOperation; #import @interface MVMCoreAlertOperation : MVMCoreOperation diff --git a/MVMCoreUI/Alerts/MVMCoreAlertOperation.m b/MVMCoreUI/Alerts/MVMCoreAlertOperation.m index c96ebe57..b39a3267 100644 --- a/MVMCoreUI/Alerts/MVMCoreAlertOperation.m +++ b/MVMCoreUI/Alerts/MVMCoreAlertOperation.m @@ -8,8 +8,8 @@ #import "MVMCoreAlertOperation.h" #import -#import -#import +@import MVMCore.MVMCoreAlertController; +@import MVMCore.MVMCoreNavigationHandler; @interface MVMCoreAlertOperation () { __block BOOL _paused; diff --git a/MVMCoreUI/Atomic/Atoms/Selectors/RadioBoxes.swift b/MVMCoreUI/Atomic/Atoms/Selectors/RadioBoxes.swift index c0f001e7..ced00073 100644 --- a/MVMCoreUI/Atomic/Atoms/Selectors/RadioBoxes.swift +++ b/MVMCoreUI/Atomic/Atoms/Selectors/RadioBoxes.swift @@ -8,7 +8,7 @@ import Foundation -public protocol RadioBoxSelectionDelegate: class { +public protocol RadioBoxSelectionDelegate: AnyObject { func selected(radioBox: RadioBoxModel) } diff --git a/MVMCoreUI/Atomic/Extensions/UIPickerView+Extension.swift b/MVMCoreUI/Atomic/Extensions/UIPickerView+Extension.swift index aa933e05..5399bd8c 100644 --- a/MVMCoreUI/Atomic/Extensions/UIPickerView+Extension.swift +++ b/MVMCoreUI/Atomic/Extensions/UIPickerView+Extension.swift @@ -15,7 +15,6 @@ public extension UIPickerView { let picker = UIPickerView(frame: .zero) picker.backgroundColor = .mvmWhite - picker.showsSelectionIndicator = true return picker } diff --git a/MVMCoreUI/BaseClasses/TextField.swift b/MVMCoreUI/BaseClasses/TextField.swift index 9174426d..260491dd 100644 --- a/MVMCoreUI/BaseClasses/TextField.swift +++ b/MVMCoreUI/BaseClasses/TextField.swift @@ -8,7 +8,7 @@ import UIKit -public protocol TextInputDidDeleteProtocol: class { +public protocol TextInputDidDeleteProtocol: AnyObject { func textInputDidDelete() } diff --git a/MVMCoreUI/Containers/SplitViewController/MVMCoreUISplitViewController.m b/MVMCoreUI/Containers/SplitViewController/MVMCoreUISplitViewController.m index e005763b..1ef5c232 100644 --- a/MVMCoreUI/Containers/SplitViewController/MVMCoreUISplitViewController.m +++ b/MVMCoreUI/Containers/SplitViewController/MVMCoreUISplitViewController.m @@ -1069,7 +1069,7 @@ CGFloat const PanelAnimationDuration = 0.2; // Returns the desired view or falls back. Hot fix until we can get away from using these functions... + (CGRect)getBounds:(UIView *)desiredView { - UIView *view = desiredView ?: [MVMCoreNavigationHandler sharedNavigationHandler].navigationController.view ?: [UIApplication sharedApplication].keyWindow.rootViewController.view; + UIView *view = desiredView ?: [MVMCoreNavigationHandler sharedNavigationHandler].navigationController.view ?: [MVMCoreGetterUtility getKeyWindow].rootViewController.view; return view ? view.bounds : [UIScreen mainScreen].bounds; } @@ -1094,7 +1094,7 @@ CGFloat const PanelAnimationDuration = 0.2; } - (UIViewController *)getCurrentVisibleController { - UIViewController *baseViewController = [MVMCoreNavigationHandler sharedNavigationHandler].viewControllerToPresentOn ?: [UIApplication sharedApplication].keyWindow.rootViewController; + UIViewController *baseViewController = [MVMCoreNavigationHandler sharedNavigationHandler].viewControllerToPresentOn ?: [MVMCoreGetterUtility getKeyWindow].rootViewController; UIViewController *viewController = nil; while (baseViewController.presentedViewController && !baseViewController.presentedViewController.isBeingDismissed) { viewController = baseViewController.presentedViewController; diff --git a/MVMCoreUI/OtherHandlers/MVMCoreUIActionDelegateProtocol.h b/MVMCoreUI/OtherHandlers/MVMCoreUIActionDelegateProtocol.h index 5659db85..41533f34 100644 --- a/MVMCoreUI/OtherHandlers/MVMCoreUIActionDelegateProtocol.h +++ b/MVMCoreUI/OtherHandlers/MVMCoreUIActionDelegateProtocol.h @@ -5,7 +5,7 @@ // Created by Scott Pfeil on 10/28/20. // Copyright © 2020 Verizon Wireless. All rights reserved. // -#import +@import MVMCore.MVMCoreActionDelegateProtocol; @class MVMCoreAlertObject; @protocol MVMCoreUIActionDelegateProtocol diff --git a/MVMCoreUI/OtherHandlers/MVMCoreUIActionHandler.h b/MVMCoreUI/OtherHandlers/MVMCoreUIActionHandler.h index 4c1afd45..60a24646 100644 --- a/MVMCoreUI/OtherHandlers/MVMCoreUIActionHandler.h +++ b/MVMCoreUI/OtherHandlers/MVMCoreUIActionHandler.h @@ -6,7 +6,7 @@ // Copyright © 2020 Verizon Wireless. All rights reserved. // -#import +@import MVMCore.MVMCoreActionHandler; NS_ASSUME_NONNULL_BEGIN diff --git a/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.h b/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.h index 0f40b2a2..3a45a461 100644 --- a/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.h +++ b/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.h @@ -6,7 +6,7 @@ // Copyright © 2019 Verizon Wireless. All rights reserved. // -#import +@import MVMCore.MVMCoreViewControllerMappingObject; NS_ASSUME_NONNULL_BEGIN diff --git a/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.m b/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.m index 0ad51d4c..6fec6028 100644 --- a/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.m +++ b/MVMCoreUI/OtherHandlers/MVMCoreUIViewControllerMappingObject.m @@ -7,7 +7,7 @@ // #import "MVMCoreUIViewControllerMappingObject.h" -#import +@import MVMCore.MVMCoreViewControllerProgrammaticMappingObject; #import @implementation MVMCoreUIViewControllerMappingObject diff --git a/MVMCoreUI/TopAlert/MVMCoreTopAlertObject.m b/MVMCoreUI/TopAlert/MVMCoreTopAlertObject.m index 141f4cf8..9286737a 100644 --- a/MVMCoreUI/TopAlert/MVMCoreTopAlertObject.m +++ b/MVMCoreUI/TopAlert/MVMCoreTopAlertObject.m @@ -7,9 +7,9 @@ // #import "MVMCoreTopAlertObject.h" -#import -#import -#import +@import MVMCore.NSDictionary_MFConvenience; +@import MVMCore.MVMCoreGetterUtility; +@import MVMCore.MVMCoreJSONConstants; #import "MVMCoreAlertHandler.h" NSUInteger const TopAlertDismissTime = 5; diff --git a/MVMCoreUI/TopAlert/MVMCoreTopAlertOperation.h b/MVMCoreUI/TopAlert/MVMCoreTopAlertOperation.h index af00d789..8a732932 100644 --- a/MVMCoreUI/TopAlert/MVMCoreTopAlertOperation.h +++ b/MVMCoreUI/TopAlert/MVMCoreTopAlertOperation.h @@ -6,7 +6,7 @@ // Copyright © 2016 Verizon Wireless. All rights reserved. // -#import +@import MVMCore.MVMCoreOperation; #import @class MVMCoreTopAlertObject; diff --git a/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.h b/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.h index f8c3d7f5..4fe50237 100644 --- a/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.h +++ b/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.h @@ -8,7 +8,7 @@ #import #import -#import +@import MVMCore.MVMCoreViewProtocol; @class Button; diff --git a/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.m b/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.m index 892a6e94..174b1bfb 100644 --- a/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.m +++ b/MVMCoreUI/TopAlert/MVMCoreUITopAlertBaseView.m @@ -7,13 +7,13 @@ // #import "MVMCoreUITopAlertBaseView.h" -#import +@import MVMCore.MVMCoreActionHandler; #import "MVMCoreUISplitViewController.h" -#import -#import +@import MVMCore.MVMCoreLoadObject; +@import MVMCore.MVMCoreRequestParameters; #import "MVMCoreUITopAlertView.h" -#import -#import +@import MVMCore.MVMCoreJSONConstants; +@import MVMCore.NSDictionary_MFConvenience; #import "UIColor+MFConvenience.h" #import "MVMCoreUICommonViewsUtility.h" #import "MFStyler.h" diff --git a/MVMCoreUI/TopAlert/MVMCoreUITopAlertExpandableView.m b/MVMCoreUI/TopAlert/MVMCoreUITopAlertExpandableView.m index 405dd781..0a548aea 100644 --- a/MVMCoreUI/TopAlert/MVMCoreUITopAlertExpandableView.m +++ b/MVMCoreUI/TopAlert/MVMCoreUITopAlertExpandableView.m @@ -9,11 +9,11 @@ #import "MVMCoreUITopAlertExpandableView.h" #import "MVMCoreUITopAlertShortView.h" #import "MVMCoreUITopAlertMainView.h" -#import +@import MVMCore.MVMCoreDispatchUtility; #import #import -#import -#import +@import MVMCore.MVMCoreBlockOperation; +@import MVMCore.MVMCoreNavigationHandler; #import "MFStyler.h" #import "NSLayoutConstraint+MFConvenience.h" #import "MVMCoreUIUtility.h" diff --git a/MVMCoreUI/TopAlert/MVMCoreUITopAlertMainView.m b/MVMCoreUI/TopAlert/MVMCoreUITopAlertMainView.m index d2a009c9..1a9131a6 100644 --- a/MVMCoreUI/TopAlert/MVMCoreUITopAlertMainView.m +++ b/MVMCoreUI/TopAlert/MVMCoreUITopAlertMainView.m @@ -9,13 +9,13 @@ #import "MVMCoreUITopAlertMainView.h" #import "MFStyler.h" #import "NSLayoutConstraint+MFConvenience.h" -#import -#import +@import MVMCore.NSDictionary_MFConvenience; +@import MVMCore.MVMCoreDispatchUtility; #import #import "UIColor+MFConvenience.h" #import #import -#import +@import MVMCore.MVMCoreJSONConstants; #import "MVMCoreUICommonViewsUtility.h" #import "MVMCoreUITopAlertView.h" #import diff --git a/MVMCoreUI/Utility/MVMCoreUICommonViewsUtility.m b/MVMCoreUI/Utility/MVMCoreUICommonViewsUtility.m index 8e276b72..c1e709df 100644 --- a/MVMCoreUI/Utility/MVMCoreUICommonViewsUtility.m +++ b/MVMCoreUI/Utility/MVMCoreUICommonViewsUtility.m @@ -217,7 +217,6 @@ static const CGFloat VertialShadowOffset = 6; + (UIPickerView *)commonPickerView { UIPickerView *picker = [[UIPickerView alloc] initWithFrame:CGRectZero]; picker.backgroundColor = [UIColor whiteColor]; - picker.showsSelectionIndicator = YES; return picker; } diff --git a/MVMCoreUI/Utility/MVMCoreUIUtility.m b/MVMCoreUI/Utility/MVMCoreUIUtility.m index 01f576c5..887d7438 100644 --- a/MVMCoreUI/Utility/MVMCoreUIUtility.m +++ b/MVMCoreUI/Utility/MVMCoreUIUtility.m @@ -52,7 +52,7 @@ } + (UIViewController *)getCurrentVisibleController { - UIViewController *baseViewController = [MVMCoreNavigationHandler sharedNavigationHandler].viewControllerToPresentOn ?: [UIApplication sharedApplication].keyWindow.rootViewController; + UIViewController *baseViewController = [MVMCoreNavigationHandler sharedNavigationHandler].viewControllerToPresentOn ?: [MVMCoreGetterUtility getKeyWindow].rootViewController; UIViewController *viewController = nil; while (baseViewController.presentedViewController && !baseViewController.presentedViewController.isBeingDismissed) { viewController = baseViewController.presentedViewController; @@ -201,10 +201,10 @@ } + (CGFloat)getTopSpaceWithStatusBarForView:(UIView *)view { - CGPoint viewStartPointInWindowSpace = [[UIApplication sharedApplication].keyWindow convertPoint:CGPointMake(CGRectGetMinX(view.frame), CGRectGetMinY(view.frame)) fromView:[view superview]]; - if (CGRectGetMaxY([UIApplication sharedApplication].statusBarFrame) > viewStartPointInWindowSpace.y) { - - return CGRectGetMaxY([UIApplication sharedApplication].statusBarFrame) - viewStartPointInWindowSpace.y; + CGPoint viewStartPointInWindowSpace = [[MVMCoreGetterUtility getKeyWindow] convertPoint:CGPointMake(CGRectGetMinX(view.frame), CGRectGetMinY(view.frame)) fromView:[view superview]]; + CGFloat maxY = CGRectGetMaxY([[[[MVMCoreGetterUtility getKeyWindow] windowScene] statusBarManager] statusBarFrame]); + if (maxY > viewStartPointInWindowSpace.y) { + return maxY - viewStartPointInWindowSpace.y; } else { return 0; } @@ -277,7 +277,7 @@ CGRect keyboardRect = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue]; // Gets the scrollview end point in the window coordinate space to see if the keyboard will cover the scroll view at all. (This conversion allows the scrollview to be anyhwere in the hierarchy). - CGPoint scrollEndPointInWindowSpace = [[UIApplication sharedApplication].keyWindow convertPoint:CGPointMake(CGRectGetMinX(scrollView.frame), CGRectGetMaxY(scrollView.frame)) fromView:[scrollView superview]]; + CGPoint scrollEndPointInWindowSpace = [[MVMCoreGetterUtility getKeyWindow] convertPoint:CGPointMake(CGRectGetMinX(scrollView.frame), CGRectGetMaxY(scrollView.frame)) fromView:[scrollView superview]]; // Also takes into account the current content inset. (Even if the keyboard covers the frame, it might not matter if the bottom content inset is set to above the keyboard anyway). if (scrollEndPointInWindowSpace.y - scrollView.contentInset.bottom > CGRectGetMinY(keyboardRect)) { diff --git a/MVMCoreUI/Utility/Sizing/MFSizeObject.m b/MVMCoreUI/Utility/Sizing/MFSizeObject.m index 3379a1ce..f2ceb0f2 100644 --- a/MVMCoreUI/Utility/Sizing/MFSizeObject.m +++ b/MVMCoreUI/Utility/Sizing/MFSizeObject.m @@ -9,6 +9,7 @@ #import #import "MVMCoreUISplitViewController.h" @import MVMCore.MVMCoreGetterUtility; +@import MVMCore.Swift; CGFloat const MFSizeiPhone4HeightThreshold = 490; CGFloat const MFSizeiPhone5HeightThreshold = 578; @@ -145,7 +146,7 @@ CGFloat const MFSizeMostlySweetSpotThreshold = 750; - (CGFloat)getValueBasedOnScreenSize { CGRect screenFrame = [[UIScreen mainScreen] bounds]; if ([MVMCoreGetterUtility isOnIPad]) { - if (UIInterfaceOrientationIsLandscape([UIApplication sharedApplication].statusBarOrientation)) { + if (UIInterfaceOrientationIsLandscape([[[MVMCoreGetterUtility getKeyWindow] windowScene] interfaceOrientation])) { return [self getValueBasedOnSize:CGRectGetWidth(screenFrame)]; } else { return [self getValueBasedOnSize:CGRectGetHeight(screenFrame)]; @@ -198,7 +199,7 @@ CGFloat const MFSizeMostlySweetSpotThreshold = 750; - (void)performBlockBaseOnScreenSize { CGRect screenFrame = [[UIScreen mainScreen] bounds]; if ([MVMCoreGetterUtility isOnIPad]) { - if (UIInterfaceOrientationIsLandscape([UIApplication sharedApplication].statusBarOrientation)) { + if (UIInterfaceOrientationIsLandscape([[[MVMCoreGetterUtility getKeyWindow] windowScene] interfaceOrientation])) { [self performBlockBaseOnSize:CGRectGetWidth(screenFrame)]; } else { [self performBlockBaseOnSize:CGRectGetHeight(screenFrame)]; diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index e5b007ce..fbdcb352 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -2,32 +2,53 @@ unset TOOLCHAINS #Xcode 7.3 BUG FIX http://stackoverflow.com/questions/36184930/xcodebuild-7-3-cant-enable-bitcode -# define output folder environment variable +# define variables C_PROJECT_NAME="MVMCoreUI" PHONE_CONFIGURATION="Release" +BUILD_DIR=$(xcodebuild -showBuildSettings -project ./${C_PROJECT_NAME}.xcodeproj | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) +PHONE_ARCHIVE_PATH="${BUILD_DIR}/${PHONE_CONFIGURATION}-iphoneos/${C_PROJECT_NAME}.xcarchive" SIMULATOR_CONFIGURATION="Debug" -BUILD_DIR=$(xcodebuild -showBuildSettings -project ./MVMCoreUI.xcodeproj | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) -SIMULATOR_LIBRARY_PATH="${BUILD_DIR}/${SIMULATOR_CONFIGURATION}-iphonesimulator/${C_PROJECT_NAME}.framework" -FRAMEWORKS_DIR=$BUILD_DIR/../../../Frameworks/MVMCoreUI -UNIVERSAL_OUTPUTFOLDER=${BUILD_DIR}/universal +SIMULATOR_ARCHIVE_PATH="${BUILD_DIR}/${SIMULATOR_CONFIGURATION}-iphonesimulator/${C_PROJECT_NAME}.xcarchive" +UNIVERSAL_OUTPUTFOLDER="${BUILD_DIR}/universal" -# Step 1. Build Device and Simulator versions -xcodebuild -scheme "${C_PROJECT_NAME}" ONLY_ACTIVE_ARCH=NO -configuration ${PHONE_CONFIGURATION} -sdk iphoneos -archivePath "${BUILD_DIR}/${PHONE_CONFIGURATION}-iphoneos/${C_PROJECT_NAME}" archive SKIP_INSTALL=false FRAMEWORK_SEARCH_PATHS=$FRAMEWORKS_DIR ALWAYS_SEARCH_USER_PATHS=true - -xcodebuild -target "${C_PROJECT_NAME}" ONLY_ACTIVE_ARCH=NO -configuration ${SIMULATOR_CONFIGURATION} -sdk iphonesimulator BUILD_DIR=$BUILD_DIR FRAMEWORK_SEARCH_PATHS=$FRAMEWORKS_DIR ALWAYS_SEARCH_USER_PATHS=true ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=true +# Update to use .xcframework +sed -i '' 's|MVMCore.framework.*isa.*;|MVMCore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMCore.xcframework; path = ../SharedFrameworks/MVMCore.xcframework; sourceTree = "";|g' ./MVMCoreUI.xcodeproj/project.pbxproj +sed -i '' 's/MVMCore.framework/MVMCore.xcframework/g' ./MVMCoreUI.xcodeproj/project.pbxproj +# Build device archive +xcodebuild archive \ + -scheme "${C_PROJECT_NAME}" \ + -configuration ${PHONE_CONFIGURATION} \ + -archivePath "${PHONE_ARCHIVE_PATH}" \ + -sdk iphoneos \ + -destination 'generic/platform=iOS' \ + SKIP_INSTALL=NO \ + ONLY_ACTIVE_ARCH=NO \ + FRAMEWORK_SEARCH_PATHS=$FRAMEWORKS_DIR \ + ALWAYS_SEARCH_USER_PATHS=true + +# Build simulator archive +xcodebuild archive \ + -scheme "${C_PROJECT_NAME}" \ + -configuration ${SIMULATOR_CONFIGURATION} \ + -archivePath "${SIMULATOR_ARCHIVE_PATH}" \ + -sdk iphonesimulator \ + -destination 'generic/platform=iOS Simulator' \ + SKIP_INSTALL=NO \ + ONLY_ACTIVE_ARCH=NO \ + FRAMEWORK_SEARCH_PATHS=$FRAMEWORKS_DIR \ + ALWAYS_SEARCH_USER_PATHS=true + mkdir -p "${UNIVERSAL_OUTPUTFOLDER}" -rm -rf ${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}.framework -cp -R "${BUILD_DIR}/${PHONE_CONFIGURATION}-iphoneos/${C_PROJECT_NAME}.xcarchive/Products/Library/Frameworks/${C_PROJECT_NAME}.framework" ${UNIVERSAL_OUTPUTFOLDER} +# Remove any existing xc framework. +rm -rf ${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}.xcframework -# Step 2. Create universal binary file using lipo +# Create the xcframework in the universal output folder. +xcodebuild -create-xcframework \ + -framework "${PHONE_ARCHIVE_PATH}/Products/Library/Frameworks/${C_PROJECT_NAME}.framework" \ + -framework "${SIMULATOR_ARCHIVE_PATH}/Products/Library/Frameworks/${C_PROJECT_NAME}.framework" \ + -output ${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}.xcframework -lipo -create -output "${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}" "${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}.framework/${C_PROJECT_NAME}" "${SIMULATOR_LIBRARY_PATH}/${C_PROJECT_NAME}" - -mv ${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME} ${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}.framework/${C_PROJECT_NAME} - -# For Swift framework, Swiftmodule needs to be copied in the universal framework -if [ -d "${SIMULATOR_LIBRARY_PATH}/Modules/${C_PROJECT_NAME}.swiftmodule/" ]; then - cp -a "${SIMULATOR_LIBRARY_PATH}/Modules/${C_PROJECT_NAME}.swiftmodule/" "${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}.framework/Modules/${C_PROJECT_NAME}.swiftmodule/" -fi +# Copy the dSYM file as well. +ditto "${PHONE_ARCHIVE_PATH}/dSYMs/${C_PROJECT_NAME}.framework.dSYM" "${UNIVERSAL_OUTPUTFOLDER}/${C_PROJECT_NAME}.xcframework.dSYM" diff --git a/Scripts/download_dependencies.sh b/Scripts/download_dependencies.sh index 10d11351..5df810bc 100755 --- a/Scripts/download_dependencies.sh +++ b/Scripts/download_dependencies.sh @@ -18,6 +18,10 @@ if [ ! -d $FRAMEWORKS_DIR ]; then mkdir -p $FRAMEWORKS_DIR fi -./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/MVMCore.framework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCore/1.0/MVMCore-1.0-Debug-SNAPSHOT.zip +./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/MVMCore.xcframework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCore/3.0/MVMCore-3.0-Debug-SNAPSHOT.zip -./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/MVMAnimationFramework.framework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMAnimationFramework.framework/1.9/MVMAnimationFramework.framework-1.9.zip +./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/MVMAnimationFramework.framework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMAnimationFramework.framework/3.0/MVMAnimationFramework.framework-3.0.zip + +./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/VDSColorTokens.xcframework" GVJV_VDS_Maven/%40vds-tokens/ios/VDSColorTokens.1.0.6.xcframework.zip + +./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/VDSFormControlsTokens.xcframework" GVJV_VDS_Maven/@vds-tokens/ios/VDSFormControlsTokens.1.0.7.xcframework.zip diff --git a/Scripts/upload_core_ui_frameworks.sh b/Scripts/upload_core_ui_frameworks.sh index 4a16396c..5e70eb2f 100755 --- a/Scripts/upload_core_ui_frameworks.sh +++ b/Scripts/upload_core_ui_frameworks.sh @@ -7,7 +7,8 @@ # Copied from Hedden, Kyle Matthew on 3/2/18. # -FRAMEWORK_VERSION=$(cd .. && agvtool vers -terse) +BUILD_SETTINGS=$(xcodebuild -showBuildSettings -project ../MVMCoreUI/MVMCoreUI.xcodeproj) +FRAMEWORK_VERSION=$(echo "$BUILD_SETTINGS" | grep -w -o 'MARKETING_VERSION = .*' | cut -d\ -f3-) if [ $(git tag --list | grep "v${FRAMEWORK_VERSION}") ]; then echo This version tag has already been committed! Aborting! exit 1 @@ -20,5 +21,5 @@ if [ -z $ARTIFACTORY_URL ]; then fi # Upload -BUILD_DIR=$(xcodebuild -showBuildSettings -project ../MVMCoreUI.xcodeproj | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) +BUILD_DIR=$(echo "$BUILD_SETTINGS" | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) ./upload_framework.sh $ARTIFACTORY_URL "${BUILD_DIR}/universal/MVMCoreUI.framework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCoreUI/[VER]/MVMCoreUI-[VER]-Debug-SNAPSHOT From 60d8d10101d1ef0481f94475825ad6916544494e Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 16:16:23 -0400 Subject: [PATCH 09/23] Script fix --- Scripts/build_aggregate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index fbdcb352..645c7be7 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -12,7 +12,7 @@ SIMULATOR_ARCHIVE_PATH="${BUILD_DIR}/${SIMULATOR_CONFIGURATION}-iphonesimulator/ UNIVERSAL_OUTPUTFOLDER="${BUILD_DIR}/universal" # Update to use .xcframework -sed -i '' 's|MVMCore.framework.*isa.*;|MVMCore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMCore.xcframework; path = ../SharedFrameworks/MVMCore.xcframework; sourceTree = "";|g' ./MVMCoreUI.xcodeproj/project.pbxproj +sed -i '' 's|MVMCore.framework \*\/ = {isa.*};|MVMCore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMCore.xcframework; path = ../SharedFrameworks/MVMCore.xcframework; sourceTree = ""; };|g' ./MVMCoreUI.xcodeproj/project.pbxproj sed -i '' 's/MVMCore.framework/MVMCore.xcframework/g' ./MVMCoreUI.xcodeproj/project.pbxproj # Build device archive From ab28c9379eadb150b452d62f2e1242854af99775 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 16:24:39 -0400 Subject: [PATCH 10/23] revert --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8fe891d2..d475e062 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -16,6 +16,7 @@ download_artifacts: script: - ./Scripts/download_dependencies.sh only: + - branches - develop tags: - bash_shell @@ -30,6 +31,7 @@ build_project: script: - ./Scripts/build_aggregate.sh only: + - branches - develop tags: - xcode_12_2 @@ -39,6 +41,7 @@ deploy_snapshot: script: - cd Scripts && ./upload_core_ui_frameworks.sh only: + - branches - develop tags: - bash_shell From c062f04659b70ee50ad73d33e25e03dc4805fa5d Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 16:35:31 -0400 Subject: [PATCH 11/23] accidentally removed framework variable --- Scripts/build_aggregate.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index 645c7be7..2673d791 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -9,6 +9,7 @@ BUILD_DIR=$(xcodebuild -showBuildSettings -project ./${C_PROJECT_NAME}.xcodeproj PHONE_ARCHIVE_PATH="${BUILD_DIR}/${PHONE_CONFIGURATION}-iphoneos/${C_PROJECT_NAME}.xcarchive" SIMULATOR_CONFIGURATION="Debug" SIMULATOR_ARCHIVE_PATH="${BUILD_DIR}/${SIMULATOR_CONFIGURATION}-iphonesimulator/${C_PROJECT_NAME}.xcarchive" +FRAMEWORKS_DIR=$BUILD_DIR/../../../Frameworks/MVMCoreUI UNIVERSAL_OUTPUTFOLDER="${BUILD_DIR}/universal" # Update to use .xcframework From 1dfaf7f34885975826de9f970dcf6568ab5220a7 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 16:53:55 -0400 Subject: [PATCH 12/23] Force path for now. --- Scripts/build_aggregate.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index 2673d791..23a50d4b 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -15,6 +15,7 @@ UNIVERSAL_OUTPUTFOLDER="${BUILD_DIR}/universal" # Update to use .xcframework sed -i '' 's|MVMCore.framework \*\/ = {isa.*};|MVMCore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMCore.xcframework; path = ../SharedFrameworks/MVMCore.xcframework; sourceTree = ""; };|g' ./MVMCoreUI.xcodeproj/project.pbxproj sed -i '' 's/MVMCore.framework/MVMCore.xcframework/g' ./MVMCoreUI.xcodeproj/project.pbxproj +sed -i '' "s/path = \.\.\/SharedFrameworks/path = ${FRAMEWORKS_DIR}/g" ./MVMCoreUI.xcodeproj/project.pbxproj # Build device archive xcodebuild archive \ From 3c33261cb3a46305027c50cd711e18b9d5b5a9e8 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 16:59:28 -0400 Subject: [PATCH 13/23] Fix to sed --- Scripts/build_aggregate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index 23a50d4b..634a4e07 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -15,7 +15,7 @@ UNIVERSAL_OUTPUTFOLDER="${BUILD_DIR}/universal" # Update to use .xcframework sed -i '' 's|MVMCore.framework \*\/ = {isa.*};|MVMCore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMCore.xcframework; path = ../SharedFrameworks/MVMCore.xcframework; sourceTree = ""; };|g' ./MVMCoreUI.xcodeproj/project.pbxproj sed -i '' 's/MVMCore.framework/MVMCore.xcframework/g' ./MVMCoreUI.xcodeproj/project.pbxproj -sed -i '' "s/path = \.\.\/SharedFrameworks/path = ${FRAMEWORKS_DIR}/g" ./MVMCoreUI.xcodeproj/project.pbxproj +sed -i '' "s|path = \.\.\/SharedFrameworks|path = ${FRAMEWORKS_DIR}|g" ./MVMCoreUI.xcodeproj/project.pbxproj # Build device archive xcodebuild archive \ From 63bdb9e4bb5bf86bb4161132b20f9fa7ff045c5e Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 17:10:02 -0400 Subject: [PATCH 14/23] Upload fix --- Scripts/build_aggregate.sh | 4 ++-- Scripts/upload_core_ui_frameworks.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index 634a4e07..e72f1597 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -15,7 +15,7 @@ UNIVERSAL_OUTPUTFOLDER="${BUILD_DIR}/universal" # Update to use .xcframework sed -i '' 's|MVMCore.framework \*\/ = {isa.*};|MVMCore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMCore.xcframework; path = ../SharedFrameworks/MVMCore.xcframework; sourceTree = ""; };|g' ./MVMCoreUI.xcodeproj/project.pbxproj sed -i '' 's/MVMCore.framework/MVMCore.xcframework/g' ./MVMCoreUI.xcodeproj/project.pbxproj -sed -i '' "s|path = \.\.\/SharedFrameworks|path = ${FRAMEWORKS_DIR}|g" ./MVMCoreUI.xcodeproj/project.pbxproj +#sed -i '' "s|path = \.\.\/SharedFrameworks|path = ${FRAMEWORKS_DIR}|g" ./MVMCoreUI.xcodeproj/project.pbxproj # Build device archive xcodebuild archive \ @@ -26,7 +26,7 @@ xcodebuild archive \ -destination 'generic/platform=iOS' \ SKIP_INSTALL=NO \ ONLY_ACTIVE_ARCH=NO \ - FRAMEWORK_SEARCH_PATHS=$FRAMEWORKS_DIR \ + FRAMEWORK_SEARCH_PATHS="$FRAMEWORKS_DIR" \ ALWAYS_SEARCH_USER_PATHS=true # Build simulator archive diff --git a/Scripts/upload_core_ui_frameworks.sh b/Scripts/upload_core_ui_frameworks.sh index 5e70eb2f..70337d5f 100755 --- a/Scripts/upload_core_ui_frameworks.sh +++ b/Scripts/upload_core_ui_frameworks.sh @@ -7,7 +7,7 @@ # Copied from Hedden, Kyle Matthew on 3/2/18. # -BUILD_SETTINGS=$(xcodebuild -showBuildSettings -project ../MVMCoreUI/MVMCoreUI.xcodeproj) +BUILD_SETTINGS=$(xcodebuild -showBuildSettings -project ../MVMCoreUI.xcodeproj) FRAMEWORK_VERSION=$(echo "$BUILD_SETTINGS" | grep -w -o 'MARKETING_VERSION = .*' | cut -d\ -f3-) if [ $(git tag --list | grep "v${FRAMEWORK_VERSION}") ]; then echo This version tag has already been committed! Aborting! From 51ee582f3ef0b810518bf830642e7c0fc603fbfa Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 17:13:08 -0400 Subject: [PATCH 15/23] add back --- Scripts/build_aggregate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index e72f1597..f51c8857 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -15,7 +15,7 @@ UNIVERSAL_OUTPUTFOLDER="${BUILD_DIR}/universal" # Update to use .xcframework sed -i '' 's|MVMCore.framework \*\/ = {isa.*};|MVMCore.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMCore.xcframework; path = ../SharedFrameworks/MVMCore.xcframework; sourceTree = ""; };|g' ./MVMCoreUI.xcodeproj/project.pbxproj sed -i '' 's/MVMCore.framework/MVMCore.xcframework/g' ./MVMCoreUI.xcodeproj/project.pbxproj -#sed -i '' "s|path = \.\.\/SharedFrameworks|path = ${FRAMEWORKS_DIR}|g" ./MVMCoreUI.xcodeproj/project.pbxproj +sed -i '' "s|path = \.\.\/SharedFrameworks|path = ${FRAMEWORKS_DIR}|g" ./MVMCoreUI.xcodeproj/project.pbxproj # Build device archive xcodebuild archive \ From c737533a40510181271c17787a60c8f7d686cec5 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 17:25:51 -0400 Subject: [PATCH 16/23] typo update --- Scripts/build_aggregate.sh | 2 ++ Scripts/upload_core_ui_frameworks.sh | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Scripts/build_aggregate.sh b/Scripts/build_aggregate.sh index f51c8857..84c7f4fb 100755 --- a/Scripts/build_aggregate.sh +++ b/Scripts/build_aggregate.sh @@ -24,6 +24,7 @@ xcodebuild archive \ -archivePath "${PHONE_ARCHIVE_PATH}" \ -sdk iphoneos \ -destination 'generic/platform=iOS' \ + -quiet \ SKIP_INSTALL=NO \ ONLY_ACTIVE_ARCH=NO \ FRAMEWORK_SEARCH_PATHS="$FRAMEWORKS_DIR" \ @@ -36,6 +37,7 @@ xcodebuild archive \ -archivePath "${SIMULATOR_ARCHIVE_PATH}" \ -sdk iphonesimulator \ -destination 'generic/platform=iOS Simulator' \ + -quiet \ SKIP_INSTALL=NO \ ONLY_ACTIVE_ARCH=NO \ FRAMEWORK_SEARCH_PATHS=$FRAMEWORKS_DIR \ diff --git a/Scripts/upload_core_ui_frameworks.sh b/Scripts/upload_core_ui_frameworks.sh index 70337d5f..acdba191 100755 --- a/Scripts/upload_core_ui_frameworks.sh +++ b/Scripts/upload_core_ui_frameworks.sh @@ -22,4 +22,4 @@ fi # Upload BUILD_DIR=$(echo "$BUILD_SETTINGS" | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) -./upload_framework.sh $ARTIFACTORY_URL "${BUILD_DIR}/universal/MVMCoreUI.framework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCoreUI/[VER]/MVMCoreUI-[VER]-Debug-SNAPSHOT +./upload_framework.sh $ARTIFACTORY_URL "${BUILD_DIR}/universal/MVMCoreUI.xcframework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCoreUI/[VER]/MVMCoreUI-[VER]-Debug-SNAPSHOT From 82b5f4b637ef2096fa8f8e34e566985d0b57be2f Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 5 Jul 2022 17:34:15 -0400 Subject: [PATCH 17/23] pass the version to upload script --- Scripts/upload_core_ui_frameworks.sh | 2 +- Scripts/upload_framework.sh | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/Scripts/upload_core_ui_frameworks.sh b/Scripts/upload_core_ui_frameworks.sh index acdba191..a8cf475b 100755 --- a/Scripts/upload_core_ui_frameworks.sh +++ b/Scripts/upload_core_ui_frameworks.sh @@ -22,4 +22,4 @@ fi # Upload BUILD_DIR=$(echo "$BUILD_SETTINGS" | grep -w -o 'BUILD_DIR = .*' | cut -d\ -f3-) -./upload_framework.sh $ARTIFACTORY_URL "${BUILD_DIR}/universal/MVMCoreUI.xcframework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCoreUI/[VER]/MVMCoreUI-[VER]-Debug-SNAPSHOT +./upload_framework.sh $ARTIFACTORY_URL "${BUILD_DIR}/universal/MVMCoreUI.xcframework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCoreUI/[VER]/MVMCoreUI-[VER]-Debug-SNAPSHOT $FRAMEWORK_VERSION diff --git a/Scripts/upload_framework.sh b/Scripts/upload_framework.sh index 305a6585..8793960e 100755 --- a/Scripts/upload_framework.sh +++ b/Scripts/upload_framework.sh @@ -14,6 +14,7 @@ URL=$1 LOCALPATH=$2 REMOTEPATH=$3 +FRAMEWORKVER=$4 if [ -z $URL ]; then echo "The artifactory instance url must be specified as the first argument!" @@ -29,10 +30,6 @@ cat "${LOCALPATH}/Info.plist" LOCALBASE=$(basename "${LOCALPATH}") LOCALDIR=$(dirname "${LOCALPATH}") -# Grab the framework version from the bundled Info.plist. -FRAMEWORKVER=$(/usr/libexec/plistbuddy -c "Print :CFBundleShortVersionString" "${LOCALPATH}/Info.plist") -echo -e "\nFramework version: \t${FRAMEWORKVER}" - # Replace the [VER] placeholders with the found version. REMOTEPATH="${REMOTEPATH//\[VER\]/$FRAMEWORKVER}" echo -e "Resolved path: \t\t${REMOTEPATH}" From 211b92a2ab4fc3584a767990258e80b1d95690a5 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Wed, 6 Jul 2022 11:25:45 -0400 Subject: [PATCH 18/23] remove unused legacy framework dependency --- MVMCoreUI.xcodeproj/project.pbxproj | 6 +----- .../BaseControllers/ThreeLayerTableViewController.swift | 2 -- MVMCoreUI/BaseControllers/ThreeLayerViewController.swift | 1 - 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/MVMCoreUI.xcodeproj/project.pbxproj b/MVMCoreUI.xcodeproj/project.pbxproj index 99952700..aac7bf51 100644 --- a/MVMCoreUI.xcodeproj/project.pbxproj +++ b/MVMCoreUI.xcodeproj/project.pbxproj @@ -275,7 +275,6 @@ AAE7270E24AC8B9300A3ED0E /* HeadersH2CaretLink.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAE7270D24AC8B9300A3ED0E /* HeadersH2CaretLink.swift */; }; AAE96FA225341F6A0037A989 /* ListStoreLocatorModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAE96FA125341F6A0037A989 /* ListStoreLocatorModel.swift */; }; AAE96FA525341F7D0037A989 /* ListStoreLocator.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAE96FA425341F7D0037A989 /* ListStoreLocator.swift */; }; - AF81F990287498F4006F7F11 /* MVMAnimationFramework.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = AF81F98F287498F3006F7F11 /* MVMAnimationFramework.xcframework */; }; AFE4A1D127DFB5EE00C458D0 /* VDSColorTokens.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = AFE4A1D027DFB5EE00C458D0 /* VDSColorTokens.xcframework */; }; AFE4A1D627DFBB6F00C458D0 /* UINavigationController+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFE4A1D527DFBB6F00C458D0 /* UINavigationController+Extension.swift */; }; BB105859248DEFF70069D008 /* UICollectionViewLeftAlignedLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB105858248DEFF60069D008 /* UICollectionViewLeftAlignedLayout.swift */; }; @@ -866,7 +865,6 @@ AAE7270D24AC8B9300A3ED0E /* HeadersH2CaretLink.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HeadersH2CaretLink.swift; sourceTree = ""; }; AAE96FA125341F6A0037A989 /* ListStoreLocatorModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ListStoreLocatorModel.swift; sourceTree = ""; }; AAE96FA425341F7D0037A989 /* ListStoreLocator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ListStoreLocator.swift; sourceTree = ""; }; - AF81F98F287498F3006F7F11 /* MVMAnimationFramework.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MVMAnimationFramework.xcframework; path = ../SharedFrameworks/MVMAnimationFramework.xcframework; sourceTree = ""; }; AFE4A1D027DFB5EE00C458D0 /* VDSColorTokens.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = VDSColorTokens.xcframework; path = ../SharedFrameworks/VDSColorTokens.xcframework; sourceTree = ""; }; AFE4A1D527DFBB6F00C458D0 /* UINavigationController+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UINavigationController+Extension.swift"; sourceTree = ""; }; BB105858248DEFF60069D008 /* UICollectionViewLeftAlignedLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UICollectionViewLeftAlignedLayout.swift; sourceTree = ""; }; @@ -1195,7 +1193,6 @@ D29DF0E621E4F3C7003B2FB9 /* MVMCore.framework in Frameworks */, AFE4A1D127DFB5EE00C458D0 /* VDSColorTokens.xcframework in Frameworks */, 187FEB2A2844D2A600BF29C2 /* VDSFormControlsTokens.xcframework in Frameworks */, - AF81F990287498F4006F7F11 /* MVMAnimationFramework.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2028,10 +2025,9 @@ D29DF0E421E4F3C7003B2FB9 /* Frameworks */ = { isa = PBXGroup; children = ( - AF81F98F287498F3006F7F11 /* MVMAnimationFramework.xcframework */, 187FEB292844D2A600BF29C2 /* VDSFormControlsTokens.xcframework */, AFE4A1D027DFB5EE00C458D0 /* VDSColorTokens.xcframework */, - D29DF0E521E4F3C7003B2FB9 /* MVMCore.framework */, + D29DF0E521E4F3C7003B2FB9 /* MVMCore.framework */, ); name = Frameworks; sourceTree = ""; diff --git a/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift b/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift index 369fb5ad..f480f083 100644 --- a/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift +++ b/MVMCoreUI/BaseControllers/ThreeLayerTableViewController.swift @@ -7,8 +7,6 @@ // import UIKit -import MVMAnimationFramework - open class ThreeLayerTableViewController: ProgrammaticTableViewController { //-------------------------------------------------- diff --git a/MVMCoreUI/BaseControllers/ThreeLayerViewController.swift b/MVMCoreUI/BaseControllers/ThreeLayerViewController.swift index 210148cf..ec8aaaa3 100644 --- a/MVMCoreUI/BaseControllers/ThreeLayerViewController.swift +++ b/MVMCoreUI/BaseControllers/ThreeLayerViewController.swift @@ -8,7 +8,6 @@ // This class has three views, a top, middle, and bottom. The top view is just the first view in the scrollview. The middle can be aligned center, top, or bottom depending on if spaceBetweenTopAndMiddle() or spaceBetweenMiddleAndBottom() return values. The bottom view, if inside the scrollview, appears pinned to the bottom unless content pushes it off the screen. If outside the scroll, it's pinned to the bottom under the scrollview. import UIKit -import MVMAnimationFramework open class ThreeLayerViewController: ProgrammaticScrollViewController { From 81cefe5a7bd7084d8949a795b9aeeb36f5536072 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Wed, 6 Jul 2022 11:28:47 -0400 Subject: [PATCH 19/23] remove animation --- Scripts/download_dependencies.sh | 2 -- 1 file changed, 2 deletions(-) diff --git a/Scripts/download_dependencies.sh b/Scripts/download_dependencies.sh index 5df810bc..cc6bc209 100755 --- a/Scripts/download_dependencies.sh +++ b/Scripts/download_dependencies.sh @@ -20,8 +20,6 @@ fi ./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/MVMCore.xcframework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMCore/3.0/MVMCore-3.0-Debug-SNAPSHOT.zip -./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/MVMAnimationFramework.framework" BPHV_MobileFirst_IOS/com/vzw/hss/myverizon/MVMAnimationFramework.framework/3.0/MVMAnimationFramework.framework-3.0.zip - ./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/VDSColorTokens.xcframework" GVJV_VDS_Maven/%40vds-tokens/ios/VDSColorTokens.1.0.6.xcframework.zip ./Scripts/download_framework.sh $ARTIFACTORY_URL "$FRAMEWORKS_DIR/VDSFormControlsTokens.xcframework" GVJV_VDS_Maven/@vds-tokens/ios/VDSFormControlsTokens.1.0.7.xcframework.zip From 98f3f193caee82a11a67e0aaf78a831ca4f3764f Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Wed, 6 Jul 2022 11:55:02 -0500 Subject: [PATCH 20/23] setting the style only Signed-off-by: Matt Bruce --- MVMCoreUI/BaseClasses/TableViewCell.swift | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MVMCoreUI/BaseClasses/TableViewCell.swift b/MVMCoreUI/BaseClasses/TableViewCell.swift index 053bedd0..e3ed8749 100644 --- a/MVMCoreUI/BaseClasses/TableViewCell.swift +++ b/MVMCoreUI/BaseClasses/TableViewCell.swift @@ -243,8 +243,8 @@ import UIKit open func setLines(with model: LineModel?, delegateObject: MVMCoreUIDelegateObject?, additionalData: [AnyHashable: Any]?, indexPath: IndexPath) { addSeparatorsIfNeeded() if let model = model { - topSeparatorView?.set(with: model, delegateObject, additionalData) - bottomSeparatorView?.set(with: model, delegateObject, additionalData) + topSeparatorView?.setStyle(model.type) + bottomSeparatorView?.setStyle(model.type) } else { topSeparatorView?.setStyle(.secondary) bottomSeparatorView?.setStyle(.secondary) From fdfb5891d25cde32ac490bbc0a55ff1e795a6a1e Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Wed, 6 Jul 2022 13:39:43 -0500 Subject: [PATCH 21/23] found another bug of internal model getting overwritten Signed-off-by: Matt Bruce --- MVMCoreUI/BaseClasses/TableViewCell.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MVMCoreUI/BaseClasses/TableViewCell.swift b/MVMCoreUI/BaseClasses/TableViewCell.swift index e3ed8749..d90d0338 100644 --- a/MVMCoreUI/BaseClasses/TableViewCell.swift +++ b/MVMCoreUI/BaseClasses/TableViewCell.swift @@ -153,7 +153,7 @@ import UIKit // override the separator if let separator = model.line { addSeparatorsIfNeeded() - bottomSeparatorView?.set(with: separator, nil, nil) + bottomSeparatorView?.setStyle(separator.type) } if let moleculeModel = model as? MoleculeModelProtocol, From fe5416560efede0b5ca60234e86a42839df2484a Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 12 Jul 2022 09:53:18 -0400 Subject: [PATCH 22/23] missed heavy line --- MVMCoreUI/Atomic/Molecules/HeadersAndFooters/Header.swift | 4 +--- .../Atomic/Molecules/HeadersAndFooters/HeaderModel.swift | 3 --- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/Header.swift b/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/Header.swift index 9d061f76..d1c7cf48 100644 --- a/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/Header.swift +++ b/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/Header.swift @@ -51,9 +51,7 @@ open class HeaderView: Container { open override func set(with model: MoleculeModelProtocol, _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable: Any]?) { super.set(with: model, delegateObject, additionalData) guard let headerModel = headerModel else { return } - if let lineModel = headerModel.line { - line.set(with: lineModel, delegateObject, additionalData) - } + line.setOptional(with: headerModel.line, delegateObject, additionalData) } open override class func estimatedHeight(with model: MoleculeModelProtocol, _ delegateObject: MVMCoreUIDelegateObject?) -> CGFloat? { diff --git a/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/HeaderModel.swift b/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/HeaderModel.swift index 08c7343f..df1045c2 100644 --- a/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/HeaderModel.swift +++ b/MVMCoreUI/Atomic/Molecules/HeadersAndFooters/HeaderModel.swift @@ -30,9 +30,6 @@ if bottomPadding == nil { bottomPadding = PaddingDefaultVerticalSpacing } - if line == nil { - line = LineModel(type: .heavy) - } } public override init() { From a07f70fb06c7184843f6c169a29af7ea1c976e77 Mon Sep 17 00:00:00 2001 From: Scott Pfeil Date: Tue, 12 Jul 2022 10:58:08 -0400 Subject: [PATCH 23/23] tiny is gone --- .../Headers/H2/HeadersH2TinyButtonModel.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MVMCoreUI/Atomic/Molecules/DesignedComponents/Headers/H2/HeadersH2TinyButtonModel.swift b/MVMCoreUI/Atomic/Molecules/DesignedComponents/Headers/H2/HeadersH2TinyButtonModel.swift index d4edfd38..ce27740b 100644 --- a/MVMCoreUI/Atomic/Molecules/DesignedComponents/Headers/H2/HeadersH2TinyButtonModel.swift +++ b/MVMCoreUI/Atomic/Molecules/DesignedComponents/Headers/H2/HeadersH2TinyButtonModel.swift @@ -41,7 +41,7 @@ public class HeadersH2TinyButtonModel: HeaderModel, MoleculeModelProtocol { } super.setDefaults() button.style = .secondary - button.size = .tiny + button.size = .small } //--------------------------------------------------