-
Notifications
You must be signed in to change notification settings - Fork 0
feat: implement friends feature and sharing #171
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
Changes from all commits
Commits
Show all changes
60 commits
Select commit
Hold shift + click to select a range
b6ac253
fix: translations
isotronic 8011361
chore: add docs/ directory to .gitignore
isotronic a966448
chore: install bugsnag performance monitoring packages
isotronic db51832
feat: initialize bugsnag performance with navigation plugin
isotronic b188db7
feat: register expo router navigation ref with bugsnag performance
isotronic 67ecf78
feat: wrap app root with bugsnag performance app start instrumentation
isotronic a2f6576
refactor: inline bugsnag performance nav plugin instantiation
isotronic 01f474f
chore: install @react-native-firebase/firestore
isotronic 9786090
feat: add Firestore TypeScript document types
isotronic 4d396e4
feat: add Firestore security rules
isotronic 888f382
feat: upsert Firestore user profile on sign-in
isotronic d91eb50
feat: add Zustand social store
isotronic 419d0e1
feat: add real-time Firestore listeners for friends and requests
isotronic 55de8c9
feat: add friend request and removal Firestore operations
isotronic a8c03e1
feat: add friend mutation hooks
isotronic 92bafea
feat: add FriendListItem and FriendRequestItem components
isotronic bbd8c11
feat: add Friends item to AppMenu with pending request badge
isotronic d12ef90
feat: add Friends screen with tabbed navigation
isotronic 8c23fed
fix: address code review issues in friends phase 1
isotronic e0df82e
test: update query configurations and add default values for deload
isotronic 406e579
feat: add sharing types, privacy settings to social store and listener
isotronic 85649d4
feat: add DB helpers for sharing plan, workout, measurement, and PR data
isotronic a981473
feat: add sharing utility with Firestore write/delete functions
isotronic 0e4cf9f
feat: add privacy settings toggles and delete shared data to Settings…
isotronic aeb94b7
feat: add per-plan share toggle to plan overview screen
isotronic 747f106
feat: auto re-publish plan to Firestore when an already-shared plan i…
isotronic f56ffd7
feat: add standalone workout publish hooks
isotronic c683c8b
feat: add standalone workout share toggle and auto re-publish on edit
isotronic 6f862a1
feat: add published plan/workout IDs queries
isotronic 1894e36
feat: add isPublished prop and cloud icon to plan card components
isotronic 56338da
feat: pass published plan IDs to plan list for cloud icon display
isotronic da13d0c
feat: auto-push custom exercises to Firestore when share toggle is on
isotronic c3eaa6b
feat: auto-push completed workouts and strength PRs to Firestore
isotronic 1fd0d8c
feat: auto-push body measurements to Firestore when share toggle is on
isotronic b7ddb16
test: add Firestore/AuthContext/sharing mocks for hooks affected by P…
isotronic a075980
feat: export ensureAppExercisesExist for use by import utilities
isotronic 7009694
feat: add resolveExerciseId utility for plan/workout import
isotronic c6c13f5
feat: add friend shared content query hooks for all six Firestore sub…
isotronic ee6e87d
feat: add import mutations for plans, standalone workouts, and custom…
isotronic a52a02a
feat: add friend profile and detail screens with import buttons
isotronic 165e903
fix: include user ID in query keys for published plan and workout IDs
isotronic cdfa0a1
refactor: streamline publish and unpublish functions for plans and st…
isotronic ae204dd
feat: add user feedback for deleting data and improve error handling
isotronic c4fa0a1
feat: enhance friend search functionality to display incoming requests
isotronic f1f00ab
feat: add error handling for exercise import with alert notifications
isotronic 5931f9a
fix: handle optional workout update date and improve exercise rep dis…
isotronic 6839b63
feat: add error message for sharing workout failure and improve UI st…
isotronic 8f372b0
fix: improve error message for unauthenticated user in privacy settin…
isotronic 5da7efe
fix: update exists checks to use the correct method for Firestore doc…
isotronic cfcf337
fix: update friends subcollection rules to improve write permissions …
isotronic d0a6143
fix: enhance friend request handling by adding pending status check a…
isotronic 48cfd4f
fix: optimize pushStrengthPRs by batching Firestore writes and simpli…
isotronic 9304c59
fix: clarify friend creation rules in Firestore security rules
isotronic 0111278
chore: update package.json dependencies and scripts
isotronic 22da128
fix: enhance friend request validation by adding UID checks and refin…
isotronic f73009e
chore: update app version and version code to 1.3.0 and 10300 respect…
isotronic 0f21e56
feat: add new translations
isotronic e1ea151
feat: add Friends & Social sharing features to WhatsNew and HelpData
isotronic 1051fe4
refactor: optimize hasPendingRequest function
isotronic 7d72e80
chore: correct version and versionCode comment formatting in app.conf…
isotronic 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
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
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
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.