Skip to content

Commit

Permalink
Merge pull request #992 from UNICEFECAR/fixBuglistBebbo
Browse files Browse the repository at this point in the history
Fix buglist bebbo
  • Loading branch information
ansariDataamanulla authored Aug 29, 2024
2 parents 1c5d831 + 65b0439 commit f861193
Show file tree
Hide file tree
Showing 129 changed files with 2,765 additions and 2,146 deletions.
133 changes: 132 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
<!--
* [Storybook](https://storybook.js.org/)
* Storybook was used to create visual tests for many components and services used in the application.
Expand Down Expand Up @@ -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

Expand Down Expand Up @@ -149,6 +150,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 the following steps to add 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:

- 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.

5.2. *Add a keystore file to the 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.

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'
}
}
}
```
- **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/)
Expand Down Expand Up @@ -294,6 +364,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.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="64dp"
android:height="64dp"
android:viewportWidth="64"
android:viewportHeight="64">
<path
android:pathData="M32,32m-32,0a32,32 0,1 1,64 0a32,32 0,1 1,-64 0"
android:strokeAlpha="0.2"
android:fillColor="#00833D"
android:fillAlpha="0.2"/>
<group>
<clip-path
android:pathData="M16,16h31v31h-31z"/>
<path
android:pathData="M44.1301,45.0006H36.5222C36.4038,45.0002 36.2903,44.953 36.2065,44.8693C36.1228,44.7855 36.0756,44.6721 36.0753,44.5536V42.9494C36.085,42.4022 35.9856,41.8586 35.7829,41.3503C35.5802,40.842 35.2783,40.3792 34.8948,39.9888C34.5113,39.5984 34.0538,39.2883 33.5492,39.0767C33.0445,38.865 32.5027,38.756 31.9555,38.756C31.4082,38.756 30.8665,38.865 30.3619,39.0767C29.8572,39.2883 29.3998,39.5984 29.0163,39.9888C28.6328,40.3792 28.3308,40.842 28.1281,41.3503C27.9254,41.8586 27.826,42.4022 27.8357,42.9494V44.5536C27.8354,44.6721 27.7882,44.7855 27.7044,44.8693C27.6207,44.953 27.5073,45.0002 27.3888,45.0006H19.7809C19.6625,45.0002 19.549,44.953 19.4652,44.8693C19.3815,44.7855 19.3343,44.6721 19.334,44.5536V34.799C19.3343,34.6806 19.3815,34.5671 19.4652,34.4834C19.549,34.3996 19.6625,34.3524 19.7809,34.3521H44.1301C44.2485,34.3527 44.3617,34.4 44.4454,34.4837C44.5291,34.5674 44.5763,34.6807 44.577,34.799V44.5536C44.5753,44.6717 44.5278,44.7844 44.4443,44.8678C44.3609,44.9513 44.2481,44.9989 44.1301,45.0006ZM36.9691,44.1054H43.6858V35.2433H20.2188V44.1042H26.9355V42.9416C26.9355,41.6116 27.4638,40.336 28.4043,39.3956C29.3447,38.4551 30.6203,37.9268 31.9504,37.9268C33.2804,37.9268 34.5559,38.4551 35.4964,39.3956C36.4368,40.336 36.9653,41.6116 36.9653,42.9416V44.1042L36.9691,44.1054Z"
android:fillColor="#070707"/>
<path
android:pathData="M30.3698,35.2459H22.7606C22.6424,35.2452 22.5293,35.1979 22.4458,35.1142C22.3624,35.0305 22.3153,34.9172 22.3149,34.799V27.191C22.3153,27.0728 22.3624,26.9595 22.4458,26.8758C22.5293,26.7921 22.6424,26.7448 22.7606,26.7441H30.3698C30.4881,26.7448 30.6014,26.7921 30.6851,26.8758C30.7687,26.9594 30.8161,27.0727 30.8167,27.191V34.799C30.8174,34.8578 30.8063,34.9163 30.7841,34.9708C30.7619,35.0253 30.729,35.0749 30.6874,35.1165C30.6457,35.1582 30.5962,35.191 30.5417,35.2133C30.4871,35.2355 30.4287,35.2466 30.3698,35.2459ZM23.214,34.352H29.9306V27.6354H23.214V34.352Z"
android:fillColor="#070707"/>
<path
android:pathData="M41.4601,35.2459H33.8522C33.7338,35.2456 33.6203,35.1983 33.5365,35.1146C33.4528,35.0308 33.4056,34.9174 33.4053,34.799V27.191C33.4056,27.0726 33.4528,26.9591 33.5365,26.8754C33.6203,26.7917 33.7338,26.7445 33.8522,26.7441H41.4601C41.5786,26.7445 41.692,26.7917 41.7757,26.8754C41.8595,26.9591 41.9066,27.0726 41.907,27.191V34.799C41.9073,34.8577 41.8961,34.916 41.8737,34.9704C41.8514,35.0248 41.8185,35.0742 41.7769,35.1157C41.7353,35.1573 41.6859,35.1902 41.6315,35.2125C41.5772,35.2349 41.5189,35.2462 41.4601,35.2459ZM34.3004,34.352H41.0171V27.6354H34.3004V34.352Z"
android:fillColor="#070707"/>
<path
android:pathData="M41.4617,27.6431H22.7726C22.6542,27.6427 22.5407,27.5956 22.4569,27.5118C22.3732,27.4281 22.326,27.3146 22.3257,27.1962V24.0768C22.326,23.9584 22.3732,23.8449 22.4569,23.7611C22.5407,23.6774 22.6542,23.6302 22.7726,23.6299H41.4656C41.5838,23.6306 41.6969,23.6779 41.7804,23.7616C41.8638,23.8453 41.9108,23.9586 41.9112,24.0768V27.1962C41.911,27.255 41.8993,27.3133 41.8766,27.3676C41.8539,27.4219 41.8208,27.4712 41.779,27.5127C41.7373,27.5542 41.6878,27.5871 41.6334,27.6095C41.5789,27.6318 41.5206,27.6433 41.4617,27.6431ZM23.2156,26.7493H41.0199V24.525H23.2143L23.2156,26.7493Z"
android:fillColor="#070707"/>
<path
android:pathData="M25.9553,24.0174H24.6895L31.6076,17.1005C31.6918,17.017 31.8055,16.9702 31.9241,16.9702C32.0426,16.9702 32.1564,17.017 32.2405,17.1005L39.1561,24.0174H37.8942L31.9241,18.0486L25.9553,24.0174Z"
android:fillColor="#070707"/>
</group>
</vector>
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="64dp"
android:height="64dp"
android:viewportWidth="64"
android:viewportHeight="64">
<path
android:pathData="M32,32m-32,0a32,32 0,1 1,64 0a32,32 0,1 1,-64 0"
android:strokeAlpha="0.2"
android:fillColor="#E24C1C"
android:fillAlpha="0.2"/>
<group>
<clip-path
android:pathData="M17,18h29v29h-29z"/>
<path
android:pathData="M31.5208,44.0119H30.9337C30.8041,44.0119 30.6766,43.9796 30.5624,43.9178C30.4483,43.856 30.351,43.7667 30.2794,43.6579C29.6847,42.7552 28.878,42.0147 27.931,41.5023C26.9841,40.9898 25.9263,40.7212 24.8516,40.7204H17.9104C17.701,40.7194 17.5004,40.6351 17.3523,40.4858C17.2042,40.3364 17.1206,40.1341 17.1196,39.9229V22.3634C17.1196,22.1517 17.2029,21.9486 17.3511,21.7986C17.4993,21.6487 17.7005,21.5641 17.9104,21.5635H26.595C27.6935,21.5655 28.7625,21.9225 29.6451,22.5821C30.5277,23.2417 31.1775,24.1691 31.4992,25.2284C31.8213,24.1691 32.4714,23.2417 33.3542,22.5822C34.2369,21.9227 35.306,21.5657 36.4046,21.5635H45.088C45.2977,21.5644 45.4986,21.6491 45.6465,21.799C45.7945,21.949 45.8776,22.1519 45.8776,22.3634V39.9229C45.8766,40.1343 45.7929,40.3368 45.6445,40.4862C45.4961,40.6356 45.2952,40.7198 45.0856,40.7204H38.148C37.0735,40.7214 36.016,40.9901 35.0693,41.5026C34.1226,42.015 33.316,42.7554 32.7214,43.6579C32.6495,43.7668 32.5521,43.8561 32.4377,43.9178C32.3234,43.9796 32.1957,44.0119 32.066,44.0119H31.5208ZM31.7712,26.7521V43.5116H32.0672C32.1146,43.5106 32.1612,43.4981 32.2029,43.4752C32.2446,43.4523 32.2802,43.4196 32.3068,43.3799C32.7341,42.7284 33.2667,42.1537 33.8824,41.6798C35.1063,40.7357 36.6035,40.2225 38.1444,40.2189H45.0844C45.1232,40.2191 45.1617,40.2115 45.1976,40.1967C45.2335,40.1818 45.2661,40.1599 45.2936,40.1323C45.3211,40.1047 45.3429,40.0719 45.3578,40.0357C45.3727,39.9996 45.3803,39.9608 45.3803,39.9217V22.3634C45.3805,22.3242 45.3729,22.2853 45.3581,22.249C45.3433,22.2127 45.3215,22.1797 45.294,22.152C45.2665,22.1242 45.2338,22.1023 45.1978,22.0873C45.1618,22.0724 45.1233,22.0648 45.0844,22.0649H36.4046C35.1743,22.0681 33.9954,22.5634 33.1267,23.4422C32.2581,24.3209 31.7706,25.5113 31.7712,26.7521ZM17.6157,22.3634V39.9229C17.6155,39.962 17.623,40.0007 17.6378,40.0368C17.6526,40.073 17.6743,40.1058 17.7017,40.1334C17.7291,40.1611 17.7616,40.183 17.7975,40.1978C17.8333,40.2127 17.8717,40.2203 17.9104,40.2201H24.8504C26.3895,40.2233 27.8852,40.7347 29.1088,41.6762L30.2651,42.8011L30.289,42.8338L30.6868,43.3811C30.7142,43.4215 30.7508,43.4546 30.7936,43.4775C30.8363,43.5004 30.884,43.5126 30.9325,43.5129H31.2284V26.7521C31.2287,25.5115 30.7411,24.3214 29.8725,23.443C29.0038,22.5645 27.8252,22.0693 26.595,22.0661H17.9104C17.8323,22.0661 17.7573,22.0975 17.702,22.1532C17.6467,22.209 17.6157,22.2846 17.6157,22.3634ZM36.2644,35.7759C36.1987,35.7759 36.1356,35.7495 36.0891,35.7026C36.0426,35.6557 36.0164,35.5921 36.0164,35.5258C36.0164,35.4594 36.0426,35.3958 36.0891,35.3489C36.1356,35.302 36.1987,35.2756 36.2644,35.2756H40.8871C40.9529,35.2756 41.016,35.302 41.0625,35.3489C41.109,35.3958 41.1351,35.4594 41.1351,35.5258C41.1351,35.5921 41.109,35.6557 41.0625,35.7026C41.016,35.7495 40.9529,35.7759 40.8871,35.7759H36.2644ZM22.1113,35.7759C22.0455,35.7759 21.9825,35.7495 21.9359,35.7026C21.8894,35.6557 21.8633,35.5921 21.8633,35.5258C21.8633,35.4594 21.8894,35.3958 21.9359,35.3489C21.9825,35.302 22.0455,35.2756 22.1113,35.2756H26.734C26.7998,35.2756 26.8628,35.302 26.9094,35.3489C26.9559,35.3958 26.982,35.4594 26.982,35.5258C26.982,35.5921 26.9559,35.6557 26.9094,35.7026C26.8628,35.7495 26.7998,35.7759 26.734,35.7759H22.1113ZM36.2644,31.3909C36.1987,31.3909 36.1356,31.3645 36.0891,31.3176C36.0426,31.2707 36.0164,31.2071 36.0164,31.1407C36.0164,31.0744 36.0426,31.0108 36.0891,30.9639C36.1356,30.917 36.1987,30.8906 36.2644,30.8906H40.8871C40.9529,30.8906 41.016,30.917 41.0625,30.9639C41.109,31.0108 41.1351,31.0744 41.1351,31.1407C41.1351,31.2071 41.109,31.2707 41.0625,31.3176C41.016,31.3645 40.9529,31.3909 40.8871,31.3909H36.2644ZM22.1113,31.3909C22.0455,31.3909 21.9825,31.3645 21.9359,31.3176C21.8894,31.2707 21.8633,31.2071 21.8633,31.1407C21.8633,31.0744 21.8894,31.0108 21.9359,30.9639C21.9825,30.917 22.0455,30.8906 22.1113,30.8906H26.734C26.7998,30.8906 26.8628,30.917 26.9094,30.9639C26.9559,31.0108 26.982,31.0744 26.982,31.1407C26.982,31.2071 26.9559,31.2707 26.9094,31.3176C26.8628,31.3645 26.7998,31.3909 26.734,31.3909H22.1113ZM36.2644,27.001C36.1987,27.001 36.1356,26.9746 36.0891,26.9277C36.0426,26.8808 36.0164,26.8172 36.0164,26.7509C36.0164,26.6845 36.0426,26.6209 36.0891,26.574C36.1356,26.5271 36.1987,26.5007 36.2644,26.5007H40.8871C40.9529,26.5007 41.016,26.5271 41.0625,26.574C41.109,26.6209 41.1351,26.6845 41.1351,26.7509C41.1351,26.8172 41.109,26.8808 41.0625,26.9277C41.016,26.9746 40.9529,27.001 40.8871,27.001H36.2644ZM22.1113,27.001C22.0455,27.001 21.9825,26.9746 21.9359,26.9277C21.8894,26.8808 21.8633,26.8172 21.8633,26.7509C21.8633,26.6845 21.8894,26.6209 21.9359,26.574C21.9825,26.5271 22.0455,26.5007 22.1113,26.5007H26.734C26.7998,26.5007 26.8628,26.5271 26.9094,26.574C26.9559,26.6209 26.982,26.6845 26.982,26.7509C26.982,26.8172 26.9559,26.8808 26.9094,26.9277C26.8628,26.9746 26.7998,27.001 26.734,27.001H22.1113Z"
android:strokeWidth="0.2"
android:fillColor="#000000"
android:strokeColor="#000000"/>
</group>
</vector>
19 changes: 19 additions & 0 deletions android/app/src/main/res/drawable/bebbo_logo_shape1_svg_b84625.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="96dp"
android:height="84dp"
android:viewportWidth="96"
android:viewportHeight="84">
<path
android:pathData="M22,22C22,33.8763 41,46 41,46C41,46 60,33.8763 60,22"
android:strokeWidth="44"
android:fillColor="#00000000"
android:strokeColor="#2E3285"
android:strokeLineCap="round"/>
<path
android:pathData="M58,48.5C54.9931,55.835 63.587,67.819 63.587,67.819C63.587,67.819 78.3199,64.8272 81.3268,57.4922"
android:strokeAlpha="0.7"
android:strokeWidth="28"
android:fillColor="#00000000"
android:strokeColor="#64B1DF"
android:strokeLineCap="round"/>
</vector>
15 changes: 15 additions & 0 deletions android/app/src/main/res/drawable/bebbo_logo_shape_svg_55f84f.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="167.704dp"
android:height="143.58dp"
android:viewportWidth="167.704"
android:viewportHeight="143.58">
<path
android:pathData="M148.932,74.643c-10.014,-2.587 -16.59,0.982 -20.482,4.732 -0.023,-0.329 -0.054,-0.665 -0.093,-1 -8.86,12.309 -22.321,25.383 -41.645,38.691a150.1,150.1 0,0 0,16.767 26.313l0.155,0.206 0.417,-0.074c81.359,-14.256 70.591,-62.4 44.881,-68.863"
android:fillColor="#fff"/>
<path
android:pathData="M128.361,78.37c-0.6,-5.244 -3.289,-11.748 -11.866,-16.314A20.138,20.138 0,0 0,114.261 61c-20.061,-8.192 -49.285,11.258 -27.55,56.061 19.324,-13.307 32.785,-26.381 41.645,-38.691"
android:fillColor="#b3e7fa"/>
<path
android:pathData="M114.261,61a20.224,20.224 0,0 1,2.229 1.056c8.577,4.566 11.267,11.07 11.866,16.314 33.389,-46.392 1.305,-81.917 -29.788,-78.06 -16.127,1.894 -23.728,10.849 -27.3,18.548 -3.6,-7.692 -11.2,-16.633 -27.331,-18.57a31.7,31.7 0,0 0,-3.861 -0.282c-40.068,-0.719 -77.06,61.922 30.947,126.7l0.342,0.213 0.57,-0.344q7.9,-4.771 14.775,-9.515c-21.735,-44.8 7.489,-64.253 27.55,-56.062"
android:fillColor="#00aeef"/>
</vector>
Loading

0 comments on commit f861193

Please sign in to comment.