Skip to content

Conversation

@waleedlatif1
Copy link
Collaborator

Summary

  • treat condition input the same as the code subblock

Type of Change

  • Bug fix

Testing

Tested manually

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

@vercel
Copy link

vercel bot commented Nov 15, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
docs Skipped Skipped Nov 15, 2025 7:12am

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Nov 15, 2025

Greptile Overview

Greptile Summary

Aligned the condition input's syntax highlighting logic with the code subblock by adding a shouldHighlight boolean field to placeholder objects. This ensures that only valid references (those passing the shouldHighlightReference check) are highlighted in blue, while invalid <...> patterns remain unhighlighted.

Key changes:

  • Added shouldHighlight: boolean field to placeholder type definition
  • Set shouldHighlight: true for all environment variables ({{...}})
  • Set shouldHighlight: true only for variable references that pass validation
  • Added check in restoration loop to skip highlighting when shouldHighlight is false

This fix prevents the condition input from highlighting invalid or inaccessible variable references, bringing it into alignment with the code subblock's behavior.

Confidence Score: 5/5

  • This PR is safe to merge with minimal risk
  • The change is a focused bugfix that aligns two components' behavior. It adds a boolean field to track highlighting decisions and uses it during the restoration phase, which is a clean and logical implementation that mirrors the code subblock pattern. No logic errors, security issues, or breaking changes detected.
  • No files require special attention

Important Files Changed

File Analysis

Filename Score Overview
apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/panel-new/components/editor/components/sub-block/components/condition-input/condition-input.tsx 5/5 Aligned placeholder handling with code subblock by adding shouldHighlight boolean field to track highlighting decisions

Sequence Diagram

sequenceDiagram
    participant User
    participant Editor as ConditionInput Editor
    participant Highlight as Highlight Function
    participant Placeholders as Placeholder Array

    User->>Editor: Types code with {{env}} or <var>
    Editor->>Highlight: highlight(codeToHighlight)
    
    Note over Highlight: Process environment variables
    Highlight->>Placeholders: push({placeholder, original, type: 'env', shouldHighlight: true})
    
    Note over Highlight: Process variable references
    Highlight->>Highlight: shouldHighlightReference(match)
    alt Should Highlight
        Highlight->>Placeholders: push({placeholder, original, type: 'var', shouldHighlight: true})
    else Should Not Highlight
        Highlight->>Highlight: Keep original match
    end
    
    Note over Highlight: Apply Prism.js syntax highlighting
    Highlight->>Highlight: highlight(processedCode)
    
    Note over Highlight: Restore placeholders with highlighting
    loop For each placeholder
        alt shouldHighlight === true
            Highlight->>Highlight: Replace with highlighted span
        else shouldHighlight === false
            Highlight->>Highlight: Skip restoration
        end
    end
    
    Highlight->>Editor: Return highlighted HTML
    Editor->>User: Display syntax-highlighted code
Loading

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

1 file reviewed, no comments

Edit Code Review Agent Settings | Greptile

@waleedlatif1 waleedlatif1 merged commit bc8947c into staging Nov 15, 2025
9 checks passed
@waleedlatif1 waleedlatif1 deleted the fix/condition branch November 15, 2025 07:23
waleedlatif1 added a commit that referenced this pull request Nov 17, 2025
* test(pr): hackathon (#1999)

* test(pr): github trigger (#2000)

* fix(usage-indicator): conditional rendering, upgrade, and ui/ux (#2001)

* fix: usage-limit indicator and render conditonally on is billing enabled

* fix: upgrade render

* fix(notes): fix notes, tighten spacing, update deprecated zustand function, update use mention data to ignore block positon (#2002)

* fix(pdfs): use unpdf instead of pdf-parse (#2004)

* fix(modals): fix z-index for various modals and output selector and variables (#2005)

* fix(condition): treat condition input the same as the code subblock (#2006)

* feat(models): added gpt-5.1 (#2007)

* improvement: runpath edges, blocks, active (#2008)

* feat(i18n): update translations (#2009)

* fix(triggers): check triggermode and consolidate block type (#2011)

* fix(triggers): disabled trigger shouldn't be added to dag (#2012)

* Fix disabled blocks

* Comments

* Fix api/chat trigger not found message

* fix(tags): only show start block upstream if is ancestor (#2013)

* fix(variables): Fix resolution on double < (#2016)

* Fix variable <>

* Ling

* Clean

* feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect (#2015)

* feat(billing): add notif for first failed payment, added upgrade email from free, updated providers that supported granular tool control to support them, fixed envvar popover, fixed redirect to wrong workspace after oauth connect

* fix build

* ack PR comments

* feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI (#2017)

* feat(performance): added reactquery hooks for workflow operations, for logs, fixed logs reloading, fix subscription UI

* use useInfiniteQuery for logs fetching

* fix(copilot): run workflow supports input format and fix run id (#2018)

* fix(router): fix error edge in router block + fix source handle problem (#2019)

* Fix router block error port handling

* Remove comment

* Fix edge execution

* improvement: code subblock, action bar, connections (#2024)

* improvement: action bar, connections

* fix: code block draggable resize

* fix(response): fix response block http format (#2027)

* Fix response block

* Lint

* fix(notes): fix notes block spacing, additional logs for billing transfer route (#2029)

---------

Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com>
Co-authored-by: Emir Karabeg <78010029+emir-karabeg@users.noreply.github.com>
Co-authored-by: Siddharth Ganesan <33737564+Sg312@users.noreply.github.com>
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.

2 participants