feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

feat(feedback): Feedback Widget Drop 2 - #4726

Merged
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2
May 20, 2025
Merged

feat(feedback): Feedback Widget Drop 2#4726
krystofwoldrich merged 26 commits into
mainfrom
feedback-ui-2

Conversation

@antonis

@antonisantonis commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

This PR contains reviewed PRs for the feedback widget:

Documentation

💡 Motivation and Context

Fixes#4302

💚 How did you test it?

CI and manual testing of individual PRs

📝 Checklist

  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing
  • No breaking changes

🔮 Next steps

#skip-changelog

antonisand others added 2 commits April 7, 2025 13:01
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Include in the feedback integration
* Fix circular dependency
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Rename FeedbackButtonProps in tests for clarity
* Add missing function call in test
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Adds missing semicolon in test
* Adds feedback button in expo app
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor
Messages
📖Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by 🚫 dangerJS against 5c627e6

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

Android (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time392.58 ms384.61 ms-7.97 ms
Size7.15 MiB8.42 MiB1.26 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
05b43ab+dirty392.00 ms386.12 ms-5.88 ms
63ed251+dirty485.02 ms531.16 ms46.14 ms
e652a2e+dirty368.83 ms360.91 ms-7.91 ms
9dabcce+dirty359.66 ms430.73 ms71.08 ms
7301787+dirty462.28 ms487.34 ms25.06 ms
d8992c6+dirty376.55 ms393.98 ms17.43 ms
ae8e50c+dirty416.65 ms416.46 ms-0.19 ms
5e5c392+dirty360.23 ms347.88 ms-12.35 ms
c830127+dirty352.35 ms388.96 ms36.61 ms
9c48b2c+dirty270.82 ms321.12 ms50.30 ms

App size

RevisionPlainWith SentryDiff
05b43ab+dirty7.15 MiB8.38 MiB1.22 MiB
63ed251+dirty7.15 MiB8.35 MiB1.20 MiB
e652a2e+dirty7.15 MiB8.38 MiB1.23 MiB
9dabcce+dirty7.15 MiB8.37 MiB1.22 MiB
7301787+dirty7.15 MiB8.40 MiB1.24 MiB
d8992c6+dirty7.15 MiB8.39 MiB1.23 MiB
ae8e50c+dirty7.15 MiB8.40 MiB1.25 MiB
5e5c392+dirty7.15 MiB8.39 MiB1.23 MiB
c830127+dirty7.15 MiB8.38 MiB1.23 MiB
9c48b2c+dirty7.15 MiB8.07 MiB947.16 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
dfd86ad+dirty460.96 ms448.06 ms-12.90 ms
d328874+dirty448.00 ms472.70 ms24.70 ms
1be9d5e+dirty406.10 ms398.06 ms-8.04 ms
5307edc+dirty421.65 ms414.87 ms-6.79 ms
2816e90+dirty389.94 ms378.32 ms-11.62 ms
bdbffd1+dirty458.83 ms460.17 ms1.33 ms
6e4d2e1+dirty394.19 ms378.08 ms-16.11 ms
21ad54b+dirty387.02 ms388.68 ms1.66 ms

App size

RevisionPlainWith SentryDiff
dfd86ad+dirty7.15 MiB8.42 MiB1.26 MiB
d328874+dirty7.15 MiB8.42 MiB1.26 MiB
1be9d5e+dirty7.15 MiB8.42 MiB1.26 MiB
5307edc+dirty7.15 MiB8.42 MiB1.26 MiB
2816e90+dirty7.15 MiB8.42 MiB1.26 MiB
bdbffd1+dirty7.15 MiB8.42 MiB1.26 MiB
6e4d2e1+dirty7.15 MiB8.40 MiB1.25 MiB
21ad54b+dirty7.15 MiB8.42 MiB1.26 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time1217.35 ms1234.32 ms16.97 ms
Size2.63 MiB3.82 MiB1.19 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
de59d3a+dirty1223.73 ms1236.28 ms12.55 ms
63ed251+dirty1232.55 ms1238.77 ms6.22 ms
29e4db9+dirty1222.41 ms1214.49 ms-7.92 ms
148f924+dirty1214.76 ms1215.73 ms0.97 ms
22e31b6+dirty1253.62 ms1265.96 ms12.34 ms
eb597b3+dirty1223.78 ms1228.22 ms4.44 ms
ed3d77e+dirty1214.61 ms1205.83 ms-8.78 ms
b6f8ea2+dirty1236.08 ms1228.58 ms-7.50 ms
6f52f97+dirty1211.85 ms1221.42 ms9.57 ms
d053743+dirty1213.69 ms1218.88 ms5.18 ms

App size

RevisionPlainWith SentryDiff
de59d3a+dirty2.36 MiB3.11 MiB760.16 KiB
63ed251+dirty2.36 MiB3.10 MiB752.55 KiB
29e4db9+dirty2.63 MiB3.80 MiB1.17 MiB
148f924+dirty2.36 MiB3.04 MiB696.25 KiB
22e31b6+dirty2.36 MiB2.87 MiB520.67 KiB
eb597b3+dirty2.63 MiB3.75 MiB1.12 MiB
ed3d77e+dirty2.36 MiB3.10 MiB753.32 KiB
b6f8ea2+dirty2.63 MiB3.68 MiB1.05 MiB
6f52f97+dirty2.63 MiB3.78 MiB1.14 MiB
d053743+dirty2.63 MiB3.75 MiB1.12 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1231.82 ms1240.18 ms8.36 ms
2816e90+dirty1222.71 ms1232.76 ms10.04 ms
bdbffd1+dirty1237.00 ms1224.96 ms-12.04 ms
1be9d5e+dirty1205.71 ms1214.40 ms8.69 ms
5307edc+dirty1230.00 ms1230.51 ms0.51 ms
d328874+dirty1218.80 ms1232.31 ms13.51 ms
dfd86ad+dirty1220.57 ms1220.87 ms0.30 ms
21ad54b+dirty1224.20 ms1230.27 ms6.07 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty2.63 MiB3.77 MiB1.14 MiB
2816e90+dirty2.63 MiB3.81 MiB1.18 MiB
bdbffd1+dirty2.63 MiB3.81 MiB1.18 MiB
1be9d5e+dirty2.63 MiB3.81 MiB1.18 MiB
5307edc+dirty2.63 MiB3.80 MiB1.17 MiB
d328874+dirty2.63 MiB3.82 MiB1.19 MiB
dfd86ad+dirty2.63 MiB3.80 MiB1.17 MiB
21ad54b+dirty2.63 MiB3.81 MiB1.18 MiB

@github-actions

github-actionsBot commented Apr 7, 2025

Copy link
Copy Markdown
Contributor

iOS (new) Performance metrics 🚀

PlainWith SentryDiff
Startup time1222.89 ms1227.82 ms4.92 ms
Size3.19 MiB4.39 MiB1.20 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
5852d77+dirty1226.88 ms1236.38 ms9.50 ms
5571a20+dirty1228.09 ms1233.45 ms5.36 ms
432a4cb+dirty1218.94 ms1215.48 ms-3.46 ms
80f7e8a+dirty1216.40 ms1215.44 ms-0.97 ms
c71ea72+dirty1221.39 ms1231.77 ms10.38 ms
afe5fcb+dirty1223.53 ms1223.90 ms0.37 ms
e2b64fe+dirty1285.78 ms1297.56 ms11.78 ms
e652a2e+dirty1224.76 ms1218.86 ms-5.90 ms
d997097+dirty1223.29 ms1229.76 ms6.46 ms
8900e1a+dirty1268.36 ms1273.04 ms4.68 ms

App size

RevisionPlainWith SentryDiff
5852d77+dirty3.19 MiB4.30 MiB1.12 MiB
5571a20+dirty2.92 MiB3.48 MiB575.54 KiB
432a4cb+dirty3.19 MiB4.35 MiB1.16 MiB
80f7e8a+dirty3.19 MiB4.37 MiB1.18 MiB
c71ea72+dirty3.19 MiB4.25 MiB1.06 MiB
afe5fcb+dirty3.19 MiB4.26 MiB1.08 MiB
e2b64fe+dirty2.92 MiB3.41 MiB499.97 KiB
e652a2e+dirty3.19 MiB4.31 MiB1.12 MiB
d997097+dirty3.19 MiB4.26 MiB1.08 MiB
8900e1a+dirty2.92 MiB3.39 MiB485.96 KiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
6e4d2e1+dirty1226.76 ms1233.13 ms6.37 ms
2816e90+dirty1234.46 ms1237.76 ms3.30 ms
bdbffd1+dirty1224.98 ms1227.76 ms2.78 ms
1be9d5e+dirty1232.81 ms1224.64 ms-8.17 ms
5307edc+dirty1211.92 ms1222.18 ms10.27 ms
d328874+dirty1241.86 ms1243.62 ms1.76 ms
dfd86ad+dirty1219.40 ms1232.49 ms13.09 ms
21ad54b+dirty1221.51 ms1225.02 ms3.51 ms

App size

RevisionPlainWith SentryDiff
6e4d2e1+dirty3.19 MiB4.33 MiB1.15 MiB
2816e90+dirty3.19 MiB4.38 MiB1.19 MiB
bdbffd1+dirty3.19 MiB4.38 MiB1.19 MiB
1be9d5e+dirty3.19 MiB4.38 MiB1.19 MiB
5307edc+dirty3.19 MiB4.37 MiB1.18 MiB
d328874+dirty3.19 MiB4.39 MiB1.20 MiB
dfd86ad+dirty3.19 MiB4.37 MiB1.18 MiB
21ad54b+dirty3.19 MiB4.38 MiB1.19 MiB

@github-actions

github-actionsBot commented Apr 8, 2025

Copy link
Copy Markdown
Contributor

Android (legacy) Performance metrics 🚀

PlainWith SentryDiff
Startup time414.92 ms406.50 ms-8.42 ms
Size17.75 MiB20.15 MiB2.40 MiB

Baseline results on branch: main

Startup times

RevisionPlainWith SentryDiff
a0df630436.87 ms472.53 ms35.66 ms
3f05680397.91 ms405.65 ms7.74 ms
d43a46b454.22 ms477.79 ms23.57 ms
94fc925446.39 ms484.80 ms38.41 ms
6707be9445.04 ms464.24 ms19.20 ms
e5c9b8b409.02 ms426.66 ms17.64 ms
d197b5c+dirty338.94 ms354.87 ms15.93 ms
fe13591478.92 ms480.84 ms1.92 ms
8bda0cc450.38 ms433.89 ms-16.49 ms
cdc3945422.77 ms438.19 ms15.42 ms

App size

RevisionPlainWith SentryDiff
a0df63017.75 MiB20.11 MiB2.36 MiB
3f0568017.75 MiB20.11 MiB2.37 MiB
d43a46b17.73 MiB20.06 MiB2.33 MiB
94fc92517.75 MiB20.11 MiB2.37 MiB
6707be917.75 MiB20.11 MiB2.37 MiB
e5c9b8b17.73 MiB19.83 MiB2.10 MiB
d197b5c+dirty17.73 MiB20.04 MiB2.31 MiB
fe1359117.74 MiB20.07 MiB2.34 MiB
8bda0cc17.75 MiB20.11 MiB2.36 MiB
cdc394517.75 MiB20.12 MiB2.37 MiB

Previous results on branch: feedback-ui-2

Startup times

RevisionPlainWith SentryDiff
d328874473.57 ms460.93 ms-12.64 ms
bdbffd1447.65 ms431.74 ms-15.91 ms
1be9d5e427.06 ms439.89 ms12.83 ms
5307edc489.00 ms512.91 ms23.91 ms
2816e90485.22 ms505.65 ms20.43 ms
dfd86ad418.77 ms419.20 ms0.42 ms
6e4d2e1435.80 ms432.63 ms-3.17 ms
21ad54b401.47 ms385.58 ms-15.89 ms

App size

RevisionPlainWith SentryDiff
d32887417.75 MiB20.15 MiB2.40 MiB
bdbffd117.75 MiB20.15 MiB2.40 MiB
1be9d5e17.75 MiB20.15 MiB2.40 MiB
5307edc17.75 MiB20.15 MiB2.40 MiB
2816e9017.75 MiB20.15 MiB2.40 MiB
dfd86ad17.75 MiB20.15 MiB2.40 MiB
6e4d2e117.75 MiB20.13 MiB2.39 MiB
21ad54b17.75 MiB20.15 MiB2.40 MiB

@antonisantonis mentioned this pull request Apr 9, 2025
26 tasks
antonisand others added 6 commits April 14, 2025 15:29
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Adds system theme tests
* Test dynamically changed theme
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* Delay capture to allow the button to hide
* Add comment explaining the reasoning of the call
* Define defaultProps in smaller scope
* Define customStyles in smaller scope
* Also check remove screenshot button
* Fixes the name and double negation not null
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
)
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	packages/core/android/src/oldarch/java/io/sentry/react/RNSentryModule.java
* Show an error if screenshot capture fails
* Test error flow
@antonis
antonis marked this pull request as ready for review May 1, 2025 08:19
# Conflicts:
#	CHANGELOG.md
antonisand others added 8 commits May 8, 2025 12:04
# Conflicts:
#	CHANGELOG.md
* Update the client implementation to use the new capture feedback js api
* Updates SDK API
* Adds new feedback button in the sample
* Adds changelog
* Removes unused mock
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Directly use captureFeedback from sentry/core
* Use import from core
* Fixes imports order lint issue
* Fixes build issue
* Adds captureFeedback tests from sentry-javascript
* Update CHANGELOG.md
* Only deprecate client captureUserFeedback
* Add simple form UI
* Adds basic form functionality
* Update imports
* Update imports
* Remove useState hook to avoid multiple react instances issues
* Move types and styles in different files
* Removes attachment button to be added back separately along with the implementation
* Add basic field validation
* Adds changelog
* Updates changelog
* Updates changelog
* Trim whitespaces from the submitted feedback
* Adds tests
* Renames FeedbackFormScreen to FeedbackForm
* Add beta label
* Extract default text to constants
* Moves constant to a separate file and aligns naming with JS
* Adds input text labels
* Close screen before sending the feedback to minimise wait time
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Rename file for consistency
* Flatten configuration hierarchy and clean up
* Align required values with JS
* Use Sentry user email and name when set
* Simplifies email validation
* Show success alert message
* Aligns naming with JS and unmounts the form by default
* Use the minimum config without props in the changelog
* Adds development not for unimplemented function
* Show email and name conditionally
* Adds sentry branding (png logo)
* Adds sentry logo resource
* Add assets in module exports
* Revert "Add assets in module exports"
This reverts commit 5292475.
* Revert "Adds sentry logo resource"
This reverts commit d6e9229.
* Revert "Adds sentry branding (png logo)"
This reverts commit 8c56753.
* Add last event id
* Mock lastEventId
* Adds beta note in the changelog
* Autoinject feedback form
* Updates changelog
* Align colors with JS
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Update CHANGELOG.md
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use regular fonts for both buttons
* Handle keyboard properly
* Adds an option on whether the email should be validated
* Merge properties only once
* Loads current user data on form construction
* Remove unneeded extra padding
* Fix background color issue
* Adds feedback button
* Updates the changelog
* Fixes changelog typo
* Updates styles background color
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Use defaultProps
* Correct defaultProps
* Adds test to verify when getUser is called
* Use smaller image
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Add margin next to the icon
* Adds bottom spacing in the ErrorScreen so that the feedback button does not hide the scrollview buttons
* (2.2) feat: Add Feedback Form UI Branding logo (#4357)
* Adds sentry branding logo as a base64 encoded png
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
* Autoinject feedback form (#4370)
* Align changelog entry
* Update changelog
* Disable bouncing
* Add modal ui appearance
* Update snapshot tests
* Fix bottom margin
* Fix sheet height
* Remove extra modal border
* Do not expose modal styles
* Animate background color
* Avoid keyboard in modal
* Update changelog
* Fix changelog
* Updates comment
* Extract FeedbackButtonProps
* Add public function description to satisfy lint check
* Adds tests
* Fix tests
* Add test ids in feedback widget
* Add feedback widget button in test app
* WIP: Add feedback test
* Update snapshot tests with the added test ids
* Android happy path test
* Check field validation
* Scroll if button is not visible
* Adds accessibility labels
* Remove extended initial checks due to flakiness
* Revert "Remove extended initial checks due to flakiness"
This reverts commit fa3bdfc.
* Add hardcoded dark and light color themes
* Rename theme options
* Update snapshot tests
* Include in the feedback integration
* Fix circular dependency
* Add theme integration options
* Adds changelog
* Add comment note
* Align with JS api
* Remove unneeded line
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
* Place widget button below the feedback widget shadow
* Expose showFeedbackButton/hideFeedbackButton methods
* Add dummy integration for tracking usage
* Adds button border
* Fixes tests
* Add accentBackground and accentForeground colors
* Extract integration getter in a helper function
* Adds dynamic theming support
* Add snapshot tests
* Show screenshot button UI
* Add screenshot button integration
* Add screenshot icon
* Adds Take a screenshot button in FeedbackWidget
* Updates snapshot tests
* Fix circularDepCheck
* Fix circularDepCheck
* Attache captured screenshot
* Hide the take screenshot button when there is a screenshot
* Convert uint8Array to Base64 on the native side
* ref(feedback): Extracts FeedbackWidgetProvider in a separate file
* Updates exposed comments
* Adds snapshot tests
* Disable functionality on the Web
* Add screenshot button in the sample expo app
* Adds system theme tests
* Test dynamically changed theme
* Remove showScreenshotButton and hideScreenshotButton from the exposed api
* Fix function name typo
* Adds enableTakeScreenshot option
* Adds happy flow test
* Make flow tests more granular
* Increate wait time out to fix flakiness on ci
* Reset widget state after each test
* Fix CI flakiness
* Remove flaky test
* fix(feedback): Fixes accessibility issue on iOS
* Add changelog
* Properly wrap root app component
* Handle undefined AppRegistryIntegration.onRunApplication gracefully
* Fix lint issue
* Do not validate all fields for visibility
* Take screenshots for debugging
* Revert "Take screenshots for debugging"
This reverts commit 3e361a1.
* Simplify test scenario
* Try without hiding the keyboard
* Test Feedback button
* Test screenshot capture
* Show an error if screenshot capture fails
* Test error flow
* Revert unneeded change
* Test with latest Maestro
* Revert "Test with latest Maestro"
This reverts commit e7c31bf.
* Revert "Test screenshot capture"
This reverts commit 8913ffc.
* Skip for 0.65.3
* Remove version check
* Use testId for feedback button
* Skip for 0.65.3
* Update snapshots
* Cleanup testIds and accessibility labels
* Enable for all RN versions
* Temp: remove modal supported check
* Do not use native driver for backgroundOpacity animation
* Revert "Temp: remove modal supported check"
This reverts commit e20aff2.
* Do not use native driver for backgroundOpacity animation
* Use text instead of test ids
* Separate iOS and Android tests
---------
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
# Conflicts:
#	CHANGELOG.md
#	samples/react-native/src/App.tsx
# Conflicts:
#	CHANGELOG.md
# Conflicts:
#	CHANGELOG.md
@krystofwoldrich

Copy link
Copy Markdown
Contributor

Although, all PRs were reviewed individually, I've walked thru the final changes and tested the functions locally. All looks good.

Let not squash this, but create a merge commit to preserve the individual changes for the v2 drop.

@krystofwoldrichkrystofwoldrich left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀

@krystofwoldrich
krystofwoldrich merged commit 14bd3d0 into mainMay 20, 2025
@krystofwoldrich
krystofwoldrich deleted the feedback-ui-2 branch May 20, 2025 14:10
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 4, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonis added a commit to getsentry/sentry-docs that referenced this pull request Jun 5, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
antonpirker pushed a commit to getsentry/sentry-docs that referenced this pull request Jun 6, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- 👉 #13512
- #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4378
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- 👉 #13513
- #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds feedback widget theme documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4677
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
bitsandfoxes pushed a commit to getsentry/sentry-docs that referenced this pull request Jul 3, 2025
<!-- Use this checklist to make sure your PR is ready for merge. You may
delete any sections you don't need. -->
⚠️ PR Chain:
- #13512
- #13513
- 👉 #13515
## DESCRIBE YOUR PR
*Tell us what you're changing and why. If your PR **resolves an issue**,
please link it so it closes automatically.*
Adds screenshot button documentation.
Part of getsentry/sentry-react-native#4302
Implementation PR:
getsentry/sentry-react-native#4714
## IS YOUR CHANGE URGENT? Help us prioritize incoming PRs by letting us know when the change needs
to go live.
- [ ] Urgent deadline (GA date, etc.): <!-- ENTER DATE HERE -->
- [ ] Other deadline: <!-- ENTER DATE HERE -->
- [x] None: Not urgent, can wait up to 1 week+
Should be merged after
getsentry/sentry-react-native#4726 is released
## SLA
- Teamwork makes the dream work, so please add a reviewer to your PRs.
- Please give the docs team up to 1 week to review your PR unless you've
added an urgent due date to it.
Thanks in advance for your help!
## PRE-MERGE CHECKLIST
*Make sure you've checked the following before merging your changes:*
- [ ] Checked Vercel preview for correctness, including links
- [ ] PR was reviewed and approved by any necessary SMEs (subject matter
experts)
- [ ] PR was reviewed and approved by a member of the [Sentry docs
team](https://github.com/orgs/getsentry/teams/docs)
## LEGAL BOILERPLATE
<!-- Sentry employees and contractors can delete or ignore this section.
-->
Look, I get it. The entity doing business as "Sentry" was incorporated
in the State of Delaware in 2015 as Functional Software, Inc. and is
gonna need some rights from me in order to utilize my contributions in
this here PR. So here's the deal: I retain all rights, title and
interest in and to my contributions, and by keeping this boilerplate
intact I confirm that Sentry can use, modify, copy, and redistribute my
contributions, under Sentry's choice of terms.
## EXTRA RESOURCES
- [Sentry Docs contributor guide](https://docs.sentry.io/contributing/)
---------
Co-authored-by: LucasZF <lucas-zimerman1@hotmail.com>
Co-authored-by: Krystof Woldrich <31292499+krystofwoldrich@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Feedback Widget for React Native

3 participants

@antonis@krystofwoldrich@lucas-zimerman