fix: handle underscores in kebabToCamel flag key conversion (SWITCH-1178)#658
Draft
fix: handle underscores in kebabToCamel flag key conversion (SWITCH-1178)#658
Conversation
Update kebabToCamel regex from '-(.)' to '[-_](.)' to handle both hyphens and underscores when converting flag keys to camelCase for React SDK instructions. SWITCH-1178 Co-Authored-By: jfong@launchdarkly.com <jfong@launchdarkly.com>
Contributor
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requirements
Related issues
Describe the solution you've provided
The
kebabToCamelfunction (used byReplaceFlagKeyto generate React SDK code snippets) only handled hyphens in its regex (-(.)), so flag keys containing underscores likemy_cool_flagwere left unconverted instead of becomingmyCoolFlag. This caused generated React snippets to not match how the React SDK actually converts flag keys at runtime.The fix updates the regex from
-(.)to[-_](.)to match both hyphens and underscores.Describe alternatives you've considered
Could have renamed the function from
kebabToCamelto something more general (e.g.toCamel), but kept the existing name to minimize churn since it's unexported.Additional context
Human review checklist:
[-_](.)correctly handles edge cases (e.g., leading underscores, consecutive separators likemy__flagormy-_flag)t.Runoutside the existing table-driven loop — this is intentional since it passes a different flag key (my_cool_flag) toReplaceFlagKeyrather than using the sharedreal-flag-keyLink to Devin session: https://app.devin.ai/sessions/98c82c6e8dd8417593c88c7ccde4b231
Requested by: @jfong-ld
Related Jira issue: REL-12691: Show flag installation code converting incorrectly