Skip to content

Conversation

@b-saikrishnakanth
Copy link
Collaborator

@b-saikrishnakanth b-saikrishnakanth commented Nov 28, 2025

Description

Integrate StateDropdown for accepted intake issues in issue properties
Disabled State Dropdown in intake properties

Type of Change

  • Bug fix (non-breaking change which fixes an issue)

Screenshots and Media (if applicable)

Test Scenarios

References

Summary by CodeRabbit

  • Improvements
    • State field dropdown is now disabled when intake items are marked as accepted, preventing unintended modifications to accepted entries.
  • New Features
    • Issue content and duplicate popover now respect an item's intake-accepted status, ensuring consistent read-only behavior where applicable.
  • Style
    • Extra horizontal padding applied to empty-state displays in the sidebar for improved spacing.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 28, 2025

Walkthrough

Adds an isIntakeAccepted boolean derived from EInboxIssueStatus.ACCEPTED, passed from issue-root into child components to choose between StateDropdown and IntakeStateDropdown; also sets the State dropdown disabled and adds rootClassName="px-page-x" to two empty-state components in the sidebar.

Changes

Cohort / File(s) Summary
Conditional state dropdown logic
apps/web/core/components/inbox/content/issue-properties.tsx
Adds isIntakeAccepted prop to props/signature, selects DropdownComponent as StateDropdown when true or IntakeStateDropdown when false, renders State field using DropdownComponent and forces it to be disabled.
Prop derivation and propagation
apps/web/core/components/inbox/content/issue-root.tsx
Imports EInboxIssueStatus, derives isIntakeAccepted = inboxIssue.status === EInboxIssueStatus.ACCEPTED, and passes isIntakeAccepted to DeDupeIssuePopoverRoot and InboxIssueContentProperties; updates public signatures to include the optional prop.
Sidebar empty-state styling
apps/web/core/components/inbox/sidebar/root.tsx
Adds rootClassName="px-page-x" to two EmptyStateDetailed usages to apply horizontal padding when empty/search states are shown.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Inspect branching in issue-properties.tsx to ensure correct component selection and prop forwarding.
  • Verify isIntakeAccepted derivation in issue-root.tsx matches enum values and is passed to all consumers (including DeDupeIssuePopoverRoot).
  • Confirm disabling the State dropdown is intentional and doesn't break expected interactions.
  • Check styling change in sidebar/root.tsx for layout impact in different viewports.

Poem

🐰 A little prop hopped down the tree,
From root to leaves, so spry and free.
It chose the dropdown, calm and neat,
Disabled for now, it takes a seat.
Padding added, tidy and bright—hooray for small delights! 🥕

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description check ✅ Passed The description covers the main objectives but lacks detail. Test scenarios, screenshots, and references are missing, though the core change is described and type is specified.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The title '[WEB-5534] fix: intake state dropdown' directly relates to the main change: conditionally integrating StateDropdown for accepted intake issues while disabling the State dropdown in intake properties.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix-intake-state-dropdown

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
apps/web/core/components/inbox/sidebar/root.tsx (1)

136-142: Empty-state padding props look good; consider aligning the closed-state variant

Using rootClassName="px-page-x" on EmptyStateDetailed for the search and open-intake empty states is consistent with page-level padding utilities and looks correct.

Minor nit: the closed-tab empty state below still uses className="px-10" on Line 165, which may lead to slightly different horizontal spacing compared to these two states. If design expects all inbox empty states to align to the same page padding, consider switching that one to rootClassName="px-page-x" as well for consistency.

Also applies to: 144-157

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 492c6af and 5c0108b.

📒 Files selected for processing (1)
  • apps/web/core/components/inbox/sidebar/root.tsx (2 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**/*.{ts,tsx,mts,cts}

📄 CodeRabbit inference engine (.github/instructions/typescript.instructions.md)

**/*.{ts,tsx,mts,cts}: Use const type parameters for more precise literal inference in TypeScript 5.0+
Use the satisfies operator to validate types without widening them
Leverage inferred type predicates to reduce the need for explicit is return types in filter/check functions
Use NoInfer<T> utility to block inference for specific type arguments when they should be determined by other arguments
Utilize narrowing in switch(true) blocks for control flow analysis (TypeScript 5.3+)
Rely on narrowing from direct boolean comparisons for type guards
Trust preserved narrowing in closures when variables aren't modified after the check (TypeScript 5.4+)
Use constant indices to narrow object/array properties (TypeScript 5.5+)
Use standard ECMAScript decorators (Stage 3) instead of legacy experimentalDecorators
Use using declarations for explicit resource management with Disposable pattern instead of manual cleanup (TypeScript 5.2+)
Use with { type: "json" } for import attributes; avoid deprecated assert syntax (TypeScript 5.3/5.8+)
Use import type explicitly when importing types to ensure they are erased during compilation, respecting verbatimModuleSyntax flag
Use .ts, .mts, .cts extensions in import type statements (TypeScript 5.2+)
Use import type { Type } from "mod" with { "resolution-mode": "import" } for specific module resolution contexts (TypeScript 5.3+)
Use new iterator methods (map, filter, etc.) if targeting modern environments (TypeScript 5.6+)
Utilize new Set methods like union, intersection, etc., when available (TypeScript 5.5+)
Use Object.groupBy / Map.groupBy standard methods for grouping instead of external libraries (TypeScript 5.4+)
Use Promise.withResolvers() for creating promises with exposed resolve/reject functions (TypeScript 5.7+)
Use copying array methods (toSorted, toSpliced, with) for immutable array operations (TypeScript 5.2+)
Avoid accessing instance fields via super in classes (TypeScript 5....

Files:

  • apps/web/core/components/inbox/sidebar/root.tsx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: Build and lint web apps
  • GitHub Check: Analyze (javascript)

@pushya22 pushya22 changed the title fix: intake state dropdown [WEB-5534] fix: intake state dropdown Dec 1, 2025
@makeplane
Copy link

makeplane bot commented Dec 1, 2025

Linked to Plane Work Item(s)

This comment was auto-generated by Plane

@pushya22 pushya22 merged commit 27bf257 into preview Dec 1, 2025
6 checks passed
@pushya22 pushya22 deleted the fix-intake-state-dropdown branch December 1, 2025 07:20
ClarenceChen0627 pushed a commit to ClarenceChen0627/plane that referenced this pull request Dec 5, 2025
ClarenceChen0627 pushed a commit to ClarenceChen0627/plane that referenced this pull request Dec 5, 2025
ClarenceChen0627 pushed a commit to ClarenceChen0627/plane that referenced this pull request Dec 5, 2025
Sign up for free to 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.

4 participants