-
Notifications
You must be signed in to change notification settings - Fork 24
feat: Add create and join group functionality #93
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
33 commits
Select commit
Hold shift + click to select a range
7b76a62
This commit adds the ability for you to create new groups and join ex…
google-labs-jules[bot] 7211eba
This commit introduces several improvements to the expense creation a…
google-labs-jules[bot] b46be03
This commit fixes a bug in the settlement summary on the Group Detail…
google-labs-jules[bot] 9011da7
This commit introduces a new "Friends" page to the application.
google-labs-jules[bot] 57e23d5
This commit fixes a bug that caused the Friends page to crash.
google-labs-jules[bot] e201e83
This commit introduces a new "Account" page to the application.
google-labs-jules[bot] 4b7a0c3
This commit enhances the UI by displaying group icons.
google-labs-jules[bot] 9e97947
This commit adds a new GitHub Actions workflow to automatically build…
google-labs-jules[bot] d6bf0bb
Update android-build.yml
Devasy f29d3ac
Update android-build.yml
Devasy a12a642
This commit refactors the GitHub Actions workflow to create previews …
google-labs-jules[bot] cdea9ef
adds eas login id
Delinkelin e554381
add project configuration and update channels in eas.json
Devasy 57f0757
Revert "add project configuration and update channels in eas.json"
Devasy dcb00e9
Add permissions for pull request handling in EAS preview workflow
Devasy 2c449d7
Refactor GroupDetailsScreen component for improved readability and ma…
Devasy 9f1146c
Enhance currency formatting in GroupDetailsScreen and improve settlem…
Delinkelin 4068a50
This commit fixes several bugs in the unequal split functionality and…
google-labs-jules[bot] 4adf84b
Revert "This commit fixes several bugs in the unequal split functiona…
Devasy 3110bef
Refactor AddExpenseScreen for improved structure and functionality; e…
Devasy 97e14f1
Refactor AddExpenseScreen to improve payer selection logic and enhanc…
Devasy b3f42c6
Add paidBy field to ExpenseCreateRequest and ExpenseResponse; validat…
Devasy d86cf74
Merge branch 'main' of https://github.com/Devasy23/splitwiser into fe…
Devasy e94d7ea
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] df567a7
Add required paidBy field to ExpenseCreateRequest in expense tests
Devasy ff40e6e
Add test for expense creation with payer not in group
Devasy b642a27
Update GitHub Actions and enhance group expense handling
Devasy 48b11b6
Implement AsyncStorage for user authentication and balance calculatio…
Devasy 8302d6f
Downgrade actions/checkout version from v4 to v3 in GitHub Actions wo…
Devasy ca65c8a
Upgrade actions/checkout version from v3 to v4 in GitHub Actions work…
Devasy 96934b2
Enhance bundle analysis workflow: use Expo export for builds, improve…
Devasy 8892b95
Add EAS update workflow and improve bundle analysis steps
Devasy 1490526
Add React Native bundle analysis workflow with fallback dependency an…
Devasy File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,36 @@ | ||
| name: Create EAS Preview | ||
|
|
||
| on: | ||
| pull_request: | ||
|
|
||
| permissions: | ||
| contents: read | ||
| pull-requests: write | ||
|
|
||
| jobs: | ||
| preview: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Checkout repository | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Setup Node.js | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: 18 | ||
|
|
||
| - name: Setup EAS | ||
| uses: expo/expo-github-action@v8 | ||
| with: | ||
| eas-version: latest | ||
| token: ${{ secrets.EXPO_TOKEN }} | ||
|
|
||
| - name: Install dependencies | ||
| run: npm install | ||
| working-directory: ./frontend | ||
|
|
||
| - name: Create preview | ||
| uses: expo/expo-github-action/preview@v8 | ||
| with: | ||
| command: eas update --auto --branch ${{ github.event.pull_request.head.ref }} | ||
| working-directory: ./frontend | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,39 @@ | ||
| name: Publish EAS Update | ||
|
|
||
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| paths: | ||
| - 'frontend/**' | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| jobs: | ||
| update: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: 🏗 Setup repo | ||
| uses: actions/checkout@v4 | ||
|
|
||
| - name: 🏗 Setup Node | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: 18 | ||
| cache: 'npm' | ||
| cache-dependency-path: frontend/package-lock.json | ||
|
|
||
| - name: 🏗 Setup EAS | ||
| uses: expo/expo-github-action@v8 | ||
| with: | ||
| eas-version: latest | ||
| token: ${{ secrets.EXPO_TOKEN }} | ||
|
|
||
| - name: 📦 Install dependencies | ||
| run: npm install | ||
| working-directory: ./frontend | ||
|
|
||
| - name: 🚀 Create update | ||
| run: npx eas update --auto --non-interactive | ||
| working-directory: ./frontend |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,117 @@ | ||
| name: React Native Bundle Analysis | ||
|
|
||
| on: | ||
| pull_request: | ||
| paths: | ||
| - 'frontend/**' | ||
| branches: [ main, master ] | ||
| push: | ||
| paths: | ||
| - 'frontend/**' | ||
| branches: [ main, master ] | ||
|
|
||
| jobs: | ||
| rn-bundle-analysis: | ||
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| with: | ||
| fetch-depth: 0 | ||
|
|
||
| - name: Set up Node.js | ||
| uses: actions/setup-node@v4 | ||
| with: | ||
| node-version: '18' | ||
| cache: 'npm' | ||
| cache-dependency-path: frontend/package-lock.json | ||
|
|
||
| - name: Setup EAS | ||
| uses: expo/expo-github-action@v8 | ||
| with: | ||
| eas-version: latest | ||
| token: ${{ secrets.EXPO_TOKEN }} | ||
|
|
||
| - name: Install Dependencies | ||
| run: npm install | ||
| working-directory: ./frontend | ||
|
|
||
| - name: Analyze React Native Bundle Size | ||
| working-directory: ./frontend | ||
| run: | | ||
| echo "📊 Analyzing React Native bundle size..." | ||
|
|
||
| # Install bundle analysis tools | ||
| npm install --no-save metro-visualizer | ||
|
|
||
| # Create bundle for Android (this usually works better than web) | ||
| echo "🤖 Creating Android bundle for analysis..." | ||
| if npx expo export --platform android --output-dir android-build --max-workers 1; then | ||
| echo "✅ Android export successful" | ||
|
|
||
| # Find and analyze the bundle | ||
| if [ -f "android-build/bundles/android-*.js" ]; then | ||
| BUNDLE_FILE=$(find android-build/bundles -name "android-*.js" | head -1) | ||
| BUNDLE_SIZE=$(stat -c%s "$BUNDLE_FILE") | ||
| BUNDLE_SIZE_MB=$(echo "scale=2; $BUNDLE_SIZE / 1024 / 1024" | bc -l) | ||
|
|
||
| echo "# React Native Bundle Analysis Report" > bundle-analysis.md | ||
| echo "" >> bundle-analysis.md | ||
| echo "## Bundle Size Summary" >> bundle-analysis.md | ||
| echo "- Platform: Android (React Native)" >> bundle-analysis.md | ||
| echo "- Bundle size: **${BUNDLE_SIZE_MB} MB**" >> bundle-analysis.md | ||
| echo "- Bundler: Metro (Expo)" >> bundle-analysis.md | ||
| echo "" >> bundle-analysis.md | ||
| echo "## Bundle Details" >> bundle-analysis.md | ||
| echo "- File: $(basename "$BUNDLE_FILE")" >> bundle-analysis.md | ||
| echo "- Size: ${BUNDLE_SIZE_MB} MB" >> bundle-analysis.md | ||
|
|
||
| echo "📊 Bundle analysis complete: ${BUNDLE_SIZE_MB} MB" | ||
| else | ||
| echo "❌ No Android bundle found" | ||
| ls -la android-build/ | ||
| fi | ||
| else | ||
| echo "⚠️ Android export failed, analyzing dependencies instead..." | ||
|
|
||
| # Fallback: analyze key dependencies | ||
| echo "# React Native Bundle Analysis Report (Dependencies)" > bundle-analysis.md | ||
| echo "" >> bundle-analysis.md | ||
| echo "## Dependencies Analysis" >> bundle-analysis.md | ||
| echo "Bundle creation failed, analyzing key dependencies:" >> bundle-analysis.md | ||
| echo "" >> bundle-analysis.md | ||
|
|
||
| # Get sizes of major dependencies | ||
| if command -v du >/dev/null 2>&1; then | ||
| echo "### Core Dependencies" >> bundle-analysis.md | ||
| for dep in react react-native expo @react-navigation; do | ||
| if [ -d "node_modules/$dep" ]; then | ||
| size=$(du -sh "node_modules/$dep" 2>/dev/null | cut -f1) | ||
| echo "- $dep: $size" >> bundle-analysis.md | ||
| fi | ||
| done | ||
| fi | ||
|
|
||
| echo "" >> bundle-analysis.md | ||
| echo "Note: Bundle size analysis requires successful export. Check React Native compatibility." >> bundle-analysis.md | ||
| fi | ||
|
|
||
| # Install bc for calculations if needed | ||
| sudo apt-get update && sudo apt-get install -y bc | ||
|
|
||
| # Display the report | ||
| if [ -f "bundle-analysis.md" ]; then | ||
| cat bundle-analysis.md | ||
| fi | ||
|
|
||
| - name: Upload RN Bundle Analysis Report | ||
| if: always() && hashFiles('frontend/bundle-analysis.md') != '' | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: rn-bundle-analysis-report | ||
| path: frontend/bundle-analysis.md | ||
| retention-days: 30 | ||
|
|
||
| - name: RN Bundle Analysis Skipped | ||
| if: github.actor == 'dependabot[bot]' | ||
| run: echo "📦 React Native bundle analysis skipped for Dependabot PR" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.