-
-
Notifications
You must be signed in to change notification settings - Fork 368
feat(Tab): add OnTabHeaderTextLocalizer parameter #7062
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Reviewer's guide (collapsed on small PRs)Reviewer's GuideThis PR introduces an optional callback parameter to the Tab component for customizing header text localization and integrates it into the tab item creation logic. Sequence diagram for TabItem creation with header text localization callbacksequenceDiagram
participant Tab
participant "OnTabHeaderTextLocalizer (Func)"
participant TabItem
Tab->>"OnTabHeaderTextLocalizer (Func)": Call with original text (if not null)
"OnTabHeaderTextLocalizer (Func)"-->>Tab: Returns localized text
Tab->>TabItem: Pass localized text as parameter
Class diagram for updated Tab component with OnTabHeaderTextLocalizer parameterclassDiagram
class Tab {
+bool IsLazyLoadTabItem
+Func<string?, string?>? OnTabHeaderTextLocalizer
+void AddTabItem(string url)
void SetTabItemParameters(string? text, string? icon, bool closable, bool active)
}
class TabItem {
+string? Text
+string? Icon
+bool Closable
}
Tab "1" -- "*" TabItem : creates
File-Level Changes
Assessment against linked issues
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey there - I've reviewed your changes and they look great!
Prompt for AI Agents
Please address the comments from this code review:
## Individual Comments
### Comment 1
<location> `src/BootstrapBlazor/Components/Tab/Tab.razor.cs:872-874` </location>
<code_context>
void SetTabItemParameters(string? text, string? icon, bool closable, bool active)
{
+ // 增加 TabItemOptionAttribute 多语言支持
+ if (OnTabHeaderTextLocalizer != null)
+ {
+ text = OnTabHeaderTextLocalizer(text);
+ }
parameters.Add(nameof(TabItem.Text), text);
</code_context>
<issue_to_address>
**issue:** Check for null return value from OnTabHeaderTextLocalizer.
If the localizer returns null, use the original text to prevent blank tab headers.
</issue_to_address>Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7062 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 745 745
Lines 32549 32550 +1
Branches 4512 4512
=========================================
+ Hits 32549 32550 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds localization support for Tab component header text by introducing a new callback parameter OnTabHeaderTextLocalizer. It also updates the package version to 9.12.2-beta01.
- Added
OnTabHeaderTextLocalizerparameter to enable custom localization of tab header text - Applied the localizer in
SetTabItemParametersto support multilingual TabItemOptionAttribute text - Bumped version from 9.12.1 to 9.12.2-beta01
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/BootstrapBlazor/Components/Tab/Tab.razor.cs | Added OnTabHeaderTextLocalizer parameter and applied it in the internal SetTabItemParameters method to localize tab header text |
| src/BootstrapBlazor/BootstrapBlazor.csproj | Updated version to 9.12.2-beta01 |
Comments suppressed due to low confidence (1)
src/BootstrapBlazor/Components/Tab/Tab.razor.cs:860
- The
NotFoundTabTextis not being localized throughOnTabHeaderTextLocalizer. When the route handler is not found (line 858), theNotFoundTabTextshould also be passed through the localizer callback if it's provided, to ensure consistent localization behavior across all tab text sources.
parameters.Add(nameof(TabItem.Text), NotFoundTabText);
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Link issues
fixes #7061
Summary By Copilot
Regression?
Risk
Verification
Packaging changes reviewed?
☑️ Self Check before Merge
Summary by Sourcery
Introduce a callback parameter to the Tab component that allows consumers to localize or modify tab header text dynamically
New Features: