Skip to content

fix: Fix freeze icon#10716

Merged
keval718 merged 14 commits into
mainfrom
fix-freeze-icon-issue
Dec 1, 2025
Merged

fix: Fix freeze icon#10716
keval718 merged 14 commits into
mainfrom
fix-freeze-icon-issue

Conversation

@keval718
Copy link
Copy Markdown
Collaborator

@keval718 keval718 commented Nov 25, 2025

Before
image

After

image

Summary by CodeRabbit

  • Style
    • Updated the frozen node indicator icon displayed in node output fields to a new design.

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

@keval718 keval718 self-assigned this Nov 25, 2025
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Nov 25, 2025

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

Replaces the Snowflake icon used for frozen nodes with a new FreezeAllSvg icon in the NodeOutputfield component. The icon is imported from a new icons module and substituted in the frozen-icon container, with only the icon component changing while maintaining the same styling context.

Changes

Cohort / File(s) Change Summary
Icon replacement in frozen node display
src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
Replaces SnowflakeIcon with FreezeAllSvg icon imported from "@/icons/freezeAll/freezeAll"; removes "h-5 w-5" size classes from icon rendering

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Suggested labels

lgtm

Suggested reviewers

  • Cristhianzl

Pre-merge checks and finishing touches

❌ Failed checks (2 warnings, 1 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
Test File Naming And Structure ⚠️ Warning Pull request modifies frontend component without adding required test files following Jest conventions for test coverage. Add test file at src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/tests/NodeOutputfield.test.tsx with tests for frozen/non-frozen states.
Test Quality And Coverage ❓ Inconclusive Repository structure is not fully accessible, preventing verification of test coverage for the NodeOutputfield component icon change. Verify repository access, confirm testing framework, access the modified file, and provide context on UI component testing practices for this project.
✅ Passed checks (4 passed)
Check name Status Explanation
Test Coverage For New Implementations ✅ Passed This PR replaces one icon component with another in a single file with no logic changes. The frontend has no test infrastructure, making test requirements inapplicable.
Excessive Mock Usage Warning ✅ Passed PR contains only visual icon replacement in NodeOutputfield component with no test file modifications or test logic changes.
Title check ✅ Passed The title 'fix: Fix freeze icon' directly describes the main change—replacing the frozen node icon with a new FreezeAllSvg icon.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

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.

@github-actions github-actions Bot added the bug Something isn't working label Nov 25, 2025
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Nov 25, 2025

Frontend Unit Test Coverage Report

Coverage Summary

Lines Statements Branches Functions
Coverage: 15%
15.44% (4246/27493) 8.61% (1811/21013) 9.69% (587/6053)

Unit Test Results

Tests Skipped Failures Errors Time
1671 0 💤 0 ❌ 0 🔥 21.484s ⏱️

@codecov
Copy link
Copy Markdown

codecov Bot commented Nov 25, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 32.52%. Comparing base (9fe1378) to head (d588b58).
⚠️ Report is 1 commits behind head on main.

❌ Your project status has failed because the head coverage (40.09%) is below the target coverage (60.00%). You can increase the head coverage or adjust the target coverage.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main   #10716   +/-   ##
=======================================
  Coverage   32.52%   32.52%           
=======================================
  Files        1369     1368    -1     
  Lines       63452    63401   -51     
  Branches     9381     9377    -4     
=======================================
- Hits        20636    20620   -16     
+ Misses      41777    41745   -32     
+ Partials     1039     1036    -3     
Flag Coverage Δ
frontend 14.29% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...s/GenericNode/components/NodeOutputfield/index.tsx 0.00% <ø> (ø)

... and 9 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 25, 2025
Copy link
Copy Markdown
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 (2)
src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx (2)

41-41: Align FreezeAllSvg import with icons module conventions

Importing from "@/icons/freezeAll/freezeAll" works, but it may bypass the usual icons/IconName/index.tsx pattern (forwardRef wrapper, shared typing, and dark‑mode handling). For consistency and easier refactoring, consider re‑exporting the icon from src/frontend/src/icons/freezeAll/index.tsx and importing it here as:

import FreezeAllSvg from "@/icons/freezeAll";

if that barrel file exists or can be added.

Based on learnings, icon components are usually exported via an index.tsx with forwardRef and consistent typing.


378-381: Verify FreezeAllSvg sizing and styling vs the previous Snowflake icon

The new <FreezeAllSvg className="text-ice" /> drops the explicit h-5 w-5 size classes the old Snowflake icon used (per summary). That may change the rendered size depending on the SVG’s defaults.

Consider either:

  • Confirming the new icon’s intrinsic size matches the design intent in all node states, or
  • Adding explicit Tailwind size classes (e.g. className="h-5 w-5 text-ice") to lock it to the previous dimensions if that’s desired.

As per coding guidelines, visual tweaks should preserve layout unless the change is intentional.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8b67a37 and 2eb1ecc.

📒 Files selected for processing (1)
  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx (2 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
src/frontend/src/**/*.{ts,tsx}

📄 CodeRabbit inference engine (.cursor/rules/frontend_development.mdc)

src/frontend/src/**/*.{ts,tsx}: Use React 18 with TypeScript for frontend development
Use Zustand for state management

Files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
src/frontend/src/**/*.{tsx,jsx,css,scss}

📄 CodeRabbit inference engine (.cursor/rules/frontend_development.mdc)

Use Tailwind CSS for styling

Files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
src/frontend/src/**/*.{tsx,jsx}

📄 CodeRabbit inference engine (.cursor/rules/frontend_development.mdc)

src/frontend/src/**/*.{tsx,jsx}: Implement dark mode support using the useDarkMode hook and dark store
Use Lucide React for icon components in the application

Files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
🧠 Learnings (10)
📓 Common learnings
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/icons.mdc:0-0
Timestamp: 2025-11-24T19:46:57.897Z
Learning: Applies to src/frontend/src/icons/*/*.{jsx,js} : Create icon components in `src/frontend/src/icons/IconName/` directories. Add an SVG as a React component (e.g., `IconName.jsx`) that exports a functional component.
📚 Learning: 2025-11-24T19:46:57.897Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/icons.mdc:0-0
Timestamp: 2025-11-24T19:46:57.897Z
Learning: Applies to src/frontend/src/icons/*/index.tsx : Create an `index.tsx` for each icon that exports the icon using `forwardRef` and properly types it as `React.ForwardRefExoticComponent<React.PropsWithChildren<{}> & React.RefAttributes<SVGSVGElement>>`.

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-11-24T19:46:57.897Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/icons.mdc:0-0
Timestamp: 2025-11-24T19:46:57.897Z
Learning: Applies to src/frontend/src/icons/*/*.{jsx,js} : Create icon components in `src/frontend/src/icons/IconName/` directories. Add an SVG as a React component (e.g., `IconName.jsx`) that exports a functional component.

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-11-24T19:46:45.782Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-11-24T19:46:45.782Z
Learning: Applies to src/frontend/src/**/*.{tsx,jsx} : Use Lucide React for icon components in the application

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-11-24T19:46:45.782Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-11-24T19:46:45.782Z
Learning: Applies to src/frontend/src/components/nodes/**/*.{tsx,jsx} : Memoize custom React Flow node components using memo() to prevent unnecessary re-renders

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-11-24T19:46:45.782Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-11-24T19:46:45.782Z
Learning: Applies to src/frontend/src/components/**/*.{tsx,jsx} : Use React Flow for flow graph visualization with Node, Edge, Controls, and Background components

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-06-16T11:14:04.200Z
Learnt from: dolfim-ibm
Repo: langflow-ai/langflow PR: 8394
File: src/frontend/src/icons/Docling/index.tsx:4-6
Timestamp: 2025-06-16T11:14:04.200Z
Learning: The Langflow codebase consistently uses `React.PropsWithChildren<{}>` as the prop type for all icon components using forwardRef, rather than `React.SVGProps<SVGSVGElement>`. This is an established pattern across hundreds of icon files in src/frontend/src/icons/.

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-06-23T12:46:52.420Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/icons.mdc:0-0
Timestamp: 2025-06-23T12:46:52.420Z
Learning: Export custom icon components in React using React.forwardRef to ensure proper ref forwarding and compatibility with parent components.

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-06-23T12:46:42.048Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/frontend_development.mdc:0-0
Timestamp: 2025-06-23T12:46:42.048Z
Learning: Custom React Flow node types should be implemented as memoized components, using Handle components for connection points and supporting optional icons and labels.

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.tsx
📚 Learning: 2025-06-23T12:46:52.420Z
Learnt from: CR
Repo: langflow-ai/langflow PR: 0
File: .cursor/rules/icons.mdc:0-0
Timestamp: 2025-06-23T12:46:52.420Z
Learning: Custom SVG icon components in React should always support both light and dark mode by accepting an 'isdark' prop and adjusting colors accordingly.

Applied to files:

  • src/frontend/src/CustomNodes/GenericNode/components/NodeOutputfield/index.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). (42)
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 37/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 34/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 35/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 36/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 24/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 38/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 40/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 32/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 33/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 22/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 25/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 28/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 18/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 31/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 29/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 39/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 15/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 26/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 17/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 20/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 27/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 21/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 30/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 23/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 19/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 14/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 11/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 6/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 10/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 12/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 7/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 13/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 16/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 5/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 9/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 3/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 8/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 4/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 1/40
  • GitHub Check: Run Frontend Tests / Playwright Tests - Shard 2/40
  • GitHub Check: Test Docker Images / Test docker images
  • GitHub Check: Test Starter Templates

@ogabrielluiz ogabrielluiz changed the title fix: freeze icon fix: Fix freeze icon Nov 25, 2025
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 25, 2025
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 25, 2025
Copy link
Copy Markdown
Collaborator

@lucaseduoli lucaseduoli left a comment

Choose a reason for hiding this comment

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

You should use the IconComponent with the name FreezeAll

@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 25, 2025
@keval718 keval718 requested a review from lucaseduoli November 25, 2025 19:53
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 25, 2025
@keval718
Copy link
Copy Markdown
Collaborator Author

You should use the IconComponent with the name FreezeAll

I’m using SnowflakeIcon because I need to customize its height and width. The IconComponent defaults to a fixed size of 20px, and when I try to override it using className, the changes are not applied.

@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 25, 2025
@keval718 keval718 requested a review from Wallgau November 25, 2025 20:19
@github-actions github-actions Bot added the bug Something isn't working label Nov 26, 2025
@lucaseduoli
Copy link
Copy Markdown
Collaborator

You should use the IconComponent with the name FreezeAll

I’m using SnowflakeIcon because I need to customize its height and width. The IconComponent defaults to a fixed size of 20px, and when I try to override it using className, the changes are not applied.

Can you try putting a ! before the class name? Like !w-4 !h-4

@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 27, 2025
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Nov 27, 2025
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Dec 1, 2025
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Dec 1, 2025
@github-actions github-actions Bot added bug Something isn't working and removed bug Something isn't working labels Dec 1, 2025
@github-actions github-actions Bot added the lgtm This PR has been approved by a maintainer label Dec 1, 2025
@keval718 keval718 enabled auto-merge December 1, 2025 20:30
@keval718 keval718 disabled auto-merge December 1, 2025 20:51
@keval718 keval718 enabled auto-merge December 1, 2025 20:51
Copy link
Copy Markdown
Collaborator

@lucaseduoli lucaseduoli left a comment

Choose a reason for hiding this comment

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

LGTM

@keval718 keval718 added this pull request to the merge queue Dec 1, 2025
Merged via the queue into main with commit 53a5844 Dec 1, 2025
80 of 81 checks passed
@keval718 keval718 deleted the fix-freeze-icon-issue branch December 1, 2025 22:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working lgtm This PR has been approved by a maintainer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants