diff --git a/src/components/starlight/FeedbackPrompt.astro b/src/components/starlight/FeedbackPrompt.astro new file mode 100644 index 0000000000..48c4a3a983 --- /dev/null +++ b/src/components/starlight/FeedbackPrompt.astro @@ -0,0 +1,453 @@ +--- +import Icon from '~/components/starlight/Icon.astro'; + +const FORMSPREE_ENDPOINT = 'https://formspree.io/f/mjgzrgwn'; + +const questions = { + yes: [ + ['Accurate', 'accurate'], + ['Easy to understand', 'easy-to-understand'], + ['Solved my problem', 'solved-my-problem'], + ['Helped me decide to use the product', 'helped-me-decide-to-use-the-product'], + ['Other', 'other-yes'], + ], + no: [ + ['Hard to understand', 'hard-to-understand'], + ['Incorrect information', 'incorrect-information'], + ['Missing information', 'missing-information'], + ['Other', 'other-no'], + ], +} as const; + +const options = ['yes', 'no'] as const; +--- + +
+

Was this helpful?

+ +
+ + +
+ + + + + +
+
+ + + + diff --git a/src/components/starlight/MarkdownContent.astro b/src/components/starlight/MarkdownContent.astro index c9fdb47e1c..cd8e8c05ed 100644 --- a/src/components/starlight/MarkdownContent.astro +++ b/src/components/starlight/MarkdownContent.astro @@ -6,8 +6,12 @@ import DeployGuidesNav from '../DeployGuidesNav.astro'; import MediaGuidesNav from '../MediaGuidesNav.astro'; import IntegrationsNav from '../IntegrationsNav.astro'; import MigrationGuidesNav from '../MigrationGuidesNav.astro'; +import FeedbackPrompt from './FeedbackPrompt.astro'; +import { shouldShowFeedback } from '~/util/shouldShowFeedback'; const { entry } = Astro.locals.starlightRoute; +const hasToc = !!Astro.locals.starlightRoute.toc; +const showFeedback = shouldShowFeedback(Astro.locals.starlightRoute); ---
@@ -63,6 +67,14 @@ const { entry } = Astro.locals.starlightRoute; }
+{ + showFeedback && ( +
+ +
+ ) +} +