From ef52a71d73a668cd189217fb89950ace6822532f Mon Sep 17 00:00:00 2001 From: ShahidJamal Ansari Date: Thu, 8 Aug 2024 17:10:44 +0530 Subject: [PATCH 1/7] - fix buglist issue --- .../translations/appConstants/bebbo/ALsq.ts | 2 +- .../translations/appConstants/bebbo/BGbg.ts | 2 +- .../translations/appConstants/bebbo/BYbe.ts | 2 +- .../translations/appConstants/bebbo/BYru.ts | 2 +- .../translations/appConstants/bebbo/GRel.ts | 2 +- .../translations/appConstants/bebbo/KGky.ts | 2 +- .../translations/appConstants/bebbo/KGru.ts | 2 +- .../translations/appConstants/bebbo/MDro.ts | 2 +- .../translations/appConstants/bebbo/MEcnr.ts | 2 +- .../translations/appConstants/bebbo/MKmk.ts | 2 +- .../translations/appConstants/bebbo/MKsq.ts | 2 +- .../translations/appConstants/bebbo/ROro.ts | 2 +- .../translations/appConstants/bebbo/RSsr.ts | 2 +- .../translations/appConstants/bebbo/TJru.ts | 2 +- .../translations/appConstants/bebbo/TJtg.ts | 2 +- .../translations/appConstants/bebbo/UZru.ts | 2 +- .../translations/appConstants/bebbo/UZuz.ts | 6 +- .../translations/appConstants/bebbo/ru.ts | 4 +- .../translations/appConstants/bebbo/sk.ts | 2 +- .../translations/appConstants/bebbo/uk.ts | 2 +- app/components/HeaderNotiIcon.tsx | 17 +-- app/components/NotificationItem.tsx | 4 +- app/components/homeScreen/DailyReads.tsx | 6 +- app/components/shared/ButtonGlobal.tsx | 2 +- app/components/shared/Icon.tsx | 3 + app/components/shared/ShareFavButtons.tsx | 18 +-- app/screens/CustomDrawerContent.tsx | 2 +- app/screens/home/SettingScreen.tsx | 23 +++- .../CountryLanguageConfirmation.tsx | 109 +++++++++++------- app/screens/localization/CountrySelection.tsx | 25 ++-- index.js | 3 +- .../xcschemes/ParentBuddyAppDev.xcscheme | 2 +- 32 files changed, 155 insertions(+), 105 deletions(-) diff --git a/app/assets/translations/appConstants/bebbo/ALsq.ts b/app/assets/translations/appConstants/bebbo/ALsq.ts index fda21d6af..d025b4bfa 100644 --- a/app/assets/translations/appConstants/bebbo/ALsq.ts +++ b/app/assets/translations/appConstants/bebbo/ALsq.ts @@ -11,7 +11,7 @@ const ALsq = { country: "Shteti", language: "Gjuha", walkthroughTextstitle0: "Mirë se erdhët Prindër!", - walkthroughTextssubtitle0: "Zbuloni Bebbo-n, gjithçka që ju nevojitet si prindër për të mbështetur zhvillimin e fëmijës tuaj", + walkthroughTextssubtitle0: "Zbuloni Bebbo-n", walkthroughTextstitle1: "Lojëra", walkthroughTextssubtitle1: "për të ndihmuar fëmijën tuaj që të mësojë gjëra të reja çdo ditë", walkthroughTextstitle2: "Mjete", diff --git a/app/assets/translations/appConstants/bebbo/BGbg.ts b/app/assets/translations/appConstants/bebbo/BGbg.ts index 460f80f2b..6eb19f068 100644 --- a/app/assets/translations/appConstants/bebbo/BGbg.ts +++ b/app/assets/translations/appConstants/bebbo/BGbg.ts @@ -11,7 +11,7 @@ const BGbg = { country: "Държава", language: "Език", walkthroughTextstitle0: "Здравейте, родители!", - walkthroughTextssubtitle0: "Открийте Беббо - всичко, което ви е нужно като родител, за да подкрепяте развитието на детето си", + walkthroughTextssubtitle0: "Открийте Беббо", walkthroughTextstitle1: "Игри", walkthroughTextssubtitle1: "за да помагате на детето си да учи нови неща всеки ден", walkthroughTextstitle2: "Инструменти", diff --git a/app/assets/translations/appConstants/bebbo/BYbe.ts b/app/assets/translations/appConstants/bebbo/BYbe.ts index dc7d7a3a5..a203e8864 100644 --- a/app/assets/translations/appConstants/bebbo/BYbe.ts +++ b/app/assets/translations/appConstants/bebbo/BYbe.ts @@ -11,7 +11,7 @@ const BYbe = { country: "Краіна", language: "Мова", walkthroughTextstitle0: "Прывітанне, бацькі!", - walkthroughTextssubtitle0: "Перад вамі Bebbo — дадатак, дзе ёсць усё, што вам трэба ведаць пра рост і развіццё вашага дзіцяці", + walkthroughTextssubtitle0: "Перад вамі Bebbo", walkthroughTextstitle1: "Заняткі", walkthroughTextssubtitle1: "і гульні, якія стымулююць развіццё", walkthroughTextstitle2: "Інструменты", diff --git a/app/assets/translations/appConstants/bebbo/BYru.ts b/app/assets/translations/appConstants/bebbo/BYru.ts index 70271e927..aedd0c528 100644 --- a/app/assets/translations/appConstants/bebbo/BYru.ts +++ b/app/assets/translations/appConstants/bebbo/BYru.ts @@ -11,7 +11,7 @@ const BYru = { country: "Страна", language: "Язык", walkthroughTextstitle0: "Привет, родители!", - walkthroughTextssubtitle0: "Перед вами Беббо — все, что вам нужно знать о росте и развитии вашего ребенка", + walkthroughTextssubtitle0: "Перед вами Беббо", walkthroughTextstitle1: "Занятия", walkthroughTextssubtitle1: "и игры, стимулирующие развитие", walkthroughTextstitle2: "Инструменты", diff --git a/app/assets/translations/appConstants/bebbo/GRel.ts b/app/assets/translations/appConstants/bebbo/GRel.ts index 56b90defa..cf4a7e029 100644 --- a/app/assets/translations/appConstants/bebbo/GRel.ts +++ b/app/assets/translations/appConstants/bebbo/GRel.ts @@ -11,7 +11,7 @@ const GRel = { country: "Χώρα", language: "Γλώσσα", walkthroughTextstitle0: "Καλως ήρθατε γονείς!", - walkthroughTextssubtitle0: "Ανακαλύψτε το Bebbo- όλα όσα χρειάζεστε ως γονέας για να υποστηρίξετε την ανάπτυξη του παιδιού σας", + walkthroughTextssubtitle0: "Ανακαλύψτε το Bebbo", walkthroughTextstitle1: "Παιχνίδια", walkthroughTextssubtitle1: "Βοηθήστε το παιδί σας να μάθει καινούργια πράγματα κάθε μέρα", walkthroughTextstitle2: "Εργαλεία", diff --git a/app/assets/translations/appConstants/bebbo/KGky.ts b/app/assets/translations/appConstants/bebbo/KGky.ts index 30ad2b398..467a1adcd 100644 --- a/app/assets/translations/appConstants/bebbo/KGky.ts +++ b/app/assets/translations/appConstants/bebbo/KGky.ts @@ -11,7 +11,7 @@ const KGky = { country: "Өлкө", language: "Тил", walkthroughTextstitle0: "Кош келиңиздер, ата-энелер!", - walkthroughTextssubtitle0: "Беббо сиздин жардамчыңыз, бул жерден балаңыздын өнүгүүсү жөнүндө керектүү маалыматты табасыз.", + walkthroughTextssubtitle0: "Беббо сиздин жардамчыңыз", walkthroughTextstitle1: "Оюндар", walkthroughTextssubtitle1: "балаңызга жаңы нерселерди үйрөнгөнгө жардам берет", walkthroughTextstitle2: "Куралдар", diff --git a/app/assets/translations/appConstants/bebbo/KGru.ts b/app/assets/translations/appConstants/bebbo/KGru.ts index 476a5b638..1fbec2850 100644 --- a/app/assets/translations/appConstants/bebbo/KGru.ts +++ b/app/assets/translations/appConstants/bebbo/KGru.ts @@ -11,7 +11,7 @@ const KGru = { country: "Страна", language: "Язык", walkthroughTextstitle0: "Добро пожаловать, родители!", - walkthroughTextssubtitle0: "Беббо ваш помощник - здесь вы найдете все, что нужно знать о развитии ребенка.", + walkthroughTextssubtitle0: "Беббо ваш помощник", walkthroughTextstitle1: "Игры", walkthroughTextssubtitle1: "помогут вашему ребенку учиться новому", walkthroughTextstitle2: "Инструменты", diff --git a/app/assets/translations/appConstants/bebbo/MDro.ts b/app/assets/translations/appConstants/bebbo/MDro.ts index 4c1fbecb8..471028cd6 100644 --- a/app/assets/translations/appConstants/bebbo/MDro.ts +++ b/app/assets/translations/appConstants/bebbo/MDro.ts @@ -12,7 +12,7 @@ const MDro = { country: "Țară", language: "Limbă", walkthroughTextstitle0: "Bun venit părinților!", - walkthroughTextssubtitle0: "Descoperiți Bebbo – resursa de care aveți nevoie ca părinte pentru a sprijini dezvoltarea copilului dvs.", + walkthroughTextssubtitle0: "Descoperiți Bebbo", walkthroughTextstitle1: "Jocuri ", walkthroughTextssubtitle1: "pentru a vă ajuta copilul să învețe lucruri noi în fiecare zi", walkthroughTextstitle2: "Instrumente", diff --git a/app/assets/translations/appConstants/bebbo/MEcnr.ts b/app/assets/translations/appConstants/bebbo/MEcnr.ts index 8e03b5a1c..bd136838c 100644 --- a/app/assets/translations/appConstants/bebbo/MEcnr.ts +++ b/app/assets/translations/appConstants/bebbo/MEcnr.ts @@ -11,7 +11,7 @@ const MEcnr = { country: "Zemlja", language: "Jezik", walkthroughTextstitle0: "Dobro došli, roditelji!", - walkthroughTextssubtitle0: "Otkrijte Bebbo – sve što Vam je kao roditelju potrebno da biste podržali razvoj svog djeteta", + walkthroughTextssubtitle0: "Otkrijte Bebbo", walkthroughTextstitle1: "Igre", walkthroughTextssubtitle1: "koje će Vašem djetetu pomoći da svakog dana uči nove stvari", walkthroughTextstitle2: "Alati", diff --git a/app/assets/translations/appConstants/bebbo/MKmk.ts b/app/assets/translations/appConstants/bebbo/MKmk.ts index 23b67a889..7cdd5920b 100644 --- a/app/assets/translations/appConstants/bebbo/MKmk.ts +++ b/app/assets/translations/appConstants/bebbo/MKmk.ts @@ -11,7 +11,7 @@ const MKmk = { country: "Земја", language: "Јазик", walkthroughTextstitle0: "Драги родители,", - walkthroughTextssubtitle0: "запознајте се со Bebbo – апликација која ќе ви помогне да го поддржите развојот на вашето дете", + walkthroughTextssubtitle0: "Запознајте се со Bebbo", walkthroughTextstitle1: "Игри", walkthroughTextssubtitle1: "за да му помогнете на вашето дете да учи нови нешта секој ден", walkthroughTextstitle2: "Алатки", diff --git a/app/assets/translations/appConstants/bebbo/MKsq.ts b/app/assets/translations/appConstants/bebbo/MKsq.ts index 69c8ace1a..f3a9f183e 100644 --- a/app/assets/translations/appConstants/bebbo/MKsq.ts +++ b/app/assets/translations/appConstants/bebbo/MKsq.ts @@ -11,7 +11,7 @@ const MKsq = { country: "Shteti", language: "Gjuha", walkthroughTextstitle0: "Mirë se erdhët Prindër!", - walkthroughTextssubtitle0: "Zbuloni Bebbo-n, gjithçka që ju nevojitet si prindër për ta mbështetur zhvillimin e fëmijës tuaj", + walkthroughTextssubtitle0: "Zbuloni Bebbo-n", walkthroughTextstitle1: "Lojëra", walkthroughTextssubtitle1: "për ta ndihmuar fëmijën tuaj që të mësojë gjëra të reja çdo ditë", walkthroughTextstitle2: "Mjete", diff --git a/app/assets/translations/appConstants/bebbo/ROro.ts b/app/assets/translations/appConstants/bebbo/ROro.ts index 3af8917f7..315b16a92 100644 --- a/app/assets/translations/appConstants/bebbo/ROro.ts +++ b/app/assets/translations/appConstants/bebbo/ROro.ts @@ -11,7 +11,7 @@ const ROro = { country: "Țară", language: "Limbă", walkthroughTextstitle0: "Bine ați venit, părinți!", - walkthroughTextssubtitle0: "Descoperiți Bebbo - tot ceea ce aveți nevoie ca părinte pentru a susține dezvoltarea copilului dvs.", + walkthroughTextssubtitle0: "Descoperiți Bebbo ", walkthroughTextstitle1: "Jocuri ", walkthroughTextssubtitle1: "pentru a vă ajuta copilul să învețe lucruri noi în fiecare zi", walkthroughTextstitle2: "Instrumente", diff --git a/app/assets/translations/appConstants/bebbo/RSsr.ts b/app/assets/translations/appConstants/bebbo/RSsr.ts index 953c88ca1..87683e96a 100644 --- a/app/assets/translations/appConstants/bebbo/RSsr.ts +++ b/app/assets/translations/appConstants/bebbo/RSsr.ts @@ -11,7 +11,7 @@ const RSsr = { country: "Zemlja", language: "Jezik", walkthroughTextstitle0: "Dobro došli, roditelji!", - walkthroughTextssubtitle0: "Otkrijte Bebbo – sve što Vam kao roditelju treba da podržite razvoj svog deteta", + walkthroughTextssubtitle0: "Otkrijte Bebbo", walkthroughTextstitle1: "Igre", walkthroughTextssubtitle1: "koje Vašem detetu pomažu da svakog dana nauči nešto novo", walkthroughTextstitle2: "Alati", diff --git a/app/assets/translations/appConstants/bebbo/TJru.ts b/app/assets/translations/appConstants/bebbo/TJru.ts index f4cb4a79c..c57cc2758 100644 --- a/app/assets/translations/appConstants/bebbo/TJru.ts +++ b/app/assets/translations/appConstants/bebbo/TJru.ts @@ -11,7 +11,7 @@ const TJru = { country: "Страна", language: "Язык", walkthroughTextstitle0: "Добро пожаловать, родители!", - walkthroughTextssubtitle0: "Перед вами Беббо — все, что вам нужно знать о росте и развитии вашего ребенка", + walkthroughTextssubtitle0: "Перед вами Беббо", walkthroughTextstitle1: "Занятия", walkthroughTextssubtitle1: "и игры, стимулирующие развитие", walkthroughTextstitle2: "Инструменты", diff --git a/app/assets/translations/appConstants/bebbo/TJtg.ts b/app/assets/translations/appConstants/bebbo/TJtg.ts index 82fb820b7..b53a13324 100644 --- a/app/assets/translations/appConstants/bebbo/TJtg.ts +++ b/app/assets/translations/appConstants/bebbo/TJtg.ts @@ -11,7 +11,7 @@ const TJtg = { country: "Кишвар", language: "Забон", walkthroughTextstitle0: "Салом, падару модар!", - walkthroughTextssubtitle0: "Ин Беббо аст - ҳама он чизе, ки шумо бояд дар бораи камолот ва инкишофи фарзанди худ донед", + walkthroughTextssubtitle0: "Ин Беббо аст", walkthroughTextstitle1: "Машғулият", walkthroughTextssubtitle1: "Машғулиятҳое, ки ба рушди фарзанди шумо ҳамарӯза мусоидат мекунанд", walkthroughTextstitle2: "Воситаҳо", diff --git a/app/assets/translations/appConstants/bebbo/UZru.ts b/app/assets/translations/appConstants/bebbo/UZru.ts index 055c5d52a..6b0dcb835 100644 --- a/app/assets/translations/appConstants/bebbo/UZru.ts +++ b/app/assets/translations/appConstants/bebbo/UZru.ts @@ -11,7 +11,7 @@ const UZru = { country: "Страна", language: "Язык", walkthroughTextstitle0: "Привет, родители!", - walkthroughTextssubtitle0: "Перед вами Беббо — все, что вам нужно знать о росте и развитии вашего ребенка", + walkthroughTextssubtitle0: "Перед вами Беббо", walkthroughTextstitle1: "Игры ", walkthroughTextssubtitle1: "помогающие вашему ребенку узнавать новое каждый день", walkthroughTextstitle2: "Инструменты", diff --git a/app/assets/translations/appConstants/bebbo/UZuz.ts b/app/assets/translations/appConstants/bebbo/UZuz.ts index ecd737462..bd7e246b2 100644 --- a/app/assets/translations/appConstants/bebbo/UZuz.ts +++ b/app/assets/translations/appConstants/bebbo/UZuz.ts @@ -11,7 +11,7 @@ const UZuz = { country: "Mamlakat", language: "Til", walkthroughTextstitle0: "Xush kelibsiz, hurmatli ota-onalar!", - walkthroughTextssubtitle0: "Bebboni kashf eting – unda farzandingiz rivojlanishiga ota-ona sifatida yordam berishingiz uchun hamma narsa bor.", + walkthroughTextssubtitle0: "Bebboni kashf eting", walkthroughTextstitle1: "Oʻyinlar", walkthroughTextssubtitle1: "farzandingiz har kuni yangi narsalarni oʻrganishida yordam berish uchun", walkthroughTextstitle2: "Vositalar", @@ -30,7 +30,7 @@ const UZuz = { loadingText: "Kontent yuklanmoqda…", childSetupheader: "Bebbo dan maksimal darajada foydalaning!", childSetupdobLabel: "Bolaning tug'ilgan kuni yoki rejalashtirilgan tug'ilish sanasi qachon?", - addAnotherChildSetupDobLabel: "Bolaning tug'ilgan kuni qachon??", + addAnotherChildSetupDobLabel: "Bolaning tug'ilgan kuni qachon?", childSetupdobSelector: "Bolaning tugʻilgan/tugʻilishi kutilayotgan sanasini kiriting", childSetupdueLabel: "Bolaning rejalashtirilgan tug'ilish sanasi qachon edi?", childSetupdueSelector: "Dastlab taxmin qilingan sanani kiriting", @@ -389,7 +389,7 @@ const UZuz = { dataSaveroff: "Trafikni tejash rejimini oʻchirmoqchimisiz?", vcrNoti1: "Emlash muddati uchun eslatma {{reminderDateTime}} ga oʻrnatildi", hcrNoti1: "Shifokor koʻrigi uchun eslatma {{reminderDateTime}} ga oʻrnatildi", - parentGender: "Jins", + parentGender: "Jinsi", successOnboardingImport: "Farzandingiz haqidagi maʼlumotlatni muvaffaqiyatli import qildingiz", updateImportText: "Davom etish uchun zarur maʼlumotlarni yangilang", importOnboardingText: "Bebbo sizning shaxsiy ma'lumotlaringizni yig'maydi.", diff --git a/app/assets/translations/appConstants/bebbo/ru.ts b/app/assets/translations/appConstants/bebbo/ru.ts index 8c9f50b77..ac33bc24e 100644 --- a/app/assets/translations/appConstants/bebbo/ru.ts +++ b/app/assets/translations/appConstants/bebbo/ru.ts @@ -11,7 +11,7 @@ const ru = { country: "Страна", language: "Язык", walkthroughTextstitle0: "Привет, родители!", - walkthroughTextssubtitle0: "Перед вами Беббо — все, что вам нужно знать о росте и развитии вашего ребенка", + walkthroughTextssubtitle0: "Перед вами Беббо", walkthroughTextstitle1: "Занятия", walkthroughTextssubtitle1: "и игры, стимулирующие развитие", walkthroughTextstitle2: "Инструменты", @@ -35,7 +35,7 @@ const ru = { childSetupdueSelector: "Введите первоначально предполагаемый срок", childSetupprematureLabel: "Ребенок родился недоношенным", childSetupprematureMessage: "Ребенок, родившийся до 37-й недели срока, считается недоношенным.", - childSetuprelationSelectTitle: "Ты:", + childSetuprelationSelectTitle: "Ты", childSetuprelationSelectText: "Выбрать", childSetupcontinueBtnText: "Продолжить", childSetupListheader: "Беббо готовится поддержать ваше родительское путешествие!", diff --git a/app/assets/translations/appConstants/bebbo/sk.ts b/app/assets/translations/appConstants/bebbo/sk.ts index e7cc3a739..00c280fe2 100755 --- a/app/assets/translations/appConstants/bebbo/sk.ts +++ b/app/assets/translations/appConstants/bebbo/sk.ts @@ -11,7 +11,7 @@ const sk = { "country": "Krajina", "language": "Jazyk", "walkthroughTextstitle0": "Vitajte, rodičia!", - "walkthroughTextssubtitle0": "Objavte Bebbo - všetko, čo potrebujete ako rodič, aby ste podporili vývin Vášho dieťaťa", + "walkthroughTextssubtitle0": "Objavte Bebbo", "walkthroughTextstitle1": "Hry", "walkthroughTextssubtitle1": "aby ste pomohli Vášmu dieťaťu učiť sa nové veci každý deň", "walkthroughTextstitle2": "Moje dieťa", diff --git a/app/assets/translations/appConstants/bebbo/uk.ts b/app/assets/translations/appConstants/bebbo/uk.ts index 269d9eea4..2ff44bdf2 100644 --- a/app/assets/translations/appConstants/bebbo/uk.ts +++ b/app/assets/translations/appConstants/bebbo/uk.ts @@ -11,7 +11,7 @@ const uk = { country: "Країна", language: "Мова", walkthroughTextstitle0: "Ласкаво просимо, батьки!", - walkthroughTextssubtitle0: "Відкрийте для себе Bebbo — все, що потрібно батькам для підтримки розвитку дитини", + walkthroughTextssubtitle0: "Відкрийте для себе Bebbo", walkthroughTextstitle1: "Ігри ", walkthroughTextssubtitle1: "щоб допомогти вашій дитині щодня дізнаватися щось нове", walkthroughTextstitle2: "Інструменти", diff --git a/app/components/HeaderNotiIcon.tsx b/app/components/HeaderNotiIcon.tsx index b1a2d9f71..13d7877f0 100755 --- a/app/components/HeaderNotiIcon.tsx +++ b/app/components/HeaderNotiIcon.tsx @@ -27,18 +27,10 @@ const HeaderNotiIcon = (props: any): any => { const localNotifications = useAppSelector((state: any) => state.notificationData.localNotifications); const scheduledlocalNotifications = useAppSelector((state: any) => state.notificationData.scheduledlocalNotifications); const localNotificationGenerateType = useAppSelector((state: any) => state.notificationData.localNotificationGenerateType); - const activeChild = useAppSelector((state: any) => - { - try { state.childData.childDataSet.activeChild != '' ? JSON.parse(state.childData.childDataSet.activeChild) - : [] - } catch (error) { - console.log("HeaderNotiIcon catch", error); - - } - } + : [], ); const dispatch = useAppDispatch(); const childAge = useAppSelector( @@ -175,7 +167,7 @@ const HeaderNotiIcon = (props: any): any => { React.useCallback(() => { // Your dismiss logic here if (allnotis.length > 0) { - const currentChildNotis = allnotis?.find((item: any) => item.childuuid == activeChild?.uuid) + const currentChildNotis = allnotis?.find((item: any) => item.childuuid == activeChild.uuid) //notiExist.gwcdnotis, notiExist.vcnotis, notiExist.hcnotis if (!isFutureDate(activeChild?.birthDate)) { if (currentChildNotis) { @@ -335,8 +327,8 @@ const HeaderNotiIcon = (props: any): any => { const fetchDataFav = async (): Promise => { const filterQuery = 'uuid == "' + activeChild?.uuid + '"'; const childData = await userRealmCommon.getFilteredData(ChildEntitySchema, filterQuery); - dispatch(setFavouriteAdvices(childData[0].favoriteadvices)); - dispatch(setFavouriteGames(childData[0].favoritegames)); + Object.keys(childData[0]?.favoriteadvices)?.length > 0 && dispatch(setFavouriteAdvices(childData[0]?.favoriteadvices)); + Object.keys(childData[0]?.favoritegames)?.length > 0 && dispatch(setFavouriteGames(childData[0].favoritegames)); } fetchDataFav() }, [activeChild?.uuid]); @@ -361,4 +353,3 @@ const HeaderNotiIcon = (props: any): any => { }; export default HeaderNotiIcon; - diff --git a/app/components/NotificationItem.tsx b/app/components/NotificationItem.tsx index 94e828d2f..363c3681f 100755 --- a/app/components/NotificationItem.tsx +++ b/app/components/NotificationItem.tsx @@ -738,10 +738,10 @@ const NotificationItem = (props: any):any => { {item.isRead == true ? {t(item.title, { - reminderDateTime: formatStringDate(item.periodName) + "," + formatStringTime(item.growth_period) + reminderDateTime: formatStringDate(item.periodName) + ", " + formatStringTime(item.growth_period) })} : {t(item.title, { - reminderDateTime: formatStringDate(item.periodName) + "," + formatStringTime(item.growth_period) + reminderDateTime: formatStringDate(item.periodName) + ", " + formatStringTime(item.growth_period) })} } diff --git a/app/components/homeScreen/DailyReads.tsx b/app/components/homeScreen/DailyReads.tsx index 3948e046f..f02a90b46 100755 --- a/app/components/homeScreen/DailyReads.tsx +++ b/app/components/homeScreen/DailyReads.tsx @@ -119,8 +119,8 @@ const DailyReads = (): any => { {item?.hasOwnProperty('activity_category') ? t('homeScreentodaygame') : t('homeScreentodayarticle')} {/*Parent Share , View Details*/} - {isAdvice ? x == item?.id)) > -1) ? true : false} isAdvice={true} /> : - x == item?.id)) > -1) ? true : false} isAdvice={false} />} + {isAdvice ? x == item?.id)) > -1) ? true : false} isAdvice={true} /> : + x == item?.id)) > -1) ? true : false} isAdvice={false} />} @@ -303,7 +303,7 @@ const DailyReads = (): any => { const renderItem = useCallback((item: any, index: any, isAdvice: boolean) => { return ; - }, []); + }, [favoriteAdvices,favoriteGames]); return ( <> diff --git a/app/components/shared/ButtonGlobal.tsx b/app/components/shared/ButtonGlobal.tsx index e81eae358..0cfe2b31a 100755 --- a/app/components/shared/ButtonGlobal.tsx +++ b/app/components/shared/ButtonGlobal.tsx @@ -145,7 +145,7 @@ justify-content: center; export const ButtonLinkRow = styled(ButtonRow)` flex-direction:row; - margin:0; + margin-top:25px; padding-verticle: 10px; margin-bottom:15px; `; diff --git a/app/components/shared/Icon.tsx b/app/components/shared/Icon.tsx index c4bf6be18..adb5be7f0 100755 --- a/app/components/shared/Icon.tsx +++ b/app/components/shared/Icon.tsx @@ -15,6 +15,9 @@ export const OuterIconRow = styled.View` export const OuterIconLeft = styled.View` margin-right: 8px; `; +export const OuterIconLeft1 = styled.View` + margin-right: 2px; +`; export const OuterIconLeft15 = styled.View` margin-right: 15px; `; diff --git a/app/components/shared/ShareFavButtons.tsx b/app/components/shared/ShareFavButtons.tsx index be8948b4f..9efb8ce15 100755 --- a/app/components/shared/ShareFavButtons.tsx +++ b/app/components/shared/ShareFavButtons.tsx @@ -10,7 +10,7 @@ import { userRealmCommon } from '../../database/dbquery/userRealmCommon'; import { ChildEntity, ChildEntitySchema } from '../../database/schema/ChildDataSchema'; import { setFavouriteAdvices, setFavouriteGames } from '../../redux/reducers/childSlice'; import { FDirRow } from './FlexBoxStyle'; -import Icon, { OuterIconLeft, OuterIconRow } from './Icon'; +import Icon, { OuterIconLeft, OuterIconRow,OuterIconLeft1 } from './Icon'; import useNetInfoHook from '../../customHooks/useNetInfoHook'; import { logEvent } from '../../services/EventSyncService'; export const ShareFavBox = styled.View` @@ -107,9 +107,9 @@ const languageCode = useAppSelector( onShare()} > - + - + {t('actScreenshareText')} @@ -119,9 +119,9 @@ const languageCode = useAppSelector( ( unFavHandler()} style={styles.alignItemsFlexEnd}> - + - + {t('favScreenremoveText')} @@ -129,9 +129,9 @@ const languageCode = useAppSelector( ( unFavHandler()} style={styles.alignItemsFlexEnd}> - + - + {t('actScreenremovetoFavText')} @@ -142,9 +142,9 @@ const languageCode = useAppSelector( (onFavClick()} style={styles.alignItemsFlexEnd}> - + - + {t('actScreenaddtoFavText')} diff --git a/app/screens/CustomDrawerContent.tsx b/app/screens/CustomDrawerContent.tsx index 021d1f110..dc9cf28e4 100755 --- a/app/screens/CustomDrawerContent.tsx +++ b/app/screens/CustomDrawerContent.tsx @@ -529,7 +529,7 @@ const CustomDrawerContent = ({ navigation }: any): any => { const eventData = { 'name': EMAIL_SENT } logEvent(eventData, netInfo.isConnected) console.log('Country email is',countryEmail); - Linking.openURL(countryEmail); + Linking.openURL(`mailto:${countryEmail}`); }}> diff --git a/app/screens/home/SettingScreen.tsx b/app/screens/home/SettingScreen.tsx index f548fb205..49f7cd92f 100755 --- a/app/screens/home/SettingScreen.tsx +++ b/app/screens/home/SettingScreen.tsx @@ -1,5 +1,5 @@ import { DEVELOPMENT_NOTIFICATION_OFF, DEVELOPMENT_NOTIFICATION_ON, GROWTH_NOTIFICATION_OFF, GROWTH_NOTIFICATION_ON, VACCINE_HEALTHCHECKUP_NOTIFICATION_OFF, VACCINE_HEALTHCHECKUP_NOTIFICATION_ON } from '@assets/data/firebaseEvents'; -import { allApisObject, tempbackUpPath, tempRealmFile } from '@assets/translations/appOfflineData/apiConstants'; +import { allApisObject, appConfig, tempbackUpPath, tempRealmFile } from '@assets/translations/appOfflineData/apiConstants'; import AlertModal from '@components/AlertModal'; import FocusAwareStatusBar from '@components/FocusAwareStatusBar'; import OverlayLoadingComponent from '@components/OverlayLoadingComponent'; @@ -80,6 +80,7 @@ import { logEvent } from '../../services/EventSyncService'; import AesCrypto from 'react-native-aes-crypto'; import { encryptionsIVKey, encryptionsKey } from 'react-native-dotenv'; import configureAppStore from '../../redux/store'; +import { fetchAPI } from '../../redux/sagaMiddleware/sagaActions'; type SettingScreenNavigationProp = StackNavigationProp; type Props = { @@ -172,6 +173,11 @@ const SettingScreen = (props: any): any => { const monthlyDownloadDate = useAppSelector( (state: any) => state.utilsData.monthlyDownloadDate, ); + const activeChild = useAppSelector((state: any) => + state.childData.childDataSet.activeChild != '' + ? JSON.parse(state.childData.childDataSet.activeChild) + : [], + ); const incrementalSyncDT = useAppSelector((state: any) => (state.utilsData.incrementalSyncDT), ); @@ -533,6 +539,19 @@ const SettingScreen = (props: any): any => { dispatch(setAllLocalNotificationGenerateType(localnotiFlagObj)); } } + + + useEffect(() => { + const apiJsonData = [ + { + apiEndpoint: appConfig.countryGroups, + method: 'get', + postdata: {}, + saveinDB: true, + } + ]; + dispatch(fetchAPI(apiJsonData, '', dispatch, navigation, languageCode, activeChild, apiJsonData, netInfo.isConnected)) + }, []) const toggleAllNotis = (): any => { if (isEnabled == true) { const obj = { key: 'growthEnabled', value: false }; @@ -719,7 +738,7 @@ const SettingScreen = (props: any): any => { return decryptData(edata, encryptionsKey) .then((text: any) => { //console.log('decryptData',text) - return text; + return text.replace(/[\x00-\x1F\x7F]/g,''); }) .catch((error: any) => { //console.log("Decrypted error", error); diff --git a/app/screens/localization/CountryLanguageConfirmation.tsx b/app/screens/localization/CountryLanguageConfirmation.tsx index 00082710a..0db4285b1 100755 --- a/app/screens/localization/CountryLanguageConfirmation.tsx +++ b/app/screens/localization/CountryLanguageConfirmation.tsx @@ -34,15 +34,16 @@ import { } from '@styles/typography'; import React, { useContext, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; -import { I18nManager, Platform, BackHandler, Text, StyleSheet, View } from 'react-native'; +import { I18nManager, Platform, BackHandler, Text, StyleSheet, View, Alert } from 'react-native'; import { ThemeContext } from 'styled-components/native'; import { useAppDispatch, useAppSelector } from '../../../App'; -import { allApisObject, appConfig } from '../../assets/translations/appOfflineData/apiConstants'; +import { allApisObject, appConfig, buildFor, buildForBebbo } from '../../assets/translations/appOfflineData/apiConstants'; import { oncountrtIdChange, onLocalizationSelect, setAppLayoutDirectionParams, setrestartOnLangChange, setSponsorStore } from '../../redux/reducers/localizationSlice'; import { setInfoModalOpened } from '../../redux/reducers/utilsSlice'; import RNRestart from 'react-native-restart'; import * as RNLocalize from "react-native-localize"; import { secondaryBtnColor } from '@styles/style'; +import { localization } from '@dynamicImportsClass/dynamicImports'; type CountryLanguageConfirmationNavigationProp = StackNavigationProp< RootStackParamList, @@ -119,7 +120,9 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { for (const country of allCountries) { if (country.languages) { // Ensure country.languages is not null or undefined for (const language of country.languages) { - if (language.languageCode.toLowerCase().includes(normalizedCountryCode)) { + if(!language.languageCode.toLowerCase().includes('-') && language.languageCode.toLowerCase().includes(normalizedCountryCode)){ + return country; + } else if (language.languageCode?.toLowerCase()?.split("-")[0]?.includes(normalizedCountryCode)) { return country; } } @@ -266,11 +269,11 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { }, []), ); + const rtlConditions = (language: any): any => { - const saveSelection = (): any => { - i18n.changeLanguage(newLanguage.locale) + i18n.changeLanguage(language.locale) .then(() => { - if (newLanguage?.locale == 'GRarb' || newLanguage?.locale == 'GRda') { + if (language?.locale == 'GRarb' || language?.locale == 'GRda') { if (AppLayoutDirection == 'ltr') { //remove rtl on backhandler Platform.OS == 'ios' ? setTimeout(() => { @@ -289,42 +292,68 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { } }) - if (userIsOnboarded == true && (newLanguage.languageCode == languageCode)) { - navigation.reset({ - index: 0, - routes: [ - { - name: 'HomeDrawerNavigator', - }, - ], - }); - } else { - if (Object.keys(route.params).length !== 0) { - dispatch(onLocalizationSelect(route.params)); - dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); - analytics().setUserProperties({ country: route.params.country.name, language: newLanguage.displayName }) + if (userIsOnboarded == true && (newLanguage.languageCode == languageCode)) { + navigation.reset({ + index: 0, + routes: [ + { + name: 'HomeDrawerNavigator', + }, + ], + }); } else { - console.log('countyData is', countryData); - console.log('newLanguage is', newLanguage); - const languageSelected = selectedLocale !== '' ? selectedLocale : locale; - const filteredLan = countryData?.languages?.filter((lang: any) => lang.locale == newLanguage?.locale); - console.log('filteredLan is', filteredLan); - dispatch(onLocalizationSelect({ "languages": filteredLan, "countryId": countryData?.CountryID })); - // dispatch(onLocalizationSelect(countryData)); - dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); - analytics().setUserProperties({ country: countryData.name, language: newLanguage.displayName }) + if (Object.keys(route.params).length !== 0) { + dispatch(onLocalizationSelect(route.params)); + dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); + analytics().setUserProperties({ country: route.params.country.name, language: newLanguage.displayName }) + } else { + console.log('countyData is', countryData); + console.log('newLanguage is', newLanguage); + const languageSelected = selectedLocale !== '' ? selectedLocale : locale; + const filteredLan = countryData?.languages?.filter((lang: any) => lang.locale == newLanguage?.locale); + console.log('filteredLan is', filteredLan); + dispatch(onLocalizationSelect({ "languages": filteredLan, "countryId": countryData?.CountryID })); + // dispatch(onLocalizationSelect(countryData)); + dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); + analytics().setUserProperties({ country: countryData.name, language: newLanguage.displayName }) + } + + // if (userIsOnboarded == true) { + // dispatch(setSponsorStore({ country_national_partner: null, country_sponsor_logo: null })); + // } + console.log('Sponsors Data for countryList', sponsorsData) + dispatch(setSponsorStore(sponsorsData)); + navigation.navigate('LoadingScreen', { + apiJsonData: userIsOnboarded == true ? allApisObject(false, incrementalSyncDT) : apiJsonData, + prevPage: userIsOnboarded == true ? 'CountryLangChange' : 'CountryLanguageSelection' + }); } - - // if (userIsOnboarded == true) { - // dispatch(setSponsorStore({ country_national_partner: null, country_sponsor_logo: null })); - // } - console.log('Sponsors Data for countryList', sponsorsData) - dispatch(setSponsorStore(sponsorsData)); - navigation.navigate('LoadingScreen', { - apiJsonData: userIsOnboarded == true ? allApisObject(false, incrementalSyncDT) : apiJsonData, - prevPage: userIsOnboarded == true ? 'CountryLangChange' : 'CountryLanguageSelection' - }); - } + } + const saveSelection = (): any => { + i18n.changeLanguage(newLanguage.locale) + .then(() => { + if (buildFor == buildForBebbo) { + const rotwLanguagelocaleen = localization[localization.length - 1].languages[0].locale; + const rotwLanguagelocaleru = localization[localization.length - 1].languages[1].locale; + console.log('rest of the world title', newLanguage) + console.log('rotwLanguagelocaleru of the world title', rotwLanguagelocaleru) + if (newLanguage?.locale == rotwLanguagelocaleen || newLanguage?.locale == rotwLanguagelocaleru) { + Alert.alert(t('restOfTheWorldAlertTitle'), t('restOfTheWorldAlertText'), + [ + { + text: t('restOfTheWorldOkTitle'), onPress: async (): Promise => { + rtlConditions(newLanguage) + } + } + ] + ); + } else { + rtlConditions(newLanguage); + } + } else { + rtlConditions(newLanguage); + } + }) }; const themeContext = useContext(ThemeContext); diff --git a/app/screens/localization/CountrySelection.tsx b/app/screens/localization/CountrySelection.tsx index 479ee1901..ba9bf37c4 100755 --- a/app/screens/localization/CountrySelection.tsx +++ b/app/screens/localization/CountrySelection.tsx @@ -145,6 +145,18 @@ const CountrySelection = (props: any): any => { ); + + const renderHeader = () => { + return ( + + { + props.navigation.navigate('LanguageSelection', { country: country, language: language, luxonlocale: luxonLanLocale != undefined ? luxonLanLocale : null, deviceLanCode: deviceLanCode != undefined ? deviceLanCode : null }) + }}> + {t('continueCountryLang')} + + + ) + } return ( <> <> @@ -169,13 +181,14 @@ const CountrySelection = (props: any): any => { data={allCountries} renderItem={renderItem} keyExtractor={(item): any => item.CountryID} + ListFooterComponent={renderHeader} /> : item.CountryID} + ListFooterComponent={renderHeader} />} {/* {country ? ( @@ -203,13 +216,7 @@ const CountrySelection = (props: any): any => { )} */} - - { - props.navigation.navigate('LanguageSelection', { country: country, language: language, luxonlocale: luxonLanLocale != undefined ? luxonLanLocale : null, deviceLanCode: deviceLanCode != undefined ? deviceLanCode : null }) - }}> - {t('continueCountryLang')} - - + diff --git a/index.js b/index.js index a1dc64bf4..3a5d2485d 100644 --- a/index.js +++ b/index.js @@ -6,9 +6,10 @@ import { AppRegistry } from 'react-native'; import App from './App'; import { name as appName } from './app.json'; import React from 'react'; -import { Text } from 'react-native'; +import { Text,LogBox } from 'react-native'; import 'react-native-url-polyfill/auto'; import 'react-native-get-random-values'; +LogBox.ignoreAllLogs() AppRegistry.registerComponent(appName, () => () => ); if (Text.defaultProps == null) { Text.defaultProps = {}; diff --git a/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyAppDev.xcscheme b/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyAppDev.xcscheme index a985c9ea4..87be3e734 100644 --- a/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyAppDev.xcscheme +++ b/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyAppDev.xcscheme @@ -49,7 +49,7 @@ Date: Fri, 9 Aug 2024 20:08:13 +0530 Subject: [PATCH 2/7] - fix country group api and import issue --- app/navigation/AppNavigation.tsx | 20 ++++- app/screens/LoadingScreen.tsx | 59 ++++++++++++- app/screens/home/SettingScreen.tsx | 6 +- .../CountryLanguageConfirmation.tsx | 85 +++++++++++-------- app/screens/localization/CountrySelection.tsx | 2 +- 5 files changed, 126 insertions(+), 46 deletions(-) diff --git a/app/navigation/AppNavigation.tsx b/app/navigation/AppNavigation.tsx index 71fef5774..5adba70d9 100755 --- a/app/navigation/AppNavigation.tsx +++ b/app/navigation/AppNavigation.tsx @@ -24,7 +24,7 @@ import AddChildVaccination from '@screens/vaccination/AddChildVaccination'; import AddReminder from '@screens/vaccination/AddReminder'; import React, { useContext, useEffect, useMemo } from 'react'; import { useTranslation } from 'react-i18next'; -import { ActivityIndicator, Alert, AppState, Linking, Platform, Text } from 'react-native'; +import { ActivityIndicator, Alert, AppState, I18nManager, Linking, Platform, Text } from 'react-native'; import SplashScreen from "react-native-lottie-splash-screen"; import { SafeAreaProvider } from 'react-native-safe-area-context'; import { useAppDispatch, useAppSelector } from '../../App'; @@ -38,7 +38,7 @@ import { RootStackParamList } from './types'; import { retryAlert1 } from '../services/commonApiService'; import { setchatBotData } from '../redux/reducers/childSlice'; import { appConfig, restOfTheWorldCountryId } from '@assets/translations/appOfflineData/apiConstants'; -import { oncountrtIdChange } from '../redux/reducers/localizationSlice'; +import { oncountrtIdChange, onLocalizationSelect, setSponsorStore } from '../redux/reducers/localizationSlice'; import { useDeepLinkURL } from '../services/DeepLinking'; import { ThemeContext } from 'styled-components'; import messaging from '@react-native-firebase/messaging'; @@ -54,6 +54,7 @@ import { logEvent, synchronizeEvents } from '../services/EventSyncService'; import AddChildSetup from '@screens/AddChildSetup'; import { fetchAPI } from '../redux/sagaMiddleware/sagaActions'; import { localization } from '@dynamicImportsClass/dynamicImports'; +import i18next from 'i18next'; const RootStack = createStackNavigator(); export default (): any => { const [profileLoading, setProfileLoading] = React.useState(false); @@ -824,6 +825,15 @@ export default (): any => { }, [netState]); const routeNameRef = React.useRef(); + const apiJsonDataLoading = [ + { + apiEndpoint: appConfig.basicPages, + method: 'get', + postdata: {}, + saveinDB: true, + }, + ]; + return ( {apiData && @@ -910,6 +920,12 @@ export default (): any => { name="LoadingScreen" component={LoadingScreen} options={{ headerShown: false, gestureEnabled: false }} + initialParams={{ + apiJsonData:apiJsonDataLoading, + prevPage:'CountryLanguageSelection', + isFirst: true + + }} /> { const childList = useAppSelector( (state: any) => state.childData.childDataSet.allChild != '' ? JSON.parse(state.childData.childDataSet.allChild) : [], ); - const { apiJsonData, prevPage, downloadWeeklyData, downloadMonthlyData, downloadBufferData, ageBrackets, forceupdatetime } = route.params; + const { + apiJsonData = null, + prevPage = null, + downloadWeeklyData = null, + downloadMonthlyData = null, + downloadBufferData = null, + ageBrackets = null, + forceupdatetime = null, + isFirst = false + } = route.params || {}; const sponsors = useAppSelector( (state: any) => state.selectedCountry.sponsors, ); + const allCountries = useAppSelector( + (state: any) => + state.selectedCountry.countries != '' ? JSON.parse(state.selectedCountry.countries) : [], + ); + + const AppLayoutDirectionScreen = useAppSelector( + (state: any) => state.selectedCountry.AppLayoutDirectionScreen, + ); + const AppLayoutDirection = useAppSelector( + (state: any) => state.selectedCountry.AppLayoutDirection, + ); + const languageCode = useAppSelector( (state: any) => state.selectedCountry.languageCode, ); @@ -279,6 +303,35 @@ const LoadingScreen = ({ route, navigation }: Props): any => { } }, []); + useEffect(() => { + if(allCountries?.length === 1 && allCountries[0]?.languages?.length === 1 && isFirst){ + const language = allCountries[0]?.languages?.[0] + i18next.changeLanguage(language.locale) + .then(() => { + if (language?.locale == 'GRarb' || language?.locale == 'GRda') { + if (AppLayoutDirection == 'ltr') { + //remove rtl on backhandler + Platform.OS == 'ios' ? setTimeout(() => { + I18nManager.forceRTL(true); + RNRestart.Restart(); + }, 100) : + setTimeout(() => { + I18nManager.forceRTL(true); + RNRestart.Restart() + }, 0); + } else { + I18nManager.forceRTL(true); + } + } else { + I18nManager.forceRTL(false); + } + }) + + dispatch(setSponsorStore(allCountries[0])); + dispatch(onLocalizationSelect({ "languages": allCountries[0]?.languages, "countryId": allCountries[0]?.CountryID })); + } + },[isFirst]) + const themeContext = useContext(ThemeContext); const headerColor = themeContext?.colors.SECONDARY_COLOR; diff --git a/app/screens/home/SettingScreen.tsx b/app/screens/home/SettingScreen.tsx index 49f7cd92f..188bfeabf 100755 --- a/app/screens/home/SettingScreen.tsx +++ b/app/screens/home/SettingScreen.tsx @@ -640,12 +640,12 @@ const SettingScreen = (props: any): any => { } else { console.log('Selected country for countryId is', countryId); const selectedCountry: any = allCountries?.find( - (country: any) => country?.CountryID === countryId, + (country: any) => country?.CountryID == countryId, ); - console.log('Selected country is', selectedCountry); + console.log(allCountries,'Selected country is', selectedCountry); setCountry(selectedCountry); const selectedLanguage: any = selectedCountry?.languages?.find( - (language: any) => language?.languageCode === languageCode, + (language: any) => language?.languageCode == languageCode, ); setlanguage(selectedLanguage); } diff --git a/app/screens/localization/CountryLanguageConfirmation.tsx b/app/screens/localization/CountryLanguageConfirmation.tsx index 0db4285b1..7f212aed3 100755 --- a/app/screens/localization/CountryLanguageConfirmation.tsx +++ b/app/screens/localization/CountryLanguageConfirmation.tsx @@ -120,7 +120,7 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { for (const country of allCountries) { if (country.languages) { // Ensure country.languages is not null or undefined for (const language of country.languages) { - if(!language.languageCode.toLowerCase().includes('-') && language.languageCode.toLowerCase().includes(normalizedCountryCode)){ + if (!language.languageCode.toLowerCase().includes('-') && language.languageCode.toLowerCase().includes(normalizedCountryCode)) { return country; } else if (language.languageCode?.toLowerCase()?.split("-")[0]?.includes(normalizedCountryCode)) { return country; @@ -199,7 +199,7 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { ) setSponsorsData(selectedCountry); - const foundCountry = getCountryByCountryCode(RNLocalize.getCountry()); + const foundCountry = allCountries.length === 1 ? allCountries?.[0] : getCountryByCountryCode(RNLocalize.getCountry()); console.log('Found country is', foundCountry) if (foundCountry != undefined && foundCountry != null) { if (countrySelectedId == 0) { @@ -292,42 +292,42 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { } }) - if (userIsOnboarded == true && (newLanguage.languageCode == languageCode)) { - navigation.reset({ - index: 0, - routes: [ - { - name: 'HomeDrawerNavigator', - }, - ], - }); + if (userIsOnboarded == true && (newLanguage.languageCode == languageCode)) { + navigation.reset({ + index: 0, + routes: [ + { + name: 'HomeDrawerNavigator', + }, + ], + }); + } else { + if (Object.keys(route.params).length !== 0) { + dispatch(onLocalizationSelect(route.params)); + dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); + analytics().setUserProperties({ country: route.params.country.name, language: newLanguage.displayName }) } else { - if (Object.keys(route.params).length !== 0) { - dispatch(onLocalizationSelect(route.params)); - dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); - analytics().setUserProperties({ country: route.params.country.name, language: newLanguage.displayName }) - } else { - console.log('countyData is', countryData); - console.log('newLanguage is', newLanguage); - const languageSelected = selectedLocale !== '' ? selectedLocale : locale; - const filteredLan = countryData?.languages?.filter((lang: any) => lang.locale == newLanguage?.locale); - console.log('filteredLan is', filteredLan); - dispatch(onLocalizationSelect({ "languages": filteredLan, "countryId": countryData?.CountryID })); - // dispatch(onLocalizationSelect(countryData)); - dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); - analytics().setUserProperties({ country: countryData.name, language: newLanguage.displayName }) - } - - // if (userIsOnboarded == true) { - // dispatch(setSponsorStore({ country_national_partner: null, country_sponsor_logo: null })); - // } - console.log('Sponsors Data for countryList', sponsorsData) - dispatch(setSponsorStore(sponsorsData)); - navigation.navigate('LoadingScreen', { - apiJsonData: userIsOnboarded == true ? allApisObject(false, incrementalSyncDT) : apiJsonData, - prevPage: userIsOnboarded == true ? 'CountryLangChange' : 'CountryLanguageSelection' - }); + console.log('countyData is', countryData); + console.log('newLanguage is', newLanguage); + const languageSelected = selectedLocale !== '' ? selectedLocale : locale; + const filteredLan = countryData?.languages?.filter((lang: any) => lang.locale == newLanguage?.locale); + console.log('filteredLan is', filteredLan); + dispatch(onLocalizationSelect({ "languages": filteredLan, "countryId": countryData?.CountryID })); + // dispatch(onLocalizationSelect(countryData)); + dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); + analytics().setUserProperties({ country: countryData.name, language: newLanguage.displayName }) } + + // if (userIsOnboarded == true) { + // dispatch(setSponsorStore({ country_national_partner: null, country_sponsor_logo: null })); + // } + console.log('Sponsors Data for countryList', sponsorsData) + dispatch(setSponsorStore(sponsorsData)); + navigation.navigate('LoadingScreen', { + apiJsonData: userIsOnboarded == true ? allApisObject(false, incrementalSyncDT) : apiJsonData, + prevPage: userIsOnboarded == true ? 'CountryLangChange' : 'CountryLanguageSelection' + }); + } } const saveSelection = (): any => { i18n.changeLanguage(newLanguage.locale) @@ -362,6 +362,17 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { navigation.dispatch(StackActions.pop(1)); // Pop the current screen navigation.dispatch(StackActions.push(routeName, params)); // Push the new screen }; + + const onEditLang = () => { + if (allCountries.length == 1 && allCountries[0].languages?.length === 1) { + saveSelection() + } else if (allCountries.length == 1) { + navigation.navigate('LanguageSelection', { country: countryData, language: newLanguage }) + } else { + navigation.navigate('CountrySelection', { country: countryData, language: newLanguage }) + } + } + return ( <> <> @@ -411,7 +422,7 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { - navigation.navigate('CountrySelection', { country: countryData, language: newLanguage })}> + diff --git a/app/screens/localization/CountrySelection.tsx b/app/screens/localization/CountrySelection.tsx index ba9bf37c4..7ca5ade18 100755 --- a/app/screens/localization/CountrySelection.tsx +++ b/app/screens/localization/CountrySelection.tsx @@ -188,7 +188,7 @@ const CountrySelection = (props: any): any => { contentContainerStyle={{ flexDirection: 'column-reverse' }} renderItem={renderItem} keyExtractor={(item): any => item.CountryID} - ListFooterComponent={renderHeader} + ListHeaderComponent={renderHeader} />} {/* {country ? ( From ff3681abd63626e1896cb08f073950a6d199ea0f Mon Sep 17 00:00:00 2001 From: ShahidJamal Ansari Date: Fri, 23 Aug 2024 19:02:13 +0530 Subject: [PATCH 3/7] - > FIXED BUG LIST ISSUE --- .../activity_feature_logo_svg_97fc39.xml | 30 + .../advice_feature_logo_svg_7c0e83.xml | 20 + .../drawable/bebbo_logo_shape1_svg_b84625.xml | 19 + .../drawable/bebbo_logo_shape_svg_55f84f.xml | 15 + .../drawable/camera_profile_svg_0e8202.xml | 21 + .../main/res/drawable/chart_svg_e10e63.xml | 254 ++ .../main/res/drawable/history_svg_0d5237.xml | 27 + .../drawable/ic_activity_color_svg_86e25d.xml | 36 + .../drawable/ic_article_color_svg_0eb212.xml | 36 + .../ic_development_color_svg_623199.xml | 28 + .../main/res/drawable/ic_file_svg_873adc.xml | 9 + .../res/drawable/ic_gdrive_svg_1618e2.xml | 24 + .../drawable/ic_growth_color_svg_532ea2.xml | 48 + .../drawable/ic_health_color_svg_b47d6e.xml | 30 + .../drawable/ic_tools_color_svg_335b8f.xml | 24 + .../ic_vaccination_color_svg_5b90d8.xml | 33 + .../img_logo_chatbot_new_svg_fa2402.xml | 15 + .../res/drawable/play_icon_svg_b1cbb6.xml | 12 + .../tools_features_logo_svg_41c195.xml | 30 + app/assets/svg/bebbo/bebbo_logo_shape1.svg | 13 +- app/assets/svg/camera_profile.svg | 13 +- app/assets/svg/history.svg | 15 +- .../translations/appConstants/bebbo/UZuz.ts | 2 +- .../appOfflineData/apiConstants.ts | 2 +- .../appOfflineData/getDataToStore.ts | 8 +- app/components/CountryItem.tsx | 2 +- app/components/FavArticles.tsx | 2 +- app/components/HeaderBabyMenu.tsx | 6 +- app/components/HeaderNotiIcon.tsx | 20 +- .../homeScreen/BabyNotification.tsx | 2 +- app/components/homeScreen/DailyReads.tsx | 31 +- app/components/shared/OnboardingContainer.tsx | 2 +- app/components/shared/ShareFavButtons.tsx | 7 +- .../vaccination/tabs/UpcomingVaccines.tsx | 5 + app/database/dbquery/dataRealmCommon.ts | 4 +- app/navigation/AppNavigation.tsx | 2 +- app/screens/home/ChildProfile.tsx | 4 +- app/screens/home/SettingScreen.tsx | 16 +- .../CountryLanguageConfirmation.tsx | 12 +- app/screens/localization/CountrySelection.tsx | 395 +-- app/services/Utils.ts | 2 +- app/services/backup.tsx | 2 + app/services/commonApiService.ts | 4 +- app/services/notificationService.ts | 2 +- ios/ParentBuddyApp.xcodeproj/project.pbxproj | 489 +++- .../xcschemes/ParentBuddyApp.xcscheme | 2 +- .../UserInterfaceState.xcuserstate | Bin 0 -> 39310 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 72 + .../Contents.json | 26 +- .../activity_feature_logo 1.svg | 15 - .../activity_feature_logo 2.svg | 15 - .../activity_feature_logo.svg | 15 - .../light.pdf | Bin 0 -> 3687 bytes .../Contents.json | 26 +- .../advice_feature_logo 1.svg | 11 - .../advice_feature_logo 2.svg | 11 - .../advice_feature_logo.svg | 11 - .../light.pdf | Bin 0 -> 4179 bytes .../Contents.json | 0 .../light.pdf | Bin 0 -> 1422 bytes .../Contents.json | 23 - .../bebbo_logo_shape1 1.svg | 9 - .../bebbo_logo_shape1 2.svg | 9 - .../bebbo_logo_shape1.svg | 9 - .../light.pdf | Bin 1755 -> 1739 bytes .../Contents.json | 15 + .../light.pdf | Bin 0 -> 3520 bytes .../Contents.json | 23 - .../camera_profile 1.svg | 23 - .../camera_profile 2.svg | 23 - .../camera_profile.svg | 23 - .../chart_svg_e10e63.imageset/light.pdf | Bin 2415 -> 2402 bytes .../history_svg_0d5237.imageset/Contents.json | 15 + .../light.pdf | Bin 1361 -> 1495 bytes .../history_svg_a0f5bd.imageset/Contents.json | 23 - .../history_svg_a0f5bd.imageset/history 1.svg | 10 - .../history_svg_a0f5bd.imageset/history 2.svg | 10 - .../history_svg_a0f5bd.imageset/history.svg | 10 - .../history_svg_a0f5bd.imageset/output.pdf | Bin 1408 -> 0 bytes .../light.pdf | Bin 3599 -> 3497 bytes .../light.pdf | Bin 3555 -> 3474 bytes .../light.pdf | Bin 2242 -> 2198 bytes .../ic_file_svg_873adc.imageset/light.pdf | Bin 1275 -> 1276 bytes .../ic_gdrive_svg_1618e2.imageset/light.pdf | Bin 1827 -> 1807 bytes .../light.pdf | Bin 3025 -> 2990 bytes .../light.pdf | Bin 3916 -> 3761 bytes .../light.pdf | Bin 2851 -> 2790 bytes .../play_icon_svg_b1cbb6.imageset/light.pdf | Bin 1361 -> 1356 bytes .../Contents.json | 26 +- .../light.pdf | Bin 0 -> 3300 bytes .../tools_features_logo 1.svg | 15 - .../tools_features_logo 2.svg | 15 - .../tools_features_logo.svg | 15 - ios/ParentBuddyApp/Info.plist | 4 +- package-lock.json | 2154 +++++++---------- package.json | 6 +- patches/react-native-aes-crypto+3.0.3.patch | 2 +- 97 files changed, 2369 insertions(+), 2070 deletions(-) create mode 100644 android/app/src/main/res/drawable/activity_feature_logo_svg_97fc39.xml create mode 100644 android/app/src/main/res/drawable/advice_feature_logo_svg_7c0e83.xml create mode 100644 android/app/src/main/res/drawable/bebbo_logo_shape1_svg_b84625.xml create mode 100644 android/app/src/main/res/drawable/bebbo_logo_shape_svg_55f84f.xml create mode 100644 android/app/src/main/res/drawable/camera_profile_svg_0e8202.xml create mode 100644 android/app/src/main/res/drawable/chart_svg_e10e63.xml create mode 100644 android/app/src/main/res/drawable/history_svg_0d5237.xml create mode 100644 android/app/src/main/res/drawable/ic_activity_color_svg_86e25d.xml create mode 100644 android/app/src/main/res/drawable/ic_article_color_svg_0eb212.xml create mode 100644 android/app/src/main/res/drawable/ic_development_color_svg_623199.xml create mode 100644 android/app/src/main/res/drawable/ic_file_svg_873adc.xml create mode 100644 android/app/src/main/res/drawable/ic_gdrive_svg_1618e2.xml create mode 100644 android/app/src/main/res/drawable/ic_growth_color_svg_532ea2.xml create mode 100644 android/app/src/main/res/drawable/ic_health_color_svg_b47d6e.xml create mode 100644 android/app/src/main/res/drawable/ic_tools_color_svg_335b8f.xml create mode 100644 android/app/src/main/res/drawable/ic_vaccination_color_svg_5b90d8.xml create mode 100644 android/app/src/main/res/drawable/img_logo_chatbot_new_svg_fa2402.xml create mode 100644 android/app/src/main/res/drawable/play_icon_svg_b1cbb6.xml create mode 100644 android/app/src/main/res/drawable/tools_features_logo_svg_41c195.xml create mode 100644 ios/ParentBuddyApp.xcworkspace/xcuserdata/ansari.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 ios/ParentBuddyApp.xcworkspace/xcuserdata/ansari.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist delete mode 100644 ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 1.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 2.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo.svg create mode 100644 ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/light.pdf delete mode 100644 ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo 1.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo 2.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo.svg create mode 100644 ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/light.pdf rename ios/ParentBuddyApp/Images.xcassets/{play_icon_svg_96d98d.imageset => bebbo_logo_shape1_svg_b84625.imageset}/Contents.json (100%) mode change 100755 => 100644 create mode 100644 ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_b84625.imageset/light.pdf delete mode 100644 ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/Contents.json delete mode 100644 ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 1.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 2.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1.svg create mode 100644 ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_0e8202.imageset/Contents.json create mode 100644 ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_0e8202.imageset/light.pdf delete mode 100644 ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/Contents.json delete mode 100644 ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 1.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 2.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile.svg create mode 100644 ios/ParentBuddyApp/Images.xcassets/history_svg_0d5237.imageset/Contents.json rename ios/ParentBuddyApp/Images.xcassets/{play_icon_svg_96d98d.imageset => history_svg_0d5237.imageset}/light.pdf (59%) mode change 100755 => 100644 delete mode 100644 ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/Contents.json delete mode 100644 ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 1.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 2.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/output.pdf create mode 100644 ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/light.pdf delete mode 100644 ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 1.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 2.svg delete mode 100644 ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo.svg diff --git a/android/app/src/main/res/drawable/activity_feature_logo_svg_97fc39.xml b/android/app/src/main/res/drawable/activity_feature_logo_svg_97fc39.xml new file mode 100644 index 000000000..bb168b49c --- /dev/null +++ b/android/app/src/main/res/drawable/activity_feature_logo_svg_97fc39.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/advice_feature_logo_svg_7c0e83.xml b/android/app/src/main/res/drawable/advice_feature_logo_svg_7c0e83.xml new file mode 100644 index 000000000..59ba204d2 --- /dev/null +++ b/android/app/src/main/res/drawable/advice_feature_logo_svg_7c0e83.xml @@ -0,0 +1,20 @@ + + + + + + + diff --git a/android/app/src/main/res/drawable/bebbo_logo_shape1_svg_b84625.xml b/android/app/src/main/res/drawable/bebbo_logo_shape1_svg_b84625.xml new file mode 100644 index 000000000..30ed0caa8 --- /dev/null +++ b/android/app/src/main/res/drawable/bebbo_logo_shape1_svg_b84625.xml @@ -0,0 +1,19 @@ + + + + diff --git a/android/app/src/main/res/drawable/bebbo_logo_shape_svg_55f84f.xml b/android/app/src/main/res/drawable/bebbo_logo_shape_svg_55f84f.xml new file mode 100644 index 000000000..1e2628cf8 --- /dev/null +++ b/android/app/src/main/res/drawable/bebbo_logo_shape_svg_55f84f.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/android/app/src/main/res/drawable/camera_profile_svg_0e8202.xml b/android/app/src/main/res/drawable/camera_profile_svg_0e8202.xml new file mode 100644 index 000000000..5dbddfece --- /dev/null +++ b/android/app/src/main/res/drawable/camera_profile_svg_0e8202.xml @@ -0,0 +1,21 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/chart_svg_e10e63.xml b/android/app/src/main/res/drawable/chart_svg_e10e63.xml new file mode 100644 index 000000000..37b5db77c --- /dev/null +++ b/android/app/src/main/res/drawable/chart_svg_e10e63.xml @@ -0,0 +1,254 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/history_svg_0d5237.xml b/android/app/src/main/res/drawable/history_svg_0d5237.xml new file mode 100644 index 000000000..dd11b8779 --- /dev/null +++ b/android/app/src/main/res/drawable/history_svg_0d5237.xml @@ -0,0 +1,27 @@ + + + + + diff --git a/android/app/src/main/res/drawable/ic_activity_color_svg_86e25d.xml b/android/app/src/main/res/drawable/ic_activity_color_svg_86e25d.xml new file mode 100644 index 000000000..b7f9050f1 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_activity_color_svg_86e25d.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_article_color_svg_0eb212.xml b/android/app/src/main/res/drawable/ic_article_color_svg_0eb212.xml new file mode 100644 index 000000000..17da19195 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_article_color_svg_0eb212.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_development_color_svg_623199.xml b/android/app/src/main/res/drawable/ic_development_color_svg_623199.xml new file mode 100644 index 000000000..a55721e22 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_development_color_svg_623199.xml @@ -0,0 +1,28 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_file_svg_873adc.xml b/android/app/src/main/res/drawable/ic_file_svg_873adc.xml new file mode 100644 index 000000000..397498b95 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_file_svg_873adc.xml @@ -0,0 +1,9 @@ + + + diff --git a/android/app/src/main/res/drawable/ic_gdrive_svg_1618e2.xml b/android/app/src/main/res/drawable/ic_gdrive_svg_1618e2.xml new file mode 100644 index 000000000..097a55afd --- /dev/null +++ b/android/app/src/main/res/drawable/ic_gdrive_svg_1618e2.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_growth_color_svg_532ea2.xml b/android/app/src/main/res/drawable/ic_growth_color_svg_532ea2.xml new file mode 100644 index 000000000..11e28835a --- /dev/null +++ b/android/app/src/main/res/drawable/ic_growth_color_svg_532ea2.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_health_color_svg_b47d6e.xml b/android/app/src/main/res/drawable/ic_health_color_svg_b47d6e.xml new file mode 100644 index 000000000..8c342809d --- /dev/null +++ b/android/app/src/main/res/drawable/ic_health_color_svg_b47d6e.xml @@ -0,0 +1,30 @@ + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_tools_color_svg_335b8f.xml b/android/app/src/main/res/drawable/ic_tools_color_svg_335b8f.xml new file mode 100644 index 000000000..53d1fa072 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_tools_color_svg_335b8f.xml @@ -0,0 +1,24 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/ic_vaccination_color_svg_5b90d8.xml b/android/app/src/main/res/drawable/ic_vaccination_color_svg_5b90d8.xml new file mode 100644 index 000000000..7f34f1dc3 --- /dev/null +++ b/android/app/src/main/res/drawable/ic_vaccination_color_svg_5b90d8.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + diff --git a/android/app/src/main/res/drawable/img_logo_chatbot_new_svg_fa2402.xml b/android/app/src/main/res/drawable/img_logo_chatbot_new_svg_fa2402.xml new file mode 100644 index 000000000..8918d328f --- /dev/null +++ b/android/app/src/main/res/drawable/img_logo_chatbot_new_svg_fa2402.xml @@ -0,0 +1,15 @@ + + + + + diff --git a/android/app/src/main/res/drawable/play_icon_svg_b1cbb6.xml b/android/app/src/main/res/drawable/play_icon_svg_b1cbb6.xml new file mode 100644 index 000000000..57ca10558 --- /dev/null +++ b/android/app/src/main/res/drawable/play_icon_svg_b1cbb6.xml @@ -0,0 +1,12 @@ + + + + diff --git a/android/app/src/main/res/drawable/tools_features_logo_svg_41c195.xml b/android/app/src/main/res/drawable/tools_features_logo_svg_41c195.xml new file mode 100644 index 000000000..ab64524e7 --- /dev/null +++ b/android/app/src/main/res/drawable/tools_features_logo_svg_41c195.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + diff --git a/app/assets/svg/bebbo/bebbo_logo_shape1.svg b/app/assets/svg/bebbo/bebbo_logo_shape1.svg index 038d23cc5..d33e4be5e 100644 --- a/app/assets/svg/bebbo/bebbo_logo_shape1.svg +++ b/app/assets/svg/bebbo/bebbo_logo_shape1.svg @@ -1,9 +1,4 @@ - - - - - - - - - + + + + \ No newline at end of file diff --git a/app/assets/svg/camera_profile.svg b/app/assets/svg/camera_profile.svg index 73187256d..f5b465b9a 100644 --- a/app/assets/svg/camera_profile.svg +++ b/app/assets/svg/camera_profile.svg @@ -7,17 +7,8 @@ - - - - - - - - - - + - + \ No newline at end of file diff --git a/app/assets/svg/history.svg b/app/assets/svg/history.svg index 494959349..18725ec64 100644 --- a/app/assets/svg/history.svg +++ b/app/assets/svg/history.svg @@ -1,10 +1,7 @@ - - - - - - - - - + + + + + + \ No newline at end of file diff --git a/app/assets/translations/appConstants/bebbo/UZuz.ts b/app/assets/translations/appConstants/bebbo/UZuz.ts index bd7e246b2..556a82991 100644 --- a/app/assets/translations/appConstants/bebbo/UZuz.ts +++ b/app/assets/translations/appConstants/bebbo/UZuz.ts @@ -295,7 +295,7 @@ const UZuz = { parentNameTxt: "Ota-onaning ismi", parentPlaceNameTxt: "Ismingizni kiriting", editParentTxt: "Ota -ona haqidagi ma'lumotlarni tahrirlash", - notiDelSelected: "Tanlangan ({{count}}) ta maʼlumotni oʻchirish", + notiDelSelected: "({{count}}) ta maʼlumotni oʻchirish", onBirthDay: "Tugʻilish", month: "Oy", localizationChangeModalText: "Agar yangi mamlakat tanlansa, kontent o'zgarishi mumkin. Agar o'sha mamlakatda yangi til tanlansa, kontent o'zgarmaydi, ma'lumotlar tanlangan tilda ko'rsatiladi, xolos", diff --git a/app/assets/translations/appOfflineData/apiConstants.ts b/app/assets/translations/appOfflineData/apiConstants.ts index 6e8c52ca1..3ea7a8863 100644 --- a/app/assets/translations/appOfflineData/apiConstants.ts +++ b/app/assets/translations/appOfflineData/apiConstants.ts @@ -107,7 +107,7 @@ export const allApisObject = (isDatetimeReq: any, dateTimeObj: any): any => { apiEndpoint: appConfig.countryGroups, method: 'get', postdata: {}, - saveinDB: false, + saveinDB: true, }, { apiEndpoint: appConfig.taxonomies, diff --git a/app/assets/translations/appOfflineData/getDataToStore.ts b/app/assets/translations/appOfflineData/getDataToStore.ts index 17c069347..d9e371d59 100644 --- a/app/assets/translations/appOfflineData/getDataToStore.ts +++ b/app/assets/translations/appOfflineData/getDataToStore.ts @@ -76,8 +76,8 @@ export const getDataToStore = async (languageCode: string, dispatch: any, Schema // dataToStore = databaseData2; // } const dataToStore = databaseData2; - console.log('offlineData is',offlineData) - console.log('stringify offlineData is',JSON.stringify(offlineData)) + // console.log('offlineData is',offlineData) + // console.log('stringify offlineData is',JSON.stringify(offlineData)) if (dataToStore?.length > 0) { dispatch(setAllHardcodedData(dataToStore)) return dataToStore; @@ -108,8 +108,8 @@ const getAllDataToStore = async (languageCode: string, dispatch: any, prevPage: } else if (prevPage == "") { let Entity: any; - console.log('Prevpage is',prevPage); - await getDataToStore(languageCode, dispatch, CountrySchema, Entity as Country, countryData, setCountriesStore); + console.log(countryData,'Prevpage is',prevPage,languageCode); + // await getDataToStore(languageCode, dispatch, CountrySchema, Entity as Country, countryData, setCountriesStore); return "success"; } else if (prevPage == "Terms") { diff --git a/app/components/CountryItem.tsx b/app/components/CountryItem.tsx index aa5dbf08a..2c284a847 100644 --- a/app/components/CountryItem.tsx +++ b/app/components/CountryItem.tsx @@ -8,7 +8,7 @@ const CountryItem = ({ item, currentItem, setCountry }: any): any => { const isActive = item && currentItem && item.CountryID === currentItem.CountryID; console.log(`isActive: ${isActive}`); console.log('current item', currentItem) - console.log('selected item', item, isActive) + // console.log('selected item', item, isActive) return ( <> { : false, ); const favoriteadvices = useAppSelector((state: any) => - state.childData.childDataSet.favoriteadvices + state.childData?.childDataSet?.favoriteadvices ); const articleDataall = useAppSelector( (state: any) => (state.articlesData.article.articles != '') ? JSON.parse(state.articlesData.article.articles) : state.articlesData.article.articles, diff --git a/app/components/HeaderBabyMenu.tsx b/app/components/HeaderBabyMenu.tsx index e94547476..4058cd101 100755 --- a/app/components/HeaderBabyMenu.tsx +++ b/app/components/HeaderBabyMenu.tsx @@ -166,7 +166,7 @@ const HeaderBabyMenu = (props: any): any => { currentActiveChild == data.uuid ? ( - {data.photoUri != '' ? ( + {(data.photoUri != '' && data.photoUri != null) ? ( @@ -209,7 +209,7 @@ const HeaderBabyMenu = (props: any): any => { ) : ( - {data.photoUri != '' ? ( + {(data.photoUri != '' && data.photoUri != null) ? ( @@ -341,7 +341,7 @@ const HeaderBabyMenu = (props: any): any => { getAllConfigData(dispatch); } }}> - {activeChild.photoUri != '' ? ( + {(activeChild.photoUri != '' && activeChild.photoUri != null) ? ( ) : ( diff --git a/app/components/HeaderNotiIcon.tsx b/app/components/HeaderNotiIcon.tsx index 13d7877f0..776282804 100755 --- a/app/components/HeaderNotiIcon.tsx +++ b/app/components/HeaderNotiIcon.tsx @@ -288,7 +288,7 @@ const HeaderNotiIcon = (props: any): any => { dispatch(setAllScheduledLocalNotificationData([])); dispatch(setAllLocalNotificationData(newAllChildNotis)); const localnotiFlagObj = { generateFlag: false, generateType: 'add', childuuid: 'all' }; - dispatch(setAllLocalNotificationGenerateType(localnotiFlagObj)); + dispatch(setAllLocalNotificationGenerateType(localnotiFlagObj)); } return (): any => { setFlagValue(false); @@ -325,10 +325,20 @@ const HeaderNotiIcon = (props: any): any => { // LocalNotifications.getAllScheduledLocalNotifications(); // LocalNotifications.getDeliveredNotifications(); const fetchDataFav = async (): Promise => { - const filterQuery = 'uuid == "' + activeChild?.uuid + '"'; - const childData = await userRealmCommon.getFilteredData(ChildEntitySchema, filterQuery); - Object.keys(childData[0]?.favoriteadvices)?.length > 0 && dispatch(setFavouriteAdvices(childData[0]?.favoriteadvices)); - Object.keys(childData[0]?.favoritegames)?.length > 0 && dispatch(setFavouriteGames(childData[0].favoritegames)); + try { + const filterQuery = 'uuid == "' + activeChild?.uuid + '"'; + const childData = await userRealmCommon.getFilteredData(ChildEntitySchema, filterQuery); + + // Object.keys(childData[0]?.favoriteadvices)?.length > 0 && dispatch(setFavouriteAdvices(childData[0]?.favoriteadvices)); + // Object.keys(childData[0]?.favoritegames)?.length > 0 && dispatch(setFavouriteGames(childData[0].favoritegames)); + console.log("fetchDataFav childdata",childData[0]) + childData[0]?.favoriteadvices && dispatch(setFavouriteAdvices(Object.values(childData[0]?.favoriteadvices)|| [])); + childData[0]?.favoritegames && dispatch(setFavouriteGames(Object.values(childData[0]?.favoritegames) || [])); + + } catch(err){ + console.log("fetchDataFav catch ",err) + } + } fetchDataFav() }, [activeChild?.uuid]); diff --git a/app/components/homeScreen/BabyNotification.tsx b/app/components/homeScreen/BabyNotification.tsx index 9fd8c4a22..f7d93911a 100755 --- a/app/components/homeScreen/BabyNotification.tsx +++ b/app/components/homeScreen/BabyNotification.tsx @@ -52,7 +52,7 @@ const BabyNotification = (): any => { - {activeChild.photoUri != '' ? ( + {activeChild.photoUri != '' && activeChild.photoUri != null ? ( diff --git a/app/components/homeScreen/DailyReads.tsx b/app/components/homeScreen/DailyReads.tsx index f02a90b46..88825dea0 100755 --- a/app/components/homeScreen/DailyReads.tsx +++ b/app/components/homeScreen/DailyReads.tsx @@ -1,9 +1,9 @@ -import { ADVICE_SHARED, GAME_SHARED } from '@assets/data/firebaseEvents'; +import { ADVICE_SHARED, FAVOURITE_ADVICE_ADDED, FAVOURITE_GAME_ADDED, GAME_SHARED } from '@assets/data/firebaseEvents'; import { articleCategoryArray, shareTextButton } from '@assets/translations/appOfflineData/apiConstants'; import { MainContainer } from '@components/shared/Container'; -import { DailyArtTitle, DailyBox, DailyTag, DailyTagText, OverlayFaded } from '@components/shared/HomeScreenStyle'; +import { DailyAction, DailyArtTitle, DailyBox, DailyTag, DailyTagText, OverlayFaded } from '@components/shared/HomeScreenStyle'; import { useNavigation } from '@react-navigation/native'; -import { Heading2, HeadingHome3w, ShiftFromTopBottom10 } from '@styles/typography'; +import { Heading2, Heading4, HeadingHome3w, ShiftFromTopBottom10 } from '@styles/typography'; import { DateTime } from 'luxon'; import React, { useCallback, useContext, useEffect, useMemo, useState } from 'react'; import { useTranslation } from 'react-i18next'; @@ -17,6 +17,13 @@ import LoadableImage from '../../services/LoadableImage'; import useNetInfoHook from '../../customHooks/useNetInfoHook'; import { logEvent } from '../../services/EventSyncService'; import ShareFavButtons from '@components/shared/ShareFavButtons'; +import { connect } from 'react-redux'; +import { FDirRow } from '@components/shared/FlexBoxStyle'; +import Icon, { OuterIconLeft, OuterIconLeft1, OuterIconRow } from '@components/shared/Icon'; +import styled from 'styled-components/native'; +import { userRealmCommon } from '../../database/dbquery/userRealmCommon'; +import { setFavouriteAdvices, setFavouriteGames } from '../../redux/reducers/childSlice'; +import { ChildEntity, ChildEntitySchema } from '../../database/schema/ChildDataSchema'; const styles = StyleSheet.create({ cardImage: { @@ -28,7 +35,9 @@ const styles = StyleSheet.create({ flatlistOuterView: { marginLeft: -7, marginRight: -7, marginTop: 10 }, linearGradient: { flex: 1, - } + }, + alignItemsFlexEnd: { alignItems: "flex-end" }, + flexShrink1: { flexShrink: 1 } }); const DailyReads = (): any => { const netInfo = useNetInfoHook(); @@ -97,7 +106,7 @@ const DailyReads = (): any => { const RenderDailyReadItem = React.memo(({ item, index, isAdvice }: any) => { return ( - + { goToArticleDetail(item) }} key={index}> @@ -208,7 +217,7 @@ const DailyReads = (): any => { if (categoryActivityData.length < 2) { const additionalItems = ActivitiesData.filter((x: any) => x.activity_category !== activityCategoryArrayNew[nextIndex2].id); categoryActivityData = categoryActivityData.concat(additionalItems.slice(0, 2 - categoryActivityData.length)); - } + } const obj2 = categoryActivityData.filter((i: any) => !showedDailyDataCategory.games.find((f: any) => f === i.id)); let gamesarray: any = []; if (obj2.length === 0) { @@ -239,8 +248,8 @@ const DailyReads = (): any => { setActivityDataToShowInList(activityListData); const dailyDataCategorytoDispatch: any = { ...dailyDataCategoryall }; const showedDailyDataCategorytoDispatch: any = { ...showedDailyDataCategoryall }; - const selectedAdviceCategories = articleDataToShow.map((_article, index) => articleCategoryArrayNew[nextIndex + index] || 0); - const selectedAdviceIds = articleDataToShow.map((article) => article.id || 0); + const selectedAdviceCategories = articleDataToShow?.map((_article, index) => articleCategoryArrayNew[nextIndex + index] || 0); + const selectedAdviceIds = articleDataToShow?.map((article) => article.id || 0); const selectedGameCategories = activityDataToShow.map((_activity, index) => activityCategoryArrayNew[nextIndex2 + index]?.id || 0); const selectedGameIds = activityDataToShow.map((activity) => activity.id || 0); @@ -282,7 +291,7 @@ const DailyReads = (): any => { } }); - if (articleDataToShow.length === 0 && activityDataToShow.length === 0) { + if (articleDataToShow.length === 0 && articleDataToShow.length === 0) { dispatch(setDailyArticleGamesCategory({})); dispatch(setShowedDailyDataCategory({})); } @@ -298,12 +307,12 @@ const DailyReads = (): any => { setActivityDataToShowInList(activityDataList) } - }, [activeChild.uuid, activityTaxonomyId]); + }, [activeChild?.uuid, activityTaxonomyId]); const keyExtractor = useCallback((item: any) => item?.id, []); const renderItem = useCallback((item: any, index: any, isAdvice: boolean) => { return ; - }, [favoriteAdvices,favoriteGames]); + }, [favoriteAdvices, favoriteGames]); return ( <> diff --git a/app/components/shared/OnboardingContainer.tsx b/app/components/shared/OnboardingContainer.tsx index e48453617..6d1d4c5d5 100755 --- a/app/components/shared/OnboardingContainer.tsx +++ b/app/components/shared/OnboardingContainer.tsx @@ -77,7 +77,7 @@ export const LocalizationWithoutBorderCol = styled.Pressable` flex:1.4; flex-direction: row; align-items:center; -margin-top:12px; +margin-top:15px; padding:4px 15px 0px; ` diff --git a/app/components/shared/ShareFavButtons.tsx b/app/components/shared/ShareFavButtons.tsx index 9efb8ce15..302809a6f 100755 --- a/app/components/shared/ShareFavButtons.tsx +++ b/app/components/shared/ShareFavButtons.tsx @@ -3,7 +3,7 @@ import { shareTextButton } from '@assets/translations/appOfflineData/apiConstant import { Heading4 } from '@styles/typography'; import React from 'react'; import { useTranslation } from 'react-i18next'; -import { Alert, Share, StyleSheet } from 'react-native'; +import { Alert, Share, StyleSheet,View,Text } from 'react-native'; import styled from 'styled-components/native'; import { useAppDispatch, useAppSelector } from '../../../App'; import { userRealmCommon } from '../../database/dbquery/userRealmCommon'; @@ -73,7 +73,7 @@ const languageCode = useAppSelector( if(isAdvice){ await userRealmCommon.updateFavorites(ChildEntitySchema,item?.id,'advices',filterQuery); const childData = await userRealmCommon.getFilteredData(ChildEntitySchema, filterQuery); - dispatch(setFavouriteAdvices(childData[0]?.favoriteadvices)); + dispatch(setFavouriteAdvices(Object.values(childData[0]?.favoriteadvices))); const favAdviceData= {'name': FAVOURITE_ADVICE_ADDED,'params':{ advise_id: item?.id } } logEvent(favAdviceData,netInfo.isConnected) }else{ @@ -92,8 +92,7 @@ const languageCode = useAppSelector( await userRealmCommon.updateFavorites(ChildEntitySchema,item?.id,'advices',filterQuery); const childData = await userRealmCommon.getFilteredData(ChildEntitySchema, filterQuery); - console.log('childdata is....',childData[0]) - dispatch(setFavouriteAdvices(childData[0]?.favoriteadvices)); + dispatch(Object.values(setFavouriteAdvices(childData[0]?.favoriteadvices))); }else{ await userRealmCommon.updateFavorites(ChildEntitySchema,item?.id,'games',filterQuery); diff --git a/app/components/vaccination/tabs/UpcomingVaccines.tsx b/app/components/vaccination/tabs/UpcomingVaccines.tsx index 4488ca48c..9ec535b44 100755 --- a/app/components/vaccination/tabs/UpcomingVaccines.tsx +++ b/app/components/vaccination/tabs/UpcomingVaccines.tsx @@ -157,6 +157,10 @@ const UpcomingVaccines = (props: any): any => { backgroundColor: backgroundColor }}> + { + setIsOpen(!isOpen); + }}> {item?.vaccines.every((el: any) => { return el.isMeasured == true; }) ? ( @@ -170,6 +174,7 @@ const UpcomingVaccines = (props: any): any => { color="#000" /> )} + { diff --git a/app/database/dbquery/dataRealmCommon.ts b/app/database/dbquery/dataRealmCommon.ts index 8d0f9db5c..6c2299bd2 100755 --- a/app/database/dbquery/dataRealmCommon.ts +++ b/app/database/dbquery/dataRealmCommon.ts @@ -264,9 +264,9 @@ class DataRealmCommon { public async getFilteredData(entitySchema: ObjectSchema, filterData: any): Promise { // return new Promise(async (resolve, reject) => { let result: any=''; - console.log('Error is here on getFiltered data',filterData) + // console.log('Error is here on getFiltered data',filterData) try { - console.log('Error is here on getFiltered data success'); + // console.log('Error is here on getFiltered data success'); const realm = await this.openRealm(); if (realm) { const obj = realm?.objects(entitySchema.name).filtered(filterData); diff --git a/app/navigation/AppNavigation.tsx b/app/navigation/AppNavigation.tsx index 5adba70d9..fab9aeed5 100755 --- a/app/navigation/AppNavigation.tsx +++ b/app/navigation/AppNavigation.tsx @@ -104,7 +104,7 @@ export default (): any => { const { linkedURL, resetURL } = useDeepLinkURL(); const navigationRef = React.useRef(); const apiStatus = useAppSelector((state) => state.failedOnloadApiObjReducer.status); - console.log('api status is', apiStatus) + // console.log('api status is', apiStatus) const apiData = useAppSelector((state) => state.failedOnloadApiObjReducer.data); const apiError = useAppSelector((state) => state.failedOnloadApiObjReducer.error); const surveyData = useAppSelector((state: any) => diff --git a/app/screens/home/ChildProfile.tsx b/app/screens/home/ChildProfile.tsx index ccd489dda..0b45ed1be 100755 --- a/app/screens/home/ChildProfile.tsx +++ b/app/screens/home/ChildProfile.tsx @@ -212,7 +212,7 @@ const ChildProfile = ({ navigation }: Props): any => { { - data.photoUri != '' ? + (data.photoUri != '' && data.photoUri != null) ? : genderName && genderName !== '' && genderName !== undefined ? (genderName === t('chilGender2') ? @@ -275,7 +275,7 @@ const ChildProfile = ({ navigation }: Props): any => { { - data.photoUri != '' ? + (data.photoUri != '' && data.photoUri != null) ? : genderName && genderName !== '' && genderName !== undefined ? (genderName === t('chilGender2') ? diff --git a/app/screens/home/SettingScreen.tsx b/app/screens/home/SettingScreen.tsx index 188bfeabf..2945ed054 100755 --- a/app/screens/home/SettingScreen.tsx +++ b/app/screens/home/SettingScreen.tsx @@ -203,10 +203,11 @@ const SettingScreen = (props: any): any => { return AesCrypto.decrypt(text, key, encryptionsIVKey, 'aes-256-cbc'); } const exportDataAndroid = async (cipher: string): Promise => { - const file = await ScopedStorage.openDocumentTree(true); + // const file = await ScopedStorage.openDocumentTree(true); const uri: any = await ScopedStorage.getPersistedUriPermissions(); try { - const fileDownload: any = await ScopedStorage.writeFile(file.uri,JSON.stringify(cipher), "mybackup.json", "*/*", 'utf8', false); + // const fileDownload: any = await ScopedStorage.writeFile(file.uri,JSON.stringify(cipher), "mybackup.json", "*/*", 'utf8', false); + const fileDownload: any = await ScopedStorage.createDocument("mybackup","application/json",JSON.stringify(cipher), 'utf8'); const uri1: any = await ScopedStorage.getPersistedUriPermissions(); console.log(fileDownload.split(/[#?]/)[0].split('.').pop().trim(), "..fileDownload.."); if (fileDownload != "" && fileDownload != null && fileDownload != undefined) { @@ -551,7 +552,7 @@ const SettingScreen = (props: any): any => { } ]; dispatch(fetchAPI(apiJsonData, '', dispatch, navigation, languageCode, activeChild, apiJsonData, netInfo.isConnected)) - }, []) + }, [dispatch,navigation]) const toggleAllNotis = (): any => { if (isEnabled == true) { const obj = { key: 'growthEnabled', value: false }; @@ -681,7 +682,7 @@ const SettingScreen = (props: any): any => { }) .catch((error: any) => { console.log("Decrypted error", error); - Alert.alert('', t('generalErrorTitle')); + Alert.alert(error, t('generalErrorTitle')); throw error; }); @@ -727,14 +728,13 @@ const SettingScreen = (props: any): any => { type: DocumentPicker.types.allFiles, }) .then(async (res: any) => { - //console.log('<<<<>>>>>', res) + console.log('<<<<>>>>>', res) let oldChildrenData: any = [] if (res.length > 0 && res[0].uri) { if (res[0].name.endsWith(".json")) { const decryptFileContent: any = await RNFS.readFile(decodeURIComponent(res[0].uri), 'utf8').then((edata: any) => { - //console.log("edata", edata); - //console.log("encryptionsKey", encryptionsKey); - + console.log("edata", edata); + console.log("encryptionsKey", encryptionsKey); return decryptData(edata, encryptionsKey) .then((text: any) => { //console.log('decryptData',text) diff --git a/app/screens/localization/CountryLanguageConfirmation.tsx b/app/screens/localization/CountryLanguageConfirmation.tsx index 7f212aed3..915f8e7cb 100755 --- a/app/screens/localization/CountryLanguageConfirmation.tsx +++ b/app/screens/localization/CountryLanguageConfirmation.tsx @@ -330,11 +330,11 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { } } const saveSelection = (): any => { - i18n.changeLanguage(newLanguage.locale) + i18n.changeLanguage(newLanguage?.locale || "en") .then(() => { if (buildFor == buildForBebbo) { - const rotwLanguagelocaleen = localization[localization.length - 1].languages[0].locale; - const rotwLanguagelocaleru = localization[localization.length - 1].languages[1].locale; + const rotwLanguagelocaleen = localization[localization?.length - 1].languages[0].locale; + const rotwLanguagelocaleru = localization[localization?.length - 1].languages[1].locale; console.log('rest of the world title', newLanguage) console.log('rotwLanguagelocaleru of the world title', rotwLanguagelocaleru) if (newLanguage?.locale == rotwLanguagelocaleen || newLanguage?.locale == rotwLanguagelocaleru) { @@ -364,10 +364,10 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { }; const onEditLang = () => { - if (allCountries.length == 1 && allCountries[0].languages?.length === 1) { + if (allCountries?.length == 1 && allCountries?.[0]?.languages?.length === 1) { saveSelection() - } else if (allCountries.length == 1) { - navigation.navigate('LanguageSelection', { country: countryData, language: newLanguage }) + } else if (allCountries?.length == 1) { + navigation.navigate('LanguageSelection', { country: countryData, language: newLanguage,isFromCountry:true }) } else { navigation.navigate('CountrySelection', { country: countryData, language: newLanguage }) } diff --git a/app/screens/localization/CountrySelection.tsx b/app/screens/localization/CountrySelection.tsx index 7ca5ade18..c16506221 100755 --- a/app/screens/localization/CountrySelection.tsx +++ b/app/screens/localization/CountrySelection.tsx @@ -1,195 +1,210 @@ -import { localization } from '@dynamicImportsClass/dynamicImports'; -import CountryItem from '@components/CountryItem'; -import FocusAwareStatusBar from '@components/FocusAwareStatusBar'; -import OnboardingContainer from '@components/shared/OnboardingContainer'; -import OnboardingStyle from '@components/shared/OnboardingStyle'; -import { useIsFocused, useNavigation } from '@react-navigation/native'; -import { SelectionView } from '@styles/style'; -import React, { useContext, useEffect, useState } from 'react'; -import { useTranslation } from 'react-i18next'; -import { FlatList, Pressable } from 'react-native'; -import { ThemeContext } from 'styled-components/native'; -import { useAppDispatch, useAppSelector } from '../../../App'; -import { dataRealmCommon } from '../../database/dbquery/dataRealmCommon'; -import { userRealmCommon } from '../../database/dbquery/userRealmCommon'; -import { ChildEntitySchema } from '../../database/schema/ChildDataSchema'; -import { receiveAPIFailure } from '../../redux/sagaMiddleware/sagaSlice'; -import * as RNLocalize from "react-native-localize"; -import { ButtonLinkRow, ButtonPrimary, ButtonUpperCaseText } from '@components/shared/ButtonGlobal'; -const CountrySelection = (props: any): any => { - const { t } = useTranslation(); - const themeContext = useContext(ThemeContext); - const headerColor = themeContext?.colors.PRIMARY_REDESIGN_COLOR; - const dispatch = useAppDispatch(); - const [country, setCountry] = useState(); - const [language, setSelectedLanguage] = useState(null); - const [luxonLanLocale, setLuxonLanLocale] = useState(); - const [deviceLanCode, setDeviceLangCode] = useState(); - const isVisible = useIsFocused(); - const navigation = useNavigation(); - const countryId = useAppSelector( - (state: any) => state.selectedCountry.countryId, - ); - const getCountryData = useAppSelector( - (state: any) => state.AppLayoutDirectionParams, - ); - const luxonLocale = useAppSelector( - (state: any) => state.selectedCountry.luxonLocale, - ); - const allCountries = useAppSelector( - (state: any) => - state.selectedCountry.countries != '' ? JSON.parse(state.selectedCountry.countries) : [], - ); + import { localization } from '@dynamicImportsClass/dynamicImports'; + import CountryItem from '@components/CountryItem'; + import FocusAwareStatusBar from '@components/FocusAwareStatusBar'; + import OnboardingContainer from '@components/shared/OnboardingContainer'; + import OnboardingStyle from '@components/shared/OnboardingStyle'; + import { useIsFocused, useNavigation } from '@react-navigation/native'; + import { SelectionView } from '@styles/style'; + import React, { useContext, useEffect, useState } from 'react'; + import { useTranslation } from 'react-i18next'; + import { FlatList, Pressable, StyleProp, ViewStyle } from 'react-native'; + import { ThemeContext } from 'styled-components/native'; + import { useAppDispatch, useAppSelector } from '../../../App'; + import { dataRealmCommon } from '../../database/dbquery/dataRealmCommon'; + import { userRealmCommon } from '../../database/dbquery/userRealmCommon'; + import { ChildEntitySchema } from '../../database/schema/ChildDataSchema'; + import { receiveAPIFailure } from '../../redux/sagaMiddleware/sagaSlice'; + import * as RNLocalize from "react-native-localize"; + import { ButtonLinkRow, ButtonPrimary, ButtonUpperCaseText } from '@components/shared/ButtonGlobal'; + const CountrySelection = (props: any): any => { + const { t } = useTranslation(); + const themeContext = useContext(ThemeContext); + const headerColor = themeContext?.colors.PRIMARY_REDESIGN_COLOR; + const dispatch = useAppDispatch(); + const [country, setCountry] = useState(); + const [language, setSelectedLanguage] = useState(null); + const [luxonLanLocale, setLuxonLanLocale] = useState(); + const [deviceLanCode, setDeviceLangCode] = useState(); + const isVisible = useIsFocused(); + const navigation = useNavigation(); + const countryId = useAppSelector( + (state: any) => state.selectedCountry.countryId, + ); + const getCountryData = useAppSelector( + (state: any) => state.AppLayoutDirectionParams, + ); + const luxonLocale = useAppSelector( + (state: any) => state.selectedCountry.luxonLocale, + ); + const allCountries = useAppSelector( + (state: any) => + state.selectedCountry.countries != '' ? JSON.parse(state.selectedCountry.countries) : [], + ); - const userIsOnboarded = useAppSelector( - (state: any) => - state.utilsData.userIsOnboarded - ); + const userIsOnboarded = useAppSelector( + (state: any) => + state.utilsData.userIsOnboarded + ); - useEffect(() => { - console.log('All allCountries datas',allCountries) - if (props.route?.params?.country == country) { - if (props.route?.params?.language != undefined) { - setSelectedLanguage(props.route?.params?.language) + useEffect(() => { + console.log('All allCountries datas',allCountries) + if (props.route?.params?.country == country) { + if (props.route?.params?.language != undefined) { + setSelectedLanguage(props.route?.params?.language) + } + } else { + setSelectedLanguage(null) } - } else { - setSelectedLanguage(null) - } - }, [props.route.params, country]) + }, [props.route.params, country]) - useEffect(() => { - const getSelectedLanguage = (): any => { - const selectedLanguage = RNLocalize.getLocales(); // Get the locales - return selectedLanguage[0]?.languageCode || 'en'; // Extract the language code - }; - const getSelectedCountry = (): any => { - const selectedLanguage = RNLocalize.getLocales(); // Get the locales - return selectedLanguage[0]?.languageTag || 'en-Us'; // Extract the language code - }; + useEffect(() => { + const getSelectedLanguage = (): any => { + const selectedLanguage = RNLocalize.getLocales(); // Get the locales + return selectedLanguage[0]?.languageCode || 'en'; // Extract the language code + }; + const getSelectedCountry = (): any => { + const selectedLanguage = RNLocalize.getLocales(); // Get the locales + return selectedLanguage[0]?.languageTag || 'en-Us'; // Extract the language code + }; - const getCountryByCountryCode = (countryCode: any): any => { - for (const country of allCountries) { - for (const language of country.languages) { - const [languageCodeFromLuxon, countryCodeFromLuxon] = language.luxonLocale.split('-'); - if (countryCodeFromLuxon === countryCode) { - return country; + const getCountryByCountryCode = (countryCode: any): any => { + for (const country of allCountries) { + for (const language of country.languages) { + const [languageCodeFromLuxon, countryCodeFromLuxon] = language.luxonLocale.split('-'); + if (countryCodeFromLuxon === countryCode) { + return country; + } } } - } - return null; - }; - const selectedLanguage = getSelectedLanguage(); - const selectedDefaultCountry = getSelectedCountry(); - setLuxonLanLocale(selectedDefaultCountry) - setDeviceLangCode(selectedLanguage) + return null; + }; + const selectedLanguage = getSelectedLanguage(); + const selectedDefaultCountry = getSelectedCountry(); + setLuxonLanLocale(selectedDefaultCountry) + setDeviceLangCode(selectedLanguage) - if (isVisible) { - let newCountryId: any; - let newCountryLocale: any; - if (userIsOnboarded == true) { - if (props.route.params.country && props.route.params.country != null && props.route.params.country != undefined) { - newCountryId = props.route.params.country.CountryID; - newCountryLocale = props.route.params.country.luxonLocale; - setCountry(props.route.params.country) - } else { - newCountryId = countryId; - newCountryLocale = selectedDefaultCountry; - } - } else { - if (props.route.params == undefined) { - newCountryLocale = selectedDefaultCountry; - newCountryId = countryId; - } else { - // setCountry(props.route.params.country) - newCountryId = props.route.params.country.CountryID; - console.log('wewewe country is',newCountryId) - if (props.route.params.language != undefined) { - newCountryLocale = props.route.params.language.luxonLocale; + if (isVisible) { + let newCountryId: any; + let newCountryLocale: any; + if (userIsOnboarded == true) { + if (props.route.params.country && props.route.params.country != null && props.route.params.country != undefined) { + newCountryId = props.route.params.country.CountryID; + newCountryLocale = props.route.params.country.luxonLocale; + setCountry(props.route.params.country) } else { + newCountryId = countryId; newCountryLocale = selectedDefaultCountry; } + } else { + if (props.route.params == undefined) { + newCountryLocale = selectedDefaultCountry; + newCountryId = countryId; + } else { + // setCountry(props.route.params.country) + newCountryId = props.route.params.country.CountryID; + console.log('wewewe country is',newCountryId) + if (props.route.params.language != undefined) { + newCountryLocale = props.route.params.language.luxonLocale; + } else { + newCountryLocale = selectedDefaultCountry; + } + } } - } - console.log('newCountryId country is',newCountryId) - const selectedCountry = allCountries.find( - (country: any) => country.CountryID === newCountryId, - ); - const foundCountry = getCountryByCountryCode(RNLocalize.getCountry()); - if (foundCountry != undefined && foundCountry != null) { - if (props.route.params == undefined) { - setCountry(foundCountry) + console.log('newCountryId country is',newCountryId) + const selectedCountry = allCountries.find( + (country: any) => country.CountryID === newCountryId, + ); + const foundCountry = getCountryByCountryCode(RNLocalize.getCountry()); + if (foundCountry != undefined && foundCountry != null) { + if (props.route.params == undefined) { + setCountry(foundCountry) + } else { + setCountry(selectedCountry) + } } else { + console.log('Selected country is',selectedCountry) setCountry(selectedCountry) } - } else { - console.log('Selected country is',selectedCountry) - setCountry(selectedCountry) - } - const fetchData = async (): Promise => { - if (userIsOnboarded == false) { - await userRealmCommon.deleteBy(ChildEntitySchema, "isMigrated == false"); - const data = await dataRealmCommon.deleteAllAtOnce(); - console.log(data, "..newdata.."); - // dispatch(setSponsorStore({ country_national_partner: null, country_sponsor_logo: null })); - const payload = { errorArr: [], fromPage: 'OnLoad' } - dispatch(receiveAPIFailure(payload)); + const fetchData = async (): Promise => { + if (userIsOnboarded == false) { + await userRealmCommon.deleteBy(ChildEntitySchema, "isMigrated == false"); + const data = await dataRealmCommon.deleteAllAtOnce(); + console.log(data, "..newdata.."); + // dispatch(setSponsorStore({ country_national_partner: null, country_sponsor_logo: null })); + const payload = { errorArr: [], fromPage: 'OnLoad' } + dispatch(receiveAPIFailure(payload)); + } } - } - fetchData() + fetchData() - } + } - }, [isVisible, props.route.params]); - const renderItem = ({ item }: any): any => ( - - ); + }, [isVisible, props.route.params]); + const renderItem = ({ item }: any): any => ( + + ); - const renderHeader = () => { + const renderHeader = () => { + return ( + + { + props.navigation.navigate('LanguageSelection', { country: country, language: language, luxonlocale: luxonLanLocale != undefined ? luxonLanLocale : null, deviceLanCode: deviceLanCode != undefined ? deviceLanCode : null }) + }}> + {t('continueCountryLang')} + + + ) + } + const contentContainer: StyleProp = { + + flexGrow:0, + }; return ( - - { - props.navigation.navigate('LanguageSelection', { country: country, language: language, luxonlocale: luxonLanLocale != undefined ? luxonLanLocale : null, deviceLanCode: deviceLanCode != undefined ? deviceLanCode : null }) - }}> - {t('continueCountryLang')} - - - ) - } - return ( - <> <> - + <> + - - { - console.log('Back icon click') - navigation.navigate('CountryLanguageConfirmation') - }} - > - - + + { + console.log('Back icon click') + // navigation.navigate('CountryLanguageConfirmation') + navigation.goBack() + }} + > + + - {userIsOnboarded == true ? - item.CountryID} - ListFooterComponent={renderHeader} - /> : - item.CountryID} - ListHeaderComponent={renderHeader} - />} + {userIsOnboarded == true ? + item.CountryID} + contentContainerStyle={contentContainer} + ListFooterComponent={ allCountries.length <= 12 && renderHeader} + /> + : + item.CountryID} + ListHeaderComponent={ allCountries.length <= 12 && renderHeader} + />} {/* {country ? ( @@ -198,30 +213,30 @@ const CountrySelection = (props: any): any => { { - props.navigation.navigate('LanguageSelection', { country: country, language: language, luxonlocale: luxonLanLocale != undefined ? luxonLanLocale : null, deviceLanCode: deviceLanCode != undefined ? deviceLanCode : null }) - } - }> - - - - - - ) : ( - - { - console.log("pressed") - }}> - - - - )} */} - + props.navigation.navigate('LanguageSelection', { country: country, language: language, luxonlocale: luxonLanLocale != undefined ? luxonLanLocale : null, deviceLanCode: deviceLanCode != undefined ? deviceLanCode : null }) + } + }> + + + + + + ) : ( + + { + console.log("pressed") + }}> + + + + )} */} + {allCountries.length > 12 && renderHeader()} + + - - + - - ); -}; + ); + }; -export default CountrySelection; + export default CountrySelection; diff --git a/app/services/Utils.ts b/app/services/Utils.ts index acb87882b..a3b92e260 100755 --- a/app/services/Utils.ts +++ b/app/services/Utils.ts @@ -217,7 +217,7 @@ const getTwoDigits = (number: any): string => { } export const formatDate = (dateData: any): any => { dateData = DateTime.fromJSDate(new Date(dateData)); - console.log(dateData, "..before") + // console.log(dateData, "..before") // if (typeof dateData == "number") { // dateData = DateTime.fromMillis(dateData) // } diff --git a/app/services/backup.tsx b/app/services/backup.tsx index c37796fc3..32e66f700 100755 --- a/app/services/backup.tsx +++ b/app/services/backup.tsx @@ -308,6 +308,8 @@ class Backup { console.log("Decrypted error", error); throw error; }); + await userRealmCommon.openRealm(); + await userRealmCommon.deleteAllAtOnce(); const jsonParseFileData = JSON.parse(await decryptedData); oldChildrenData = jsonParseFileData; } else { diff --git a/app/services/commonApiService.ts b/app/services/commonApiService.ts index 78625c829..737b782f2 100644 --- a/app/services/commonApiService.ts +++ b/app/services/commonApiService.ts @@ -102,14 +102,14 @@ export const onCountryApiSuccess = async (response: any, dispatch: any, navigati console.log('Response for country is', response) if (response && response[0] && response[0].apiEndpoint == appConfig.countryGroups) { response = response[0]; - if (response.data && response.data.status && response.data.status == 200) { console.log('type of sponser data for country is', typeof response.data.data) console.log('sponser data for country is', response.data.data) console.log('sponser data for country issdsd', response.data?.data[0]) dispatch(setuserIsFirstTime(true)); + dispatch(setCountriesStore(response.data?.data)) const allDatatoStore = await getAllDataToStore(languageCode, dispatch, prevPage); - console.log("allDatatoStore ", prevPage, "--", allDatatoStore); + console.log("allDatatoStore ", prevPage, "--", allDatatoStore,languageCode); } } diff --git a/app/services/notificationService.ts b/app/services/notificationService.ts index 8764aae25..99fc830f5 100755 --- a/app/services/notificationService.ts +++ b/app/services/notificationService.ts @@ -36,7 +36,7 @@ export const getVCNotis = (allVaccinePeriods: any, allGrowthPeriods: any, child: item.vaccination_closes = (index == sortedGroupForPeriod.length - 1) ? maxPeriodDays : sortedGroupForPeriod[index + 1].vaccination_opens; }) sortedGroupForPeriod.forEach((item: any) => { - console.log(DateTime.fromJSDate(new Date(child.birthDate)).plus({ days: (item?.vaccination_opens) }),"notificationDate") + // console.log(DateTime.fromJSDate(new Date(child.birthDate)).plus({ days: (item?.vaccination_opens) }),"notificationDate") noti.push({ "days_from": item?.vaccination_opens, "days_to": item?.vaccination_closes, diff --git a/ios/ParentBuddyApp.xcodeproj/project.pbxproj b/ios/ParentBuddyApp.xcodeproj/project.pbxproj index 4532b66ed..57c614460 100644 --- a/ios/ParentBuddyApp.xcodeproj/project.pbxproj +++ b/ios/ParentBuddyApp.xcodeproj/project.pbxproj @@ -12,7 +12,6 @@ 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; - 14A1B112DACCD9C5524AA676 /* libPods-ParentBuddyApp-tvOS.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9C0D4647F6D4897887C8B113 /* libPods-ParentBuddyApp-tvOS.a */; }; 15F7B6DB5D7F147123177E3E /* libPods-ParentBuddyApp-ParentBuddyAppTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 432A8A94F0C66930E1F7016A /* libPods-ParentBuddyApp-ParentBuddyAppTests.a */; }; 2077C61FCCA3A2BD8E3C11FD /* libPods-ParentBuddyApp-ParentBuddyAppDev.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FBC23B934048ED268F478279 /* libPods-ParentBuddyApp-ParentBuddyAppDev.a */; }; 24BEB418EBAF998964A425BE /* libPods-ParentBuddyApp-ParentBuddyAppXkDev.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DDB6340EB3791CC48248F25E /* libPods-ParentBuddyApp-ParentBuddyAppXkDev.a */; }; @@ -29,7 +28,6 @@ 7C138A82CDD7FD4C62175D5F /* libPods-ParentBuddyApp-ParentBuddyAppXk.a in Frameworks */ = {isa = PBXBuildFile; fileRef = C412D7F456CCD424A4D2595E /* libPods-ParentBuddyApp-ParentBuddyAppXk.a */; }; 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; 9DF386A602734BDD8FBC7002 /* roboto-bold.woff in Resources */ = {isa = PBXBuildFile; fileRef = AF645B11569440C0AF006D46 /* roboto-bold.woff */; }; - BB98D254EAAFA3AB3CCA18D5 /* libPods-ParentBuddyApp-tvOSTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2EEF3D7F0FA5943B0A46E9BC /* libPods-ParentBuddyApp-tvOSTests.a */; }; BF362F2327B288BD000E92B9 /* splash.json in Resources */ = {isa = PBXBuildFile; fileRef = BF362F2227B288BD000E92B9 /* splash.json */; }; BF362F2427B288BD000E92B9 /* splash.json in Resources */ = {isa = PBXBuildFile; fileRef = BF362F2227B288BD000E92B9 /* splash.json */; }; BF362F2627B288D3000E92B9 /* splash.json in Resources */ = {isa = PBXBuildFile; fileRef = BF362F2527B288D3000E92B9 /* splash.json */; }; @@ -87,6 +85,9 @@ BF9D73602805928300181FC5 /* Config.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = BF9D735C2805928300181FC5 /* Config.xcconfig */; }; C2B224109B97464BA2BE7AA6 /* roboto-bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = B2322BB70AFB4CA2937E3837 /* roboto-bold.ttf */; }; CE9E89C826F089CC0093EF36 /* Dynamic.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE9E89C726F089CC0093EF36 /* Dynamic.swift */; }; + E81798CB2C64B0E600BE2C1E /* liblottie-ios.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E81798CA2C64B0E600BE2C1E /* liblottie-ios.a */; }; + E81798CD2C64B0E600BE2C1E /* liblottie-react-native.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E81798CC2C64B0E600BE2C1E /* liblottie-react-native.a */; }; + E81798CF2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E81798CE2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -122,8 +123,6 @@ 22A89F598FEEF465432876C3 /* Pods-ParentBuddyApp-ParentBuddyAppTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-ParentBuddyAppTests.release.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppTests/Pods-ParentBuddyApp-ParentBuddyAppTests.release.xcconfig"; sourceTree = ""; }; 2D02E47B1E0B4A5D006451C7 /* ParentBuddyApp-tvOS.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "ParentBuddyApp-tvOS.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 2D02E4901E0B4A5D006451C7 /* ParentBuddyApp-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "ParentBuddyApp-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - 2DCBA941ED31E33B31E7E69F /* Pods-ParentBuddyApp-tvOSTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-tvOSTests.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-tvOSTests/Pods-ParentBuddyApp-tvOSTests.debug.xcconfig"; sourceTree = ""; }; - 2EEF3D7F0FA5943B0A46E9BC /* libPods-ParentBuddyApp-tvOSTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp-tvOSTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 3705EF394AB98FEB7BCE1554 /* Pods-ParentBuddyApp.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp/Pods-ParentBuddyApp.debug.xcconfig"; sourceTree = ""; }; 41CBC1510C15E78878242D76 /* Pods-ParentBuddyApp-ParentBuddyAppTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-ParentBuddyAppTests.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppTests/Pods-ParentBuddyApp-ParentBuddyAppTests.debug.xcconfig"; sourceTree = ""; }; 432A8A94F0C66930E1F7016A /* libPods-ParentBuddyApp-ParentBuddyAppTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp-ParentBuddyAppTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -137,10 +136,7 @@ 81A194B472F3E51D586F7613 /* Pods-ParentBuddyApp-ParentBuddyAppXkDev.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-ParentBuddyAppXkDev.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppXkDev/Pods-ParentBuddyApp-ParentBuddyAppXkDev.debug.xcconfig"; sourceTree = ""; }; 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = ParentBuddyApp/LaunchScreen.storyboard; sourceTree = ""; }; 8E2E0B22C78C20B95241AC39 /* libPods-ParentBuddyApp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 9C0D4647F6D4897887C8B113 /* libPods-ParentBuddyApp-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - A0775836DFF69B6E5C8A32F1 /* Pods-ParentBuddyApp-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-tvOS.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-tvOS/Pods-ParentBuddyApp-tvOS.debug.xcconfig"; sourceTree = ""; }; ABE444F221AB4FE5BDD5591C /* roboto-regular.woff */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-regular.woff"; path = "../app/assets/fonts/roboto/roboto-regular.woff"; sourceTree = ""; }; - ADD257AE9C44137381683541 /* Pods-ParentBuddyApp-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-tvOS.release.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-tvOS/Pods-ParentBuddyApp-tvOS.release.xcconfig"; sourceTree = ""; }; AF645B11569440C0AF006D46 /* roboto-bold.woff */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-bold.woff"; path = "../app/assets/fonts/roboto/roboto-bold.woff"; sourceTree = ""; }; B2322BB70AFB4CA2937E3837 /* roboto-bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-bold.ttf"; path = "../app/assets/fonts/roboto/roboto-bold.ttf"; sourceTree = ""; }; BF362F2227B288BD000E92B9 /* splash.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = splash.json; path = ../../../app/assets/LottieSplash/Bebbo/splash.json; sourceTree = ""; }; @@ -184,12 +180,14 @@ CE9E89C726F089CC0093EF36 /* Dynamic.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dynamic.swift; sourceTree = ""; }; CF5A89EF45F5475AB99FA3D3 /* roboto-regular.svg */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-regular.svg"; path = "../app/assets/fonts/roboto/roboto-regular.svg"; sourceTree = ""; }; DDB6340EB3791CC48248F25E /* libPods-ParentBuddyApp-ParentBuddyAppXkDev.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp-ParentBuddyAppXkDev.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + E81798CA2C64B0E600BE2C1E /* liblottie-ios.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "liblottie-ios.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + E81798CC2C64B0E600BE2C1E /* liblottie-react-native.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "liblottie-react-native.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + E81798CE2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "libreact-native-lottie-splash-screen.a"; sourceTree = BUILT_PRODUCTS_DIR; }; E9425AEFEF25A885A00867F2 /* Pods-ParentBuddyApp.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp.release.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp/Pods-ParentBuddyApp.release.xcconfig"; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; EFAF5542772A48CE96BF36C4 /* roboto-bold.woff2 */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-bold.woff2"; path = "../app/assets/fonts/roboto/roboto-bold.woff2"; sourceTree = ""; }; FBC23B934048ED268F478279 /* libPods-ParentBuddyApp-ParentBuddyAppDev.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp-ParentBuddyAppDev.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - FD245B9482D2F6762D0BB7B0 /* Pods-ParentBuddyApp-tvOSTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-tvOSTests.release.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-tvOSTests/Pods-ParentBuddyApp-tvOSTests.release.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -205,6 +203,9 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + E81798CB2C64B0E600BE2C1E /* liblottie-ios.a in Frameworks */, + E81798CD2C64B0E600BE2C1E /* liblottie-react-native.a in Frameworks */, + E81798CF2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a in Frameworks */, 3580558E7BD2D316F00A7EEC /* libPods-ParentBuddyApp.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -213,7 +214,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 14A1B112DACCD9C5524AA676 /* libPods-ParentBuddyApp-tvOS.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -221,7 +221,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - BB98D254EAAFA3AB3CCA18D5 /* libPods-ParentBuddyApp-tvOSTests.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -298,10 +297,6 @@ E9425AEFEF25A885A00867F2 /* Pods-ParentBuddyApp.release.xcconfig */, 41CBC1510C15E78878242D76 /* Pods-ParentBuddyApp-ParentBuddyAppTests.debug.xcconfig */, 22A89F598FEEF465432876C3 /* Pods-ParentBuddyApp-ParentBuddyAppTests.release.xcconfig */, - A0775836DFF69B6E5C8A32F1 /* Pods-ParentBuddyApp-tvOS.debug.xcconfig */, - ADD257AE9C44137381683541 /* Pods-ParentBuddyApp-tvOS.release.xcconfig */, - 2DCBA941ED31E33B31E7E69F /* Pods-ParentBuddyApp-tvOSTests.debug.xcconfig */, - FD245B9482D2F6762D0BB7B0 /* Pods-ParentBuddyApp-tvOSTests.release.xcconfig */, 4E25AC1DE2F14816219BF0FA /* Pods-ParentBuddyApp-ParentBuddyAppDev.debug.xcconfig */, 049308B0996A8FEC4D8FC9FC /* Pods-ParentBuddyApp-ParentBuddyAppDev.release.xcconfig */, 66F5C120575269C834535D10 /* Pods-ParentBuddyApp-ParentBuddyAppXk.debug.xcconfig */, @@ -315,11 +310,12 @@ 2D16E6871FA4F8E400B85C8A /* Frameworks */ = { isa = PBXGroup; children = ( + E81798CA2C64B0E600BE2C1E /* liblottie-ios.a */, + E81798CC2C64B0E600BE2C1E /* liblottie-react-native.a */, + E81798CE2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a */, ED297162215061F000B7C4FE /* JavaScriptCore.framework */, ED2971642150620600B7C4FE /* JavaScriptCore.framework */, 432A8A94F0C66930E1F7016A /* libPods-ParentBuddyApp-ParentBuddyAppTests.a */, - 9C0D4647F6D4897887C8B113 /* libPods-ParentBuddyApp-tvOS.a */, - 2EEF3D7F0FA5943B0A46E9BC /* libPods-ParentBuddyApp-tvOSTests.a */, FBC23B934048ED268F478279 /* libPods-ParentBuddyApp-ParentBuddyAppDev.a */, 8E2E0B22C78C20B95241AC39 /* libPods-ParentBuddyApp.a */, DDB6340EB3791CC48248F25E /* libPods-ParentBuddyApp-ParentBuddyAppXkDev.a */, @@ -521,7 +517,6 @@ isa = PBXNativeTarget; buildConfigurationList = 2D02E4BA1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "ParentBuddyApp-tvOS" */; buildPhases = ( - 1D451F30709C9E4033213DEC /* [CP] Check Pods Manifest.lock */, FD10A7F122414F3F0027D42C /* Start Packager */, 2D02E4771E0B4A5D006451C7 /* Sources */, 2D02E4781E0B4A5D006451C7 /* Frameworks */, @@ -541,7 +536,6 @@ isa = PBXNativeTarget; buildConfigurationList = 2D02E4BB1E0B4A5E006451C7 /* Build configuration list for PBXNativeTarget "ParentBuddyApp-tvOSTests" */; buildPhases = ( - 9FA982D1BC73784C1195D0FE /* [CP] Check Pods Manifest.lock */, 2D02E48C1E0B4A5D006451C7 /* Sources */, 2D02E48D1E0B4A5D006451C7 /* Frameworks */, 2D02E48E1E0B4A5D006451C7 /* Resources */, @@ -829,28 +823,6 @@ shellPath = /bin/sh; shellScript = "export NODE_BINARY=node\n../node_modules/react-native/scripts/react-native-xcode.sh\n../node_modules/react-native-vector-image/strip_svgs.sh\n"; }; - 1D451F30709C9E4033213DEC /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-ParentBuddyApp-tvOS-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; 2D02E4CB1E0B4B27006451C7 /* Bundle React Native Code And Images */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -872,7 +844,7 @@ ); inputPaths = ( "${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Resources/DWARF/${TARGET_NAME}", - "$(SRCROOT)/$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)", + "$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)", ); name = "[CP-User] [RNFB] Crashlytics Configuration"; runOnlyForDeploymentPostprocessing = 0; @@ -886,17 +858,83 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppTests/Pods-ParentBuddyApp-ParentBuddyAppTests-resources.sh", - "${PODS_ROOT}/GoogleSignIn/Resources/GoogleSignIn.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore/FirebaseCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreExtension/FirebaseCoreExtension_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreInternal/FirebaseCoreInternal_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstallations/FirebaseInstallations_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleDataTransport/GoogleDataTransport_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities/GoogleUtilities_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesObjC/FBLPromises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesSwift/Promises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/AppAuth/AppAuthCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCrashlytics/FirebaseCrashlytics_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseMessaging/FirebaseMessaging_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMAppAuth/GTMAppAuth_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher/GTMSessionFetcher_Core_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleSignIn/GoogleSignIn.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Solid.ttf", "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/fontello.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", ); name = "[CP] Copy Pods Resources"; outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreExtension_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreInternal_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseInstallations_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleDataTransport_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleUtilities_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FBLPromises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Promises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/nanopb_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppAuthCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCrashlytics_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseMessaging_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMAppAuth_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMSessionFetcher_Core_Privacy.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleSignIn.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Solid.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/fontello.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", ); @@ -934,17 +972,83 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-ParentBuddyApp/Pods-ParentBuddyApp-resources.sh", - "${PODS_ROOT}/GoogleSignIn/Resources/GoogleSignIn.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore/FirebaseCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreExtension/FirebaseCoreExtension_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreInternal/FirebaseCoreInternal_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstallations/FirebaseInstallations_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleDataTransport/GoogleDataTransport_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities/GoogleUtilities_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesObjC/FBLPromises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesSwift/Promises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/AppAuth/AppAuthCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCrashlytics/FirebaseCrashlytics_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseMessaging/FirebaseMessaging_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMAppAuth/GTMAppAuth_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher/GTMSessionFetcher_Core_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleSignIn/GoogleSignIn.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Solid.ttf", "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/fontello.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", ); name = "[CP] Copy Pods Resources"; outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreExtension_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreInternal_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseInstallations_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleDataTransport_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleUtilities_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FBLPromises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Promises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/nanopb_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppAuthCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCrashlytics_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseMessaging_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMAppAuth_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMSessionFetcher_Core_Privacy.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleSignIn.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Solid.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/fontello.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", ); @@ -963,18 +1067,20 @@ "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBAEMKit/FBAEMKit.framework/FBAEMKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit/FBSDKCoreKit.framework/FBSDKCoreKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit_Basics/FBSDKCoreKit_Basics.framework/FBSDKCoreKit_Basics", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKGamingServicesKit/FBSDKGamingServicesKit.framework/FBSDKGamingServicesKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKLoginKit/FBSDKLoginKit.framework/FBSDKLoginKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKShareKit/FBSDKShareKit.framework/FBSDKShareKit", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBAEMKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit_Basics.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKGamingServicesKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKLoginKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKShareKit.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -992,29 +1098,7 @@ name = "[CP-User] [RNFB] Core Configuration"; runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "#!/usr/bin/env bash\n#\n# Copyright (c) 2016-present Invertase Limited & Contributors\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this library except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n#\nset -e\n\n_MAX_LOOKUPS=2;\n_SEARCH_RESULT=''\n_RN_ROOT_EXISTS=''\n_CURRENT_LOOKUPS=1\n_JSON_ROOT=\"'react-native'\"\n_JSON_FILE_NAME='firebase.json'\n_JSON_OUTPUT_BASE64='e30=' # { }\n_CURRENT_SEARCH_DIR=${PROJECT_DIR}\n_PLIST_BUDDY=/usr/libexec/PlistBuddy\n_TARGET_PLIST=\"${BUILT_PRODUCTS_DIR}/${INFOPLIST_PATH}\"\n_DSYM_PLIST=\"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist\"\n\n# plist arrays\n_PLIST_ENTRY_KEYS=()\n_PLIST_ENTRY_TYPES=()\n_PLIST_ENTRY_VALUES=()\n\nfunction setPlistValue {\n echo \"info: setting plist entry '$1' of type '$2' in file '$4'\"\n ${_PLIST_BUDDY} -c \"Add :$1 $2 '$3'\" $4 || echo \"info: '$1' already exists\"\n}\n\nfunction getFirebaseJsonKeyValue () {\n if [[ ${_RN_ROOT_EXISTS} ]]; then\n ruby -e \"require 'rubygems';require 'json'; output=JSON.parse('$1'); puts output[$_JSON_ROOT]['$2']\"\n else\n echo \"\"\n fi;\n}\n\nfunction jsonBoolToYesNo () {\n if [[ $1 == \"false\" ]]; then\n echo \"NO\"\n elif [[ $1 == \"true\" ]]; then\n echo \"YES\"\n else echo \"NO\"\n fi\n}\n\necho \"info: -> RNFB build script started\"\necho \"info: 1) Locating ${_JSON_FILE_NAME} file:\"\n\nif [[ -z ${_CURRENT_SEARCH_DIR} ]]; then\n _CURRENT_SEARCH_DIR=$(pwd)\nfi;\n\nwhile true; do\n _CURRENT_SEARCH_DIR=$(dirname \"$_CURRENT_SEARCH_DIR\")\n if [[ \"$_CURRENT_SEARCH_DIR\" == \"/\" ]] || [[ ${_CURRENT_LOOKUPS} -gt ${_MAX_LOOKUPS} ]]; then break; fi;\n echo \"info: ($_CURRENT_LOOKUPS of $_MAX_LOOKUPS) Searching in '$_CURRENT_SEARCH_DIR' for a ${_JSON_FILE_NAME} file.\"\n _SEARCH_RESULT=$(find \"$_CURRENT_SEARCH_DIR\" -maxdepth 2 -name ${_JSON_FILE_NAME} -print | /usr/bin/head -n 1)\n if [[ ${_SEARCH_RESULT} ]]; then\n echo \"info: ${_JSON_FILE_NAME} found at $_SEARCH_RESULT\"\n break;\n fi;\n _CURRENT_LOOKUPS=$((_CURRENT_LOOKUPS+1))\ndone\n\nif [[ ${_SEARCH_RESULT} ]]; then\n _JSON_OUTPUT_RAW=$(cat \"${_SEARCH_RESULT}\")\n _RN_ROOT_EXISTS=$(ruby -e \"require 'rubygems';require 'json'; output=JSON.parse('$_JSON_OUTPUT_RAW'); puts output[$_JSON_ROOT]\" || echo '')\n\n if [[ ${_RN_ROOT_EXISTS} ]]; then\n if ! python3 --version >/dev/null 2>&1; then echo \"python3 not found, firebase.json file processing error.\" && exit 1; fi\n _JSON_OUTPUT_BASE64=$(python3 -c 'import json,sys,base64;print(base64.b64encode(bytes(json.dumps(json.loads(open('\"'${_SEARCH_RESULT}'\"', '\"'rb'\"').read())['${_JSON_ROOT}']), '\"'utf-8'\"')).decode())' || echo \"e30=\")\n fi\n\n _PLIST_ENTRY_KEYS+=(\"firebase_json_raw\")\n _PLIST_ENTRY_TYPES+=(\"string\")\n _PLIST_ENTRY_VALUES+=(\"$_JSON_OUTPUT_BASE64\")\n\n # config.app_data_collection_default_enabled\n _APP_DATA_COLLECTION_ENABLED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"app_data_collection_default_enabled\")\n if [[ $_APP_DATA_COLLECTION_ENABLED ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseDataCollectionDefaultEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_APP_DATA_COLLECTION_ENABLED\")\")\n fi\n\n # config.analytics_auto_collection_enabled\n _ANALYTICS_AUTO_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_auto_collection_enabled\")\n if [[ $_ANALYTICS_AUTO_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"FIREBASE_ANALYTICS_COLLECTION_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AUTO_COLLECTION\")\")\n fi\n\n # config.analytics_collection_deactivated\n _ANALYTICS_DEACTIVATED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_collection_deactivated\")\n if [[ $_ANALYTICS_DEACTIVATED ]]; then\n _PLIST_ENTRY_KEYS+=(\"FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_DEACTIVATED\")\")\n fi\n\n # config.analytics_idfv_collection_enabled\n _ANALYTICS_IDFV_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_idfv_collection_enabled\")\n if [[ $_ANALYTICS_IDFV_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_IDFV_COLLECTION_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_IDFV_COLLECTION\")\")\n fi\n\n # config.analytics_default_allow_ad_personalization_signals\n _ANALYTICS_PERSONALIZATION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_default_allow_ad_personalization_signals\")\n if [[ $_ANALYTICS_PERSONALIZATION ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_PERSONALIZATION\")\")\n fi\n\n # config.analytics_registration_with_ad_network_enabled\n _ANALYTICS_REGISTRATION_WITH_AD_NETWORK=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"google_analytics_registration_with_ad_network_enabled\")\n if [[ $_ANALYTICS_REGISTRATION_WITH_AD_NETWORK ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_REGISTRATION_WITH_AD_NETWORK_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_REGISTRATION_WITH_AD_NETWORK\")\")\n fi\n\n # config.google_analytics_automatic_screen_reporting_enabled\n _ANALYTICS_AUTO_SCREEN_REPORTING=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"google_analytics_automatic_screen_reporting_enabled\")\n if [[ $_ANALYTICS_AUTO_SCREEN_REPORTING ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseAutomaticScreenReportingEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AUTO_SCREEN_REPORTING\")\")\n fi\n\n # config.perf_auto_collection_enabled\n _PERF_AUTO_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"perf_auto_collection_enabled\")\n if [[ $_PERF_AUTO_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"firebase_performance_collection_enabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_PERF_AUTO_COLLECTION\")\")\n fi\n\n # config.perf_collection_deactivated\n _PERF_DEACTIVATED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"perf_collection_deactivated\")\n if [[ $_PERF_DEACTIVATED ]]; then\n _PLIST_ENTRY_KEYS+=(\"firebase_performance_collection_deactivated\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_PERF_DEACTIVATED\")\")\n fi\n\n # config.messaging_auto_init_enabled\n _MESSAGING_AUTO_INIT=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"messaging_auto_init_enabled\")\n if [[ $_MESSAGING_AUTO_INIT ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseMessagingAutoInitEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_MESSAGING_AUTO_INIT\")\")\n fi\n\n # config.in_app_messaging_auto_colllection_enabled\n _FIAM_AUTO_INIT=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"in_app_messaging_auto_collection_enabled\")\n if [[ $_FIAM_AUTO_INIT ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseInAppMessagingAutomaticDataCollectionEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_FIAM_AUTO_INIT\")\")\n fi\n\n # config.app_check_token_auto_refresh\n _APP_CHECK_TOKEN_AUTO_REFRESH=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"app_check_token_auto_refresh\")\n if [[ $_APP_CHECK_TOKEN_AUTO_REFRESH ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseAppCheckTokenAutoRefreshEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_APP_CHECK_TOKEN_AUTO_REFRESH\")\")\n fi\n\n # config.crashlytics_disable_auto_disabler - undocumented for now - mainly for debugging, document if becomes useful\n _CRASHLYTICS_AUTO_DISABLE_ENABLED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"crashlytics_disable_auto_disabler\")\n if [[ $_CRASHLYTICS_AUTO_DISABLE_ENABLED == \"true\" ]]; then\n echo \"Disabled Crashlytics auto disabler.\" # do nothing\n else\n _PLIST_ENTRY_KEYS+=(\"FirebaseCrashlyticsCollectionEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"NO\")\n fi\nelse\n _PLIST_ENTRY_KEYS+=(\"firebase_json_raw\")\n _PLIST_ENTRY_TYPES+=(\"string\")\n _PLIST_ENTRY_VALUES+=(\"$_JSON_OUTPUT_BASE64\")\n echo \"warning: A firebase.json file was not found, whilst this file is optional it is recommended to include it to configure firebase services in React Native Firebase.\"\nfi;\n\necho \"info: 2) Injecting Info.plist entries: \"\n\n# Log out the keys we're adding\nfor i in \"${!_PLIST_ENTRY_KEYS[@]}\"; do\n echo \" -> $i) ${_PLIST_ENTRY_KEYS[$i]}\" \"${_PLIST_ENTRY_TYPES[$i]}\" \"${_PLIST_ENTRY_VALUES[$i]}\"\ndone\n\nfor plist in \"${_TARGET_PLIST}\" \"${_DSYM_PLIST}\" ; do\n if [[ -f \"${plist}\" ]]; then\n\n # paths with spaces break the call to setPlistValue. temporarily modify\n # the shell internal field separator variable (IFS), which normally\n # includes spaces, to consist only of line breaks\n oldifs=$IFS\n IFS=\"\n\"\n\n for i in \"${!_PLIST_ENTRY_KEYS[@]}\"; do\n setPlistValue \"${_PLIST_ENTRY_KEYS[$i]}\" \"${_PLIST_ENTRY_TYPES[$i]}\" \"${_PLIST_ENTRY_VALUES[$i]}\" \"${plist}\"\n done\n\n # restore the original internal field separator value\n IFS=$oldifs\n else\n echo \"warning: A Info.plist build output file was not found (${plist})\"\n fi\ndone\n\necho \"info: <- RNFB build script finished\"\n"; - }; - 9FA982D1BC73784C1195D0FE /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-ParentBuddyApp-tvOSTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; + shellScript = "#!/usr/bin/env bash\n#\n# Copyright (c) 2016-present Invertase Limited & Contributors\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this library except in compliance with the License.\n# You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n#\n\n##########################################################################\n##########################################################################\n#\n# NOTE THAT IF YOU CHANGE THIS FILE YOU MUST RUN pod install AFTERWARDS\n#\n# This file is installed as an Xcode build script in the project file\n# by cocoapods, and you will not see your changes until you pod install\n#\n##########################################################################\n##########################################################################\n\nset -e\n\n_MAX_LOOKUPS=2;\n_SEARCH_RESULT=''\n_RN_ROOT_EXISTS=''\n_CURRENT_LOOKUPS=1\n_JSON_ROOT=\"'react-native'\"\n_JSON_FILE_NAME='firebase.json'\n_JSON_OUTPUT_BASE64='e30=' # { }\n_CURRENT_SEARCH_DIR=${PROJECT_DIR}\n_PLIST_BUDDY=/usr/libexec/PlistBuddy\n_TARGET_PLIST=\"${BUILT_PRODUCTS_DIR}/${INFOPLIST_PATH}\"\n_DSYM_PLIST=\"${DWARF_DSYM_FOLDER_PATH}/${DWARF_DSYM_FILE_NAME}/Contents/Info.plist\"\n\n# plist arrays\n_PLIST_ENTRY_KEYS=()\n_PLIST_ENTRY_TYPES=()\n_PLIST_ENTRY_VALUES=()\n\nfunction setPlistValue {\n echo \"info: setting plist entry '$1' of type '$2' in file '$4'\"\n ${_PLIST_BUDDY} -c \"Add :$1 $2 '$3'\" $4 || echo \"info: '$1' already exists\"\n}\n\nfunction getFirebaseJsonKeyValue () {\n if [[ ${_RN_ROOT_EXISTS} ]]; then\n ruby -Ku -e \"require 'rubygems';require 'json'; output=JSON.parse('$1'); puts output[$_JSON_ROOT]['$2']\"\n else\n echo \"\"\n fi;\n}\n\nfunction jsonBoolToYesNo () {\n if [[ $1 == \"false\" ]]; then\n echo \"NO\"\n elif [[ $1 == \"true\" ]]; then\n echo \"YES\"\n else echo \"NO\"\n fi\n}\n\necho \"info: -> RNFB build script started\"\necho \"info: 1) Locating ${_JSON_FILE_NAME} file:\"\n\nif [[ -z ${_CURRENT_SEARCH_DIR} ]]; then\n _CURRENT_SEARCH_DIR=$(pwd)\nfi;\n\nwhile true; do\n _CURRENT_SEARCH_DIR=$(dirname \"$_CURRENT_SEARCH_DIR\")\n if [[ \"$_CURRENT_SEARCH_DIR\" == \"/\" ]] || [[ ${_CURRENT_LOOKUPS} -gt ${_MAX_LOOKUPS} ]]; then break; fi;\n echo \"info: ($_CURRENT_LOOKUPS of $_MAX_LOOKUPS) Searching in '$_CURRENT_SEARCH_DIR' for a ${_JSON_FILE_NAME} file.\"\n _SEARCH_RESULT=$(find \"$_CURRENT_SEARCH_DIR\" -maxdepth 2 -name ${_JSON_FILE_NAME} -print | /usr/bin/head -n 1)\n if [[ ${_SEARCH_RESULT} ]]; then\n echo \"info: ${_JSON_FILE_NAME} found at $_SEARCH_RESULT\"\n break;\n fi;\n _CURRENT_LOOKUPS=$((_CURRENT_LOOKUPS+1))\ndone\n\nif [[ ${_SEARCH_RESULT} ]]; then\n _JSON_OUTPUT_RAW=$(cat \"${_SEARCH_RESULT}\")\n _RN_ROOT_EXISTS=$(ruby -Ku -e \"require 'rubygems';require 'json'; output=JSON.parse('$_JSON_OUTPUT_RAW'); puts output[$_JSON_ROOT]\" || echo '')\n\n if [[ ${_RN_ROOT_EXISTS} ]]; then\n if ! python3 --version >/dev/null 2>&1; then echo \"python3 not found, firebase.json file processing error.\" && exit 1; fi\n _JSON_OUTPUT_BASE64=$(python3 -c 'import json,sys,base64;print(base64.b64encode(bytes(json.dumps(json.loads(open('\"'${_SEARCH_RESULT}'\"', '\"'rb'\"').read())['${_JSON_ROOT}']), '\"'utf-8'\"')).decode())' || echo \"e30=\")\n fi\n\n _PLIST_ENTRY_KEYS+=(\"firebase_json_raw\")\n _PLIST_ENTRY_TYPES+=(\"string\")\n _PLIST_ENTRY_VALUES+=(\"$_JSON_OUTPUT_BASE64\")\n\n # config.app_data_collection_default_enabled\n _APP_DATA_COLLECTION_ENABLED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"app_data_collection_default_enabled\")\n if [[ $_APP_DATA_COLLECTION_ENABLED ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseDataCollectionDefaultEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_APP_DATA_COLLECTION_ENABLED\")\")\n fi\n\n # config.analytics_auto_collection_enabled\n _ANALYTICS_AUTO_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_auto_collection_enabled\")\n if [[ $_ANALYTICS_AUTO_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"FIREBASE_ANALYTICS_COLLECTION_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AUTO_COLLECTION\")\")\n fi\n\n # config.analytics_collection_deactivated\n _ANALYTICS_DEACTIVATED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_collection_deactivated\")\n if [[ $_ANALYTICS_DEACTIVATED ]]; then\n _PLIST_ENTRY_KEYS+=(\"FIREBASE_ANALYTICS_COLLECTION_DEACTIVATED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_DEACTIVATED\")\")\n fi\n\n # config.analytics_idfv_collection_enabled\n _ANALYTICS_IDFV_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_idfv_collection_enabled\")\n if [[ $_ANALYTICS_IDFV_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_IDFV_COLLECTION_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_IDFV_COLLECTION\")\")\n fi\n\n # config.analytics_default_allow_analytics_storage\n _ANALYTICS_STORAGE=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_default_allow_analytics_storage\")\n if [[ $_ANALYTICS_STORAGE ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGE\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_STORAGE\")\")\n fi\n\n # config.analytics_default_allow_ad_storage\n _ANALYTICS_AD_STORAGE=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_default_allow_ad_storage\")\n if [[ $_ANALYTICS_AD_STORAGE ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGE\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AD_STORAGE\")\")\n fi\n\n # config.analytics_default_allow_ad_user_data\n _ANALYTICS_AD_USER_DATA=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_default_allow_ad_user_data\")\n if [[ $_ANALYTICS_AD_USER_DATA ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AD_USER_DATA\")\")\n fi\n\n # config.analytics_default_allow_ad_personalization_signals\n _ANALYTICS_PERSONALIZATION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"analytics_default_allow_ad_personalization_signals\")\n if [[ $_ANALYTICS_PERSONALIZATION ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_PERSONALIZATION\")\")\n fi\n\n # config.analytics_registration_with_ad_network_enabled\n _ANALYTICS_REGISTRATION_WITH_AD_NETWORK=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"google_analytics_registration_with_ad_network_enabled\")\n if [[ $_ANALYTICS_REGISTRATION_WITH_AD_NETWORK ]]; then\n _PLIST_ENTRY_KEYS+=(\"GOOGLE_ANALYTICS_REGISTRATION_WITH_AD_NETWORK_ENABLED\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_REGISTRATION_WITH_AD_NETWORK\")\")\n fi\n\n # config.google_analytics_automatic_screen_reporting_enabled\n _ANALYTICS_AUTO_SCREEN_REPORTING=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"google_analytics_automatic_screen_reporting_enabled\")\n if [[ $_ANALYTICS_AUTO_SCREEN_REPORTING ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseAutomaticScreenReportingEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_ANALYTICS_AUTO_SCREEN_REPORTING\")\")\n fi\n\n # config.perf_auto_collection_enabled\n _PERF_AUTO_COLLECTION=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"perf_auto_collection_enabled\")\n if [[ $_PERF_AUTO_COLLECTION ]]; then\n _PLIST_ENTRY_KEYS+=(\"firebase_performance_collection_enabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_PERF_AUTO_COLLECTION\")\")\n fi\n\n # config.perf_collection_deactivated\n _PERF_DEACTIVATED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"perf_collection_deactivated\")\n if [[ $_PERF_DEACTIVATED ]]; then\n _PLIST_ENTRY_KEYS+=(\"firebase_performance_collection_deactivated\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_PERF_DEACTIVATED\")\")\n fi\n\n # config.messaging_auto_init_enabled\n _MESSAGING_AUTO_INIT=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"messaging_auto_init_enabled\")\n if [[ $_MESSAGING_AUTO_INIT ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseMessagingAutoInitEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_MESSAGING_AUTO_INIT\")\")\n fi\n\n # config.in_app_messaging_auto_colllection_enabled\n _FIAM_AUTO_INIT=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"in_app_messaging_auto_collection_enabled\")\n if [[ $_FIAM_AUTO_INIT ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseInAppMessagingAutomaticDataCollectionEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_FIAM_AUTO_INIT\")\")\n fi\n\n # config.app_check_token_auto_refresh\n _APP_CHECK_TOKEN_AUTO_REFRESH=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"app_check_token_auto_refresh\")\n if [[ $_APP_CHECK_TOKEN_AUTO_REFRESH ]]; then\n _PLIST_ENTRY_KEYS+=(\"FirebaseAppCheckTokenAutoRefreshEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"$(jsonBoolToYesNo \"$_APP_CHECK_TOKEN_AUTO_REFRESH\")\")\n fi\n\n # config.crashlytics_disable_auto_disabler - undocumented for now - mainly for debugging, document if becomes useful\n _CRASHLYTICS_AUTO_DISABLE_ENABLED=$(getFirebaseJsonKeyValue \"$_JSON_OUTPUT_RAW\" \"crashlytics_disable_auto_disabler\")\n if [[ $_CRASHLYTICS_AUTO_DISABLE_ENABLED == \"true\" ]]; then\n echo \"Disabled Crashlytics auto disabler.\" # do nothing\n else\n _PLIST_ENTRY_KEYS+=(\"FirebaseCrashlyticsCollectionEnabled\")\n _PLIST_ENTRY_TYPES+=(\"bool\")\n _PLIST_ENTRY_VALUES+=(\"NO\")\n fi\nelse\n _PLIST_ENTRY_KEYS+=(\"firebase_json_raw\")\n _PLIST_ENTRY_TYPES+=(\"string\")\n _PLIST_ENTRY_VALUES+=(\"$_JSON_OUTPUT_BASE64\")\n echo \"warning: A firebase.json file was not found, whilst this file is optional it is recommended to include it to configure firebase services in React Native Firebase.\"\nfi;\n\necho \"info: 2) Injecting Info.plist entries: \"\n\n# Log out the keys we're adding\nfor i in \"${!_PLIST_ENTRY_KEYS[@]}\"; do\n echo \" -> $i) ${_PLIST_ENTRY_KEYS[$i]}\" \"${_PLIST_ENTRY_TYPES[$i]}\" \"${_PLIST_ENTRY_VALUES[$i]}\"\ndone\n\nfor plist in \"${_TARGET_PLIST}\" \"${_DSYM_PLIST}\" ; do\n if [[ -f \"${plist}\" ]]; then\n\n # paths with spaces break the call to setPlistValue. temporarily modify\n # the shell internal field separator variable (IFS), which normally\n # includes spaces, to consist only of line breaks\n oldifs=$IFS\n IFS=\"\n\"\n\n for i in \"${!_PLIST_ENTRY_KEYS[@]}\"; do\n setPlistValue \"${_PLIST_ENTRY_KEYS[$i]}\" \"${_PLIST_ENTRY_TYPES[$i]}\" \"${_PLIST_ENTRY_VALUES[$i]}\" \"${plist}\"\n done\n\n # restore the original internal field separator value\n IFS=$oldifs\n else\n echo \"warning: A Info.plist build output file was not found (${plist})\"\n fi\ndone\n\necho \"info: <- RNFB build script finished\"\n"; }; BF838C9D27A42D8000CC12B9 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; @@ -1081,18 +1165,20 @@ "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBAEMKit/FBAEMKit.framework/FBAEMKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit/FBSDKCoreKit.framework/FBSDKCoreKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit_Basics/FBSDKCoreKit_Basics.framework/FBSDKCoreKit_Basics", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKGamingServicesKit/FBSDKGamingServicesKit.framework/FBSDKGamingServicesKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKLoginKit/FBSDKLoginKit.framework/FBSDKLoginKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKShareKit/FBSDKShareKit.framework/FBSDKShareKit", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBAEMKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit_Basics.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKGamingServicesKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKLoginKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKShareKit.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -1106,17 +1192,83 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppXk/Pods-ParentBuddyApp-ParentBuddyAppXk-resources.sh", - "${PODS_ROOT}/GoogleSignIn/Resources/GoogleSignIn.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore/FirebaseCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreExtension/FirebaseCoreExtension_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreInternal/FirebaseCoreInternal_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstallations/FirebaseInstallations_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleDataTransport/GoogleDataTransport_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities/GoogleUtilities_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesObjC/FBLPromises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesSwift/Promises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/AppAuth/AppAuthCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCrashlytics/FirebaseCrashlytics_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseMessaging/FirebaseMessaging_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMAppAuth/GTMAppAuth_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher/GTMSessionFetcher_Core_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleSignIn/GoogleSignIn.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Solid.ttf", "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/fontello.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", ); name = "[CP] Copy Pods Resources"; outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreExtension_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreInternal_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseInstallations_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleDataTransport_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleUtilities_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FBLPromises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Promises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/nanopb_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppAuthCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCrashlytics_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseMessaging_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMAppAuth_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMSessionFetcher_Core_Privacy.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleSignIn.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Solid.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/fontello.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", ); @@ -1190,18 +1342,20 @@ "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBAEMKit/FBAEMKit.framework/FBAEMKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit/FBSDKCoreKit.framework/FBSDKCoreKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit_Basics/FBSDKCoreKit_Basics.framework/FBSDKCoreKit_Basics", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKGamingServicesKit/FBSDKGamingServicesKit.framework/FBSDKGamingServicesKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKLoginKit/FBSDKLoginKit.framework/FBSDKLoginKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKShareKit/FBSDKShareKit.framework/FBSDKShareKit", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBAEMKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit_Basics.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKGamingServicesKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKLoginKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKShareKit.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -1215,17 +1369,83 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppDev/Pods-ParentBuddyApp-ParentBuddyAppDev-resources.sh", - "${PODS_ROOT}/GoogleSignIn/Resources/GoogleSignIn.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore/FirebaseCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreExtension/FirebaseCoreExtension_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreInternal/FirebaseCoreInternal_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstallations/FirebaseInstallations_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleDataTransport/GoogleDataTransport_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities/GoogleUtilities_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesObjC/FBLPromises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesSwift/Promises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/AppAuth/AppAuthCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCrashlytics/FirebaseCrashlytics_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseMessaging/FirebaseMessaging_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMAppAuth/GTMAppAuth_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher/GTMSessionFetcher_Core_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleSignIn/GoogleSignIn.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Solid.ttf", "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/fontello.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", ); name = "[CP] Copy Pods Resources"; outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreExtension_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreInternal_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseInstallations_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleDataTransport_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleUtilities_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FBLPromises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Promises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/nanopb_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppAuthCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCrashlytics_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseMessaging_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMAppAuth_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMSessionFetcher_Core_Privacy.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleSignIn.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Solid.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/fontello.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", ); @@ -1299,18 +1519,20 @@ "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBAEMKit/FBAEMKit.framework/FBAEMKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit/FBSDKCoreKit.framework/FBSDKCoreKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit_Basics/FBSDKCoreKit_Basics.framework/FBSDKCoreKit_Basics", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKGamingServicesKit/FBSDKGamingServicesKit.framework/FBSDKGamingServicesKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKLoginKit/FBSDKLoginKit.framework/FBSDKLoginKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKShareKit/FBSDKShareKit.framework/FBSDKShareKit", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBAEMKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit_Basics.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKGamingServicesKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKLoginKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKShareKit.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -1324,17 +1546,83 @@ ); inputPaths = ( "${PODS_ROOT}/Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppXkDev/Pods-ParentBuddyApp-ParentBuddyAppXkDev-resources.sh", - "${PODS_ROOT}/GoogleSignIn/Resources/GoogleSignIn.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCore/FirebaseCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreExtension/FirebaseCoreExtension_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCoreInternal/FirebaseCoreInternal_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseInstallations/FirebaseInstallations_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleDataTransport/GoogleDataTransport_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleUtilities/GoogleUtilities_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesObjC/FBLPromises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/PromisesSwift/Promises_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/nanopb/nanopb_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/AppAuth/AppAuthCore_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseCrashlytics/FirebaseCrashlytics_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/FirebaseMessaging/FirebaseMessaging_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMAppAuth/GTMAppAuth_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GTMSessionFetcher/GTMSessionFetcher_Core_Privacy.bundle", + "${PODS_CONFIGURATION_BUILD_DIR}/GoogleSignIn/GoogleSignIn.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/RNImageCropPicker/QBImagePicker.bundle", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/AntDesign.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Entypo.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/EvilIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Feather.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome5_Solid.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Brands.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Regular.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/FontAwesome6_Solid.ttf", "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/fontello.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Fontisto.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Foundation.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Ionicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialCommunityIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/MaterialIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Octicons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/SimpleLineIcons.ttf", + "${PODS_ROOT}/../../node_modules/react-native-vector-icons/Fonts/Zocial.ttf", "${PODS_CONFIGURATION_BUILD_DIR}/React-Core/AccessibilityResources.bundle", "${PODS_CONFIGURATION_BUILD_DIR}/TOCropViewController/TOCropViewControllerBundle.bundle", ); name = "[CP] Copy Pods Resources"; outputPaths = ( + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreExtension_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCoreInternal_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseInstallations_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleDataTransport_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleUtilities_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FBLPromises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Promises_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/nanopb_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AppAuthCore_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseCrashlytics_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FirebaseMessaging_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMAppAuth_Privacy.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GTMSessionFetcher_Core_Privacy.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/GoogleSignIn.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/QBImagePicker.bundle", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AntDesign.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Entypo.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/EvilIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Feather.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome5_Solid.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Brands.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Regular.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/FontAwesome6_Solid.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/fontello.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Fontisto.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Foundation.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Ionicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialCommunityIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/MaterialIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Octicons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/SimpleLineIcons.ttf", + "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/Zocial.ttf", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/AccessibilityResources.bundle", "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/TOCropViewControllerBundle.bundle", ); @@ -1375,18 +1663,20 @@ "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBAEMKit/FBAEMKit.framework/FBAEMKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit/FBSDKCoreKit.framework/FBSDKCoreKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKCoreKit_Basics/FBSDKCoreKit_Basics.framework/FBSDKCoreKit_Basics", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKGamingServicesKit/FBSDKGamingServicesKit.framework/FBSDKGamingServicesKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKLoginKit/FBSDKLoginKit.framework/FBSDKLoginKit", "${PODS_XCFRAMEWORKS_BUILD_DIR}/FBSDKShareKit/FBSDKShareKit.framework/FBSDKShareKit", - "${PODS_XCFRAMEWORKS_BUILD_DIR}/OpenSSL-Universal/OpenSSL.framework/OpenSSL", + "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBAEMKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKCoreKit_Basics.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKGamingServicesKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKLoginKit.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBSDKShareKit.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OpenSSL.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; @@ -1607,7 +1897,7 @@ CODE_SIGN_ENTITLEMENTS = ParentBuddyApp/ParentBuddyApp.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 5; + CURRENT_PROJECT_VERSION = 24; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = K288UMKCNF; ENABLE_BITCODE = NO; @@ -1699,8 +1989,9 @@ "\"$(PODS_TARGET_SRCROOT)/include/\"", ); INFOPLIST_FILE = ParentBuddyApp/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 1.1.3; + MARKETING_VERSION = 2.2.0; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", @@ -1725,12 +2016,13 @@ CODE_SIGN_ENTITLEMENTS = ParentBuddyApp/ParentBuddyApp.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 5; + CURRENT_PROJECT_VERSION = 24; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = K288UMKCNF; INFOPLIST_FILE = ParentBuddyApp/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 1.1.3; + MARKETING_VERSION = 2.2.0; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", @@ -1747,7 +2039,6 @@ }; 2D02E4971E0B4A5E006451C7 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A0775836DFF69B6E5C8A32F1 /* Pods-ParentBuddyApp-tvOS.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; @@ -1775,7 +2066,6 @@ }; 2D02E4981E0B4A5E006451C7 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = ADD257AE9C44137381683541 /* Pods-ParentBuddyApp-tvOS.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = "App Icon & Top Shelf Image"; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; @@ -1803,7 +2093,6 @@ }; 2D02E4991E0B4A5E006451C7 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 2DCBA941ED31E33B31E7E69F /* Pods-ParentBuddyApp-tvOSTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; @@ -1830,7 +2119,6 @@ }; 2D02E49A1E0B4A5E006451C7 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FD245B9482D2F6762D0BB7B0 /* Pods-ParentBuddyApp-tvOSTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; @@ -1861,7 +2149,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -1888,7 +2176,7 @@ COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "arm64 "; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "i386 arm64"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -1896,6 +2184,7 @@ GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", "$(inherited)", + _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION, ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -1907,12 +2196,16 @@ IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)"; LIBRARY_SEARCH_PATHS = ( + "$(SDKROOT)/usr/lib/swift", "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"", - "\"$(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)\"", "\"$(inherited)\"", ); MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; + OTHER_CFLAGS = "$(inherited)"; + OTHER_CPLUSPLUSFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited) "; + REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; }; name = Debug; @@ -1923,7 +2216,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LANGUAGE_STANDARD = "c++17"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -1950,9 +2243,13 @@ COPY_PHASE_STRIP = YES; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "arm64 "; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "arm64 i386"; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(inherited)", + _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION, + ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -1962,11 +2259,15 @@ IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "/usr/lib/swift $(inherited)"; LIBRARY_SEARCH_PATHS = ( + "$(SDKROOT)/usr/lib/swift", "\"$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)\"", - "\"$(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME)\"", "\"$(inherited)\"", ); MTL_ENABLE_DEBUG_INFO = NO; + OTHER_CFLAGS = "$(inherited)"; + OTHER_CPLUSPLUSFLAGS = "$(inherited)"; + OTHER_LDFLAGS = "$(inherited) "; + REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native"; SDKROOT = iphoneos; VALIDATE_PRODUCT = YES; }; @@ -2222,6 +2523,7 @@ "\"$(PODS_TARGET_SRCROOT)/include/\"", ); INFOPLIST_FILE = "ParentBuddyAppDev-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MARKETING_VERSION = 1.3.14; OTHER_LDFLAGS = ( @@ -2253,6 +2555,7 @@ DEFINES_MODULE = YES; DEVELOPMENT_TEAM = 93BCKGKLMZ; INFOPLIST_FILE = "ParentBuddyAppDev-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; MARKETING_VERSION = 1.3.14; OTHER_LDFLAGS = ( diff --git a/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyApp.xcscheme b/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyApp.xcscheme index b629ae3b8..4ca2d5bf9 100644 --- a/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyApp.xcscheme +++ b/ios/ParentBuddyApp.xcodeproj/xcshareddata/xcschemes/ParentBuddyApp.xcscheme @@ -59,7 +59,7 @@ fDusyVn8KZ?y0oR()P_# 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 + + + + + + + + + + + + + + + + + + + + diff --git a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/Contents.json b/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/Contents.json index 7227e7aff..723f65e33 100644 --- a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/Contents.json +++ b/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/Contents.json @@ -1,23 +1,15 @@ { - "images" : [ + "images": [ { - "filename" : "activity_feature_logo.svg", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "activity_feature_logo 1.svg", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "activity_feature_logo 2.svg", - "idiom" : "universal", - "scale" : "3x" + "filename": "light.pdf", + "idiom": "universal" } ], - "info" : { - "author" : "xcode", - "version" : 1 + "info": { + "author": "xcode", + "version": 1 + }, + "properties": { + "preserves-vector-representation": true } } diff --git a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 1.svg b/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 1.svg deleted file mode 100644 index 8fdd227bb..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 1.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 2.svg b/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 2.svg deleted file mode 100644 index 8fdd227bb..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo 2.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo.svg b/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo.svg deleted file mode 100644 index 8fdd227bb..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/activity_feature_logo.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/activity_feature_logo_svg_97fc39.imageset/light.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0cf0e5f5b3c11cfa3e8850b15536457989090a42 GIT binary patch literal 3687 zcmd5!`HqRFgVQG1 z0*f;F2f0ur00MZyY?QS%3iOE%X8@pMl+f8*NEI?rAdLz@78sO`4T`~~OHeTU892NE zOkRNfxG5kBpckF!r)&3@>Lp6i5Mt{7B@e zt^ku7CSXXC0lgRkUL>E!5CD=Rc%eWy1~)_)3Xm{JTvnKn!3RL6FoYoo28~CT`Ur%4 z29<+~%IP;7FdM-5K%U6M2g1qa5A3o~C1y5j8|TUu98uBaUqb^v3Yj-u+5SvE`^5EB zJ3gFg=yKLBg0G)>^V^CPyBOF{#}DuWR>?TZs~1U_pWS?}2ACxzePkCoo-Kedf)q}| zi#q^%AUsjS5c=Gyf<1GLxJ7bUT%Ld>MEGz9UdOge7N~uOy6vq0iUyo}cS6T_XBfx2agZYO46EtxS2UIWFgmHg!N782-ZL$Iiiu zRsQ5ttH-WPslVIM_4?0*VbcBHeFnVy#d){hj}P}Zm*?%XH2C9wysd>L6POGRkz6Wpu3I1 z`FMwvLqD){wJ&B=lAnv3x+f+n^~ULOM+a2t(;43MiNJ$iq4acdjcV^bW5wfV0!Pw*Xe`rfyd66A zGdOUjKDt_+99|^AKkctm)~EflQ+0h-3Rf@3|5US)hpKmN&0S^P604Fl|0u<0Z^~p> z)h)9LvD&y?>yq}~Acf1UhY{E5vdS4(PZ(Cv+qdQ$dH7RW%!@N#$A*am8?kDlYeMmz zp0;KR%E+wwY_;sU!{$XT4X=`F_6&VD*g5z@U0BK{!I1yNw=M*z zPtO**D~^J>O_xj@=`ImTAr%Dw^lRZs^j!Hf+Wk$J)_DcF`Z?!^+^O(A?dfZ1G`_O~lsPQZQaOJa~Ge3SZkJB1r49 zx==hxQFyMyDJU?K%OiK}=rm1EOKd6~92iZXPPA4}QF?0GOORtcaU*N+f}-OCrjlI6 zaa-y&tHIv#yIb?)zbr(J=_uz1+0c4wOW$u6-Nyq($6sL$^b&3R)|WW8x;_E|Yjumt zb{7O48VVq6Dc-*7Ql;1JzfPX0(KNo1oh$mr)cdV6Y_)l>yN6ORkcOYEJigAY#fJS` zO+qZ?T6Wy|Sh=utgGUOss%xTXa@Yft;>w;nbW7|Yw}$#Q^g;8kHHyP*&#+7Sn+i0N zRZ`Z|OEwW2Mept%T+tJD4Od&*6yiT}vHsQNX|Fy9N8i(@t^{uXCgf%G;6!kJ`gF3& z_hw*QWZsJU~~O@cYuc z{G813h_(9xv@kYua`}yze>&c2z1#O9-WO7Dm>|(jz(NB>P4g8az4Gw3Yp5=~&w;|dXw0Km_n=BGSCYM7THlJ%S>^5pYq-V7lS03x~x z(GrX(AplZ1NL0Jocl+6Q3Zgp}Pe&M#=qpJ|FaS&DHuCXP@dM5ZoSAWo$Rf$)TqKJm z3D4y-D@8Ck(&y(F$J3Q<52K&H)DR?)L>rsCuF6-6jh?-gS;s+9wnnv$XJ$H!ahnv5 zTSEq}b-ORfqls_T16?k5^8b9?KW;Z3ZbXERVXr-Rxlxx86!EutG|+YGL$~vcl`i^#1;l+Ur%RZHszMt5!5mU9#hWk1OxA3Z_Lnd0gC(5c*ElPS~J4Rz}%GxA^ z1}*Ixc&?xukQ%zOgr*|8%B`C?8MZ*Z`L$pkV)#6S>)fnd_kdFO>?LE3~KNkfF8 zG!{~2dqfWkdB|E4Vs6diaUBrZ2*5L4G2d|uGu#sozAwq z2bF^?X1Z(Md#O^FIw6_yA|A(;mHw+@#0Yphk!vvrf zslzBfgNcFwn2bUgn!Nx59*@NXOkmcAg>cA;B^SW`XoDeyz)x)$G6^ZwVjE#84o5=B zS%kx45w*U^hQT7o`_u+O@RI!?7+Mk+fi1N`1ccT_`{8g);zD==!r~$vL83uFwP8r4 zCB7IE^j~n8CH!GX_yss2pUMhj@TGs_yjd|wi; - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo 2.svg b/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo 2.svg deleted file mode 100644 index d2f7d9948..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo 2.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo.svg b/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo.svg deleted file mode 100644 index d2f7d9948..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/advice_feature_logo.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/advice_feature_logo_svg_7c0e83.imageset/light.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c036664847da151db21c9d9bc5562e2640813c98 GIT binary patch literal 4179 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 YWtJaokjw&Sse!>mK1f~N%!UN}FBI2EDgXcg literal 0 HcmV?d00001 diff --git a/ios/ParentBuddyApp/Images.xcassets/play_icon_svg_96d98d.imageset/Contents.json b/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_b84625.imageset/Contents.json old mode 100755 new mode 100644 similarity index 100% rename from ios/ParentBuddyApp/Images.xcassets/play_icon_svg_96d98d.imageset/Contents.json rename to ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_b84625.imageset/Contents.json diff --git a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_b84625.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_b84625.imageset/light.pdf new file mode 100644 index 0000000000000000000000000000000000000000..01cfc9063db0e0a442d29910ff8c9d4ce4f4c6b5 GIT binary patch literal 1422 zcmah}TWAwO6vaoS4uyg!i25-_ix$y+C7X@5l{VYdSgkQF2n`k1>?9_nS=pUpR4n)? zLPZ5dl==X{7g+tNRzXEnq=;6iRtkzm)FS>UN_}Ffcham|62G#2gt#?Ck89ON8i#oZcx9}(nt|9zQ2<%kJ&piXLD-RdabkK=QgbFz)ddPrcpvo`1l7nCOFGBb}Y4%k3%jesN>E)diQN>Bs#jKbc>jg$(4VSzoL zkvf~9%X!KX-_F4q6Q4%4q!D9&j)5<;cCOc2U^C9++_r0WZf7nrpSQA6KwMp1w{Vz^ zOsIK+=j@)aiz=~TAmA6q+&E1bWv~uU+9XlLW5I=>L)nF8w_9@KD7IsY0u{1_Q-5M! z7o?aIQ$%3Tjq&+7iFGgsC-P8APE6oof^uTK@RyhyhA#)_5%Y1fl#i3;{Muw?0*;zm zJW0&V-(5p|8^{k695M`w$8Ep`Qc(j7%uZmGfQrNAk*J$QbS)xDdPLJ?kD$9eQq%)J e)O1mD>y`Nbkc>_i)l8a^$g3!*w6tceAN>YwbfwDx literal 0 HcmV?d00001 diff --git a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/Contents.json b/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/Contents.json deleted file mode 100644 index 465faf122..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "bebbo_logo_shape1.svg", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "bebbo_logo_shape1 1.svg", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "bebbo_logo_shape1 2.svg", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 1.svg b/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 1.svg deleted file mode 100644 index 038d23cc5..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 1.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 2.svg b/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 2.svg deleted file mode 100644 index 038d23cc5..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1 2.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1.svg b/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1.svg deleted file mode 100644 index 038d23cc5..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape1_svg_c8cf1e.imageset/bebbo_logo_shape1.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape_svg_55f84f.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/bebbo_logo_shape_svg_55f84f.imageset/light.pdf index 963a17bfd93db7311ce92e7cddb0261d716dd800..c89454253ae278533ebfb167b1f448ad82185327 100644 GIT binary patch delta 821 zcmcc3dzyDbA*+Rgp^3@FvIR^g=948DmFuVYW~I9Gv_3Bvz148l>eqD>mZ~{En;P7o zv%hIOHsLG#)y;RyswNdY3@lx>PVd*bi_Dyywhb*0{I)NDeY-THk0|M%*4mwhZz z?Dn41B6t5;f}4Qjw>!bbgQ$eZP2n^uqun+?(d(c@Av1$ z*Zut?Tz_|-{sp`9+t*)Te*XLd`+54j4|N1Y?nHelS;?I)!g%=Al4m-5#ivBKU1_=K zeBnvQ!rP@&&MaPWS3g3)WXJLIacbxPJ!NHGt$MJ_dUiL!6hkG)=`@e5pvY|axu zCNbgGW~07YJcmrCclHQI-CVX++;77oPGy_~HZ2a}tGAU~`i#SJqm%gI_JEUl z&QT}Js`9RJ{$e;eCGYzC>-ztv?kwO`TY8H(Ov>+&^2N1cR(v7HymZaFPWY|O{om}% z{grj$dQYo89j&}eX5C?6Jf`c}m1e4bqVPkRW*75`fF_ge*vCGoYzpC%w1T&>0!R#-QG_Y8?JlpkKTE;@9M{-uh|lh)=vKKKB?uitf~G< z*761Cq@VOZxVQCl$=&E}x6b68R$j)v$YM$0*RJ$c??p=Q1;(72bl>pxhWQEiV}C3( z^-a!SF6E}RvT^Pmi?trEH`nzY+l>n33w>|fI1gdrC|C>;MSg-Wl zbo(9KZ*)0-c(BH1>+3sZ>9Zy5?_ZX@zweI3q=#iLoV>~wI|NrJxQjBatJS^9J>{He z;RFWjo>No5FMLzHciS@IQ<6!)?Zc1lY}9z%W$E>KM~c|Omc_Sn+;8kK?wfVAdf(}@ z*ZH1t-Z)qy^g^GrWEcCE_l&HXP3g~$e!9--x!3+b!?9SU!p-NIr!d+X87dfnfI^-E z7nosSXk>1IA!cZ5i794mF?k_tlAW0`x|D&XxjDL+p@D%BrkIiWWJk7%oJOWxs;aL3 GZd?FV%5!M| delta 837 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 literal 0 HcmV?d00001 diff --git a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/Contents.json b/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/Contents.json deleted file mode 100644 index 23e1b1560..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "camera_profile.svg", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "camera_profile 1.svg", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "camera_profile 2.svg", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 1.svg b/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 1.svg deleted file mode 100644 index 73187256d..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 1.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 2.svg b/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 2.svg deleted file mode 100644 index 73187256d..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile 2.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile.svg b/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile.svg deleted file mode 100644 index 73187256d..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/camera_profile_svg_a1e892.imageset/camera_profile.svg +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/chart_svg_e10e63.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/chart_svg_e10e63.imageset/light.pdf index ed5a0cdd68db48e0da35067e43be24ed01ac4637..87d27751f175144ed02d4dec4cc9b1c225c93791 100644 GIT binary patch delta 1159 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 diff --git a/ios/ParentBuddyApp/Images.xcassets/history_svg_0d5237.imageset/Contents.json b/ios/ParentBuddyApp/Images.xcassets/history_svg_0d5237.imageset/Contents.json new file mode 100644 index 000000000..723f65e33 --- /dev/null +++ b/ios/ParentBuddyApp/Images.xcassets/history_svg_0d5237.imageset/Contents.json @@ -0,0 +1,15 @@ +{ + "images": [ + { + "filename": "light.pdf", + "idiom": "universal" + } + ], + "info": { + "author": "xcode", + "version": 1 + }, + "properties": { + "preserves-vector-representation": true + } +} diff --git a/ios/ParentBuddyApp/Images.xcassets/play_icon_svg_96d98d.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/history_svg_0d5237.imageset/light.pdf old mode 100755 new mode 100644 similarity index 59% rename from ios/ParentBuddyApp/Images.xcassets/play_icon_svg_96d98d.imageset/light.pdf rename to ios/ParentBuddyApp/Images.xcassets/history_svg_0d5237.imageset/light.pdf index 2f414b293a4b39bff17c388970c5832324cb6404..60418518aec5e2611b03c50e34fa496fc65db5c7 GIT binary patch delta 589 zcmcb}b)9>H4wJLvL_J4VLo)?Kvxz11nN18#CyOyE)t?PI+cm{dV9#^SSFCT|{x6A- zO>_*nU|AvHKmYWqGaRRz_U(Hj?S4)E!wSwNmtDidO*B%-s1x%4@6aDJu?~46RQp4_qkhHtm+T z)>bC3$=W%BGv?e~aOB~pCA(5*E-d0dy5vgVQ31~29A(eVI~Jx)UBr=eokyaxNH5bf zHFl$}?Cpr+Zqufcdb6cT&s>7KLh8;lPp;Ci(caSB zT)_YY6!H|fzzhRJ17j0(F#}6OQw%W+OOweGEQ$6OhL#v|=ElaDVx|_DViv}ecd+zx Q8yZ*`a;d7i`nz!f0JI(K8vp)%$_zm96Y@>!x3r6Wnq3 z%-JJp`Ol2^9Q>*OL~%pCUEKaxAHRNJDdlWAW_i>nSaZ?j2o|T0hi9dBx#e^gb*|cQ zrTB)tSX;m9ibTeGGZX!^ud2!ueN&ly-=%8ttg=W=4iotQNdIQ!RSiepMKgSQ&UzmY z@iKbueL~hUY2G9A0K@V-3Cn%UUWJCv=j^UudZO?DK^2jOK}E|&eKaSQ#~k+9tE^-D zRijWiTKXn~`}Xp8cC#n`v0L>@x{6=_|Js&?C(CZhOq5psy(K)pOW=J5pV!&^tbKvz zKiQtWstDhFnrSkly@iR1f&mC9n7XZ)1r?db7 diff --git a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/Contents.json b/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/Contents.json deleted file mode 100644 index 90416b6b4..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "filename" : "history.svg", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "history.svg", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "history 1.svg", - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "author" : "xcode", - "version" : 1 - } -} diff --git a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 1.svg b/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 1.svg deleted file mode 100644 index 494959349..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 1.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 2.svg b/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 2.svg deleted file mode 100644 index 494959349..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history 2.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history.svg b/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history.svg deleted file mode 100644 index 494959349..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/history.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/output.pdf b/ios/ParentBuddyApp/Images.xcassets/history_svg_a0f5bd.imageset/output.pdf deleted file mode 100644 index fcac81c4fd52fe9810d4313bc32c239d8ed8bf38..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1408 zcmbtUU1%Id96$46${G~34~147Yp-0=WM_Bp_C8{Iw0G;pqYb(2wKVi{)VbZc&BoiE zV|FedBBE#>#NtQsNi3udO;I7GMM0=o>60(&Luu(_X+teO`c^2kGr7y1G_^iBEX?eG zfB%{P@Av=Bh6_e+Se0W^`1YMYu1P9T0IAG^(NUNsHA0JZWMOFFIoHBt6fMGHqrw*J z80J0XVE86>of!tyILx^hV9ft#AB%wmhdW3J6+1n@BS9lp{NFypeI zfN7R^b>d^6fn+)zFp7~UEqv{LIw^&eZJEmtPruS%`R&sEF9vq!-hF28OXmKSp@|cp zjg-!R`179J=?gc%JL$>$XOAv*e~?HU687!Z9(=`_NZL~vnPZv%PpCMKg13PX&fFxI zh(4X1_11D%1YYRbeQNv4s}BZ0zWCggoyxh-uUpqYap8NHw|zTyZK?YD>d;r+G(z{m3{nkRO!i8gke*ap8n5o1JCw3wnP2_>$kbp7}M%<@~o2#w4z zRv&?IeturAx;0!S)I&^m{VIVL@#ipQoTiX2m~*tcU6p5;*UEN@|8Ki zs3H6a)C}n5J!w#p1kgkKvLE_sC;!$|VDW2{0){Bt QP)Jo3O$vwKn8-q`rFR{gI)$>cm>Jj z=l%PXF-#|)YHmHbBkF+ErW?>GhbtRoWX7F$W&2DgJHXA#({N)@uBNxl0NtJ%=SKO$ zZz5XwFotLF1}^JxL+tm@3Eb%~#>67-WSGG?{O7rNds!B$iO9EDp58%IIrc(ea8H)6 zj@j4>o!p!$_V6Ty{O+x`@q=lIpTtP!9nk@8-Bpyfumug|RFS-5A;YfjQLQMlo6cl0 z?qvCQ&)Sa&dlP287=^?D+i2jgu;nbY1&E6L5$-#c|gKo);H(@yAM~?4uo9 z29pks9Xrv(b|Pcih1hZkM*CXBr+oBkOea%AYGrQPojm0wuVUr;XXO*8^#d;;c@qB0 zxMU^aGIc}1bwm~8b{VG8Xf>}Jf8Q8APLP{y4z;msh9s(lnmE0FvDP)my#>*bO}EBB zGYjHsXlcllB+j~G*oGeafO_-p6&$f0cw6J9ExcJ02$QJ;O8I9#EeZQ%-v7S-eO7K( zw>fWQCOvHSIYtgO7+GtFHC1IemEKLr66AqLH?^>+@*^H9aXIKIK7dCxXBA7|irtAQ z$jBs9GI83;F3$uM!0$VF^%Xe;d(edTJqOLxJ-3hTCeyREvIfO0%a6(+UP5xrLcX)(; z&-VERo}mFg|04t6e;d5gA%wqnS^t}y+mUIX;iu%nv2fJY#bo<24IX*_$cseVl3cVE zEzE(pqJe4+^+$u+8Sm1ZNKWn5TrRdlaYW*RXv%iTSwg>Ixrshm1jtGjU~nAVB^fIHaM>pZzD^!>0-^a%ozcUnxEM3eEB_PrZjAZA_?Me zo#+r!nLak&22}SKpv2NNeY3#MtJ9PqKR#vMAcHU%B* z#7q3#Ju&nPwKFnU>TD?OkFWrs@5#424$W}!FqdwEQS2^|2Ct^7qUG6IdG8U9^RD@U zyEcy9spoJFsvS{Y)H#efKVx`kNh}g1rzP{3fmnVg+6Rd=(+$n(6-_7^6O5%++*7}% z%Ze&X+o~}CJJrM+^B69aEEr_LpIR6Xi`Tu@29eSf)Qa4~OV?5*g!w!|i}PS{N%|J& zWo?ZOJ7pxjS4+kP=g-lDcqO%Hp8f~?S;4#ufw+XGJZk!w$K9PI=}J7Iepv7dpT^=QngJeB6#Q zinjFPW{A6k-a!;gVXAH!&U0Z3ls$)>k9+Oi4{V-b$fwTo0`xmgiaR9SK>9O18|*va>Iq?!5U$>`CJGB%LvxLh^O+BiC&7bqI+G-l#O3kpu&SS- z{?x62Ub|rW6fVHJ5awX-<2a~Sj$Au6J36)cjcYwQ4m#MIC!PW<_asCzQ}}R3n`l;o zn7X*UW+ftM7m0gIcNe>I=(cPx`QvQhT0dU(JH5>RU5S19o^(qz{7nf2Pq-B|AuOxg zLhTA$oiR;DL(<)ZW?o%<99CK##~t#js0&lx+AXtuZW1U-3D0F}RRnxR$ z5&_I2U6Txn;r&+EJ|*Tz9pfHezhT4|AY#dkxgLTNW(LJ}5fDvjJ+W^~HF9Y^UT2#& zm!n-8($EV#diXsrNyF;Cr^vHWp$2kxZRmx0-=gOw(W?Hj&Be0G+<3M z!e`YmiT6DB(?4RrRcbT`yN<78Ka}th!hN0h=0`ck3Hr43<%~gT=(I%{j0mBxbp}~C zbv1QY4P91{`_PRT$KktHRRV>N{7`gZvD@PL9T$W=>qt+l)*fAfi%;{nlbY?Lr$j(m zbc^Ccta0YWWjD&K{}BVVHZoMIm0i?HNqpJ4eL@p-)n@VW(6WrEs{D~FA9~`-p6A~O9cf5vZZ1+{f1<7^ub)G zwiI;X$?)AIdYoA1&*i>)sAxG?L6kuubp}MHzusvv7R`&EzkmE|57&CiQ2@|UhO5EF zmHs{P0CA50g_4Sr3he()84gwZ!_?uh+$qpqq`ETnk4;VG`kw|<`qR{}=VHNG97^gc M98ywxX8Iie1%r>upa1{> delta 2685 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 delta 2644 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 dEilC_Fs(8*u$cUteIl2IfjO6|s;j>n7XUP diff --git a/ios/ParentBuddyApp/Images.xcassets/ic_file_svg_873adc.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/ic_file_svg_873adc.imageset/light.pdf index 48bc329c27bdc25cfd0f83d87b07bbf51f364e50..72f2b8477c1dc18d6f81ce5b39c8db76c3edcb59 100644 GIT binary patch delta 351 zcmey(`G<2t0gI)AvE{^)g^cEt#TZrUPjfLD^6Yu8{fs?kvPtyq)g1G_K4KS%-yoWD z@cr}>%`T5bqs!-1RyG`r;FM5Y98xuD%W78dzf=8-f;5*XHXG_LIp}idWUpVv1fD?4 z)(s^;#Qw9bEq{J}@0|YMx~J|eGkErC!Ph#mnDnlIkWGr8cWe~oYA#DO5HVVjpAsNx zG25a~*{;mBL__7|YnMs8J+C&;pTO;=n5tqfbw^(Mp2nd7Po^{Xnf~mbRFx@xByNqW zUP;Dt-gScRn>K%7oXTixsbByC3V8}#V1|K#g`pXSn3<(HrkJ_e0gHu#vBkuag^XsC#TZrUy}1q<2;4od`HX4VOqJf3VJ+)QA2T{_b&A$t zJpbN1E5wEEUb@kKj_f0T3}yv$GF3HK@=pA*Q9IReGViM98D@bAO0h>h#N#}sm|I2c z_Wfb@U(EFQ!@~ZbF8;_o#ilN(@WhFSgptv3vM8fU{S?nE8Ak!v@0DFU9NLrRwjEorb?-+;F8>R;22Atsr-bcX zx+&%2g_M7bHW}6J`N6}&BF@HSdL!@g^#`hN|KEOl|LuB1@$Cy+Z#fj$hGnfNko{8r zv9_jdzJ7e2^9}>_fR5l%gAzQV-RahCQBkiKj~~@sI)cmPbATIh_4$X+9fD z-{-#hE`Bsh{f+9h28pO`We485m~<$!SF2x$nSOk7u^Q&@qN0kHNSyJ@4%1n?E0Re~cvXAS z2HyNHTXq-78XBJ8@^{6mB14Wt+q_Qxt?9bdXck;-S(9Ke;GFmvrK2SGqSK$ zFaQCCJOwT=!@$tk#0*2s$jBU1%wX~h)?_VXLkt-M6H`nvbA!o=Y{HW}*d}rrTN-nz Ks=E5SaRC6lw~0#t delta 884 zcmeC@Tg)w-$a&s&iQVs}A_`Ljv zaor`CE`y5vUD+3MHbv;%W1q)RWYrdlo#FKTyBTetVovZqyRt)yIpMx^hC3w>$Gy4zIuS?17~6=_#h)>!085 ze|!0P`n~^E_gbEvJ7%(a!o0wQbd$&lJohXtg(ghiEcV_nZSrrA3kh?B%XQ|6FIf0H z*V&5MV6}3|^s@Mi5{H-Cvl^L6Cp7Iivb90g(~TobX*%%{ifA~3D@uFq#c_&Yqi+~iOgSnxBGL?lsvkg^#J4C)HP3IHF&4( zS;3jg+C0OpeoE1n8=t`Fq-b6BFsH zWbrz4DUS2go(WH#Paj%#G|n+{?xWn(iwxrXCUz=C#7wJOaOy_=W>2XHnY=+p9j6y` zSmf7O+wdEC{&0Tz;i}#dalz@Eq-T|LT{GYJf#Ff@5zAj6M3;%XAK;!dZ&ep_gZsxd ztqZ$EZtuQ4OO$&xC-2dFvjS`df4pO}thyyzac5B~Us8WS=u-~Xf~ciW1nXT67DV-~ z`>t~@F>BHE2Os{QS=Oud{%O4Yl?M+}8w?J=5Ybb7`Lgl)44wHAS;xzsyx5tkym4Eo zo`}h-0_o^`r!%bAEaE*G{q)1EojxL&AJ-cc{cndGk1TynVTLfc5(8y z98J^bOtw!q=o@0y7K@jm^w3#EeYLF~y7~Utvua lGd0AJF)%ZooX93DVt^rIXgIlqZ6cS6p)r@Ls;j>n7XV6`n+X5_ diff --git a/ios/ParentBuddyApp/Images.xcassets/ic_growth_color_svg_532ea2.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/ic_growth_color_svg_532ea2.imageset/light.pdf index f26c2074cda36e1d2940bd615954c6a76a939ba2..e1a1b283d125ae16b194652cc65f505bd3ecc688 100644 GIT binary patch delta 2086 zcmZX}c{~%0AHeZ6=CNEMa>NL++}A8??!=~qxqgdsq@20UHGT+r%rT5~phk|6BiBSy zOqhD+&do%_G$xJu_5A+r`^WeDdA+|MCF&#^#JB*4Fc?9COA+@0uLu<+PdKj#@edO% zzWJ#wH0?LajWX*5!lku<%zf$n{9^lC!wj(nZD7$BUd`G&r_2)=*tW>dF!&4!3YN<@ zmZg>c{58|RM>Uo`_|X59p1pr~jkWfD=j*cZ%=W&L#KIb1`Hxf~TRE<9xnG(>h+I3K ziA_S=F@MC-BF>}x@L*;}^ViSy{>@DmpiD|Us<5}r!U>x4DdFQ$Qovsc@Zh@vPv#SF zhs=L`r+@Arn3@4oq3Gka9r5tXVrA)aqp@j!KP2-z(xUwvcsu$k?hBi?DBC2iV5GjF z+XI5LfrLUg=>YpMSMy@ER%DywusM(+AUY8rZ)Ri3PtE7K zEYDk!AQY<3c~m31n_yP#NRnT9%}j|zt9Kj^nLb|qnu+!@A;;&L2)BR5haMcoCPz!3 z*WqE4lYq>hFG7j%aljzK>z7k|*fFmF5$=0F6P;H^h2gm|n_z2Zj**o*ZS=kZ=g5_U zu6-j?S6MBV_=l zw%ZHw%9bHSDa&}+Wo2HwpV5FPM?EWT{?7_#fQzmn^;KR*I2SssuVQ+`Ot-`#XGmLN zy9_pa3Nhfim^_GGOJ=L$TP{0%4!cH`sRXv|j?6fRR|>)m$klMAw2gWdTyU*n0W^`A zUx_6d!`QJZS0&}^`>nA?%_{Xtd)07Kq6&0X>7g#g7JE?o#S+UG+NG*loEhWbewG$A zh;&&hCv#JtsAx(Gc0=lSf-=9c?NKQa-q+^HOvb`$PSdic>7yS-_J%FZ&pLZ~VY={Z zuoYZJdmfZ6Eq~X3cHrcjB}d%#UW<>!9|<(&ur zSKlK_pwGUO=Z5-G}NMttUVG zPVHX61@?ZpletxX&@Czp5sO*Rtf((iCJT}c7RwSZ;$ZAfRJ04&2>X}`Y`zlB_dc-q z?Q!}(pAfQei;|MY(^n@dE8f#~HTwCDkSEMMJM!=9iF?Gf<656eNz3yPn&8vK_DA$e zlZyEK2QDnyo~X3GgYbS(J6>7=W1wz6n4*U}e+T>CI|o^NBs9HdSg0@@a@F!tC|r8s zlTj1y8(mx?$u9OCLPExUiO67;Xyb3Zw*;s{9@KcV`WcmBUr2jAZ=5(7PLU?6upSAHMA*In+LVO2R2^J9o$Ep_%mqB7?Y(|LNZ-!zjGXVKy|<_l`7 zkEeGQEhHCH5Zeq}cKfrp39Zzo^V@73)?ihXgAx7`^rSViZDy?tsmvh*n&Ka)x4AIb z?d$0oTJ!FgEXx^YCmqg=A&n!5X!UZ0&5MuupZ{5HgkB11-JEuu_j_EK_fwUHf!sK| zqD4(T=FB21MM0^Ak#ltHoaEKvFu~E^b&Jyn-&P!=W36tn4lx}?Yip*NIBWtiQkzP( z5N92tVzsHf#sn{RLy>u_IUxE>Gz z@(J<|3lH_V8Q4VqD}&2e52^#!`gg!VV9@_VOGjS^_J`?dYyDxmhA;vV;7p_Ljv?f4oDwr08&!2ym|@rKla-5mjD0& delta 2108 zcmZY7YdjN*AII@#NTe`#BdNI!jhXDya$F|W5TX;gFCmwaHYF31TU$sGo64nxNhGvG zZZTn6l2&c*JLI}WMD_ol^YHY0^n1O(Pd`kxH)>Cm0YD_&GEWV#pW+k=Mk=trLFa&G z@MbYe{bdM;prcDxwXyP-S>80Ta8k_+_AbTtD%@M7KHeWI=jk~Vu>9@n@`1aPvtJfA zZ%97=1u!|>CRl&{-g}A`@-uzw1NLY0kNAX-c-67`WW%3R`f;yAVK(6+VyZI<$SPe~%0;Tt)V%}y<@k!vJBNc}vh>zB|rwr%=L%gbqU{P&BS z>$BIWZGMrX5PG`~zw`RviWnq~;M00fC=2PkWoJisSyQl9%R2)&Kj>zN!x6U=v?TlA zOn!We_ZI<3uwtKJ_#dVaU+TERp(yT{Nr9cx-9vW8)W9mQI~3CtcK-2!#>lR7=^1*V zwd$+PvYB@(5|h+w@pbC+vjWK?8WjGQp4Xb@vJb#ZyU+ySzG@!@98Nc=cQH)JL04=m z(++Mn;_)D+&;d=G0iQ?M41)1+40z`=sXF`vu5m5~QNr3Aba~@Jv#oK$s2RKFAfVeIg#v>raz!`DzMU?J{z zBG`(rtuA*W)*d1%?=%#SoINsM%0JSw+iV7gd{sy>-HQU%`c__Dz9wT=v`f3uL&EP2 zhPm~1E*orB7W)=jsZRO7LWM+^yG}}$i&U^nC4e1)!hw{p2S`E>zk6Ftz)I$ zJ69`F$ZVc*1vhBXVg?{8AV$869eOpy@u|Hh1Q1#9+-hg!1?$3Fxx3nl+2r&g@ZwHCcHuZQ|I##cp^w&lq%Z2suwrRgQaOo1@g1jg z3~2H+i`_vS4e`GIaMhG}d2)I@gZ35uv30w6nT*~bd-Q)9>cRjf`!Fts!J`E|FwTB0 z@w)A@oLIeq7^D-z?79)3JJeuK3%Fo=YHO@T5TFyHPH%y^h#2}at8R}{PX-4vtials z2n$pqF>KlH8m!6k8oJXfhGJRmR_WEsW&SA0Ec@ZQTXKzQCOp?VW@qY}XSEhg|9N{$tA#UVDg1ov)=OlR{zzQg ziVrL^&J@R*xz&zhUsJX%&!WgpOBfUM+7@AHHG~dnuzO};X6w_b6BZc)5HhIjN>0C-{5Qo3xdiqN7@AD-=U+LuFiIM8{-k)(0;N z0N$FF97E5G;un-4C0;hKh1p|i9xVw}Qel`=n!xw8!_mL(iR?|!LnH3!n!sr6bGJ>s zAwu3N$JFpQG$T2srKI27~ z67joP pSms@j4a8a^f150<;J=%-^=}3@hvzBF-ITR5Hy7 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 Q5|0KPi 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 am+Z1k5Dgf?f&{UuHOd;To75&gFQ z`0aA*ee!V|&K?j6@?JIP?$u3hPHL`d8&_GfdW)=^ccvgu{Dyqm!S#|lCjy(8>X$ce z6)H|SpV2x)d-np#r&3C7Qdi=&IwK1XvSo!hIWq|d7wSLMXiYJ=9u@FMP3r2w=&O~F z&n;ff*0U(2d2&jOMQg~-y?l{NgSgxev912vce4HKtw+ns6o)`8xHI&!y z184sK+Rg;~+qvFKFT0v9A9%H-g6(l%wFRsFlHWfWH#;%SV6-!~R4@Pmg**i=FvGyW x!qN;w%-q}@Q_R$CvII-Ats#btsii4~n3<6QrkIK82qTlZ(PS}3m3r?iW<#F4zeRRAh}7C_+p62T=C&_?!XuvlV zXYSHCG)d>T?O%x#smIqTIoh^*KQO(rm0fP#^b2!>JI3KlPs|Zm745 z+yCn0*AFbEoGr&JkNN~_E}9&{;`H(Gtkf>IoX(=oRU57p-;ft;>sMWo$Y^F#ub=i+ zRe7RsDwFTKR4txW7OBZ$0{1ZmOA)DW;gI!Q{;>6FDrnR8?L5-M9cg CPM!P! diff --git a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/Contents.json b/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/Contents.json index cf8f3cd69..723f65e33 100644 --- a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/Contents.json +++ b/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/Contents.json @@ -1,23 +1,15 @@ { - "images" : [ + "images": [ { - "filename" : "tools_features_logo.svg", - "idiom" : "universal", - "scale" : "1x" - }, - { - "filename" : "tools_features_logo 1.svg", - "idiom" : "universal", - "scale" : "2x" - }, - { - "filename" : "tools_features_logo 2.svg", - "idiom" : "universal", - "scale" : "3x" + "filename": "light.pdf", + "idiom": "universal" } ], - "info" : { - "author" : "xcode", - "version" : 1 + "info": { + "author": "xcode", + "version": 1 + }, + "properties": { + "preserves-vector-representation": true } } diff --git a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/light.pdf b/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/light.pdf new file mode 100644 index 0000000000000000000000000000000000000000..04f6d2d6e4b44026f9512268c7b69a9c07ba085a GIT binary patch literal 3300 zcmd5LSwe-ZtRO7dhtNWhZ>S@al+7pU ze%TZz961T8uyiXnp+0GQ$|RG~Xg0We`(s=jB6CFExHLXTz90x96L+Zw0+DTP`Qfl9 zVaue0&t~92z!!x`U2$OY8UY$C3_%50Fn1?JwgVD-ER4s+*iN<(*%`(KB9Q7T*cS~H zVni@xHYVhY1YArA6DhDEvI`dMhi`|?XuvNo5XS^C*)b4Q$R6YJeWW%*T!5iLQ1}VM zI~GtBMctucIQMxsOyi!(ou1RCZ98PWAV#5yY!e(>*xBg;#jezReXp5PP`(iAD$`z9 zeLwcf(Y|`@&`-bFnSU69?OEx`Bo!5XCj-sjh|-VkKHdbXT$R3*7vyIHgOY&G5ruJu z$!?%fXdtMcD=G{aFNupNh!@Nk@^DZPCm1102hy~)8?7Q`vrJoPlN^3=^}jnwpJej? z&`E^IVWO1?g=+TgW@fEhl{}B7+T3S?Pu(<>*sQEj;&%C6Yo&tkR7FzzkaEtk#*lpH zlC-AV+9ru>v(mfrW_a>T>u%=tbv?Ylb$Gb#wr3f_7aQHCWmq@%Y%DyrANup*$)OuD z8O5QRq=xM~(vu2y&FL0xs(;jI6Z;`;p!RNdadX${;Wx#3pT(Av-p)bMp3=R=dy9q# zy|kLIHAHQz%UP6Ez9Y)XKuK6ok+7yv(#B3G( zNHwcIZl_tC?y>0T1k+Qv>m`4sI{$!I8XKeMFPN5TecTn2plhcz7$6@%{VvQdGUAx3 z+SF_fz3{AalSbq~wAun|E#j{u4l9ZfQ=4vE;IAIc)o8rheZ27}a;bLETZJ)MP z$@ezmErx5ax9VDXCPn=06<`0oU|@kE_h0*InR8x5At}pOz1Vf&vNA7f7AJMxP$RpbgzQQ!fUyAme00s=+>{_`cJq1x^3ct zci+*B5&aPgsY&nOk*S=8*VHOimrd7K_O3m8RjpESOM8p5_r7Sm8~qAt8{2IVW~!G_N*Kjx_Up)%Gf5$}d`J!z!JrIC;cOu~-k>{4GDXweB2T zOu{N859uCSN!ig0;@{k{R#;Je$3~$u&V8E0@qS(7r~}?}jib2z53Lob)ydIQ*F5hx zVzUP%?oqK-z3yd{WxXmP?8wL2vkW9x+bSpYf#EIj}{q_n(xmF!!9}IeUx- zM}qXj)GJf+w{6&UGc~iPimzi(c&2XpPHxQn4NrWXKesP?fm}~NN!gdbR^^fjT%Ev< z@E@_(=`9+bx#4`lNw>_}Y|H3`$04p7FaB~Te}nEOmrvi(!5=$vL+{1&A@UEa>?y|->!!1;@}7!vXJ0rdBtV?G^q zeHHQIq_do+!k(v>3|e9uN0bj9_FhbO3*D&tvNSEDm$W*5Ud2nL%3nh?-VGfVt0~6C zS?S)la67PhXbY!RCSb0RZtJ00xH%fCR^kE9S#Pr#CjZ-Jp_C%2g6}cGJtLXXIMB6lbwTrSKG0t-PqF^K%eaS zjKBoM6CoimLLdkD`ZfNN$1ryEKnKW7oZT|WOawe0&lnm~>C|tZph2te2H%3!OT_E% zeWxg{$S=E|*v^^xDoa1=!8!JcMfr{5yuiEV&Ljnm+-Yc%N3I;Nam9$=DCqt)@lEToXVcvF;b<@1#O#R^Al!@Lqx%TIH*KDONLh5f9# z>+oL}{Hsb-I&xeLMoY)* z2QOSQ@ZImV;y-=5u~#x9;!R|y+5P2iaRCqH=LH#Wr7`HkGlUCzP2e3;0b7)ED%*wd2h%fPrkD3?a_;i4#$h4|1}G+!2&b<~GSWB6FX-&T>% Wf)GaqxO5DtEG7doG<0xxg#H5|8liar literal 0 HcmV?d00001 diff --git a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 1.svg b/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 1.svg deleted file mode 100644 index eae30901e..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 1.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 2.svg b/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 2.svg deleted file mode 100644 index eae30901e..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo 2.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo.svg b/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo.svg deleted file mode 100644 index eae30901e..000000000 --- a/ios/ParentBuddyApp/Images.xcassets/tools_features_logo_svg_41c195.imageset/tools_features_logo.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/ios/ParentBuddyApp/Info.plist b/ios/ParentBuddyApp/Info.plist index 195e4d74f..a58380aa9 100644 --- a/ios/ParentBuddyApp/Info.plist +++ b/ios/ParentBuddyApp/Info.plist @@ -13,7 +13,7 @@ CFBundleInfoDictionaryVersion 6.0 CFBundleName - $(PRODUCT_NAME) + Bebbo CFBundlePackageType APPL CFBundleShortVersionString @@ -126,5 +126,7 @@ UIViewControllerBasedStatusBarAppearance + ITSAppUsesNonExemptEncryption + diff --git a/package-lock.json b/package-lock.json index 6ace8d50a..eadc6c431 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,7 +46,7 @@ "lottie-react-native": "^5.1.6", "luxon": "^3.4.3", "minisearch": "^6.3.0", - "npm": "^9.6.7", + "npm": "^10.8.2", "patch-package": "^8.0.0", "path-browserify": "^1.0.1", "react": "^18.2.0", @@ -3897,19 +3897,19 @@ } }, "node_modules/@react-native-community/cli": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-11.3.10.tgz", - "integrity": "sha512-bIx0t5s9ewH1PlcEcuQUD+UnVrCjPGAfjhVR5Gew565X60nE+GTIHRn70nMv9G4he/amBF+Z+vf5t8SNZEWMwg==", - "dependencies": { - "@react-native-community/cli-clean": "11.3.10", - "@react-native-community/cli-config": "11.3.10", - "@react-native-community/cli-debugger-ui": "11.3.10", - "@react-native-community/cli-doctor": "11.3.10", - "@react-native-community/cli-hermes": "11.3.10", - "@react-native-community/cli-plugin-metro": "11.3.10", - "@react-native-community/cli-server-api": "11.3.10", - "@react-native-community/cli-tools": "11.3.10", - "@react-native-community/cli-types": "11.3.10", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli/-/cli-11.4.1.tgz", + "integrity": "sha512-NdAageVMtNhtvRsrq4NgJf5Ey2nA1CqmLvn7PhSawg+aIzMKmZuzWxGVwr9CoPGyjvNiqJlCWrLGR7NzOyi/sA==", + "dependencies": { + "@react-native-community/cli-clean": "11.4.1", + "@react-native-community/cli-config": "11.4.1", + "@react-native-community/cli-debugger-ui": "11.4.1", + "@react-native-community/cli-doctor": "11.4.1", + "@react-native-community/cli-hermes": "11.4.1", + "@react-native-community/cli-plugin-metro": "11.4.1", + "@react-native-community/cli-server-api": "11.4.1", + "@react-native-community/cli-tools": "11.4.1", + "@react-native-community/cli-types": "11.4.1", "chalk": "^4.1.2", "commander": "^9.4.1", "execa": "^5.0.0", @@ -3927,11 +3927,11 @@ } }, "node_modules/@react-native-community/cli-clean": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-clean/-/cli-clean-11.3.10.tgz", - "integrity": "sha512-g6QjW+DSqoWRHzmIQW3AH22k1AnynWuOdy2YPwYEGgPddTeXZtJphIpEVwDOiC0L4mZv2VmiX33/cGNUwO0cIA==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-clean/-/cli-clean-11.4.1.tgz", + "integrity": "sha512-cwUbY3c70oBGv3FvQJWe2Qkq6m1+/dcEBonMDTYyH6i+6OrkzI4RkIGpWmbG1IS5JfE9ISUZkNL3946sxyWNkw==", "dependencies": { - "@react-native-community/cli-tools": "11.3.10", + "@react-native-community/cli-tools": "11.4.1", "chalk": "^4.1.2", "execa": "^5.0.0", "prompts": "^2.4.0" @@ -4002,11 +4002,11 @@ } }, "node_modules/@react-native-community/cli-config": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-config/-/cli-config-11.3.10.tgz", - "integrity": "sha512-YYu14nm1JYLS6mDRBz78+zDdSFudLBFpPkhkOoj4LuBhNForQBIqFFHzQbd9/gcguJxfW3vlYSnudfaUI7oGLg==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-config/-/cli-config-11.4.1.tgz", + "integrity": "sha512-sLdv1HFVqu5xNpeaR1+std0t7FFZaobpmpR0lFCOzKV7H/l611qS2Vo8zssmMK+oQbCs5JsX3SFPciODeIlaWA==", "dependencies": { - "@react-native-community/cli-tools": "11.3.10", + "@react-native-community/cli-tools": "11.4.1", "chalk": "^4.1.2", "cosmiconfig": "^5.1.0", "deepmerge": "^4.3.0", @@ -4079,28 +4079,27 @@ } }, "node_modules/@react-native-community/cli-debugger-ui": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-11.3.10.tgz", - "integrity": "sha512-kyitGV3RsjlXIioq9lsuawha2GUBPCTAyXV6EBlm3qlyF3dMniB3twEvz+fIOid/e1ZeucH3Tzy5G3qcP8yWoA==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-11.4.1.tgz", + "integrity": "sha512-+pgIjGNW5TrJF37XG3djIOzP+WNoPp67to/ggDhrshuYgpymfb9XpDVsURJugy0Sy3RViqb83kQNK765QzTIvw==", "dependencies": { "serve-static": "^1.13.1" } }, "node_modules/@react-native-community/cli-doctor": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-doctor/-/cli-doctor-11.3.10.tgz", - "integrity": "sha512-DpMsfCWKZ15L9nFK/SyDvpl5v6MjV+arMHMC1i8kR+DOmf2xWmp/pgMywKk0/u50yGB9GwxBHt3i/S/IMK5Ylg==", - "dependencies": { - "@react-native-community/cli-config": "11.3.10", - "@react-native-community/cli-platform-android": "11.3.10", - "@react-native-community/cli-platform-ios": "11.3.10", - "@react-native-community/cli-tools": "11.3.10", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-doctor/-/cli-doctor-11.4.1.tgz", + "integrity": "sha512-O6oPiRsl8pdkcyNktpzvJAXUqdocoY4jh7Tt7wA69B1JKCJA7aPCecwJgpUZb63ZYoxOtRtYM3BYQKzRMLIuUw==", + "dependencies": { + "@react-native-community/cli-config": "11.4.1", + "@react-native-community/cli-platform-android": "11.4.1", + "@react-native-community/cli-platform-ios": "11.4.1", + "@react-native-community/cli-tools": "11.4.1", "chalk": "^4.1.2", "command-exists": "^1.2.8", "envinfo": "^7.7.2", "execa": "^5.0.0", "hermes-profile-transformer": "^0.0.6", - "ip": "^1.1.5", "node-stream-zip": "^1.9.1", "ora": "^5.4.1", "prompts": "^2.4.0", @@ -4172,24 +4171,10 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@react-native-community/cli-doctor/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "bin": { "semver": "bin/semver.js" }, @@ -4219,21 +4204,15 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli-doctor/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@react-native-community/cli-hermes": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-hermes/-/cli-hermes-11.3.10.tgz", - "integrity": "sha512-vqINuzAlcHS9ImNwJtT43N7kfBQ7ro9A8O1Gpc5TQ0A8V36yGG8eoCHeauayklVVgMZpZL6f6mcoLLr9IOgBZQ==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-hermes/-/cli-hermes-11.4.1.tgz", + "integrity": "sha512-1VAjwcmv+i9BJTMMVn5Grw7AcgURhTyfHVghJ1YgBE2euEJxPuqPKSxP54wBOQKnWUwsuDQAtQf+jPJoCxJSSA==", "dependencies": { - "@react-native-community/cli-platform-android": "11.3.10", - "@react-native-community/cli-tools": "11.3.10", + "@react-native-community/cli-platform-android": "11.4.1", + "@react-native-community/cli-tools": "11.4.1", "chalk": "^4.1.2", - "hermes-profile-transformer": "^0.0.6", - "ip": "^1.1.5" + "hermes-profile-transformer": "^0.0.6" } }, "node_modules/@react-native-community/cli-hermes/node_modules/ansi-styles": { @@ -4301,11 +4280,11 @@ } }, "node_modules/@react-native-community/cli-platform-android": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-11.3.10.tgz", - "integrity": "sha512-RGu9KuDIXnrcNkacSHj5ETTQtp/D/835L6veE2jMigO21p//gnKAjw3AVLCysGr8YXYfThF8OSOALrwNc94puQ==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-android/-/cli-platform-android-11.4.1.tgz", + "integrity": "sha512-VMmXWIzk0Dq5RAd+HIEa3Oe7xl2jso7+gOr6E2HALF4A3fCKUjKZQ6iK2t6AfnY04zftvaiKw6zUXtrfl52AVQ==", "dependencies": { - "@react-native-community/cli-tools": "11.3.10", + "@react-native-community/cli-tools": "11.4.1", "chalk": "^4.1.2", "execa": "^5.0.0", "glob": "^7.1.3", @@ -4377,11 +4356,11 @@ } }, "node_modules/@react-native-community/cli-platform-ios": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-11.3.10.tgz", - "integrity": "sha512-JjduMrBM567/j4Hvjsff77dGSLMA0+p9rr0nShlgnKPcc+0J4TDy0hgWpUceM7OG00AdDjpetAPupz0kkAh4cQ==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-platform-ios/-/cli-platform-ios-11.4.1.tgz", + "integrity": "sha512-RPhwn+q3IY9MpWc9w/Qmzv03mo8sXdah2eSZcECgweqD5SHWtOoRCUt11zM8jASpAQ8Tm5Je7YE9bHvdwGl4hA==", "dependencies": { - "@react-native-community/cli-tools": "11.3.10", + "@react-native-community/cli-tools": "11.4.1", "chalk": "^4.1.2", "execa": "^5.0.0", "fast-xml-parser": "^4.0.12", @@ -4454,20 +4433,20 @@ } }, "node_modules/@react-native-community/cli-plugin-metro": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-11.3.10.tgz", - "integrity": "sha512-ZYAc5Hc+QVqJgj1XFbpKnIPbSJ9xKcBnfQrRhR+jFyt2DWx85u4bbzY1GSVc/USs0UbSUXv4dqPbnmOJz52EYQ==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-11.4.1.tgz", + "integrity": "sha512-JxbIqknYcQ5Z4rWROtu5LNakLfMiKoWcMoPqIrBLrV5ILm1XUJj1/8fATCcotZqV3yzB3SCJ3RrhKx7dQ3YELw==", "dependencies": { - "@react-native-community/cli-server-api": "11.3.10", - "@react-native-community/cli-tools": "11.3.10", + "@react-native-community/cli-server-api": "11.4.1", + "@react-native-community/cli-tools": "11.4.1", "chalk": "^4.1.2", "execa": "^5.0.0", - "metro": "0.76.8", - "metro-config": "0.76.8", - "metro-core": "0.76.8", - "metro-react-native-babel-transformer": "0.76.8", - "metro-resolver": "0.76.8", - "metro-runtime": "0.76.8", + "metro": "^0.76.9", + "metro-config": "^0.76.9", + "metro-core": "^0.76.9", + "metro-react-native-babel-transformer": "^0.76.9", + "metro-resolver": "^0.76.9", + "metro-runtime": "^0.76.9", "readline": "^1.3.0" } }, @@ -4639,9 +4618,9 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro/-/metro-0.76.8.tgz", - "integrity": "sha512-oQA3gLzrrYv3qKtuWArMgHPbHu8odZOD9AoavrqSFllkPgOtmkBvNNDLCELqv5SjBfqjISNffypg+5UGG3y0pg==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro/-/metro-0.76.9.tgz", + "integrity": "sha512-gcjcfs0l5qIPg0lc5P7pj0x7vPJ97tan+OnEjiYLbKjR1D7Oa78CE93YUPyymUPH6q7VzlzMm1UjT35waEkZUw==", "dependencies": { "@babel/code-frame": "^7.0.0", "@babel/core": "^7.20.0", @@ -4665,22 +4644,21 @@ "jest-worker": "^27.2.0", "jsc-safe-url": "^0.2.2", "lodash.throttle": "^4.1.1", - "metro-babel-transformer": "0.76.8", - "metro-cache": "0.76.8", - "metro-cache-key": "0.76.8", - "metro-config": "0.76.8", - "metro-core": "0.76.8", - "metro-file-map": "0.76.8", - "metro-inspector-proxy": "0.76.8", - "metro-minify-terser": "0.76.8", - "metro-minify-uglify": "0.76.8", - "metro-react-native-babel-preset": "0.76.8", - "metro-resolver": "0.76.8", - "metro-runtime": "0.76.8", - "metro-source-map": "0.76.8", - "metro-symbolicate": "0.76.8", - "metro-transform-plugins": "0.76.8", - "metro-transform-worker": "0.76.8", + "metro-babel-transformer": "0.76.9", + "metro-cache": "0.76.9", + "metro-cache-key": "0.76.9", + "metro-config": "0.76.9", + "metro-core": "0.76.9", + "metro-file-map": "0.76.9", + "metro-inspector-proxy": "0.76.9", + "metro-minify-uglify": "0.76.9", + "metro-react-native-babel-preset": "0.76.9", + "metro-resolver": "0.76.9", + "metro-runtime": "0.76.9", + "metro-source-map": "0.76.9", + "metro-symbolicate": "0.76.9", + "metro-transform-plugins": "0.76.9", + "metro-transform-worker": "0.76.9", "mime-types": "^2.1.27", "node-fetch": "^2.2.0", "nullthrows": "^1.1.1", @@ -4700,9 +4678,9 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-babel-transformer": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.76.8.tgz", - "integrity": "sha512-Hh6PW34Ug/nShlBGxkwQJSgPGAzSJ9FwQXhUImkzdsDgVu6zj5bx258J8cJVSandjNoQ8nbaHK6CaHlnbZKbyA==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-babel-transformer/-/metro-babel-transformer-0.76.9.tgz", + "integrity": "sha512-dAnAmBqRdTwTPVn4W4JrowPolxD1MDbuU97u3MqtWZgVRvDpmr+Cqnn5oSxLQk3Uc+Zy3wkqVrB/zXNRlLDSAQ==", "dependencies": { "@babel/core": "^7.20.0", "hermes-parser": "0.12.0", @@ -4713,11 +4691,11 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-cache": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.76.8.tgz", - "integrity": "sha512-QBJSJIVNH7Hc/Yo6br/U/qQDUpiUdRgZ2ZBJmvAbmAKp2XDzsapnMwK/3BGj8JNWJF7OLrqrYHsRsukSbUBpvQ==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-cache/-/metro-cache-0.76.9.tgz", + "integrity": "sha512-W6QFEU5AJG1gH4Ltv8S2IvhmEhSDYnbPafyj5fGR3YLysdykj+olKv9B0V+YQXtcLGyY5CqpXLYUx595GdiKzA==", "dependencies": { - "metro-core": "0.76.8", + "metro-core": "0.76.9", "rimraf": "^3.0.2" }, "engines": { @@ -4725,46 +4703,46 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-cache-key": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.76.8.tgz", - "integrity": "sha512-buKQ5xentPig9G6T37Ww/R/bC+/V1MA5xU/D8zjnhlelsrPG6w6LtHUS61ID3zZcMZqYaELWk5UIadIdDsaaLw==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-cache-key/-/metro-cache-key-0.76.9.tgz", + "integrity": "sha512-ugJuYBLngHVh1t2Jj+uP9pSCQl7enzVXkuh6+N3l0FETfqjgOaSHlcnIhMPn6yueGsjmkiIfxQU4fyFVXRtSTw==", "engines": { "node": ">=16" } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-config": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.76.8.tgz", - "integrity": "sha512-SL1lfKB0qGHALcAk2zBqVgQZpazDYvYFGwCK1ikz0S6Y/CM2i2/HwuZN31kpX6z3mqjv/6KvlzaKoTb1otuSAA==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-config/-/metro-config-0.76.9.tgz", + "integrity": "sha512-oYyJ16PY3rprsfoi80L+gDJhFJqsKI3Pob5LKQbJpvL+gGr8qfZe1eQzYp5Xxxk9DOHKBV1xD94NB8GdT/DA8Q==", "dependencies": { "connect": "^3.6.5", "cosmiconfig": "^5.0.5", "jest-validate": "^29.2.1", - "metro": "0.76.8", - "metro-cache": "0.76.8", - "metro-core": "0.76.8", - "metro-runtime": "0.76.8" + "metro": "0.76.9", + "metro-cache": "0.76.9", + "metro-core": "0.76.9", + "metro-runtime": "0.76.9" }, "engines": { "node": ">=16" } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-core": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.76.8.tgz", - "integrity": "sha512-sl2QLFI3d1b1XUUGxwzw/KbaXXU/bvFYrSKz6Sg19AdYGWFyzsgZ1VISRIDf+HWm4R/TJXluhWMEkEtZuqi3qA==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-core/-/metro-core-0.76.9.tgz", + "integrity": "sha512-DSeEr43Wrd5Q7ySfRzYzDwfV89g2OZTQDf1s3exOcLjE5fb7awoLOkA2h46ZzN8NcmbbM0cuJy6hOwF073/yRQ==", "dependencies": { "lodash.throttle": "^4.1.1", - "metro-resolver": "0.76.8" + "metro-resolver": "0.76.9" }, "engines": { "node": ">=16" } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-file-map": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.76.8.tgz", - "integrity": "sha512-A/xP1YNEVwO1SUV9/YYo6/Y1MmzhL4ZnVgcJC3VmHp/BYVOXVStzgVbWv2wILe56IIMkfXU+jpXrGKKYhFyHVw==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-file-map/-/metro-file-map-0.76.9.tgz", + "integrity": "sha512-7vJd8kksMDTO/0fbf3081bTrlw8SLiploeDf+vkkf0OwlrtDUWPOikfebp+MpZB2S61kamKjCNRfRkgrbPfSwg==", "dependencies": { "anymatch": "^3.0.3", "debug": "^2.2.0", @@ -4787,9 +4765,9 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-minify-terser": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.76.8.tgz", - "integrity": "sha512-Orbvg18qXHCrSj1KbaeSDVYRy/gkro2PC7Fy2tDSH1c9RB4aH8tuMOIXnKJE+1SXxBtjWmQ5Yirwkth2DyyEZA==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-minify-terser/-/metro-minify-terser-0.76.9.tgz", + "integrity": "sha512-ju2nUXTKvh96vHPoGZH/INhSvRRKM14CbGAJXQ98+g8K5z1v3luYJ/7+dFQB202eVzJdTB2QMtBjI1jUUpooCg==", "dependencies": { "terser": "^5.15.0" }, @@ -4797,18 +4775,70 @@ "node": ">=16" } }, + "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-react-native-babel-preset": { + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.76.9.tgz", + "integrity": "sha512-eCBtW/UkJPDr6HlMgFEGF+964DZsUEF9RGeJdZLKWE7d/0nY3ABZ9ZAGxzu9efQ35EWRox5bDMXUGaOwUe5ikQ==", + "dependencies": { + "@babel/core": "^7.20.0", + "@babel/plugin-proposal-async-generator-functions": "^7.0.0", + "@babel/plugin-proposal-class-properties": "^7.18.0", + "@babel/plugin-proposal-export-default-from": "^7.0.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.0", + "@babel/plugin-proposal-numeric-separator": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.20.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.0.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/plugin-syntax-export-default-from": "^7.0.0", + "@babel/plugin-syntax-flow": "^7.18.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.0.0", + "@babel/plugin-syntax-optional-chaining": "^7.0.0", + "@babel/plugin-transform-arrow-functions": "^7.0.0", + "@babel/plugin-transform-async-to-generator": "^7.20.0", + "@babel/plugin-transform-block-scoping": "^7.0.0", + "@babel/plugin-transform-classes": "^7.0.0", + "@babel/plugin-transform-computed-properties": "^7.0.0", + "@babel/plugin-transform-destructuring": "^7.20.0", + "@babel/plugin-transform-flow-strip-types": "^7.20.0", + "@babel/plugin-transform-function-name": "^7.0.0", + "@babel/plugin-transform-literals": "^7.0.0", + "@babel/plugin-transform-modules-commonjs": "^7.0.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.0.0", + "@babel/plugin-transform-parameters": "^7.0.0", + "@babel/plugin-transform-react-display-name": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.0.0", + "@babel/plugin-transform-react-jsx-self": "^7.0.0", + "@babel/plugin-transform-react-jsx-source": "^7.0.0", + "@babel/plugin-transform-runtime": "^7.0.0", + "@babel/plugin-transform-shorthand-properties": "^7.0.0", + "@babel/plugin-transform-spread": "^7.0.0", + "@babel/plugin-transform-sticky-regex": "^7.0.0", + "@babel/plugin-transform-typescript": "^7.5.0", + "@babel/plugin-transform-unicode-regex": "^7.0.0", + "@babel/template": "^7.0.0", + "babel-plugin-transform-flow-enums": "^0.0.2", + "react-refresh": "^0.4.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@babel/core": "*" + } + }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-resolver": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.76.8.tgz", - "integrity": "sha512-KccOqc10vrzS7ZhG2NSnL2dh3uVydarB7nOhjreQ7C4zyWuiW9XpLC4h47KtGQv3Rnv/NDLJYeDqaJ4/+140HQ==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.76.9.tgz", + "integrity": "sha512-s86ipNRas9vNR5lChzzSheF7HoaQEmzxBLzwFA6/2YcGmUCowcoyPAfs1yPh4cjMw9F1T4KlMLaiwniGE7HCyw==", "engines": { "node": ">=16" } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-runtime": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.76.8.tgz", - "integrity": "sha512-XKahvB+iuYJSCr3QqCpROli4B4zASAYpkK+j3a0CJmokxCDNbgyI4Fp88uIL6rNaZfN0Mv35S0b99SdFXIfHjg==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.76.9.tgz", + "integrity": "sha512-/5vezDpGUtA0Fv6cJg0+i6wB+QeBbvLeaw9cTSG7L76liP0b91f8vOcYzGaUbHI8pznJCCTerxRzpQ8e3/NcDw==", "dependencies": { "@babel/runtime": "^7.0.0", "react-refresh": "^0.4.0" @@ -4818,16 +4848,16 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-source-map": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.76.8.tgz", - "integrity": "sha512-Hh0ncPsHPVf6wXQSqJqB3K9Zbudht4aUtNpNXYXSxH+pteWqGAXnjtPsRAnCsCWl38wL0jYF0rJDdMajUI3BDw==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.76.9.tgz", + "integrity": "sha512-q5qsMlu8EFvsT46wUUh+ao+efDsicT30zmaPATNhq+PcTawDbDgnMuUD+FT0bvxxnisU2PWl91RdzKfNc2qPQA==", "dependencies": { "@babel/traverse": "^7.20.0", "@babel/types": "^7.20.0", "invariant": "^2.2.4", - "metro-symbolicate": "0.76.8", + "metro-symbolicate": "0.76.9", "nullthrows": "^1.1.1", - "ob1": "0.76.8", + "ob1": "0.76.9", "source-map": "^0.5.6", "vlq": "^1.0.0" }, @@ -4836,12 +4866,12 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-symbolicate": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.76.8.tgz", - "integrity": "sha512-LrRL3uy2VkzrIXVlxoPtqb40J6Bf1mlPNmUQewipc3qfKKFgtPHBackqDy1YL0njDsWopCKcfGtFYLn0PTUn3w==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.76.9.tgz", + "integrity": "sha512-Yyq6Ukj/IeWnGST09kRt0sBK8TwzGZWoU7YAcQlh14+AREH454Olx4wbFTpkkhUkV05CzNCvUuXQ0efFxhA1bw==", "dependencies": { "invariant": "^2.2.4", - "metro-source-map": "0.76.8", + "metro-source-map": "0.76.9", "nullthrows": "^1.1.1", "source-map": "^0.5.6", "through2": "^2.0.1", @@ -4855,9 +4885,9 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-transform-plugins": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.76.8.tgz", - "integrity": "sha512-PlkGTQNqS51Bx4vuufSQCdSn2R2rt7korzngo+b5GCkeX5pjinPjnO2kNhQ8l+5bO0iUD/WZ9nsM2PGGKIkWFA==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-transform-plugins/-/metro-transform-plugins-0.76.9.tgz", + "integrity": "sha512-YEQeNlOCt92I7S9A3xbrfaDfwfgcxz9PpD/1eeop3c4cO3z3Q3otYuxw0WJ/rUIW8pZfOm5XCehd+1NRbWlAaw==", "dependencies": { "@babel/core": "^7.20.0", "@babel/generator": "^7.20.0", @@ -4870,21 +4900,22 @@ } }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/metro-transform-worker": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.76.8.tgz", - "integrity": "sha512-mE1fxVAnJKmwwJyDtThildxxos9+DGs9+vTrx2ktSFMEVTtXS/bIv2W6hux1pqivqAfyJpTeACXHk5u2DgGvIQ==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-transform-worker/-/metro-transform-worker-0.76.9.tgz", + "integrity": "sha512-F69A0q0qFdJmP2Clqr6TpTSn4WTV9p5A28h5t9o+mB22ryXBZfUQ6BFBBW/6Wp2k/UtPH+oOsBfV9guiqm3d2Q==", "dependencies": { "@babel/core": "^7.20.0", "@babel/generator": "^7.20.0", "@babel/parser": "^7.20.0", "@babel/types": "^7.20.0", "babel-preset-fbjs": "^3.4.0", - "metro": "0.76.8", - "metro-babel-transformer": "0.76.8", - "metro-cache": "0.76.8", - "metro-cache-key": "0.76.8", - "metro-source-map": "0.76.8", - "metro-transform-plugins": "0.76.8", + "metro": "0.76.9", + "metro-babel-transformer": "0.76.9", + "metro-cache": "0.76.9", + "metro-cache-key": "0.76.9", + "metro-minify-terser": "0.76.9", + "metro-source-map": "0.76.9", + "metro-transform-plugins": "0.76.9", "nullthrows": "^1.1.1" }, "engines": { @@ -4897,9 +4928,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/@react-native-community/cli-plugin-metro/node_modules/ob1": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.76.8.tgz", - "integrity": "sha512-dlBkJJV5M/msj9KYA9upc+nUWVwuOFFTbu28X6kZeGwcuW+JxaHSBZ70SYQnk5M+j5JbNLR6yKHmgW4M5E7X5g==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.76.9.tgz", + "integrity": "sha512-g0I/OLnSxf6OrN3QjSew3bTDJCdbZoWxnh8adh1z36alwCuGF1dgDeRA25bTYSakrG5WULSaWJPOdgnf1O/oQw==", "engines": { "node": ">=16" } @@ -4932,12 +4963,12 @@ } }, "node_modules/@react-native-community/cli-server-api": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-11.3.10.tgz", - "integrity": "sha512-WEwHWIpqx3gA6Da+lrmq8+z78E1XbxxjBlvHAXevhjJj42N4SO417eZiiUVrFzEFVVJSUee9n9aRa0kUR+0/2w==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-server-api/-/cli-server-api-11.4.1.tgz", + "integrity": "sha512-isxXE8X5x+C4kN90yilD08jaLWD34hfqTfn/Xbl1u/igtdTsCaQGvWe9eaFamrpWFWTpVtj6k+vYfy8AtYSiKA==", "dependencies": { - "@react-native-community/cli-debugger-ui": "11.3.10", - "@react-native-community/cli-tools": "11.3.10", + "@react-native-community/cli-debugger-ui": "11.4.1", + "@react-native-community/cli-tools": "11.4.1", "compression": "^1.7.1", "connect": "^3.6.5", "errorhandler": "^1.5.1", @@ -5054,9 +5085,9 @@ } }, "node_modules/@react-native-community/cli-tools": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-11.3.10.tgz", - "integrity": "sha512-4kCuCwVcGagSrNg9vxMNVhynwpByuC/J5UnKGEet3HuqmoDhQW15m18fJXiehA8J+u9WBvHduefy9nZxO0C06Q==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-tools/-/cli-tools-11.4.1.tgz", + "integrity": "sha512-GuQIuY/kCPfLeXB1aiPZ5HvF+e/wdO42AYuNEmT7FpH/0nAhdTxA9qjL8m3vatDD2/YK7WNOSVNsl2UBZuOISg==", "dependencies": { "appdirsjs": "^1.2.4", "chalk": "^4.1.2", @@ -5151,17 +5182,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@react-native-community/cli-tools/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@react-native-community/cli-tools/node_modules/p-locate": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", @@ -5177,12 +5197,9 @@ } }, "node_modules/@react-native-community/cli-tools/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "bin": { "semver": "bin/semver.js" }, @@ -5201,15 +5218,10 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli-tools/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@react-native-community/cli-types": { - "version": "11.3.10", - "resolved": "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-11.3.10.tgz", - "integrity": "sha512-0FHK/JE7bTn0x1y8Lk5m3RISDHIBQqWLltO2Mf7YQ6cAeKs8iNOJOeKaHJEY+ohjsOyCziw+XSC4cY57dQrwNA==", + "version": "11.4.1", + "resolved": "https://registry.npmjs.org/@react-native-community/cli-types/-/cli-types-11.4.1.tgz", + "integrity": "sha512-B3q9A5BCneLDSoK/iSJ06MNyBn1qTxjdJeOgeS3MiCxgJpPcxyn/Yrc6+h0Cu9T9sgWj/dmectQPYWxtZeo5VA==", "dependencies": { "joi": "^17.2.1" } @@ -5267,24 +5279,10 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@react-native-community/cli/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "bin": { "semver": "bin/semver.js" }, @@ -5303,11 +5301,6 @@ "node": ">=8" } }, - "node_modules/@react-native-community/cli/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@react-native-community/datetimepicker": { "version": "7.6.2", "resolved": "https://registry.npmjs.org/@react-native-community/datetimepicker/-/datetimepicker-7.6.2.tgz", @@ -6985,11 +6978,11 @@ } }, "node_modules/axios": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz", - "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.4.tgz", + "integrity": "sha512-DukmaFRnY6AzAALSH4J2M3k6PkaC+MfaAGdEERRWcC9q3/TWQwLpHR8ZRLKTdQ3aBDL64EdluRDjJqKw+BPZEw==", "dependencies": { - "follow-redirects": "^1.15.4", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -7365,11 +7358,11 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -8358,9 +8351,9 @@ } }, "node_modules/dayjs": { - "version": "1.11.10", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", - "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==" + "version": "1.11.12", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.12.tgz", + "integrity": "sha512-Rt2g+nTbLlDWZTwwrIXjy9MeiZmSDI375FvZs72ngxx8PDC6YXOeR3q5LAuPzjZQxhiWdRKac7RKV+YyQYfYIg==" }, "node_modules/debug": { "version": "4.3.4", @@ -8778,9 +8771,9 @@ } }, "node_modules/envinfo": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.11.0.tgz", - "integrity": "sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", + "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", "bin": { "envinfo": "dist/cli.js" }, @@ -9590,9 +9583,9 @@ "dev": true }, "node_modules/fast-xml-parser": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.3.3.tgz", - "integrity": "sha512-coV/D1MhrShMvU6D0I+VAK3umz6hUaxxhL0yp/9RjfiYUfAv14rDhGQL+PLForhMdr0wq3PiV07WtkkNjJjNHg==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz", + "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==", "funding": [ { "type": "github", @@ -9652,9 +9645,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -9904,9 +9897,9 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", - "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "funding": [ { "type": "individual", @@ -10643,11 +10636,6 @@ "loose-envify": "^1.0.0" } }, - "node_modules/ip": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", - "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" - }, "node_modules/is-arguments": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", @@ -12790,9 +12778,9 @@ } }, "node_modules/joi": { - "version": "17.12.1", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.12.1.tgz", - "integrity": "sha512-vtxmq+Lsc5SlfqotnfVjlViWfOL9nt/avKNbKYizwf6gsCfq9NYY/ceYRMFD8XDdrjJ9abJyScWmhmIiy+XRtQ==", + "version": "17.13.3", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.3.tgz", + "integrity": "sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==", "dependencies": { "@hapi/hoek": "^9.3.0", "@hapi/topo": "^5.1.0", @@ -12966,8 +12954,7 @@ "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -13672,9 +13659,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/metro-inspector-proxy": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-inspector-proxy/-/metro-inspector-proxy-0.76.8.tgz", - "integrity": "sha512-Us5o5UEd4Smgn1+TfHX4LvVPoWVo9VsVMn4Ldbk0g5CQx3Gu0ygc/ei2AKPGTwsOZmKxJeACj7yMH2kgxQP/iw==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-inspector-proxy/-/metro-inspector-proxy-0.76.9.tgz", + "integrity": "sha512-idIiPkb8CYshc0WZmbzwmr4B1QwsQUbpDwBzHwxE1ni27FWKWhV9CD5p+qlXZHgfwJuMRfPN+tIaLSR8+vttYg==", "dependencies": { "connect": "^3.6.5", "debug": "^2.2.0", @@ -13714,9 +13701,9 @@ } }, "node_modules/metro-minify-uglify": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-minify-uglify/-/metro-minify-uglify-0.76.8.tgz", - "integrity": "sha512-6l8/bEvtVaTSuhG1FqS0+Mc8lZ3Bl4RI8SeRIifVLC21eeSDp4CEBUWSGjpFyUDfi6R5dXzYaFnSgMNyfxADiQ==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-minify-uglify/-/metro-minify-uglify-0.76.9.tgz", + "integrity": "sha512-MXRrM3lFo62FPISlPfTqC6n9HTEI3RJjDU5SvpE7sJFfJKLx02xXQEltsL/wzvEqK+DhRQ5DEYACTwf5W4Z3yA==", "dependencies": { "uglify-es": "^3.1.9" }, @@ -13728,6 +13715,7 @@ "version": "0.76.8", "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.76.8.tgz", "integrity": "sha512-Ptza08GgqzxEdK8apYsjTx2S8WDUlS2ilBlu9DR1CUcHmg4g3kOkFylZroogVAUKtpYQNYwAvdsjmrSdDNtiAg==", + "dev": true, "dependencies": { "@babel/core": "^7.20.0", "@babel/plugin-proposal-async-generator-functions": "^7.0.0", @@ -13780,19 +13768,20 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz", "integrity": "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==", + "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/metro-react-native-babel-transformer": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.76.8.tgz", - "integrity": "sha512-3h+LfS1WG1PAzhq8QF0kfXjxuXetbY/lgz8vYMQhgrMMp17WM1DNJD0gjx8tOGYbpbBC1qesJ45KMS4o5TA73A==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-transformer/-/metro-react-native-babel-transformer-0.76.9.tgz", + "integrity": "sha512-xXzHcfngSIkbQj+U7i/anFkNL0q2QVarYSzr34CFkzKLa79Rp16B8ki7z9eVVqo9W3B4TBcTXl3BipgRoOoZSQ==", "dependencies": { "@babel/core": "^7.20.0", "babel-preset-fbjs": "^3.4.0", "hermes-parser": "0.12.0", - "metro-react-native-babel-preset": "0.76.8", + "metro-react-native-babel-preset": "0.76.9", "nullthrows": "^1.1.1" }, "engines": { @@ -13815,6 +13804,66 @@ "hermes-estree": "0.12.0" } }, + "node_modules/metro-react-native-babel-transformer/node_modules/metro-react-native-babel-preset": { + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.76.9.tgz", + "integrity": "sha512-eCBtW/UkJPDr6HlMgFEGF+964DZsUEF9RGeJdZLKWE7d/0nY3ABZ9ZAGxzu9efQ35EWRox5bDMXUGaOwUe5ikQ==", + "dependencies": { + "@babel/core": "^7.20.0", + "@babel/plugin-proposal-async-generator-functions": "^7.0.0", + "@babel/plugin-proposal-class-properties": "^7.18.0", + "@babel/plugin-proposal-export-default-from": "^7.0.0", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.0", + "@babel/plugin-proposal-numeric-separator": "^7.0.0", + "@babel/plugin-proposal-object-rest-spread": "^7.20.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.0.0", + "@babel/plugin-proposal-optional-chaining": "^7.20.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/plugin-syntax-export-default-from": "^7.0.0", + "@babel/plugin-syntax-flow": "^7.18.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.0.0", + "@babel/plugin-syntax-optional-chaining": "^7.0.0", + "@babel/plugin-transform-arrow-functions": "^7.0.0", + "@babel/plugin-transform-async-to-generator": "^7.20.0", + "@babel/plugin-transform-block-scoping": "^7.0.0", + "@babel/plugin-transform-classes": "^7.0.0", + "@babel/plugin-transform-computed-properties": "^7.0.0", + "@babel/plugin-transform-destructuring": "^7.20.0", + "@babel/plugin-transform-flow-strip-types": "^7.20.0", + "@babel/plugin-transform-function-name": "^7.0.0", + "@babel/plugin-transform-literals": "^7.0.0", + "@babel/plugin-transform-modules-commonjs": "^7.0.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.0.0", + "@babel/plugin-transform-parameters": "^7.0.0", + "@babel/plugin-transform-react-display-name": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.0.0", + "@babel/plugin-transform-react-jsx-self": "^7.0.0", + "@babel/plugin-transform-react-jsx-source": "^7.0.0", + "@babel/plugin-transform-runtime": "^7.0.0", + "@babel/plugin-transform-shorthand-properties": "^7.0.0", + "@babel/plugin-transform-spread": "^7.0.0", + "@babel/plugin-transform-sticky-regex": "^7.0.0", + "@babel/plugin-transform-typescript": "^7.5.0", + "@babel/plugin-transform-unicode-regex": "^7.0.0", + "@babel/template": "^7.0.0", + "babel-plugin-transform-flow-enums": "^0.0.2", + "react-refresh": "^0.4.0" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "@babel/core": "*" + } + }, + "node_modules/metro-react-native-babel-transformer/node_modules/react-refresh": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz", + "integrity": "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/metro-resolver": { "version": "0.80.5", "resolved": "https://registry.npmjs.org/metro-resolver/-/metro-resolver-0.80.5.tgz", @@ -14322,9 +14371,9 @@ } }, "node_modules/npm": { - "version": "9.9.2", - "resolved": "https://registry.npmjs.org/npm/-/npm-9.9.2.tgz", - "integrity": "sha512-D3tV+W0PzJOlwo8YmO6fNzaB1CrMVYd1V+2TURF6lbCbmZKqMsYgeQfPVvqiM3zbNSJPhFEnmlEXIogH2Vq7PQ==", + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/npm/-/npm-10.8.2.tgz", + "integrity": "sha512-x/AIjFIKRllrhcb48dqUNAAZl0ig9+qMuN91RpZo3Cb2+zuibfh+KISl6+kVVyktDz230JKc208UkQwwMqyB+w==", "bundleDependencies": [ "@isaacs/string-locale-compare", "@npmcli/arborist", @@ -14333,15 +14382,15 @@ "@npmcli/map-workspaces", "@npmcli/package-json", "@npmcli/promise-spawn", + "@npmcli/redact", "@npmcli/run-script", + "@sigstore/tuf", "abbrev", "archy", "cacache", "chalk", "ci-info", "cli-columns", - "cli-table3", - "columnify", "fastest-levenshtein", "fs-minipass", "glob", @@ -14377,7 +14426,6 @@ "npm-profile", "npm-registry-fetch", "npm-user-validate", - "npmlog", "p-map", "pacote", "parse-conflict-json", @@ -14385,7 +14433,6 @@ "qrcode-terminal", "read", "semver", - "sigstore", "spdx-expression-parse", "ssri", "supports-color", @@ -14399,74 +14446,72 @@ ], "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/arborist": "^6.5.0", - "@npmcli/config": "^6.4.0", - "@npmcli/fs": "^3.1.0", - "@npmcli/map-workspaces": "^3.0.4", - "@npmcli/package-json": "^4.0.1", - "@npmcli/promise-spawn": "^6.0.2", - "@npmcli/run-script": "^6.0.2", + "@npmcli/arborist": "^7.5.4", + "@npmcli/config": "^8.3.4", + "@npmcli/fs": "^3.1.1", + "@npmcli/map-workspaces": "^3.0.6", + "@npmcli/package-json": "^5.2.0", + "@npmcli/promise-spawn": "^7.0.2", + "@npmcli/redact": "^2.0.1", + "@npmcli/run-script": "^8.1.0", + "@sigstore/tuf": "^2.3.4", "abbrev": "^2.0.0", "archy": "~1.0.0", - "cacache": "^17.1.3", + "cacache": "^18.0.3", "chalk": "^5.3.0", - "ci-info": "^3.8.0", + "ci-info": "^4.0.0", "cli-columns": "^4.0.0", - "cli-table3": "^0.6.3", - "columnify": "^1.6.0", "fastest-levenshtein": "^1.0.16", - "fs-minipass": "^3.0.2", - "glob": "^10.2.7", + "fs-minipass": "^3.0.3", + "glob": "^10.4.2", "graceful-fs": "^4.2.11", - "hosted-git-info": "^6.1.1", - "ini": "^4.1.1", - "init-package-json": "^5.0.0", - "is-cidr": "^4.0.2", - "json-parse-even-better-errors": "^3.0.0", - "libnpmaccess": "^7.0.2", - "libnpmdiff": "^5.0.20", - "libnpmexec": "^6.0.4", - "libnpmfund": "^4.2.1", - "libnpmhook": "^9.0.3", - "libnpmorg": "^5.0.4", - "libnpmpack": "^5.0.20", - "libnpmpublish": "^7.5.1", - "libnpmsearch": "^6.0.2", - "libnpmteam": "^5.0.3", - "libnpmversion": "^4.0.2", - "make-fetch-happen": "^11.1.1", - "minimatch": "^9.0.3", - "minipass": "^5.0.0", + "hosted-git-info": "^7.0.2", + "ini": "^4.1.3", + "init-package-json": "^6.0.3", + "is-cidr": "^5.1.0", + "json-parse-even-better-errors": "^3.0.2", + "libnpmaccess": "^8.0.6", + "libnpmdiff": "^6.1.4", + "libnpmexec": "^8.1.3", + "libnpmfund": "^5.0.12", + "libnpmhook": "^10.0.5", + "libnpmorg": "^6.0.6", + "libnpmpack": "^7.0.4", + "libnpmpublish": "^9.0.9", + "libnpmsearch": "^7.0.6", + "libnpmteam": "^6.0.5", + "libnpmversion": "^6.0.3", + "make-fetch-happen": "^13.0.1", + "minimatch": "^9.0.5", + "minipass": "^7.1.1", "minipass-pipeline": "^1.2.4", "ms": "^2.1.2", - "node-gyp": "^9.4.0", - "nopt": "^7.2.0", - "normalize-package-data": "^5.0.0", + "node-gyp": "^10.1.0", + "nopt": "^7.2.1", + "normalize-package-data": "^6.0.2", "npm-audit-report": "^5.0.0", - "npm-install-checks": "^6.2.0", - "npm-package-arg": "^10.1.0", - "npm-pick-manifest": "^8.0.2", - "npm-profile": "^7.0.1", - "npm-registry-fetch": "^14.0.5", - "npm-user-validate": "^2.0.0", - "npmlog": "^7.0.1", + "npm-install-checks": "^6.3.0", + "npm-package-arg": "^11.0.2", + "npm-pick-manifest": "^9.1.0", + "npm-profile": "^10.0.0", + "npm-registry-fetch": "^17.1.0", + "npm-user-validate": "^2.0.1", "p-map": "^4.0.0", - "pacote": "^15.2.0", + "pacote": "^18.0.6", "parse-conflict-json": "^3.0.1", - "proc-log": "^3.0.0", + "proc-log": "^4.2.0", "qrcode-terminal": "^0.12.0", - "read": "^2.1.0", - "semver": "^7.5.4", - "sigstore": "^1.9.0", - "spdx-expression-parse": "^3.0.1", - "ssri": "^10.0.4", + "read": "^3.0.1", + "semver": "^7.6.2", + "spdx-expression-parse": "^4.0.0", + "ssri": "^10.0.6", "supports-color": "^9.4.0", - "tar": "^6.1.15", + "tar": "^6.2.1", "text-table": "~0.2.0", "tiny-relative-date": "^1.3.0", "treeverse": "^3.0.0", - "validate-npm-package-name": "^5.0.0", - "which": "^3.0.1", + "validate-npm-package-name": "^5.0.1", + "which": "^4.0.0", "write-file-atomic": "^5.0.1" }, "bin": { @@ -14474,7 +14519,7 @@ "npx": "bin/npx-cli.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/npm-run-path": { @@ -14488,15 +14533,6 @@ "node": ">=8" } }, - "node_modules/npm/node_modules/@colors/colors": { - "version": "1.5.0", - "inBundle": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">=0.1.90" - } - }, "node_modules/npm/node_modules/@isaacs/cliui": { "version": "8.0.2", "inBundle": true, @@ -14564,42 +14600,59 @@ "inBundle": true, "license": "ISC" }, + "node_modules/npm/node_modules/@npmcli/agent": { + "version": "2.2.2", + "inBundle": true, + "license": "ISC", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/npm/node_modules/@npmcli/arborist": { - "version": "6.5.0", + "version": "7.5.4", "inBundle": true, "license": "ISC", "dependencies": { "@isaacs/string-locale-compare": "^1.1.0", - "@npmcli/fs": "^3.1.0", - "@npmcli/installed-package-contents": "^2.0.2", + "@npmcli/fs": "^3.1.1", + "@npmcli/installed-package-contents": "^2.1.0", "@npmcli/map-workspaces": "^3.0.2", - "@npmcli/metavuln-calculator": "^5.0.0", + "@npmcli/metavuln-calculator": "^7.1.1", "@npmcli/name-from-folder": "^2.0.0", "@npmcli/node-gyp": "^3.0.0", - "@npmcli/package-json": "^4.0.0", - "@npmcli/query": "^3.0.0", - "@npmcli/run-script": "^6.0.0", - "bin-links": "^4.0.1", - "cacache": "^17.0.4", + "@npmcli/package-json": "^5.1.0", + "@npmcli/query": "^3.1.0", + "@npmcli/redact": "^2.0.0", + "@npmcli/run-script": "^8.1.0", + "bin-links": "^4.0.4", + "cacache": "^18.0.3", "common-ancestor-path": "^1.0.1", - "hosted-git-info": "^6.1.1", - "json-parse-even-better-errors": "^3.0.0", + "hosted-git-info": "^7.0.2", + "json-parse-even-better-errors": "^3.0.2", "json-stringify-nice": "^1.1.4", - "minimatch": "^9.0.0", - "nopt": "^7.0.0", + "lru-cache": "^10.2.2", + "minimatch": "^9.0.4", + "nopt": "^7.2.1", "npm-install-checks": "^6.2.0", - "npm-package-arg": "^10.1.0", - "npm-pick-manifest": "^8.0.1", - "npm-registry-fetch": "^14.0.3", - "npmlog": "^7.0.1", - "pacote": "^15.0.8", + "npm-package-arg": "^11.0.2", + "npm-pick-manifest": "^9.0.1", + "npm-registry-fetch": "^17.0.1", + "pacote": "^18.0.6", "parse-conflict-json": "^3.0.0", - "proc-log": "^3.0.0", + "proc-log": "^4.2.0", + "proggy": "^2.0.0", "promise-all-reject-late": "^1.0.0", - "promise-call-limit": "^1.0.2", + "promise-call-limit": "^3.0.1", "read-package-json-fast": "^3.0.2", "semver": "^7.3.7", - "ssri": "^10.0.1", + "ssri": "^10.0.6", "treeverse": "^3.0.0", "walk-up-path": "^3.0.1" }, @@ -14607,40 +14660,29 @@ "arborist": "bin/index.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/config": { - "version": "6.4.0", + "version": "8.3.4", "inBundle": true, "license": "ISC", "dependencies": { "@npmcli/map-workspaces": "^3.0.2", - "ci-info": "^3.8.0", - "ini": "^4.1.0", - "nopt": "^7.0.0", - "proc-log": "^3.0.0", - "read-package-json-fast": "^3.0.2", + "@npmcli/package-json": "^5.1.1", + "ci-info": "^4.0.0", + "ini": "^4.1.2", + "nopt": "^7.2.1", + "proc-log": "^4.2.0", "semver": "^7.3.5", "walk-up-path": "^3.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm/node_modules/@npmcli/disparity-colors": { - "version": "3.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "ansi-styles": "^4.3.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/fs": { - "version": "3.1.0", + "version": "3.1.1", "inBundle": true, "license": "ISC", "dependencies": { @@ -14651,25 +14693,26 @@ } }, "node_modules/npm/node_modules/@npmcli/git": { - "version": "4.1.0", + "version": "5.0.8", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "npm-pick-manifest": "^8.0.0", - "proc-log": "^3.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "ini": "^4.1.3", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", + "proc-log": "^4.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/installed-package-contents": { - "version": "2.0.2", + "version": "2.1.0", "inBundle": true, "license": "ISC", "dependencies": { @@ -14677,14 +14720,14 @@ "npm-normalize-package-bin": "^3.0.0" }, "bin": { - "installed-package-contents": "lib/index.js" + "installed-package-contents": "bin/index.js" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/map-workspaces": { - "version": "3.0.4", + "version": "3.0.6", "inBundle": true, "license": "ISC", "dependencies": { @@ -14698,17 +14741,18 @@ } }, "node_modules/npm/node_modules/@npmcli/metavuln-calculator": { - "version": "5.0.1", + "version": "7.1.1", "inBundle": true, "license": "ISC", "dependencies": { - "cacache": "^17.0.0", + "cacache": "^18.0.0", "json-parse-even-better-errors": "^3.0.0", - "pacote": "^15.0.0", + "pacote": "^18.0.0", + "proc-log": "^4.1.0", "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/name-from-folder": { @@ -14728,35 +14772,35 @@ } }, "node_modules/npm/node_modules/@npmcli/package-json": { - "version": "4.0.1", + "version": "5.2.0", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^4.1.0", + "@npmcli/git": "^5.0.0", "glob": "^10.2.2", - "hosted-git-info": "^6.1.1", + "hosted-git-info": "^7.0.0", "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", - "proc-log": "^3.0.0", + "normalize-package-data": "^6.0.0", + "proc-log": "^4.0.0", "semver": "^7.5.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/promise-spawn": { - "version": "6.0.2", + "version": "7.0.2", "inBundle": true, "license": "ISC", "dependencies": { - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@npmcli/query": { - "version": "3.0.0", + "version": "3.1.0", "inBundle": true, "license": "ISC", "dependencies": { @@ -14766,19 +14810,28 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/npm/node_modules/@npmcli/redact": { + "version": "2.0.1", + "inBundle": true, + "license": "ISC", + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/npm/node_modules/@npmcli/run-script": { - "version": "6.0.2", + "version": "8.1.0", "inBundle": true, "license": "ISC", "dependencies": { "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", - "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" + "@npmcli/package-json": "^5.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "node-gyp": "^10.0.0", + "proc-log": "^4.0.0", + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@pkgjs/parseargs": { @@ -14791,75 +14844,91 @@ } }, "node_modules/npm/node_modules/@sigstore/bundle": { - "version": "1.1.0", + "version": "2.3.2", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0" + "@sigstore/protobuf-specs": "^0.3.2" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm/node_modules/@sigstore/core": { + "version": "1.1.0", + "inBundle": true, + "license": "Apache-2.0", + "engines": { + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@sigstore/protobuf-specs": { - "version": "0.2.1", + "version": "0.3.2", "inBundle": true, "license": "Apache-2.0", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@sigstore/sign": { - "version": "1.0.0", + "version": "2.3.2", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "make-fetch-happen": "^11.0.1" + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.3.2", + "make-fetch-happen": "^13.0.1", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@sigstore/tuf": { - "version": "1.0.3", + "version": "2.3.4", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/protobuf-specs": "^0.2.0", - "tuf-js": "^1.1.7" + "@sigstore/protobuf-specs": "^0.3.2", + "tuf-js": "^2.2.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/@tootallnate/once": { - "version": "2.0.0", + "node_modules/npm/node_modules/@sigstore/verify": { + "version": "1.2.1", "inBundle": true, - "license": "MIT", + "license": "Apache-2.0", + "dependencies": { + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.1.0", + "@sigstore/protobuf-specs": "^0.3.2" + }, "engines": { - "node": ">= 10" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@tufjs/canonical-json": { - "version": "1.0.0", + "version": "2.0.0", "inBundle": true, "license": "MIT", "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/@tufjs/models": { - "version": "1.0.4", + "version": "2.0.1", "inBundle": true, "license": "MIT", "dependencies": { - "@tufjs/canonical-json": "1.0.0", - "minimatch": "^9.0.0" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/abbrev": { @@ -14870,39 +14939,15 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/abort-controller": { - "version": "3.0.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" - } - }, "node_modules/npm/node_modules/agent-base": { - "version": "6.0.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/npm/node_modules/agentkeepalive": { - "version": "4.3.0", + "version": "7.1.1", "inBundle": true, "license": "MIT", "dependencies": { - "debug": "^4.1.0", - "depd": "^2.0.0", - "humanize-ms": "^1.2.1" + "debug": "^4.3.4" }, "engines": { - "node": ">= 8.0.0" + "node": ">= 14" } }, "node_modules/npm/node_modules/aggregate-error": { @@ -14926,14 +14971,11 @@ } }, "node_modules/npm/node_modules/ansi-styles": { - "version": "4.3.0", + "version": "6.2.1", "inBundle": true, "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" @@ -14949,44 +14991,13 @@ "inBundle": true, "license": "MIT" }, - "node_modules/npm/node_modules/are-we-there-yet": { - "version": "4.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^4.1.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/npm/node_modules/balanced-match": { "version": "1.0.2", "inBundle": true, "license": "MIT" }, - "node_modules/npm/node_modules/base64-js": { - "version": "1.5.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT" - }, "node_modules/npm/node_modules/bin-links": { - "version": "4.0.2", + "version": "4.0.4", "inBundle": true, "license": "ISC", "dependencies": { @@ -15000,11 +15011,14 @@ } }, "node_modules/npm/node_modules/binary-extensions": { - "version": "2.2.0", + "version": "2.3.0", "inBundle": true, "license": "MIT", "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/npm/node_modules/brace-expansion": { @@ -15015,48 +15029,17 @@ "balanced-match": "^1.0.0" } }, - "node_modules/npm/node_modules/buffer": { - "version": "6.0.3", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT", - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "node_modules/npm/node_modules/builtins": { - "version": "5.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "semver": "^7.0.0" - } - }, "node_modules/npm/node_modules/cacache": { - "version": "17.1.3", + "version": "18.0.3", "inBundle": true, "license": "ISC", "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", - "minipass-collect": "^1.0.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "p-map": "^4.0.0", @@ -15065,7 +15048,7 @@ "unique-filename": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/chalk": { @@ -15088,7 +15071,7 @@ } }, "node_modules/npm/node_modules/ci-info": { - "version": "3.8.0", + "version": "4.0.0", "funding": [ { "type": "github", @@ -15102,14 +15085,14 @@ } }, "node_modules/npm/node_modules/cidr-regex": { - "version": "3.1.1", + "version": "4.1.1", "inBundle": true, "license": "BSD-2-Clause", "dependencies": { - "ip-regex": "^4.1.0" + "ip-regex": "^5.0.0" }, "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/npm/node_modules/clean-stack": { @@ -15132,30 +15115,8 @@ "node": ">= 10" } }, - "node_modules/npm/node_modules/cli-table3": { - "version": "0.6.3", - "inBundle": true, - "license": "MIT", - "dependencies": { - "string-width": "^4.2.0" - }, - "engines": { - "node": "10.* || >= 12.*" - }, - "optionalDependencies": { - "@colors/colors": "1.5.0" - } - }, - "node_modules/npm/node_modules/clone": { - "version": "1.0.4", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, "node_modules/npm/node_modules/cmd-shim": { - "version": "6.0.1", + "version": "6.0.3", "inBundle": true, "license": "ISC", "engines": { @@ -15178,41 +15139,11 @@ "inBundle": true, "license": "MIT" }, - "node_modules/npm/node_modules/color-support": { - "version": "1.1.3", - "inBundle": true, - "license": "ISC", - "bin": { - "color-support": "bin.js" - } - }, - "node_modules/npm/node_modules/columnify": { - "version": "1.6.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "strip-ansi": "^6.0.1", - "wcwidth": "^1.0.0" - }, - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/npm/node_modules/common-ancestor-path": { "version": "1.0.1", "inBundle": true, "license": "ISC" }, - "node_modules/npm/node_modules/concat-map": { - "version": "0.0.1", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npm/node_modules/console-control-strings": { - "version": "1.1.0", - "inBundle": true, - "license": "ISC" - }, "node_modules/npm/node_modules/cross-spawn": { "version": "7.0.3", "inBundle": true, @@ -15252,7 +15183,7 @@ } }, "node_modules/npm/node_modules/debug": { - "version": "4.3.4", + "version": "4.3.5", "inBundle": true, "license": "MIT", "dependencies": { @@ -15272,32 +15203,8 @@ "inBundle": true, "license": "MIT" }, - "node_modules/npm/node_modules/defaults": { - "version": "1.0.4", - "inBundle": true, - "license": "MIT", - "dependencies": { - "clone": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm/node_modules/delegates": { - "version": "1.0.0", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npm/node_modules/depd": { - "version": "2.0.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">= 0.8" - } - }, "node_modules/npm/node_modules/diff": { - "version": "5.1.0", + "version": "5.2.0", "inBundle": true, "license": "BSD-3-Clause", "engines": { @@ -15336,22 +15243,6 @@ "inBundle": true, "license": "MIT" }, - "node_modules/npm/node_modules/event-target-shim": { - "version": "5.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/npm/node_modules/events": { - "version": "3.3.0", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.8.x" - } - }, "node_modules/npm/node_modules/exponential-backoff": { "version": "3.1.1", "inBundle": true, @@ -15366,7 +15257,7 @@ } }, "node_modules/npm/node_modules/foreground-child": { - "version": "3.1.1", + "version": "3.2.1", "inBundle": true, "license": "ISC", "dependencies": { @@ -15381,60 +15272,33 @@ } }, "node_modules/npm/node_modules/fs-minipass": { - "version": "3.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^5.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm/node_modules/fs.realpath": { - "version": "1.0.0", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npm/node_modules/function-bind": { - "version": "1.1.1", - "inBundle": true, - "license": "MIT" - }, - "node_modules/npm/node_modules/gauge": { - "version": "5.0.1", + "version": "3.0.3", "inBundle": true, "license": "ISC", "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^4.0.1", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" + "minipass": "^7.0.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/glob": { - "version": "10.2.7", + "version": "10.4.2", "inBundle": true, "license": "ISC", "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.7.0" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { - "glob": "dist/cjs/src/bin.js" + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -15445,31 +15309,15 @@ "inBundle": true, "license": "ISC" }, - "node_modules/npm/node_modules/has": { - "version": "1.0.3", - "inBundle": true, - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/npm/node_modules/has-unicode": { - "version": "2.0.1", - "inBundle": true, - "license": "ISC" - }, "node_modules/npm/node_modules/hosted-git-info": { - "version": "6.1.1", + "version": "7.0.2", "inBundle": true, "license": "ISC", "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/http-cache-semantics": { @@ -15478,36 +15326,27 @@ "license": "BSD-2-Clause" }, "node_modules/npm/node_modules/http-proxy-agent": { - "version": "5.0.0", + "version": "7.0.2", "inBundle": true, "license": "MIT", "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/npm/node_modules/https-proxy-agent": { - "version": "5.0.1", + "version": "7.0.5", "inBundle": true, "license": "MIT", "dependencies": { - "agent-base": "6", + "agent-base": "^7.0.2", "debug": "4" }, "engines": { - "node": ">= 6" - } - }, - "node_modules/npm/node_modules/humanize-ms": { - "version": "1.2.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "ms": "^2.0.0" + "node": ">= 14" } }, "node_modules/npm/node_modules/iconv-lite": { @@ -15522,27 +15361,8 @@ "node": ">=0.10.0" } }, - "node_modules/npm/node_modules/ieee754": { - "version": "1.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "BSD-3-Clause" - }, "node_modules/npm/node_modules/ignore-walk": { - "version": "6.0.3", + "version": "6.0.5", "inBundle": true, "license": "ISC", "dependencies": { @@ -15566,24 +15386,10 @@ "license": "MIT", "engines": { "node": ">=8" - } - }, - "node_modules/npm/node_modules/inflight": { - "version": "1.0.6", - "inBundle": true, - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/npm/node_modules/inherits": { - "version": "2.0.4", - "inBundle": true, - "license": "ISC" + } }, "node_modules/npm/node_modules/ini": { - "version": "4.1.1", + "version": "4.1.3", "inBundle": true, "license": "ISC", "engines": { @@ -15591,55 +15397,54 @@ } }, "node_modules/npm/node_modules/init-package-json": { - "version": "5.0.0", + "version": "6.0.3", "inBundle": true, "license": "ISC", "dependencies": { - "npm-package-arg": "^10.0.0", + "@npmcli/package-json": "^5.0.0", + "npm-package-arg": "^11.0.0", "promzard": "^1.0.0", - "read": "^2.0.0", - "read-package-json": "^6.0.0", + "read": "^3.0.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4", "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/ip": { - "version": "2.0.0", + "node_modules/npm/node_modules/ip-address": { + "version": "9.0.5", "inBundle": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } }, "node_modules/npm/node_modules/ip-regex": { - "version": "4.3.0", + "version": "5.0.0", "inBundle": true, "license": "MIT", "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/npm/node_modules/is-cidr": { - "version": "4.0.2", + "version": "5.1.0", "inBundle": true, "license": "BSD-2-Clause", "dependencies": { - "cidr-regex": "^3.1.1" + "cidr-regex": "^4.1.1" }, "engines": { - "node": ">=10" - } - }, - "node_modules/npm/node_modules/is-core-module": { - "version": "2.13.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=14" } }, "node_modules/npm/node_modules/is-fullwidth-code-point": { @@ -15661,7 +15466,7 @@ "license": "ISC" }, "node_modules/npm/node_modules/jackspeak": { - "version": "2.2.1", + "version": "3.4.0", "inBundle": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -15677,8 +15482,13 @@ "@pkgjs/parseargs": "^0.11.0" } }, + "node_modules/npm/node_modules/jsbn": { + "version": "1.1.0", + "inBundle": true, + "license": "MIT" + }, "node_modules/npm/node_modules/json-parse-even-better-errors": { - "version": "3.0.0", + "version": "3.0.2", "inBundle": true, "license": "MIT", "engines": { @@ -15712,197 +15522,192 @@ "license": "MIT" }, "node_modules/npm/node_modules/libnpmaccess": { - "version": "7.0.2", + "version": "8.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "npm-package-arg": "^10.1.0", - "npm-registry-fetch": "^14.0.3" + "npm-package-arg": "^11.0.2", + "npm-registry-fetch": "^17.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmdiff": { - "version": "5.0.20", + "version": "6.1.4", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.5.0", - "@npmcli/disparity-colors": "^3.0.0", - "@npmcli/installed-package-contents": "^2.0.2", - "binary-extensions": "^2.2.0", + "@npmcli/arborist": "^7.5.4", + "@npmcli/installed-package-contents": "^2.1.0", + "binary-extensions": "^2.3.0", "diff": "^5.1.0", - "minimatch": "^9.0.0", - "npm-package-arg": "^10.1.0", - "pacote": "^15.0.8", - "tar": "^6.1.13" + "minimatch": "^9.0.4", + "npm-package-arg": "^11.0.2", + "pacote": "^18.0.6", + "tar": "^6.2.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmexec": { - "version": "6.0.4", + "version": "8.1.3", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.5.0", - "@npmcli/run-script": "^6.0.0", - "ci-info": "^3.7.1", - "npm-package-arg": "^10.1.0", - "npmlog": "^7.0.1", - "pacote": "^15.0.8", - "proc-log": "^3.0.0", - "read": "^2.0.0", + "@npmcli/arborist": "^7.5.4", + "@npmcli/run-script": "^8.1.0", + "ci-info": "^4.0.0", + "npm-package-arg": "^11.0.2", + "pacote": "^18.0.6", + "proc-log": "^4.2.0", + "read": "^3.0.1", "read-package-json-fast": "^3.0.2", "semver": "^7.3.7", "walk-up-path": "^3.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmfund": { - "version": "4.2.1", + "version": "5.0.12", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.5.0" + "@npmcli/arborist": "^7.5.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmhook": { - "version": "9.0.3", + "version": "10.0.5", "inBundle": true, "license": "ISC", "dependencies": { "aproba": "^2.0.0", - "npm-registry-fetch": "^14.0.3" + "npm-registry-fetch": "^17.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmorg": { - "version": "5.0.4", + "version": "6.0.6", "inBundle": true, "license": "ISC", "dependencies": { "aproba": "^2.0.0", - "npm-registry-fetch": "^14.0.3" + "npm-registry-fetch": "^17.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmpack": { - "version": "5.0.20", + "version": "7.0.4", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/arborist": "^6.5.0", - "@npmcli/run-script": "^6.0.0", - "npm-package-arg": "^10.1.0", - "pacote": "^15.0.8" + "@npmcli/arborist": "^7.5.4", + "@npmcli/run-script": "^8.1.0", + "npm-package-arg": "^11.0.2", + "pacote": "^18.0.6" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmpublish": { - "version": "7.5.1", + "version": "9.0.9", "inBundle": true, "license": "ISC", "dependencies": { - "ci-info": "^3.6.1", - "normalize-package-data": "^5.0.0", - "npm-package-arg": "^10.1.0", - "npm-registry-fetch": "^14.0.3", - "proc-log": "^3.0.0", + "ci-info": "^4.0.0", + "normalize-package-data": "^6.0.1", + "npm-package-arg": "^11.0.2", + "npm-registry-fetch": "^17.0.1", + "proc-log": "^4.2.0", "semver": "^7.3.7", - "sigstore": "^1.4.0", - "ssri": "^10.0.1" + "sigstore": "^2.2.0", + "ssri": "^10.0.6" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmsearch": { - "version": "6.0.2", + "version": "7.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "npm-registry-fetch": "^14.0.3" + "npm-registry-fetch": "^17.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmteam": { - "version": "5.0.3", + "version": "6.0.5", "inBundle": true, "license": "ISC", "dependencies": { "aproba": "^2.0.0", - "npm-registry-fetch": "^14.0.3" + "npm-registry-fetch": "^17.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/libnpmversion": { - "version": "4.0.2", + "version": "6.0.3", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^4.0.1", - "@npmcli/run-script": "^6.0.0", - "json-parse-even-better-errors": "^3.0.0", - "proc-log": "^3.0.0", + "@npmcli/git": "^5.0.7", + "@npmcli/run-script": "^8.1.0", + "json-parse-even-better-errors": "^3.0.2", + "proc-log": "^4.2.0", "semver": "^7.3.7" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/lru-cache": { - "version": "7.18.3", + "version": "10.2.2", "inBundle": true, "license": "ISC", "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/npm/node_modules/make-fetch-happen": { - "version": "11.1.1", + "version": "13.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", + "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", + "proc-log": "^4.2.0", "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", "ssri": "^10.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/minimatch": { - "version": "9.0.3", + "version": "9.0.5", "inBundle": true, "license": "ISC", "dependencies": { @@ -15916,41 +15721,30 @@ } }, "node_modules/npm/node_modules/minipass": { - "version": "5.0.0", + "version": "7.1.2", "inBundle": true, "license": "ISC", "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/npm/node_modules/minipass-collect": { - "version": "1.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/npm/node_modules/minipass-collect/node_modules/minipass": { - "version": "3.3.6", + "version": "2.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "yallist": "^4.0.0" + "minipass": "^7.0.3" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/npm/node_modules/minipass-fetch": { - "version": "3.0.3", + "version": "3.0.5", "inBundle": true, "license": "MIT", "dependencies": { - "minipass": "^5.0.0", + "minipass": "^7.0.3", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, @@ -15983,26 +15777,6 @@ "node": ">=8" } }, - "node_modules/npm/node_modules/minipass-json-stream": { - "version": "1.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "jsonparse": "^1.3.1", - "minipass": "^3.0.0" - } - }, - "node_modules/npm/node_modules/minipass-json-stream/node_modules/minipass": { - "version": "3.3.6", - "inBundle": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/npm/node_modules/minipass-pipeline": { "version": "1.2.4", "inBundle": true, @@ -16103,165 +15877,38 @@ } }, "node_modules/npm/node_modules/node-gyp": { - "version": "9.4.0", + "version": "10.1.0", "inBundle": true, "license": "MIT", "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", + "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^11.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.5", "tar": "^6.1.2", - "which": "^2.0.2" + "which": "^4.0.0" }, "bin": { "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^12.13 || ^14.13 || >=16" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/abbrev": { - "version": "1.1.1", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npm/node_modules/node-gyp/node_modules/are-we-there-yet": { - "version": "3.0.1", - "inBundle": true, - "license": "ISC", - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/brace-expansion": { - "version": "1.1.11", - "inBundle": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/gauge": { - "version": "4.0.4", - "inBundle": true, - "license": "ISC", - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/glob": { - "version": "7.2.3", - "inBundle": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/minimatch": { - "version": "3.1.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/nopt": { - "version": "6.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "abbrev": "^1.0.0" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/npmlog": { - "version": "6.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/npm/node_modules/node-gyp/node_modules/readable-stream": { - "version": "3.6.2", - "inBundle": true, - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/node-gyp/node_modules/signal-exit": { - "version": "3.0.7", - "inBundle": true, - "license": "ISC" - }, - "node_modules/npm/node_modules/node-gyp/node_modules/which": { - "version": "2.0.2", + "node_modules/npm/node_modules/node-gyp/node_modules/proc-log": { + "version": "3.0.0", "inBundle": true, "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, "engines": { - "node": ">= 8" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/nopt": { - "version": "7.2.0", + "version": "7.2.1", "inBundle": true, "license": "ISC", "dependencies": { @@ -16275,17 +15922,16 @@ } }, "node_modules/npm/node_modules/normalize-package-data": { - "version": "5.0.0", + "version": "6.0.2", "inBundle": true, "license": "BSD-2-Clause", "dependencies": { - "hosted-git-info": "^6.0.0", - "is-core-module": "^2.8.1", + "hosted-git-info": "^7.0.0", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/npm-audit-report": { @@ -16297,7 +15943,7 @@ } }, "node_modules/npm/node_modules/npm-bundled": { - "version": "3.0.0", + "version": "3.0.1", "inBundle": true, "license": "ISC", "dependencies": { @@ -16308,7 +15954,7 @@ } }, "node_modules/npm/node_modules/npm-install-checks": { - "version": "6.2.0", + "version": "6.3.0", "inBundle": true, "license": "BSD-2-Clause", "dependencies": { @@ -16327,101 +15973,80 @@ } }, "node_modules/npm/node_modules/npm-package-arg": { - "version": "10.1.0", + "version": "11.0.2", "inBundle": true, "license": "ISC", "dependencies": { - "hosted-git-info": "^6.0.0", - "proc-log": "^3.0.0", + "hosted-git-info": "^7.0.0", + "proc-log": "^4.0.0", "semver": "^7.3.5", "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/npm-packlist": { - "version": "7.0.4", + "version": "8.0.2", "inBundle": true, "license": "ISC", "dependencies": { - "ignore-walk": "^6.0.0" + "ignore-walk": "^6.0.4" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/npm-pick-manifest": { - "version": "8.0.2", + "version": "9.1.0", "inBundle": true, "license": "ISC", "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", + "npm-package-arg": "^11.0.0", "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/npm-profile": { - "version": "7.0.1", + "version": "10.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "npm-registry-fetch": "^14.0.0", - "proc-log": "^3.0.0" + "npm-registry-fetch": "^17.0.1", + "proc-log": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": ">=18.0.0" } }, "node_modules/npm/node_modules/npm-registry-fetch": { - "version": "14.0.5", - "inBundle": true, - "license": "ISC", - "dependencies": { - "make-fetch-happen": "^11.0.0", - "minipass": "^5.0.0", - "minipass-fetch": "^3.0.0", - "minipass-json-stream": "^1.0.1", - "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", - "proc-log": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm/node_modules/npm-user-validate": { - "version": "2.0.0", - "inBundle": true, - "license": "BSD-2-Clause", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/npm/node_modules/npmlog": { - "version": "7.0.1", + "version": "17.1.0", "inBundle": true, "license": "ISC", "dependencies": { - "are-we-there-yet": "^4.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^5.0.0", - "set-blocking": "^2.0.0" + "@npmcli/redact": "^2.0.0", + "jsonparse": "^1.3.1", + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minizlib": "^2.1.2", + "npm-package-arg": "^11.0.0", + "proc-log": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/once": { - "version": "1.4.0", + "node_modules/npm/node_modules/npm-user-validate": { + "version": "2.0.1", "inBundle": true, - "license": "ISC", - "dependencies": { - "wrappy": "1" + "license": "BSD-2-Clause", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/p-map": { @@ -16438,35 +16063,39 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/npm/node_modules/package-json-from-dist": { + "version": "1.0.0", + "inBundle": true, + "license": "BlueOak-1.0.0" + }, "node_modules/npm/node_modules/pacote": { - "version": "15.2.0", + "version": "18.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "@npmcli/git": "^4.0.0", + "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", + "@npmcli/package-json": "^5.1.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^8.0.0", + "cacache": "^18.0.0", "fs-minipass": "^3.0.0", - "minipass": "^5.0.0", - "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", - "proc-log": "^3.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^17.0.0", + "proc-log": "^4.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", - "read-package-json-fast": "^3.0.0", - "sigstore": "^1.3.0", + "sigstore": "^2.2.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, "bin": { - "pacote": "lib/bin.js" + "pacote": "bin/index.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/parse-conflict-json": { @@ -16482,14 +16111,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/path-is-absolute": { - "version": "1.0.1", - "inBundle": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/npm/node_modules/path-key": { "version": "3.1.1", "inBundle": true, @@ -16499,30 +16120,22 @@ } }, "node_modules/npm/node_modules/path-scurry": { - "version": "1.9.2", + "version": "1.11.1", "inBundle": true, "license": "BlueOak-1.0.0", "dependencies": { - "lru-cache": "^9.1.1", - "minipass": "^5.0.0 || ^6.0.2" + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/npm/node_modules/path-scurry/node_modules/lru-cache": { - "version": "9.1.1", - "inBundle": true, - "license": "ISC", - "engines": { - "node": "14 || >=16.14" - } - }, "node_modules/npm/node_modules/postcss-selector-parser": { - "version": "6.0.13", + "version": "6.1.0", "inBundle": true, "license": "MIT", "dependencies": { @@ -16534,19 +16147,19 @@ } }, "node_modules/npm/node_modules/proc-log": { - "version": "3.0.0", + "version": "4.2.0", "inBundle": true, "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/process": { - "version": "0.11.10", + "node_modules/npm/node_modules/proggy": { + "version": "2.0.0", "inBundle": true, - "license": "MIT", + "license": "ISC", "engines": { - "node": ">= 0.6.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/npm/node_modules/promise-all-reject-late": { @@ -16558,7 +16171,7 @@ } }, "node_modules/npm/node_modules/promise-call-limit": { - "version": "1.0.2", + "version": "3.0.1", "inBundle": true, "license": "ISC", "funding": { @@ -16583,11 +16196,11 @@ } }, "node_modules/npm/node_modules/promzard": { - "version": "1.0.0", + "version": "1.0.2", "inBundle": true, "license": "ISC", "dependencies": { - "read": "^2.0.0" + "read": "^3.0.1" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -16601,11 +16214,11 @@ } }, "node_modules/npm/node_modules/read": { - "version": "2.1.0", + "version": "3.0.1", "inBundle": true, "license": "ISC", "dependencies": { - "mute-stream": "~1.0.0" + "mute-stream": "^1.0.0" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -16619,20 +16232,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/read-package-json": { - "version": "6.0.4", - "inBundle": true, - "license": "ISC", - "dependencies": { - "glob": "^10.2.2", - "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", - "npm-normalize-package-bin": "^3.0.0" - }, - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, "node_modules/npm/node_modules/read-package-json-fast": { "version": "3.0.2", "inBundle": true, @@ -16645,20 +16244,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/readable-stream": { - "version": "4.4.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "abort-controller": "^3.0.0", - "buffer": "^6.0.3", - "events": "^3.3.0", - "process": "^0.11.10" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/npm/node_modules/retry": { "version": "0.12.0", "inBundle": true, @@ -16667,78 +16252,6 @@ "node": ">= 4" } }, - "node_modules/npm/node_modules/rimraf": { - "version": "3.0.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/npm/node_modules/rimraf/node_modules/brace-expansion": { - "version": "1.1.11", - "inBundle": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/npm/node_modules/rimraf/node_modules/glob": { - "version": "7.2.3", - "inBundle": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/npm/node_modules/rimraf/node_modules/minimatch": { - "version": "3.1.2", - "inBundle": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/npm/node_modules/safe-buffer": { - "version": "5.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "inBundle": true, - "license": "MIT" - }, "node_modules/npm/node_modules/safer-buffer": { "version": "2.1.2", "inBundle": true, @@ -16746,12 +16259,9 @@ "optional": true }, "node_modules/npm/node_modules/semver": { - "version": "7.5.4", + "version": "7.6.2", "inBundle": true, "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { "semver": "bin/semver.js" }, @@ -16759,22 +16269,6 @@ "node": ">=10" } }, - "node_modules/npm/node_modules/semver/node_modules/lru-cache": { - "version": "6.0.0", - "inBundle": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/npm/node_modules/set-blocking": { - "version": "2.0.0", - "inBundle": true, - "license": "ISC" - }, "node_modules/npm/node_modules/shebang-command": { "version": "2.0.0", "inBundle": true, @@ -16795,7 +16289,7 @@ } }, "node_modules/npm/node_modules/signal-exit": { - "version": "4.0.2", + "version": "4.1.0", "inBundle": true, "license": "ISC", "engines": { @@ -16806,21 +16300,19 @@ } }, "node_modules/npm/node_modules/sigstore": { - "version": "1.9.0", + "version": "2.3.1", "inBundle": true, "license": "Apache-2.0", "dependencies": { - "@sigstore/bundle": "^1.1.0", - "@sigstore/protobuf-specs": "^0.2.0", - "@sigstore/sign": "^1.0.0", - "@sigstore/tuf": "^1.0.3", - "make-fetch-happen": "^11.0.1" - }, - "bin": { - "sigstore": "bin/sigstore.js" + "@sigstore/bundle": "^2.3.2", + "@sigstore/core": "^1.0.0", + "@sigstore/protobuf-specs": "^0.3.2", + "@sigstore/sign": "^2.3.2", + "@sigstore/tuf": "^2.3.4", + "@sigstore/verify": "^1.2.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/smart-buffer": { @@ -16833,29 +16325,29 @@ } }, "node_modules/npm/node_modules/socks": { - "version": "2.7.1", + "version": "2.8.3", "inBundle": true, "license": "MIT", "dependencies": { - "ip": "^2.0.0", + "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" }, "engines": { - "node": ">= 10.13.0", + "node": ">= 10.0.0", "npm": ">= 3.0.0" } }, "node_modules/npm/node_modules/socks-proxy-agent": { - "version": "7.0.0", + "version": "8.0.4", "inBundle": true, "license": "MIT", "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "agent-base": "^7.1.1", + "debug": "^4.3.4", + "socks": "^2.8.3" }, "engines": { - "node": ">= 10" + "node": ">= 14" } }, "node_modules/npm/node_modules/spdx-correct": { @@ -16867,13 +16359,22 @@ "spdx-license-ids": "^3.0.0" } }, + "node_modules/npm/node_modules/spdx-correct/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, "node_modules/npm/node_modules/spdx-exceptions": { - "version": "2.3.0", + "version": "2.5.0", "inBundle": true, "license": "CC-BY-3.0" }, "node_modules/npm/node_modules/spdx-expression-parse": { - "version": "3.0.1", + "version": "4.0.0", "inBundle": true, "license": "MIT", "dependencies": { @@ -16882,29 +16383,26 @@ } }, "node_modules/npm/node_modules/spdx-license-ids": { - "version": "3.0.13", + "version": "3.0.18", "inBundle": true, "license": "CC0-1.0" }, + "node_modules/npm/node_modules/sprintf-js": { + "version": "1.1.3", + "inBundle": true, + "license": "BSD-3-Clause" + }, "node_modules/npm/node_modules/ssri": { - "version": "10.0.4", + "version": "10.0.6", "inBundle": true, "license": "ISC", "dependencies": { - "minipass": "^5.0.0" + "minipass": "^7.0.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/string_decoder": { - "version": "1.3.0", - "inBundle": true, - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/npm/node_modules/string-width": { "version": "4.2.3", "inBundle": true, @@ -16967,7 +16465,7 @@ } }, "node_modules/npm/node_modules/tar": { - "version": "6.1.15", + "version": "6.2.1", "inBundle": true, "license": "ISC", "dependencies": { @@ -17004,6 +16502,14 @@ "node": ">=8" } }, + "node_modules/npm/node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "inBundle": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, "node_modules/npm/node_modules/text-table": { "version": "0.2.0", "inBundle": true, @@ -17023,16 +16529,16 @@ } }, "node_modules/npm/node_modules/tuf-js": { - "version": "1.1.7", + "version": "2.2.1", "inBundle": true, "license": "MIT", "dependencies": { - "@tufjs/models": "1.0.4", + "@tufjs/models": "2.0.1", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.1" + "make-fetch-happen": "^13.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm/node_modules/unique-filename": { @@ -17071,13 +16577,19 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/npm/node_modules/validate-npm-package-license/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "inBundle": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, "node_modules/npm/node_modules/validate-npm-package-name": { - "version": "5.0.0", + "version": "5.0.1", "inBundle": true, "license": "ISC", - "dependencies": { - "builtins": "^5.0.0" - }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -17087,34 +16599,26 @@ "inBundle": true, "license": "ISC" }, - "node_modules/npm/node_modules/wcwidth": { - "version": "1.0.1", - "inBundle": true, - "license": "MIT", - "dependencies": { - "defaults": "^1.0.3" - } - }, "node_modules/npm/node_modules/which": { - "version": "3.0.1", + "version": "4.0.0", "inBundle": true, "license": "ISC", "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.13.0 || >=18.0.0" } }, - "node_modules/npm/node_modules/wide-align": { - "version": "1.1.5", + "node_modules/npm/node_modules/which/node_modules/isexe": { + "version": "3.1.1", "inBundle": true, "license": "ISC", - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "engines": { + "node": ">=16" } }, "node_modules/npm/node_modules/wrap-ansi": { @@ -17150,26 +16654,29 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/npm/node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "6.0.1", + "node_modules/npm/node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", "inBundle": true, "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { - "node": ">=12" + "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/npm/node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "6.2.1", + "node_modules/npm/node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", "inBundle": true, "license": "MIT", "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, "node_modules/npm/node_modules/wrap-ansi/node_modules/emoji-regex": { @@ -17207,11 +16714,6 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/npm/node_modules/wrappy": { - "version": "1.0.2", - "inBundle": true, - "license": "ISC" - }, "node_modules/npm/node_modules/write-file-atomic": { "version": "5.0.1", "inBundle": true, @@ -17634,7 +17136,6 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz", "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==", - "license": "MIT", "dependencies": { "@yarnpkg/lockfile": "^1.1.0", "chalk": "^4.1.2", @@ -18398,14 +17899,14 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/react-native": { - "version": "0.72.10", - "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.72.10.tgz", - "integrity": "sha512-AjVA1+hCm2VMk3KE9Ve5IeDR3aneEhhQJmBAM9xP3i2WqqS3GksxCz8+JdB83bV6x9mBLv5qPMP71vCged3USw==", + "version": "0.72.15", + "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.72.15.tgz", + "integrity": "sha512-UDxOZwCxhwb0dGuvcB/04uWzhDJ8etqW3fMOq6bv35WwEXMgKXXqZpshhMo64UVWm/m2ZmM32ckn5sf1EIqD9Q==", "dependencies": { "@jest/create-cache-key-function": "^29.2.1", - "@react-native-community/cli": "11.3.10", - "@react-native-community/cli-platform-android": "11.3.10", - "@react-native-community/cli-platform-ios": "11.3.10", + "@react-native-community/cli": "^11.4.1", + "@react-native-community/cli-platform-android": "^11.4.1", + "@react-native-community/cli-platform-ios": "^11.4.1", "@react-native/assets-registry": "^0.72.0", "@react-native/codegen": "^0.72.8", "@react-native/gradle-plugin": "^0.72.11", @@ -18423,8 +17924,8 @@ "jest-environment-node": "^29.2.1", "jsc-android": "^250231.0.0", "memoize-one": "^5.0.0", - "metro-runtime": "0.76.8", - "metro-source-map": "0.76.8", + "metro-runtime": "^0.76.9", + "metro-source-map": "^0.76.9", "mkdirp": "^0.5.1", "nullthrows": "^1.1.1", "pretty-format": "^26.5.2", @@ -18504,9 +18005,9 @@ } }, "node_modules/react-native-document-picker": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/react-native-document-picker/-/react-native-document-picker-9.1.0.tgz", - "integrity": "sha512-SRKPIAzUtcPDUstLRhQeebVVM+x+1I24iSvoy5mFp1KAD+6+UyDEle0SoD96k7MxVH5o46wPifWCYOA3FuQOyw==", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/react-native-document-picker/-/react-native-document-picker-9.3.0.tgz", + "integrity": "sha512-X/j0xKn8cObckpHTNwE/hW9WzBiP6oKx820FYu1Nat43QnnHmmT6uozFgAUDcJfxmZGcEdLlbv0lNhnyRXJyyA==", "dependencies": { "invariant": "^2.2.4" }, @@ -19279,9 +18780,9 @@ } }, "node_modules/react-native/node_modules/metro-runtime": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.76.8.tgz", - "integrity": "sha512-XKahvB+iuYJSCr3QqCpROli4B4zASAYpkK+j3a0CJmokxCDNbgyI4Fp88uIL6rNaZfN0Mv35S0b99SdFXIfHjg==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-runtime/-/metro-runtime-0.76.9.tgz", + "integrity": "sha512-/5vezDpGUtA0Fv6cJg0+i6wB+QeBbvLeaw9cTSG7L76liP0b91f8vOcYzGaUbHI8pznJCCTerxRzpQ8e3/NcDw==", "dependencies": { "@babel/runtime": "^7.0.0", "react-refresh": "^0.4.0" @@ -19291,16 +18792,16 @@ } }, "node_modules/react-native/node_modules/metro-source-map": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.76.8.tgz", - "integrity": "sha512-Hh0ncPsHPVf6wXQSqJqB3K9Zbudht4aUtNpNXYXSxH+pteWqGAXnjtPsRAnCsCWl38wL0jYF0rJDdMajUI3BDw==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-source-map/-/metro-source-map-0.76.9.tgz", + "integrity": "sha512-q5qsMlu8EFvsT46wUUh+ao+efDsicT30zmaPATNhq+PcTawDbDgnMuUD+FT0bvxxnisU2PWl91RdzKfNc2qPQA==", "dependencies": { "@babel/traverse": "^7.20.0", "@babel/types": "^7.20.0", "invariant": "^2.2.4", - "metro-symbolicate": "0.76.8", + "metro-symbolicate": "0.76.9", "nullthrows": "^1.1.1", - "ob1": "0.76.8", + "ob1": "0.76.9", "source-map": "^0.5.6", "vlq": "^1.0.0" }, @@ -19309,12 +18810,12 @@ } }, "node_modules/react-native/node_modules/metro-symbolicate": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.76.8.tgz", - "integrity": "sha512-LrRL3uy2VkzrIXVlxoPtqb40J6Bf1mlPNmUQewipc3qfKKFgtPHBackqDy1YL0njDsWopCKcfGtFYLn0PTUn3w==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/metro-symbolicate/-/metro-symbolicate-0.76.9.tgz", + "integrity": "sha512-Yyq6Ukj/IeWnGST09kRt0sBK8TwzGZWoU7YAcQlh14+AREH454Olx4wbFTpkkhUkV05CzNCvUuXQ0efFxhA1bw==", "dependencies": { "invariant": "^2.2.4", - "metro-source-map": "0.76.8", + "metro-source-map": "0.76.9", "nullthrows": "^1.1.1", "source-map": "^0.5.6", "through2": "^2.0.1", @@ -19328,9 +18829,9 @@ } }, "node_modules/react-native/node_modules/ob1": { - "version": "0.76.8", - "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.76.8.tgz", - "integrity": "sha512-dlBkJJV5M/msj9KYA9upc+nUWVwuOFFTbu28X6kZeGwcuW+JxaHSBZ70SYQnk5M+j5JbNLR6yKHmgW4M5E7X5g==", + "version": "0.76.9", + "resolved": "https://registry.npmjs.org/ob1/-/ob1-0.76.9.tgz", + "integrity": "sha512-g0I/OLnSxf6OrN3QjSew3bTDJCdbZoWxnh8adh1z36alwCuGF1dgDeRA25bTYSakrG5WULSaWJPOdgnf1O/oQw==", "engines": { "node": ">=16" } @@ -19395,9 +18896,9 @@ } }, "node_modules/react-native/node_modules/ws": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", - "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.3.tgz", + "integrity": "sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==", "dependencies": { "async-limiter": "~1.0.0" } @@ -22205,7 +21706,6 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^3.0.7" @@ -22215,9 +21715,9 @@ } }, "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "engines": { "node": ">=8.3.0" }, diff --git a/package.json b/package.json index df1b42f75..fae9422cc 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "lottie-react-native": "^5.1.6", "luxon": "^3.4.3", "minisearch": "^6.3.0", - "npm": "^9.6.7", + "npm": "^10.8.2", "patch-package": "^8.0.0", "path-browserify": "^1.0.1", "react": "^18.2.0", @@ -76,6 +76,7 @@ "react-native-lottie-splash-screen": "^1.1.2", "react-native-modal-datetime-picker": "^17.1.0", "react-native-orientation-locker": "^1.5.0", + "react-native-outside-press": "1.2.2", "react-native-permissions": "^3.10.0", "react-native-popup-menu": "^0.16.1", "react-native-progress-circle": "git+https://github.com/NehaRuparelgit/react-native-progress-circle.git", @@ -106,8 +107,7 @@ "unorm": "^1.6.0", "uuid": "^9.0.1", "victory-native": "36.8.1", - "yargs-parser": "^21.1.1", - "react-native-outside-press": "1.2.2" + "yargs-parser": "^21.1.1" }, "devDependencies": { "@babel/core": "^7.23.2", diff --git a/patches/react-native-aes-crypto+3.0.3.patch b/patches/react-native-aes-crypto+3.0.3.patch index cb9bb4ebf..f0701e55a 100644 --- a/patches/react-native-aes-crypto+3.0.3.patch +++ b/patches/react-native-aes-crypto+3.0.3.patch @@ -2,7 +2,7 @@ diff --git a/node_modules/react-native-aes-crypto/ios/RCTAes/lib/AesCrypt.m b/no index 45375cb..39b4eca 100755 --- a/node_modules/react-native-aes-crypto/ios/RCTAes/lib/AesCrypt.m +++ b/node_modules/react-native-aes-crypto/ios/RCTAes/lib/AesCrypt.m -@@ -205,7 +205,12 @@ +@@ -205,7 +205,12 @@ + (NSString *) decrypt: (NSString *)cipherText key: (NSString *)key iv: (NSStrin } else{ NSData *result = [self AESCBC:@"decrypt" data:[[NSData alloc] initWithBase64EncodedString:cipherText options:0] key:key iv:iv algorithm:algorithm]; From f757727ca6f00a0e85b9f22cf1e31cdc6837677c Mon Sep 17 00:00:00 2001 From: ShahidJamal Ansari Date: Tue, 27 Aug 2024 16:50:30 +0530 Subject: [PATCH 4/7] - Readme file update and fix country flicker issue --- README.md | 130 ++++++++++++++++++ .../CountryLanguageConfirmation.tsx | 10 +- app/screens/localization/CountrySelection.tsx | 8 +- .../ro-MD.lproj/InfoPlist.strings | 8 ++ .../ro-RO.lproj/InfoPlist.strings | 8 ++ .../ro-MD.lproj/InfoPlist.strings | 8 ++ .../ro-RO.lproj/InfoPlist.strings | 8 ++ ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings | 8 ++ ios/ParentBuddyApp.xcodeproj/project.pbxproj | 43 ++++-- .../UserInterfaceState.xcuserstate | Bin 39310 -> 74924 bytes ios/ParentBuddyApp/PrivacyInfo.xcprivacy | 39 ++++++ ios/Podfile | 1 + package-lock.json | 12 +- 13 files changed, 261 insertions(+), 22 deletions(-) create mode 100644 ios/InfoPlist_Bebbo/ro-MD.lproj/InfoPlist.strings create mode 100644 ios/InfoPlist_Bebbo/ro-RO.lproj/InfoPlist.strings create mode 100644 ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings create mode 100644 ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings create mode 100644 ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings create mode 100644 ios/ParentBuddyApp/PrivacyInfo.xcprivacy diff --git a/README.md b/README.md index 5500bc1da..7f0b96f7f 100644 --- a/README.md +++ b/README.md @@ -149,6 +149,75 @@ After each time pod install, copy [CP-User] [RNFB] Core Configuration && [CP-Use Refer this library for custom fonts: https://github.com/oblador/react-native-vector-icons. 5. For Android, add keystore files into \android\app folder to generate Android build. + To add a keystore file to your Android project’s `android/app` folder and configure it for signing, follow these steps: + +### 1. **Obtain or Create a Keystore File** + +If you don’t already have a keystore file, you need to generate one. You can use the `keytool` command to create it: + +- Open a terminal or command prompt. +- Run the following command to generate a new keystore file: + + ```bash + keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias + ``` + +- Follow the prompts to enter details such as passwords, organizational information, etc. + +### 2. **Add the Keystore File to Your Project** + +- **Navigate to Your Project Directory:** + - Open your project in your file explorer or terminal. + - Go to the `android/app` directory of your project. + +- **Copy the Keystore File:** + - Move or copy your `my-release-key.jks` file into the `android/app` directory. + +### 3. **Configure Gradle for Signing** + +- **Open the `build.gradle` File:** + - In your project, navigate to `android/app/build.gradle`. + +- **Add Signing Configuration:** + - Modify the `build.gradle` file to include signing configuration. Add the following code inside the `android` block: + + ```groovy + android { + ... + signingConfigs { + release { + if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) { + storeFile file(MYAPP_RELEASE_STORE_FILE) + storePassword MYAPP_RELEASE_STORE_PASSWORD + keyAlias MYAPP_RELEASE_KEY_ALIAS + keyPassword MYAPP_RELEASE_KEY_PASSWORD + } + } + } + buildTypes { + release { + signingConfig signingConfigs.release + // Optional: Enable ProGuard to shrink and obfuscate code + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + } + ``` + +- **Add Signing Properties:** + - Create or update the `gradle.properties` file located in the `android/` directory of your project (if the file doesn’t exist, create it). + + - Add the following properties to `gradle.properties`: + + ```properties + MYAPP_RELEASE_STORE_FILE=my-release-key.jks + MYAPP_RELEASE_KEY_ALIAS=my-key-alias + MYAPP_RELEASE_STORE_PASSWORD=your-store-password + MYAPP_RELEASE_KEY_PASSWORD=your-key-password + ``` + + Replace `your-store-password` and `your-key-password` with the actual passwords you used when creating the keystore. 6. Configure Firebase services - [Create Firebase project](https://console.firebase.google.com/) @@ -294,6 +363,67 @@ Refer this library for custom fonts: https://github.com/oblador/react-native-vec encryptionsKey=d64e6a977f5643er90h8y5jk123n8bd88630jh56d34ddec874566342209y34 (Key for encryption) encryptionsIVKey=nm4532wsd67cv087452xci876bui9765 (Key for encryption) ``` + +--- + +## Steps to Generate Required Keys and Tokens + +### 1. Create Facebook App ID and Client Token + +#### Create a Facebook Developer Account +- Visit [Facebook for Developers](https://developers.facebook.com/). +- Log in with your Facebook account or create a new account. + +#### Create a New App +- Navigate to "My Apps" and click "Create App." +- Select the appropriate app type, such as "Consumer." +- Enter the app name as "Bebbo" and follow the instructions to complete the setup. + +#### Obtain the Facebook App ID +- Once the app is created, the **App ID** will be visible on your app dashboard. This is your `facebookAppId`. + +#### Generate a Client Token +- Go to "Settings" > "Basic" in your app dashboard. +- Scroll down to find the "Client Token" section. Click "Show" to view and copy your `facebookClientToken`. + +### 2. Generate Google Client ID + +#### Create a Google Developer Account +- Visit the [Google Cloud Console](https://console.cloud.google.com/). +- Sign in with your Google account. + +#### Create a New Project +- In the Google Cloud Console, click "Select a Project" > "New Project." +- Name your project (e.g., "Bebbo Production") and click "Create." + +#### Enable Google Sign-In API +- Navigate to "APIs & Services" > "Library." +- Search for "Google Sign-In API" and enable it for your project. + +#### Create OAuth 2.0 Client ID +- Go to "APIs & Services" > "Credentials." +- Click "Create Credentials" and choose "OAuth 2.0 Client ID." +- Configure the consent screen and then generate your `clientIdKey`. + +### 3. Generate AES-256 Encryption Key and IV Key + +#### Generate Encryption Key +You can use various tools or libraries to generate a 256-bit encryption key. Here’s how to do it using OpenSSL: + +```bash +openssl rand -hex 32 +``` +- The output will be a 64-character hexadecimal string. This is your `encryptionsKey`. + +#### Generate Initialization Vector (IV) +Similarly, generate a 128-bit IV: + +```bash +openssl rand -hex 16 +``` +- The output will be a 32-character hexadecimal string. This is your `encryptionsIVKey`. + +--- ## How to run After you install the application you can create build files for various flavors with below npx commands. diff --git a/app/screens/localization/CountryLanguageConfirmation.tsx b/app/screens/localization/CountryLanguageConfirmation.tsx index 915f8e7cb..de6c099de 100755 --- a/app/screens/localization/CountryLanguageConfirmation.tsx +++ b/app/screens/localization/CountryLanguageConfirmation.tsx @@ -292,7 +292,7 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { } }) - if (userIsOnboarded == true && (newLanguage.languageCode == languageCode)) { + if (userIsOnboarded == true && (newLanguage?.languageCode == languageCode)) { navigation.reset({ index: 0, routes: [ @@ -305,17 +305,17 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { if (Object.keys(route.params).length !== 0) { dispatch(onLocalizationSelect(route.params)); dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); - analytics().setUserProperties({ country: route.params.country.name, language: newLanguage.displayName }) + analytics().setUserProperties({ country: route.params?.country?.name, language: newLanguage?.displayName }) } else { console.log('countyData is', countryData); console.log('newLanguage is', newLanguage); const languageSelected = selectedLocale !== '' ? selectedLocale : locale; - const filteredLan = countryData?.languages?.filter((lang: any) => lang.locale == newLanguage?.locale); + const filteredLan = countryData?.languages?.filter((lang: any) => lang?.locale == newLanguage?.locale); console.log('filteredLan is', filteredLan); dispatch(onLocalizationSelect({ "languages": filteredLan, "countryId": countryData?.CountryID })); // dispatch(onLocalizationSelect(countryData)); dispatch(setInfoModalOpened({ key: 'dailyMessageNotification', value: '' })); - analytics().setUserProperties({ country: countryData.name, language: newLanguage.displayName }) + analytics().setUserProperties({ country: countryData?.name, language: newLanguage?.displayName }) } // if (userIsOnboarded == true) { @@ -414,7 +414,7 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { {t('language')} - {Array.isArray(route.params.language) ? language[0].displayName : newLanguage?.displayName} + {Array.isArray(route.params.language) ? language[0]?.displayName : newLanguage?.displayName} diff --git a/app/screens/localization/CountrySelection.tsx b/app/screens/localization/CountrySelection.tsx index c16506221..64d7ea0ff 100755 --- a/app/screens/localization/CountrySelection.tsx +++ b/app/screens/localization/CountrySelection.tsx @@ -186,8 +186,8 @@ data={allCountries} extraData={allCountries} renderItem={renderItem} - initialNumToRender={10} - windowSize={10} + initialNumToRender={20} + windowSize={20} showsVerticalScrollIndicator={false} keyExtractor={(item): any => item.CountryID} contentContainerStyle={contentContainer} @@ -199,8 +199,8 @@ extraData={allCountries} contentContainerStyle={{ flexDirection: 'column-reverse' }} renderItem={renderItem} - initialNumToRender={10} - windowSize={10} + initialNumToRender={20} + windowSize={20} showsVerticalScrollIndicator={false} keyExtractor={(item): any => item.CountryID} ListHeaderComponent={ allCountries.length <= 12 && renderHeader} diff --git a/ios/InfoPlist_Bebbo/ro-MD.lproj/InfoPlist.strings b/ios/InfoPlist_Bebbo/ro-MD.lproj/InfoPlist.strings new file mode 100644 index 000000000..10485b34a --- /dev/null +++ b/ios/InfoPlist_Bebbo/ro-MD.lproj/InfoPlist.strings @@ -0,0 +1,8 @@ +/* + InfoPlist.strings + ParentBuddyApp + + Created by Kalyani Kaushik on 18/11/21. + +*/ +"CFBundleDisplayName" = "Bebbo"; diff --git a/ios/InfoPlist_Bebbo/ro-RO.lproj/InfoPlist.strings b/ios/InfoPlist_Bebbo/ro-RO.lproj/InfoPlist.strings new file mode 100644 index 000000000..10485b34a --- /dev/null +++ b/ios/InfoPlist_Bebbo/ro-RO.lproj/InfoPlist.strings @@ -0,0 +1,8 @@ +/* + InfoPlist.strings + ParentBuddyApp + + Created by Kalyani Kaushik on 18/11/21. + +*/ +"CFBundleDisplayName" = "Bebbo"; diff --git a/ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings b/ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings new file mode 100644 index 000000000..d14ec59c9 --- /dev/null +++ b/ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings @@ -0,0 +1,8 @@ +/* + InfoPlist.strings + ParentBuddyApp + + Created by Kalyani Kaushik on 28/01/22. + +*/ +"CFBundleDisplayName" = "Foleja"; diff --git a/ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings b/ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings new file mode 100644 index 000000000..d14ec59c9 --- /dev/null +++ b/ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings @@ -0,0 +1,8 @@ +/* + InfoPlist.strings + ParentBuddyApp + + Created by Kalyani Kaushik on 28/01/22. + +*/ +"CFBundleDisplayName" = "Foleja"; diff --git a/ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings b/ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings new file mode 100644 index 000000000..d14ec59c9 --- /dev/null +++ b/ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings @@ -0,0 +1,8 @@ +/* + InfoPlist.strings + ParentBuddyApp + + Created by Kalyani Kaushik on 28/01/22. + +*/ +"CFBundleDisplayName" = "Foleja"; diff --git a/ios/ParentBuddyApp.xcodeproj/project.pbxproj b/ios/ParentBuddyApp.xcodeproj/project.pbxproj index 57c614460..3358a30ab 100644 --- a/ios/ParentBuddyApp.xcodeproj/project.pbxproj +++ b/ios/ParentBuddyApp.xcodeproj/project.pbxproj @@ -8,11 +8,13 @@ /* Begin PBXBuildFile section */ 00E356F31AD99517003FC87E /* ParentBuddyAppTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* ParentBuddyAppTests.m */; }; + 081C14B2DC79B1D70384A0C3 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = A00C6487B39E500734723D17 /* PrivacyInfo.xcprivacy */; }; 0C16CB43AF2C40A89CF6F187 /* roboto-regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 56DCFCF254384121AFD15232 /* roboto-regular.ttf */; }; 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 15F7B6DB5D7F147123177E3E /* libPods-ParentBuddyApp-ParentBuddyAppTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 432A8A94F0C66930E1F7016A /* libPods-ParentBuddyApp-ParentBuddyAppTests.a */; }; + 1AFDD7C717B12E89CE3C2D6C /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 492E984B5226853591DD685C /* PrivacyInfo.xcprivacy */; }; 2077C61FCCA3A2BD8E3C11FD /* libPods-ParentBuddyApp-ParentBuddyAppDev.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FBC23B934048ED268F478279 /* libPods-ParentBuddyApp-ParentBuddyAppDev.a */; }; 24BEB418EBAF998964A425BE /* libPods-ParentBuddyApp-ParentBuddyAppXkDev.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DDB6340EB3791CC48248F25E /* libPods-ParentBuddyApp-ParentBuddyAppXkDev.a */; }; 2A0F6AC26C074BD7B3F138D1 /* roboto-bold.woff2 in Resources */ = {isa = PBXBuildFile; fileRef = EFAF5542772A48CE96BF36C4 /* roboto-bold.woff2 */; }; @@ -20,6 +22,7 @@ 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 2D02E4BF1E0B4AB3006451C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; 2DCD954D1E0B4F2C00145EB5 /* ParentBuddyAppTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* ParentBuddyAppTests.m */; }; + 3410D6F0139A714924DD14D5 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 871A3BF5294A2DE0256686FC /* PrivacyInfo.xcprivacy */; }; 3580558E7BD2D316F00A7EEC /* libPods-ParentBuddyApp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 8E2E0B22C78C20B95241AC39 /* libPods-ParentBuddyApp.a */; }; 47893DF8512247D6A2F04AD0 /* roboto-regular.woff in Resources */ = {isa = PBXBuildFile; fileRef = ABE444F221AB4FE5BDD5591C /* roboto-regular.woff */; }; 518435E4BEEF40C098DA6032 /* roboto-regular.woff2 in Resources */ = {isa = PBXBuildFile; fileRef = 7E381652FDB746499AC00012 /* roboto-regular.woff2 */; }; @@ -85,6 +88,8 @@ BF9D73602805928300181FC5 /* Config.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = BF9D735C2805928300181FC5 /* Config.xcconfig */; }; C2B224109B97464BA2BE7AA6 /* roboto-bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = B2322BB70AFB4CA2937E3837 /* roboto-bold.ttf */; }; CE9E89C826F089CC0093EF36 /* Dynamic.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE9E89C726F089CC0093EF36 /* Dynamic.swift */; }; + D1FD13D2D2E7F73CD53FFF5D /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = E1DB7A4EAD2A3C97A397425A /* PrivacyInfo.xcprivacy */; }; + D8D252C2E5738A4222861898 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = D89C3517509234EC2CC2C78F /* PrivacyInfo.xcprivacy */; }; E81798CB2C64B0E600BE2C1E /* liblottie-ios.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E81798CA2C64B0E600BE2C1E /* liblottie-ios.a */; }; E81798CD2C64B0E600BE2C1E /* liblottie-react-native.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E81798CC2C64B0E600BE2C1E /* liblottie-react-native.a */; }; E81798CF2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E81798CE2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a */; }; @@ -126,6 +131,7 @@ 3705EF394AB98FEB7BCE1554 /* Pods-ParentBuddyApp.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp/Pods-ParentBuddyApp.debug.xcconfig"; sourceTree = ""; }; 41CBC1510C15E78878242D76 /* Pods-ParentBuddyApp-ParentBuddyAppTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-ParentBuddyAppTests.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppTests/Pods-ParentBuddyApp-ParentBuddyAppTests.debug.xcconfig"; sourceTree = ""; }; 432A8A94F0C66930E1F7016A /* libPods-ParentBuddyApp-ParentBuddyAppTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp-ParentBuddyAppTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 492E984B5226853591DD685C /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ParentBuddyApp/PrivacyInfo.xcprivacy; sourceTree = ""; }; 4E25AC1DE2F14816219BF0FA /* Pods-ParentBuddyApp-ParentBuddyAppDev.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-ParentBuddyAppDev.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppDev/Pods-ParentBuddyApp-ParentBuddyAppDev.debug.xcconfig"; sourceTree = ""; }; 56DCFCF254384121AFD15232 /* roboto-regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-regular.ttf"; path = "../app/assets/fonts/roboto/roboto-regular.ttf"; sourceTree = ""; }; 5EEE70F0FA9C4C97B81D5F41 /* roboto-bold.svg */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-bold.svg"; path = "../app/assets/fonts/roboto/roboto-bold.svg"; sourceTree = ""; }; @@ -135,7 +141,9 @@ 7E381652FDB746499AC00012 /* roboto-regular.woff2 */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-regular.woff2"; path = "../app/assets/fonts/roboto/roboto-regular.woff2"; sourceTree = ""; }; 81A194B472F3E51D586F7613 /* Pods-ParentBuddyApp-ParentBuddyAppXkDev.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp-ParentBuddyAppXkDev.debug.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp-ParentBuddyAppXkDev/Pods-ParentBuddyApp-ParentBuddyAppXkDev.debug.xcconfig"; sourceTree = ""; }; 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = ParentBuddyApp/LaunchScreen.storyboard; sourceTree = ""; }; + 871A3BF5294A2DE0256686FC /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ParentBuddyApp/PrivacyInfo.xcprivacy; sourceTree = ""; }; 8E2E0B22C78C20B95241AC39 /* libPods-ParentBuddyApp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + A00C6487B39E500734723D17 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ParentBuddyApp/PrivacyInfo.xcprivacy; sourceTree = ""; }; ABE444F221AB4FE5BDD5591C /* roboto-regular.woff */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-regular.woff"; path = "../app/assets/fonts/roboto/roboto-regular.woff"; sourceTree = ""; }; AF645B11569440C0AF006D46 /* roboto-bold.woff */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-bold.woff"; path = "../app/assets/fonts/roboto/roboto-bold.woff"; sourceTree = ""; }; B2322BB70AFB4CA2937E3837 /* roboto-bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-bold.ttf"; path = "../app/assets/fonts/roboto/roboto-bold.ttf"; sourceTree = ""; }; @@ -151,13 +159,11 @@ BF838CD827A43A2C00CC12B9 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; BF838CDA27A43A6500CC12B9 /* sq-AL */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sq-AL"; path = "sq-AL.lproj/InfoPlist.strings"; sourceTree = ""; }; BF838CDB27A43A6600CC12B9 /* sq-MK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "sq-MK"; path = "sq-MK.lproj/InfoPlist.strings"; sourceTree = ""; }; - BF838CDC27A43A6600CC12B9 /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/InfoPlist.strings; sourceTree = ""; }; BF838CDD27A43A6700CC12B9 /* be-BY */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "be-BY"; path = "be-BY.lproj/InfoPlist.strings"; sourceTree = ""; }; BF838CDE27A43A6800CC12B9 /* bg-BG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "bg-BG"; path = "bg-BG.lproj/InfoPlist.strings"; sourceTree = ""; }; BF838CDF27A43A6900CC12B9 /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/InfoPlist.strings; sourceTree = ""; }; BF838CE027A43A6A00CC12B9 /* ky-KG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ky-KG"; path = "ky-KG.lproj/InfoPlist.strings"; sourceTree = ""; }; BF838CE127A43A6B00CC12B9 /* mk-MK */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "mk-MK"; path = "mk-MK.lproj/InfoPlist.strings"; sourceTree = ""; }; - BF838CE227A43A6C00CC12B9 /* fa */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fa; path = fa.lproj/InfoPlist.strings; sourceTree = ""; }; BF838CE327A43A6D00CC12B9 /* ru-BY */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ru-BY"; path = "ru-BY.lproj/InfoPlist.strings"; sourceTree = ""; }; BF838CE427A43A6E00CC12B9 /* ru-KG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ru-KG"; path = "ru-KG.lproj/InfoPlist.strings"; sourceTree = ""; }; BF838CE527A43A6F00CC12B9 /* ru-RU */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ru-RU"; path = "ru-RU.lproj/InfoPlist.strings"; sourceTree = ""; }; @@ -179,10 +185,17 @@ CE9E89C626F089CC0093EF36 /* ParentBuddyApp-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ParentBuddyApp-Bridging-Header.h"; sourceTree = ""; }; CE9E89C726F089CC0093EF36 /* Dynamic.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dynamic.swift; sourceTree = ""; }; CF5A89EF45F5475AB99FA3D3 /* roboto-regular.svg */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "roboto-regular.svg"; path = "../app/assets/fonts/roboto/roboto-regular.svg"; sourceTree = ""; }; + D89C3517509234EC2CC2C78F /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ParentBuddyApp/PrivacyInfo.xcprivacy; sourceTree = ""; }; DDB6340EB3791CC48248F25E /* libPods-ParentBuddyApp-ParentBuddyAppXkDev.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ParentBuddyApp-ParentBuddyAppXkDev.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + E1DB7A4EAD2A3C97A397425A /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = ParentBuddyApp/PrivacyInfo.xcprivacy; sourceTree = ""; }; E81798CA2C64B0E600BE2C1E /* liblottie-ios.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "liblottie-ios.a"; sourceTree = BUILT_PRODUCTS_DIR; }; E81798CC2C64B0E600BE2C1E /* liblottie-react-native.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "liblottie-react-native.a"; sourceTree = BUILT_PRODUCTS_DIR; }; E81798CE2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "libreact-native-lottie-splash-screen.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + E8F4DF342C7DD2930054CFAA /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; + E8F4DF352C7DD2F20054CFAA /* ro-RO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-RO"; path = "ro-RO.lproj/InfoPlist.strings"; sourceTree = ""; }; + E8F4DF362C7DD2F20054CFAA /* ro-RO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-RO"; path = "ro-RO.lproj/InfoPlist.strings"; sourceTree = ""; }; + E8F4DF372C7DD30F0054CFAA /* ro-MD */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-MD"; path = "ro-MD.lproj/InfoPlist.strings"; sourceTree = ""; }; + E8F4DF382C7DD30F0054CFAA /* ro-MD */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-MD"; path = "ro-MD.lproj/InfoPlist.strings"; sourceTree = ""; }; E9425AEFEF25A885A00867F2 /* Pods-ParentBuddyApp.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp.release.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp/Pods-ParentBuddyApp.release.xcconfig"; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; @@ -286,6 +299,7 @@ 13B07FB61A68108700A75B9A /* Info.plist */, 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */, 13B07FB71A68108700A75B9A /* main.m */, + D89C3517509234EC2CC2C78F /* PrivacyInfo.xcprivacy */, ); name = ParentBuddyApp; sourceTree = ""; @@ -361,6 +375,10 @@ BF838CBB27A42D8000CC12B9 /* ParentBuddyAppXk-Info.plist */, BF838D0D27A7E21500CC12B9 /* ParentBuddyAppDev-Info.plist */, BF838D3227A8082D00CC12B9 /* ParentBuddyAppXkDev-Info.plist */, + A00C6487B39E500734723D17 /* PrivacyInfo.xcprivacy */, + 492E984B5226853591DD685C /* PrivacyInfo.xcprivacy */, + E1DB7A4EAD2A3C97A397425A /* PrivacyInfo.xcprivacy */, + 871A3BF5294A2DE0256686FC /* PrivacyInfo.xcprivacy */, ); indentWidth = 2; sourceTree = ""; @@ -676,12 +694,13 @@ "ru-BY", "ru-RU", "sr-Latn-ME", - fa, - ar, Base, "sr-Latn-XK", "sq-XK", uk, + sk, + "ro-RO", + "ro-MD", ); mainGroup = 83CBB9F61A601CBA00E9B192; productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; @@ -725,6 +744,7 @@ 518435E4BEEF40C098DA6032 /* roboto-regular.woff2 in Resources */, BF9D735D2805928300181FC5 /* Config.xcconfig in Resources */, BF362F2327B288BD000E92B9 /* splash.json in Resources */, + D8D252C2E5738A4222861898 /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -733,6 +753,7 @@ buildActionMask = 2147483647; files = ( 2D02E4BD1E0B4A84006451C7 /* Images.xcassets in Resources */, + 081C14B2DC79B1D70384A0C3 /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -761,6 +782,7 @@ BF838CB127A42D8000CC12B9 /* roboto-regular.woff2 in Resources */, BF9D735E2805928300181FC5 /* Config.xcconfig in Resources */, BF362F2627B288D3000E92B9 /* splash.json in Resources */, + 1AFDD7C717B12E89CE3C2D6C /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -782,6 +804,7 @@ BF838D1227A7E78B00CC12B9 /* GoogleService-Info.plist in Resources */, BF9D735F2805928300181FC5 /* Config.xcconfig in Resources */, BF362F2427B288BD000E92B9 /* splash.json in Resources */, + D1FD13D2D2E7F73CD53FFF5D /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -803,6 +826,7 @@ BF838D2A27A8082B00CC12B9 /* roboto-regular.woff2 in Resources */, BF9D73602805928300181FC5 /* Config.xcconfig in Resources */, BF362F2727B288D3000E92B9 /* splash.json in Resources */, + 3410D6F0139A714924DD14D5 /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1811,13 +1835,11 @@ BF838CD327A439F900CC12B9 /* en */, BF838CDA27A43A6500CC12B9 /* sq-AL */, BF838CDB27A43A6600CC12B9 /* sq-MK */, - BF838CDC27A43A6600CC12B9 /* ar */, BF838CDD27A43A6700CC12B9 /* be-BY */, BF838CDE27A43A6800CC12B9 /* bg-BG */, BF838CDF27A43A6900CC12B9 /* el */, BF838CE027A43A6A00CC12B9 /* ky-KG */, BF838CE127A43A6B00CC12B9 /* mk-MK */, - BF838CE227A43A6C00CC12B9 /* fa */, BF838CE327A43A6D00CC12B9 /* ru-BY */, BF838CE427A43A6E00CC12B9 /* ru-KG */, BF838CE527A43A6F00CC12B9 /* ru-RU */, @@ -1826,6 +1848,8 @@ BF838CE827A43A7600CC12B9 /* tg-TJ */, BF838CE927A43A7700CC12B9 /* uz-UZ */, BFB0EA2627EAFC0D004ECAC1 /* uk */, + E8F4DF352C7DD2F20054CFAA /* ro-RO */, + E8F4DF372C7DD30F0054CFAA /* ro-MD */, ); name = InfoPlist.strings; sourceTree = ""; @@ -1836,6 +1860,9 @@ BF838CD827A43A2C00CC12B9 /* en */, BF838CEB27A441FC00CC12B9 /* sr-Latn-XK */, BF838CEC27A4423D00CC12B9 /* sq-XK */, + E8F4DF342C7DD2930054CFAA /* sk */, + E8F4DF362C7DD2F20054CFAA /* ro-RO */, + E8F4DF382C7DD30F0054CFAA /* ro-MD */, ); name = InfoPlist.strings; sourceTree = ""; @@ -1897,7 +1924,7 @@ CODE_SIGN_ENTITLEMENTS = ParentBuddyApp/ParentBuddyApp.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 24; + CURRENT_PROJECT_VERSION = 25; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = K288UMKCNF; ENABLE_BITCODE = NO; @@ -2016,7 +2043,7 @@ CODE_SIGN_ENTITLEMENTS = ParentBuddyApp/ParentBuddyApp.entitlements; CODE_SIGN_IDENTITY = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 24; + CURRENT_PROJECT_VERSION = 25; DEFINES_MODULE = YES; DEVELOPMENT_TEAM = K288UMKCNF; INFOPLIST_FILE = ParentBuddyApp/Info.plist; diff --git a/ios/ParentBuddyApp.xcworkspace/xcuserdata/ansari.xcuserdatad/UserInterfaceState.xcuserstate b/ios/ParentBuddyApp.xcworkspace/xcuserdata/ansari.xcuserdatad/UserInterfaceState.xcuserstate index d100a39dae62c8cc65bff246784577bb95997a84..0a038cff446706c87b1fb6bc548938235ffa6cd2 100644 GIT binary patch literal 74924 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 + + + + NSPrivacyAccessedAPITypes + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryUserDefaults + NSPrivacyAccessedAPITypeReasons + + CA92.1 + 1C8F.1 + C56D.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategoryFileTimestamp + NSPrivacyAccessedAPITypeReasons + + C617.1 + + + + NSPrivacyAccessedAPIType + NSPrivacyAccessedAPICategorySystemBootTime + NSPrivacyAccessedAPITypeReasons + + 35F9.1 + + + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/ios/Podfile b/ios/Podfile index a035475fe..1984b95ed 100755 --- a/ios/Podfile +++ b/ios/Podfile @@ -135,6 +135,7 @@ target 'ParentBuddyApp' do __apply_Xcode_12_5_M1_post_install_workaround(installer) installer.pods_project.targets.each do |target| target.build_configurations.each do |config| + privacy_info_path = File.join(File.dirname(__FILE__), 'ios/PrivacyInfo.xcprivacy') config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64' config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = "" config.build_settings['CODE_SIGNING_REQUIRED'] = "NO" diff --git a/package-lock.json b/package-lock.json index eadc6c431..26fb01829 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12954,7 +12954,8 @@ "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -14077,11 +14078,11 @@ } }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -21706,6 +21707,7 @@ "version": "4.0.2", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "signal-exit": "^3.0.7" From 965da975add06d977eada47c384064819b0dfd72 Mon Sep 17 00:00:00 2001 From: ShahidJamal Ansari Date: Tue, 27 Aug 2024 21:43:26 +0530 Subject: [PATCH 5/7] - add environment set up steps in readme file --- README.md | 95 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 48 insertions(+), 47 deletions(-) diff --git a/README.md b/README.md index 7f0b96f7f..42b9b8e96 100644 --- a/README.md +++ b/README.md @@ -78,6 +78,7 @@ Several third party libraries and services are incorporated. These are the most * Either Mac or Windows can be used for development. * Follow [these instructions](https://reactnative.dev/docs/environment-setup) in order to prepare machine for development, specifically “React Native CLI Quickstart”. +* Follow [these instructions](https://reactnative.dev/docs/set-up-your-environment?os=macos&platform=android) to Set up Environment for React Native Development. ## Install Bebbo in localhost @@ -151,59 +152,59 @@ Refer this library for custom fonts: https://github.com/oblador/react-native-vec 5. For Android, add keystore files into \android\app folder to generate Android build. To add a keystore file to your Android project’s `android/app` folder and configure it for signing, follow these steps: -### 1. **Obtain or Create a Keystore File** - -If you don’t already have a keystore file, you need to generate one. You can use the `keytool` command to create it: - -- Open a terminal or command prompt. -- Run the following command to generate a new keystore file: - - ```bash - keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias - ``` - -- Follow the prompts to enter details such as passwords, organizational information, etc. - -### 2. **Add the Keystore File to Your Project** - -- **Navigate to Your Project Directory:** - - Open your project in your file explorer or terminal. - - Go to the `android/app` directory of your project. - -- **Copy the Keystore File:** - - Move or copy your `my-release-key.jks` file into the `android/app` directory. - -### 3. **Configure Gradle for Signing** - -- **Open the `build.gradle` File:** - - In your project, navigate to `android/app/build.gradle`. + 5.1. *Obtain or Create a Keystore File* + + If you don’t already have a keystore file, you need to generate one. You can use the `keytool` command to create it: + + - Open a terminal or command prompt. + - Run the following command to generate a new keystore file: + + ```bash + keytool -genkey -v -keystore my-release-key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias my-key-alias + ``` + + - Follow the prompts to enter details such as passwords, organizational information, etc. -- **Add Signing Configuration:** - - Modify the `build.gradle` file to include signing configuration. Add the following code inside the `android` block: + 5.2. *Add the Keystore File to Your Project* + + - *Navigate to Your Project Directory:* + - Open your project in your file explorer or terminal. + - Go to the `android/app` directory of your project. + + - *Copy the Keystore File:* + - Move or copy your `my-release-key.jks` file into the `android/app` directory. - ```groovy - android { - ... - signingConfigs { - release { - if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) { - storeFile file(MYAPP_RELEASE_STORE_FILE) - storePassword MYAPP_RELEASE_STORE_PASSWORD - keyAlias MYAPP_RELEASE_KEY_ALIAS - keyPassword MYAPP_RELEASE_KEY_PASSWORD + 5.3. *Configure Gradle for Signing* + + - *Open the `build.gradle` File:* + - In your project, navigate to `android/app/build.gradle`. + + - *Add Signing Configuration:* + - Modify the `build.gradle` file to include signing configuration. Add the following code inside the `android` block: + + ```groovy + android { + ... + signingConfigs { + release { + if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) { + storeFile file(MYAPP_RELEASE_STORE_FILE) + storePassword MYAPP_RELEASE_STORE_PASSWORD + keyAlias MYAPP_RELEASE_KEY_ALIAS + keyPassword MYAPP_RELEASE_KEY_PASSWORD + } } } - } - buildTypes { - release { - signingConfig signingConfigs.release - // Optional: Enable ProGuard to shrink and obfuscate code - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + buildTypes { + release { + signingConfig signingConfigs.release + // Optional: Enable ProGuard to shrink and obfuscate code + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } } } - } - ``` + ``` - **Add Signing Properties:** - Create or update the `gradle.properties` file located in the `android/` directory of your project (if the file doesn’t exist, create it). From df15911412e8766fab9b2c9666e89eb19e942858 Mon Sep 17 00:00:00 2001 From: ShahidJamal Ansari Date: Thu, 29 Aug 2024 12:08:59 +0530 Subject: [PATCH 6/7] - Changes based on review comment of akhror --- README.md | 8 +++--- app/components/HeaderBabyMenu.tsx | 2 +- app/components/HeaderNotiIcon.tsx | 4 +-- app/components/homeScreen/DailyReads.tsx | 2 +- app/screens/home/SettingScreen.tsx | 2 -- .../CountryLanguageConfirmation.tsx | 19 ++++++++----- app/screens/localization/CountrySelection.tsx | 27 ------------------- .../sk.lproj/InfoPlist.strings | 0 .../ro-MD.lproj/InfoPlist.strings | 8 ------ .../ro-RO.lproj/InfoPlist.strings | 8 ------ ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings | 8 ------ ios/ParentBuddyApp.xcodeproj/project.pbxproj | 18 +++++-------- 12 files changed, 28 insertions(+), 78 deletions(-) mode change 100755 => 100644 ios/InfoPlist_Bebbo/sk.lproj/InfoPlist.strings delete mode 100644 ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings delete mode 100644 ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings delete mode 100644 ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings diff --git a/README.md b/README.md index 42b9b8e96..063cda6fc 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,7 @@ Several third party libraries and services are incorporated. These are the most * Either Mac or Windows can be used for development. * Follow [these instructions](https://reactnative.dev/docs/environment-setup) in order to prepare machine for development, specifically “React Native CLI Quickstart”. -* Follow [these instructions](https://reactnative.dev/docs/set-up-your-environment?os=macos&platform=android) to Set up Environment for React Native Development. +* Follow [these instructions](https://reactnative.dev/docs/set-up-your-environment?os=macos&platform=android) to set up environment for React Native development. ## Install Bebbo in localhost @@ -150,9 +150,9 @@ After each time pod install, copy [CP-User] [RNFB] Core Configuration && [CP-Use Refer this library for custom fonts: https://github.com/oblador/react-native-vector-icons. 5. For Android, add keystore files into \android\app folder to generate Android build. - To add a keystore file to your Android project’s `android/app` folder and configure it for signing, follow these steps: + To add a keystore file to your Android project’s `android/app` folder and configure it for signing, Follow the following steps to add keystore file.: - 5.1. *Obtain or Create a Keystore File* + 5.1. *Obtain or create a keystore file* If you don’t already have a keystore file, you need to generate one. You can use the `keytool` command to create it: @@ -165,7 +165,7 @@ Refer this library for custom fonts: https://github.com/oblador/react-native-vec - Follow the prompts to enter details such as passwords, organizational information, etc. - 5.2. *Add the Keystore File to Your Project* + 5.2. *Add a keystore file to the project* - *Navigate to Your Project Directory:* - Open your project in your file explorer or terminal. diff --git a/app/components/HeaderBabyMenu.tsx b/app/components/HeaderBabyMenu.tsx index 4058cd101..c4f4a2938 100755 --- a/app/components/HeaderBabyMenu.tsx +++ b/app/components/HeaderBabyMenu.tsx @@ -209,7 +209,7 @@ const HeaderBabyMenu = (props: any): any => { ) : ( - {(data.photoUri != '' && data.photoUri != null) ? ( + {(data.photoUri) ? ( diff --git a/app/components/HeaderNotiIcon.tsx b/app/components/HeaderNotiIcon.tsx index 776282804..38d97b265 100755 --- a/app/components/HeaderNotiIcon.tsx +++ b/app/components/HeaderNotiIcon.tsx @@ -335,8 +335,8 @@ const HeaderNotiIcon = (props: any): any => { childData[0]?.favoriteadvices && dispatch(setFavouriteAdvices(Object.values(childData[0]?.favoriteadvices)|| [])); childData[0]?.favoritegames && dispatch(setFavouriteGames(Object.values(childData[0]?.favoritegames) || [])); - } catch(err){ - console.log("fetchDataFav catch ",err) + } catch(err:any){ + console.error("Error in fetchDataFav:", err.message || err); } } diff --git a/app/components/homeScreen/DailyReads.tsx b/app/components/homeScreen/DailyReads.tsx index 88825dea0..4bc31e2f3 100755 --- a/app/components/homeScreen/DailyReads.tsx +++ b/app/components/homeScreen/DailyReads.tsx @@ -291,7 +291,7 @@ const DailyReads = (): any => { } }); - if (articleDataToShow.length === 0 && articleDataToShow.length === 0) { + if (articleDataToShow.length === 0 && activityDataToShow.length === 0) { dispatch(setDailyArticleGamesCategory({})); dispatch(setShowedDailyDataCategory({})); } diff --git a/app/screens/home/SettingScreen.tsx b/app/screens/home/SettingScreen.tsx index 2945ed054..7fe26d827 100755 --- a/app/screens/home/SettingScreen.tsx +++ b/app/screens/home/SettingScreen.tsx @@ -733,8 +733,6 @@ const SettingScreen = (props: any): any => { if (res.length > 0 && res[0].uri) { if (res[0].name.endsWith(".json")) { const decryptFileContent: any = await RNFS.readFile(decodeURIComponent(res[0].uri), 'utf8').then((edata: any) => { - console.log("edata", edata); - console.log("encryptionsKey", encryptionsKey); return decryptData(edata, encryptionsKey) .then((text: any) => { //console.log('decryptData',text) diff --git a/app/screens/localization/CountryLanguageConfirmation.tsx b/app/screens/localization/CountryLanguageConfirmation.tsx index de6c099de..e3c47a196 100755 --- a/app/screens/localization/CountryLanguageConfirmation.tsx +++ b/app/screens/localization/CountryLanguageConfirmation.tsx @@ -199,7 +199,7 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { ) setSponsorsData(selectedCountry); - const foundCountry = allCountries.length === 1 ? allCountries?.[0] : getCountryByCountryCode(RNLocalize.getCountry()); + const foundCountry = allCountries?.length === 1 ? allCountries?.[0] : getCountryByCountryCode(RNLocalize.getCountry()); console.log('Found country is', foundCountry) if (foundCountry != undefined && foundCountry != null) { if (countrySelectedId == 0) { @@ -329,7 +329,7 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { }); } } - const saveSelection = (): any => { + const saveSelection = (): void => { i18n.changeLanguage(newLanguage?.locale || "en") .then(() => { if (buildFor == buildForBebbo) { @@ -341,8 +341,8 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { Alert.alert(t('restOfTheWorldAlertTitle'), t('restOfTheWorldAlertText'), [ { - text: t('restOfTheWorldOkTitle'), onPress: async (): Promise => { - rtlConditions(newLanguage) + text: t('restOfTheWorldOkTitle'), onPress: async (): Promise => { + await rtlConditions(newLanguage) } } ] @@ -367,9 +367,16 @@ const CountryLanguageConfirmation = ({ route }: Props): any => { if (allCountries?.length == 1 && allCountries?.[0]?.languages?.length === 1) { saveSelection() } else if (allCountries?.length == 1) { - navigation.navigate('LanguageSelection', { country: countryData, language: newLanguage,isFromCountry:true }) + navigation.navigate('LanguageSelection', { + country: countryData, + language: newLanguage, + isFromCountry:true + }) } else { - navigation.navigate('CountrySelection', { country: countryData, language: newLanguage }) + navigation.navigate('CountrySelection', { + country: countryData, + language: newLanguage + }) } } diff --git a/app/screens/localization/CountrySelection.tsx b/app/screens/localization/CountrySelection.tsx index 64d7ea0ff..c891c6008 100755 --- a/app/screens/localization/CountrySelection.tsx +++ b/app/screens/localization/CountrySelection.tsx @@ -170,7 +170,6 @@ { console.log('Back icon click') - // navigation.navigate('CountryLanguageConfirmation') navigation.goBack() }} > @@ -206,34 +205,8 @@ ListHeaderComponent={ allCountries.length <= 12 && renderHeader} />} - {/* {country ? ( - - - - { - - props.navigation.navigate('LanguageSelection', { country: country, language: language, luxonlocale: luxonLanLocale != undefined ? luxonLanLocale : null, deviceLanCode: deviceLanCode != undefined ? deviceLanCode : null }) - } - }> - - - - - - ) : ( - - { - console.log("pressed") - }}> - - - - )} */} {allCountries.length > 12 && renderHeader()} - - ); diff --git a/ios/InfoPlist_Bebbo/sk.lproj/InfoPlist.strings b/ios/InfoPlist_Bebbo/sk.lproj/InfoPlist.strings old mode 100755 new mode 100644 diff --git a/ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings b/ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings deleted file mode 100644 index d14ec59c9..000000000 --- a/ios/InfoPlist_Xk/ro-MD.lproj/InfoPlist.strings +++ /dev/null @@ -1,8 +0,0 @@ -/* - InfoPlist.strings - ParentBuddyApp - - Created by Kalyani Kaushik on 28/01/22. - -*/ -"CFBundleDisplayName" = "Foleja"; diff --git a/ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings b/ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings deleted file mode 100644 index d14ec59c9..000000000 --- a/ios/InfoPlist_Xk/ro-RO.lproj/InfoPlist.strings +++ /dev/null @@ -1,8 +0,0 @@ -/* - InfoPlist.strings - ParentBuddyApp - - Created by Kalyani Kaushik on 28/01/22. - -*/ -"CFBundleDisplayName" = "Foleja"; diff --git a/ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings b/ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings deleted file mode 100644 index d14ec59c9..000000000 --- a/ios/InfoPlist_Xk/sk.lproj/InfoPlist.strings +++ /dev/null @@ -1,8 +0,0 @@ -/* - InfoPlist.strings - ParentBuddyApp - - Created by Kalyani Kaushik on 28/01/22. - -*/ -"CFBundleDisplayName" = "Foleja"; diff --git a/ios/ParentBuddyApp.xcodeproj/project.pbxproj b/ios/ParentBuddyApp.xcodeproj/project.pbxproj index 3358a30ab..52f5de96f 100644 --- a/ios/ParentBuddyApp.xcodeproj/project.pbxproj +++ b/ios/ParentBuddyApp.xcodeproj/project.pbxproj @@ -191,11 +191,9 @@ E81798CA2C64B0E600BE2C1E /* liblottie-ios.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "liblottie-ios.a"; sourceTree = BUILT_PRODUCTS_DIR; }; E81798CC2C64B0E600BE2C1E /* liblottie-react-native.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "liblottie-react-native.a"; sourceTree = BUILT_PRODUCTS_DIR; }; E81798CE2C64B0E600BE2C1E /* libreact-native-lottie-splash-screen.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; path = "libreact-native-lottie-splash-screen.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - E8F4DF342C7DD2930054CFAA /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; - E8F4DF352C7DD2F20054CFAA /* ro-RO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-RO"; path = "ro-RO.lproj/InfoPlist.strings"; sourceTree = ""; }; - E8F4DF362C7DD2F20054CFAA /* ro-RO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-RO"; path = "ro-RO.lproj/InfoPlist.strings"; sourceTree = ""; }; - E8F4DF372C7DD30F0054CFAA /* ro-MD */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-MD"; path = "ro-MD.lproj/InfoPlist.strings"; sourceTree = ""; }; - E8F4DF382C7DD30F0054CFAA /* ro-MD */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-MD"; path = "ro-MD.lproj/InfoPlist.strings"; sourceTree = ""; }; + E8F4DF392C7F0B920054CFAA /* ro-RO */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-RO"; path = "ro-RO.lproj/InfoPlist.strings"; sourceTree = ""; }; + E8F4DF3A2C7F0BC10054CFAA /* ro-MD */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ro-MD"; path = "ro-MD.lproj/InfoPlist.strings"; sourceTree = ""; }; + E8F4DF3B2C7F0C070054CFAA /* sk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sk; path = sk.lproj/InfoPlist.strings; sourceTree = ""; }; E9425AEFEF25A885A00867F2 /* Pods-ParentBuddyApp.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ParentBuddyApp.release.xcconfig"; path = "Target Support Files/Pods-ParentBuddyApp/Pods-ParentBuddyApp.release.xcconfig"; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; @@ -698,9 +696,9 @@ "sr-Latn-XK", "sq-XK", uk, - sk, "ro-RO", "ro-MD", + sk, ); mainGroup = 83CBB9F61A601CBA00E9B192; productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; @@ -1848,8 +1846,9 @@ BF838CE827A43A7600CC12B9 /* tg-TJ */, BF838CE927A43A7700CC12B9 /* uz-UZ */, BFB0EA2627EAFC0D004ECAC1 /* uk */, - E8F4DF352C7DD2F20054CFAA /* ro-RO */, - E8F4DF372C7DD30F0054CFAA /* ro-MD */, + E8F4DF392C7F0B920054CFAA /* ro-RO */, + E8F4DF3A2C7F0BC10054CFAA /* ro-MD */, + E8F4DF3B2C7F0C070054CFAA /* sk */, ); name = InfoPlist.strings; sourceTree = ""; @@ -1860,9 +1859,6 @@ BF838CD827A43A2C00CC12B9 /* en */, BF838CEB27A441FC00CC12B9 /* sr-Latn-XK */, BF838CEC27A4423D00CC12B9 /* sq-XK */, - E8F4DF342C7DD2930054CFAA /* sk */, - E8F4DF362C7DD2F20054CFAA /* ro-RO */, - E8F4DF382C7DD30F0054CFAA /* ro-MD */, ); name = InfoPlist.strings; sourceTree = ""; From 65b043949bebe613a8a4687a3ee1efc6847db36f Mon Sep 17 00:00:00 2001 From: ShahidJamal Ansari Date: Thu, 29 Aug 2024 12:57:22 +0530 Subject: [PATCH 7/7] update npm version --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 063cda6fc..5cfb950e5 100644 --- a/README.md +++ b/README.md @@ -47,7 +47,7 @@ The app can also operate in an offline mode in environments with limited interne * [NPM](https://nodejs.org/en/) * NPM (Node Package Manager) was used to install third party packages and to run various scripts necessary during development. * Node version - 21.7.3 - * NPM version - 10.3.0 + * NPM version - 10.8.2