From 4c16235d01ab2562c530ed69119cb8526e9f32da Mon Sep 17 00:00:00 2001 From: arya-s Date: Tue, 14 Nov 2023 15:48:20 +0900 Subject: [PATCH 1/2] feat(feedback): Add onClose description to user-feedback Fixes https://github.com/getsentry/sentry-javascript/issues/9433 --- src/platforms/common/enriching-events/user-feedback.mdx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/platforms/common/enriching-events/user-feedback.mdx b/src/platforms/common/enriching-events/user-feedback.mdx index b249642183613..0cf89a89695b4 100644 --- a/src/platforms/common/enriching-events/user-feedback.mdx +++ b/src/platforms/common/enriching-events/user-feedback.mdx @@ -109,7 +109,8 @@ An override for Sentry’s automatic language detection (e.g. `lang=de`) | `errorGeneric` | An unknown error occurred while submitting your report. Please try again. | | `errorFormEntry` | Some fields were invalid. Please correct the errors and try again. | | `successMessage` | Your feedback has been sent. Thank you! | -| `onLoad` | n/a | +| `onLoad` | n/a - **an optional callback that will be invoked when the widget opens** | +| `onClose` | n/a - **an optional callback that will be invoked when the widget closes** | ## User Feedback API @@ -160,7 +161,8 @@ An override for Sentry’s automatic language detection (e.g. `lang=de`) | `errorGeneric` | An unknown error occurred while submitting your report. Please try again. | | `errorFormEntry` | Some fields were invalid. Please correct the errors and try again. | | `successMessage` | Your feedback has been sent. Thank you! | -| `onLoad` | n/a | +| `onLoad` | n/a - **an optional callback that will be invoked when the widget opens** | +| `onClose` | n/a - **an optional callback that will be invoked when the widget closes** | ## User Feedback API From adfa2069f9d7ed3043be26b88960a0b3d1ade917 Mon Sep 17 00:00:00 2001 From: arya-s Date: Sat, 25 Nov 2023 15:15:04 +0900 Subject: [PATCH 2/2] feat(feedback): Add snippets for user-feedback onLoad and onClose --- .../example-widget-onclose/_default.mdx | 13 +++++++++++++ .../javascript.electron.mdx | 11 +++++++++++ .../example-widget-onclose/javascript.mdx | 11 +++++++++++ .../example-widget-onclose/python.django.mdx | 13 +++++++++++++ .../example-widget-onclose/python.flask.mdx | 13 +++++++++++++ .../example-widget-onload/_default.mdx | 11 +++++++++++ .../javascript.electron.mdx | 9 +++++++++ .../example-widget-onload/javascript.mdx | 9 +++++++++ .../example-widget-onload/python.django.mdx | 11 +++++++++++ .../example-widget-onload/python.flask.mdx | 11 +++++++++++ .../common/enriching-events/user-feedback.mdx | 18 +++++++++++++++--- 11 files changed, 127 insertions(+), 3 deletions(-) create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onclose/_default.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.electron.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.django.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.flask.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onload/_default.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.electron.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.django.mdx create mode 100644 src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.flask.mdx diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/_default.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/_default.mdx new file mode 100644 index 0000000000000..823549de2c790 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/_default.mdx @@ -0,0 +1,13 @@ +_Requires JS SDK version v7.82.0 or higher._ + +```html + +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.electron.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.electron.mdx new file mode 100644 index 0000000000000..2899375570c87 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.electron.mdx @@ -0,0 +1,11 @@ +_Requires JS SDK version v7.82.0 or higher._ + +```javascript +Sentry.showReportDialog({ + // ... + onClose() { + // Refresh the window after the user closes the report dialog + win.reload(); + }, +}); +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.mdx new file mode 100644 index 0000000000000..0a8726ff9d8ad --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/javascript.mdx @@ -0,0 +1,11 @@ +_Requires JS SDK version v7.82.0 or higher._ + +```javascript +Sentry.showReportDialog({ + // ... + onClose() { + // Refresh the page after the user closes the report dialog + location.reload(); + }, +}); +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.django.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.django.mdx new file mode 100644 index 0000000000000..823549de2c790 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.django.mdx @@ -0,0 +1,13 @@ +_Requires JS SDK version v7.82.0 or higher._ + +```html + +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.flask.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.flask.mdx new file mode 100644 index 0000000000000..823549de2c790 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onclose/python.flask.mdx @@ -0,0 +1,13 @@ +_Requires JS SDK version v7.82.0 or higher._ + +```html + +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onload/_default.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/_default.mdx new file mode 100644 index 0000000000000..880708cadbf88 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/_default.mdx @@ -0,0 +1,11 @@ +```html + +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.electron.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.electron.mdx new file mode 100644 index 0000000000000..3379d370e8b07 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.electron.mdx @@ -0,0 +1,9 @@ +```javascript +Sentry.showReportDialog({ + // ... + onLoad() { + // Log an event to amplitude when the report dialog opens + amplitude.logEvent("report_dialog_seen"); + }, +}); +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.mdx new file mode 100644 index 0000000000000..3379d370e8b07 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/javascript.mdx @@ -0,0 +1,9 @@ +```javascript +Sentry.showReportDialog({ + // ... + onLoad() { + // Log an event to amplitude when the report dialog opens + amplitude.logEvent("report_dialog_seen"); + }, +}); +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.django.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.django.mdx new file mode 100644 index 0000000000000..880708cadbf88 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.django.mdx @@ -0,0 +1,11 @@ +```html + +``` diff --git a/src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.flask.mdx b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.flask.mdx new file mode 100644 index 0000000000000..880708cadbf88 --- /dev/null +++ b/src/platform-includes/enriching-events/user-feedback/example-widget-onload/python.flask.mdx @@ -0,0 +1,11 @@ +```html + +``` diff --git a/src/platforms/common/enriching-events/user-feedback.mdx b/src/platforms/common/enriching-events/user-feedback.mdx index 0cf89a89695b4..047a17307a025 100644 --- a/src/platforms/common/enriching-events/user-feedback.mdx +++ b/src/platforms/common/enriching-events/user-feedback.mdx @@ -20,7 +20,7 @@ While this feature isn't currently supported for Ruby or most of its frameworks, - + ## User Feedback API @@ -109,8 +109,20 @@ An override for Sentry’s automatic language detection (e.g. `lang=de`) | `errorGeneric` | An unknown error occurred while submitting your report. Please try again. | | `errorFormEntry` | Some fields were invalid. Please correct the errors and try again. | | `successMessage` | Your feedback has been sent. Thank you! | -| `onLoad` | n/a - **an optional callback that will be invoked when the widget opens** | -| `onClose` | n/a - **an optional callback that will be invoked when the widget closes** | +| `onLoad` | n/a | +| `onClose` | n/a | + + + +The optional callback `onLoad` will be called when users see the widget. You can use this to run custom logic, for example to log an analytics event: + + + +The optional callback `onClose` will be called when users close the widget. You can use this to run custom logic, for example to reload the page: + + + + ## User Feedback API