Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 WalkthroughWalkthroughThis PR updates onboarding and partner portal layouts with responsive design improvements, typography refinements, container sizing adjustments, and replaces Toolbar help functionality with custom CircleQuestion-based support links across multiple pages. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~22 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (6)
apps/web/ui/partners/partner-platforms-form.tsx (1)
466-485: LGTM — TikTok mirrors the YouTube fix consistently.Same relative-wrapper +
pointer-events-none@span pattern as YouTube; good that both@-prefixed platforms use the identical structure.Optional follow-up (nitpick, not blocking): the two
@-prefixed blocks (YouTube at 324–350 and TikTok at 461–487) are now structurally identical aside from the platform literal, and share nearly all of their className strings with the non-prefixed social inputs too. A small shared subcomponent (e.g.SocialHandleInputtakingplatform,domainLabel, and optionalprefix) would remove ~6 near-duplicated blocks and make future style tweaks land in one place.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@apps/web/ui/partners/partner-platforms-form.tsx` around lines 466 - 485, Two identical "@-prefixed" social input blocks (TikTok input and the existing YouTube input) are duplicated; extract a small shared component (e.g., SocialHandleInput) that accepts props platform (string key for register/errors), placeholder/domainLabel, optional prefixChar (e.g., "@"), disabled and onPaste handler, and the CN/className variants, then replace both YouTube and TikTok JSX with <SocialHandleInput platform="tiktok" ...> / <SocialHandleInput platform="youtube" ...>. Ensure SocialHandleInput uses register(platform), errors[platform], onPasteSocial(e, platform) and preserves the pointer-events-none span and all conditional className logic so styling and behavior remain identical.apps/web/app/app.dub.co/(onboarding)/onboarding/(steps)/products/product-selector.tsx (1)
30-30: Nit: double space in className.
w-full gap-4contains a stray double space left over from removingmax-w-[312px]. Clean up for consistency.Proposed fix
- <div className="animate-fade-in mx-auto grid w-full gap-4 sm:max-w-[600px] sm:grid-cols-2"> + <div className="animate-fade-in mx-auto grid w-full gap-4 sm:max-w-[600px] sm:grid-cols-2">🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@apps/web/app/app.dub.co/`(onboarding)/onboarding/(steps)/products/product-selector.tsx at line 30, Trim the stray double space in the JSX div's className in product-selector.tsx: locate the element with className "animate-fade-in mx-auto grid w-full gap-4 sm:max-w-[600px] sm:grid-cols-2" and remove the extra space between "w-full" and "gap-4" so it becomes "w-full gap-4" for consistent spacing.apps/web/app/(ee)/partners.dub.co/(onboarding)/onboarding/payouts/page.tsx (1)
11-17: Optional: redundanttext-centeron children.The parent container on Line 11 already applies
text-center, so the additionaltext-centeron theh1(Line 12) andp(Line 15) is redundant. Not a bug, just noise — consider dropping them for clarity.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@apps/web/app/`(ee)/partners.dub.co/(onboarding)/onboarding/payouts/page.tsx around lines 11 - 17, Remove the redundant text-center classes from the child elements: in the JSX block where the parent div has className "relative mx-auto flex w-full max-w-[600px] flex-col items-center text-center md:mt-6", drop the extra "text-center" tokens on the <h1> and <p> elements so they inherit the centering from the parent; update the <h1> and <p> elements (the Connect payouts heading and its paragraph) to omit their internal text-center class.apps/web/app/(ee)/partners.dub.co/(onboarding)/onboarding/page.tsx (1)
12-12: Nit: double space in className.Leftover whitespace from removing
rounded-xl p-8.Proposed fix
- <div className="animate-slide-up-fade w-full [--offset:10px] [animation-delay:500ms] [animation-duration:1s] [animation-fill-mode:both]"> + <div className="animate-slide-up-fade w-full [--offset:10px] [animation-delay:500ms] [animation-duration:1s] [animation-fill-mode:both]">🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@apps/web/app/`(ee)/partners.dub.co/(onboarding)/onboarding/page.tsx at line 12, The className string in the JSX div (the animate-slide-up-fade wrapper in onboarding/page.tsx) contains an accidental double space ("w-full [--offset...") left from removing `rounded-xl p-8`; edit the className on that div to collapse the double space into a single space so the classes read "w-full [--offset:10px] ..." to avoid stray whitespace in class names.apps/web/app/app.dub.co/(onboarding)/layout.tsx (1)
12-19: Addrel="noopener noreferrer"to externaltarget="_blank"link.Modern browsers implicitly apply
noopenerfortarget="_blank", butnoreferrerstill needs to be set explicitly if you want to prevent Referer leakage todub.co/contact/support. Other external links in this PR (e.g.,SignedInHinthelp link, partners layout Wordmark & support link) have the same gap — worth applying consistently.🔒 Proposed fix
<a href="https://dub.co/contact/support" target="_blank" + rel="noopener noreferrer" className="fixed bottom-0 right-0 z-40 m-5 hidden h-8 w-8 shrink-0 items-center justify-center rounded-lg border border-neutral-200 bg-white text-neutral-700 shadow-sm transition-colors hover:bg-neutral-100 md:flex" aria-label="Help" >🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@apps/web/app/app.dub.co/`(onboarding)/layout.tsx around lines 12 - 19, Add rel="noopener noreferrer" to all external anchor tags that use target="_blank" to prevent referrer leakage and provide security isolation; specifically update the <a href="https://dub.co/contact/support" ...> in layout.tsx and any other external help/support links referenced by SignedInHint and the partners layout Wordmark/support link so they include rel="noopener noreferrer" alongside target="_blank", and apply the same change consistently across those components.apps/web/app/(ee)/partners.dub.co/(onboarding)/onboarding/platforms/page.tsx (1)
24-30:rounded-xlhas no visible effect here.The panel wrapper has
rounded-xlbut nobg-*,border,shadow, oroverflow-hiddento clip anything, so the radius utility is a no-op. Either drop it or add the matching background/border it was intended to round.🧹 Proposed cleanup
- <div className="animate-slide-up-fade w-full rounded-xl py-8 [animation-delay:750ms] [animation-duration:1s] [animation-fill-mode:both]"> + <div className="animate-slide-up-fade w-full py-8 [animation-delay:750ms] [animation-duration:1s] [animation-fill-mode:both]">🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@apps/web/app/`(ee)/partners.dub.co/(onboarding)/onboarding/platforms/page.tsx around lines 24 - 30, The wrapper div with className "animate-slide-up-fade w-full rounded-xl py-8 [animation-delay:750ms] [animation-duration:1s] [animation-fill-mode:both]" uses rounded-xl but no background, border, shadow, or overflow so the border-radius is a no-op; either remove the rounded-xl utility or add a matching visual style (e.g., bg-*, border-*, shadow-*, or overflow-hidden) to the same div to make the radius take effect—update the wrapper div around OnboardingPlatformsFormRSC (the panel wrapper) accordingly.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@apps/web/app/`(ee)/partners.dub.co/(onboarding)/onboarding/page.tsx:
- Line 12: The className string in the JSX div (the animate-slide-up-fade
wrapper in onboarding/page.tsx) contains an accidental double space ("w-full
[--offset...") left from removing `rounded-xl p-8`; edit the className on that
div to collapse the double space into a single space so the classes read "w-full
[--offset:10px] ..." to avoid stray whitespace in class names.
In `@apps/web/app/`(ee)/partners.dub.co/(onboarding)/onboarding/payouts/page.tsx:
- Around line 11-17: Remove the redundant text-center classes from the child
elements: in the JSX block where the parent div has className "relative mx-auto
flex w-full max-w-[600px] flex-col items-center text-center md:mt-6", drop the
extra "text-center" tokens on the <h1> and <p> elements so they inherit the
centering from the parent; update the <h1> and <p> elements (the Connect payouts
heading and its paragraph) to omit their internal text-center class.
In
`@apps/web/app/`(ee)/partners.dub.co/(onboarding)/onboarding/platforms/page.tsx:
- Around line 24-30: The wrapper div with className "animate-slide-up-fade
w-full rounded-xl py-8 [animation-delay:750ms] [animation-duration:1s]
[animation-fill-mode:both]" uses rounded-xl but no background, border, shadow,
or overflow so the border-radius is a no-op; either remove the rounded-xl
utility or add a matching visual style (e.g., bg-*, border-*, shadow-*, or
overflow-hidden) to the same div to make the radius take effect—update the
wrapper div around OnboardingPlatformsFormRSC (the panel wrapper) accordingly.
In `@apps/web/app/app.dub.co/`(onboarding)/layout.tsx:
- Around line 12-19: Add rel="noopener noreferrer" to all external anchor tags
that use target="_blank" to prevent referrer leakage and provide security
isolation; specifically update the <a href="https://dub.co/contact/support" ...>
in layout.tsx and any other external help/support links referenced by
SignedInHint and the partners layout Wordmark/support link so they include
rel="noopener noreferrer" alongside target="_blank", and apply the same change
consistently across those components.
In
`@apps/web/app/app.dub.co/`(onboarding)/onboarding/(steps)/products/product-selector.tsx:
- Line 30: Trim the stray double space in the JSX div's className in
product-selector.tsx: locate the element with className "animate-fade-in mx-auto
grid w-full gap-4 sm:max-w-[600px] sm:grid-cols-2" and remove the extra space
between "w-full" and "gap-4" so it becomes "w-full gap-4" for consistent
spacing.
In `@apps/web/ui/partners/partner-platforms-form.tsx`:
- Around line 466-485: Two identical "@-prefixed" social input blocks (TikTok
input and the existing YouTube input) are duplicated; extract a small shared
component (e.g., SocialHandleInput) that accepts props platform (string key for
register/errors), placeholder/domainLabel, optional prefixChar (e.g., "@"),
disabled and onPaste handler, and the CN/className variants, then replace both
YouTube and TikTok JSX with <SocialHandleInput platform="tiktok" ...> /
<SocialHandleInput platform="youtube" ...>. Ensure SocialHandleInput uses
register(platform), errors[platform], onPasteSocial(e, platform) and preserves
the pointer-events-none span and all conditional className logic so styling and
behavior remain identical.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 85773b34-cafd-4eff-b7f0-d5b70bebcc93
📒 Files selected for processing (18)
apps/web/app/(ee)/partners.dub.co/(onboarding)/layout.tsxapps/web/app/(ee)/partners.dub.co/(onboarding)/onboarding/onboarding-form.tsxapps/web/app/(ee)/partners.dub.co/(onboarding)/onboarding/page.tsxapps/web/app/(ee)/partners.dub.co/(onboarding)/onboarding/payouts/page.tsxapps/web/app/(ee)/partners.dub.co/(onboarding)/onboarding/platforms/page.tsxapps/web/app/app.dub.co/(onboarding)/layout.tsxapps/web/app/app.dub.co/(onboarding)/onboarding/(steps)/domain/default-domain-selector.tsxapps/web/app/app.dub.co/(onboarding)/onboarding/(steps)/layout.tsxapps/web/app/app.dub.co/(onboarding)/onboarding/(steps)/plan/plan-selector.tsxapps/web/app/app.dub.co/(onboarding)/onboarding/(steps)/products/product-selector.tsxapps/web/app/app.dub.co/(onboarding)/onboarding/(steps)/program/reward/form.tsxapps/web/app/app.dub.co/(onboarding)/onboarding/(steps)/step-page.tsxapps/web/app/app.dub.co/(onboarding)/signed-in-hint.tsxapps/web/ui/layout/toolbar/toolbar.tsxapps/web/ui/partners/partner-platforms-form.tsxapps/web/ui/partners/payouts/payout-method-cards.tsxapps/web/ui/shared/password-requirements.tsxapps/web/ui/workspaces/create-workspace-form.tsx
Partner updates
Changed:
Fixed:
Summary by CodeRabbit
New Features
Improvements