-
-
Notifications
You must be signed in to change notification settings - Fork 375
doc(Table): missing localization for table custom filter #7592
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
|
🧙 Sourcery has finished reviewing your pull request! 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.
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 missing localization strings for the Table component's custom filter documentation, addressing issue #7591. The changes provide Chinese and English translations for custom filter template descriptions and filter option items.
Changes:
- Added localization for
TablesFilterTemplateDescriptionexplaining how to use custom filter components withFilterTemplateandFilterProvider - Added four
CustomerFilterItemlocalization keys for filter dropdown options (All, Greater than 10/50/80)
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| src/BootstrapBlazor.Server/Locales/zh-CN.json | Added Chinese localization strings for custom filter documentation and filter items |
| src/BootstrapBlazor.Server/Locales/en-US.json | Added English localization strings for custom filter documentation and filter items |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "TablesFilterDescLi1": "Filters a column of data to specify the column to be filtered by specifying the <code>filterable</code> property of the column", | ||
| "TablesFilterDescLi2": "Sort a column of data, specify the column to be sorted by specifying the <code>Sortable</code> property of the column, change the collation by multiple clicks" | ||
| "TablesFilterDescLi2": "Sort a column of data, specify the column to be sorted by specifying the <code>Sortable</code> property of the column, change the collation by multiple clicks", | ||
| "TablesFilterTemplateDescription": "<p><code>The FilterTemplate</code> type is <code>RenderFragment</code> <span>its value is a custom component, and the component must inherit</span> <code>the filterBase</code> In this case, the last column in this case<b>, the Quantity column</b>, uses the <code>custom component by filtering the template CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[portal] CustomerFilter component source code</a></p><p class=\"code-label\">Notes:</p><ul class=\"ul-demo\"><li>Custom filter components are wrapped with <code>FilterProvider</code>, and <code>FilterProvider</code> must be under the <code>FilterTemplate</code> node</li><li>Filters can be fine-tuned through the parameters of the <code>FilterProvider</code> component; for example, by setting <code>ShowMoreButton</code> to control whether the <b>+ -</b> symbol is displayed</li><li>Before <code>v9.6.2</code>, use <code>OnFilterValueChanged</code> to trigger the filter callback. After refactoring, use <code>OnFilterAsync</code> to trigger the filter callback method.</li></ul-demo>", |
Copilot
AI
Jan 27, 2026
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.
The closing tag for the unordered list is incorrect. It should be </ul> instead of </ul-demo>. The opening tag is correctly using a class attribute (<ul class="ul-demo">), so the closing tag should match the standard HTML closing tag for an unordered list.
| "TablesFilterTemplateDescription": "<p><code>The FilterTemplate</code> type is <code>RenderFragment</code> <span>its value is a custom component, and the component must inherit</span> <code>the filterBase</code> In this case, the last column in this case<b>, the Quantity column</b>, uses the <code>custom component by filtering the template CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[portal] CustomerFilter component source code</a></p><p class=\"code-label\">Notes:</p><ul class=\"ul-demo\"><li>Custom filter components are wrapped with <code>FilterProvider</code>, and <code>FilterProvider</code> must be under the <code>FilterTemplate</code> node</li><li>Filters can be fine-tuned through the parameters of the <code>FilterProvider</code> component; for example, by setting <code>ShowMoreButton</code> to control whether the <b>+ -</b> symbol is displayed</li><li>Before <code>v9.6.2</code>, use <code>OnFilterValueChanged</code> to trigger the filter callback. After refactoring, use <code>OnFilterAsync</code> to trigger the filter callback method.</li></ul-demo>", | |
| "TablesFilterTemplateDescription": "<p><code>The FilterTemplate</code> type is <code>RenderFragment</code> <span>its value is a custom component, and the component must inherit</span> <code>the filterBase</code> In this case, the last column in this case<b>, the Quantity column</b>, uses the <code>custom component by filtering the template CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[portal] CustomerFilter component source code</a></p><p class=\"code-label\">Notes:</p><ul class=\"ul-demo\"><li>Custom filter components are wrapped with <code>FilterProvider</code>, and <code>FilterProvider</code> must be under the <code>FilterTemplate</code> node</li><li>Filters can be fine-tuned through the parameters of the <code>FilterProvider</code> component; for example, by setting <code>ShowMoreButton</code> to control whether the <b>+ -</b> symbol is displayed</li><li>Before <code>v9.6.2</code>, use <code>OnFilterValueChanged</code> to trigger the filter callback. After refactoring, use <code>OnFilterAsync</code> to trigger the filter callback method.</li></ul>", |
| "TablesFilterDescLi1": "Filters a column of data to specify the column to be filtered by specifying the <code>filterable</code> property of the column", | ||
| "TablesFilterDescLi2": "Sort a column of data, specify the column to be sorted by specifying the <code>Sortable</code> property of the column, change the collation by multiple clicks" | ||
| "TablesFilterDescLi2": "Sort a column of data, specify the column to be sorted by specifying the <code>Sortable</code> property of the column, change the collation by multiple clicks", | ||
| "TablesFilterTemplateDescription": "<p><code>The FilterTemplate</code> type is <code>RenderFragment</code> <span>its value is a custom component, and the component must inherit</span> <code>the filterBase</code> In this case, the last column in this case<b>, the Quantity column</b>, uses the <code>custom component by filtering the template CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[portal] CustomerFilter component source code</a></p><p class=\"code-label\">Notes:</p><ul class=\"ul-demo\"><li>Custom filter components are wrapped with <code>FilterProvider</code>, and <code>FilterProvider</code> must be under the <code>FilterTemplate</code> node</li><li>Filters can be fine-tuned through the parameters of the <code>FilterProvider</code> component; for example, by setting <code>ShowMoreButton</code> to control whether the <b>+ -</b> symbol is displayed</li><li>Before <code>v9.6.2</code>, use <code>OnFilterValueChanged</code> to trigger the filter callback. After refactoring, use <code>OnFilterAsync</code> to trigger the filter callback method.</li></ul-demo>", |
Copilot
AI
Jan 27, 2026
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.
The English translation has several grammar and formatting issues that make it difficult to read:
- "The FilterTemplate" should be "FilterTemplate" (without "The" at the beginning since it's in a code tag)
- "the filterBase" should be "FilterBase" (capitalization for class name)
- The phrase "In this case, the last column in this case" is redundant - "in this case" is repeated
- "uses the custom component by filtering the template CustomerFilter" is awkwardly phrased and should be something like "uses a custom component CustomerFilter through the filter template"
- "the component must inherit" should have "from" after "inherit"
The sentence structure needs improvement for clarity. Consider revising to match the clearer structure of the Chinese version more closely.
| "TablesFilterTemplateDescription": "<p><code>The FilterTemplate</code> type is <code>RenderFragment</code> <span>its value is a custom component, and the component must inherit</span> <code>the filterBase</code> In this case, the last column in this case<b>, the Quantity column</b>, uses the <code>custom component by filtering the template CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[portal] CustomerFilter component source code</a></p><p class=\"code-label\">Notes:</p><ul class=\"ul-demo\"><li>Custom filter components are wrapped with <code>FilterProvider</code>, and <code>FilterProvider</code> must be under the <code>FilterTemplate</code> node</li><li>Filters can be fine-tuned through the parameters of the <code>FilterProvider</code> component; for example, by setting <code>ShowMoreButton</code> to control whether the <b>+ -</b> symbol is displayed</li><li>Before <code>v9.6.2</code>, use <code>OnFilterValueChanged</code> to trigger the filter callback. After refactoring, use <code>OnFilterAsync</code> to trigger the filter callback method.</li></ul-demo>", | |
| "TablesFilterTemplateDescription": "<p><code>FilterTemplate</code> is of type <code>RenderFragment</code>; <span>its value is a custom component, and the component must inherit from</span> <code>FilterBase</code>. In this example, the last column, <b>the Quantity column</b>, uses the custom component <code>CustomerFilter</code> through the filter template. <a href=\"{0}\" target=\"_blank\">[portal] CustomerFilter component source code</a></p><p class=\"code-label\">Notes:</p><ul class=\"ul-demo\"><li>Custom filter components are wrapped with <code>FilterProvider</code>, and <code>FilterProvider</code> must be under the <code>FilterTemplate</code> node</li><li>Filters can be fine-tuned through the parameters of the <code>FilterProvider</code> component; for example, by setting <code>ShowMoreButton</code> to control whether the <b>+ -</b> symbol is displayed</li><li>Before <code>v9.6.2</code>, use <code>OnFilterValueChanged</code> to trigger the filter callback. After refactoring, use <code>OnFilterAsync</code> to trigger the filter callback method.</li></ul-demo>", |
| "TablesFilterDescLi1": "对某一列数据进行筛选,通过指定列的 <code>Filterable</code> 属性来指定需要筛选的列", | ||
| "TablesFilterDescLi2": "对某一列数据进行排序,通过指定列的 <code>Sortable</code> 属性来指定需要排序的列,通过多次点击更改排序规则" | ||
| "TablesFilterDescLi2": "对某一列数据进行排序,通过指定列的 <code>Sortable</code> 属性来指定需要排序的列,通过多次点击更改排序规则", | ||
| "TablesFilterTemplateDescription": "<p><code>FilterTemplate</code> 类型为 <code>RenderFragment</code> <span>其值为自定义组件,组件必须继承</span> <code>FilterBase</code> 本例中最后一列 <b>数量列</b> 通过筛选模板使用自定义组件 <code>CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[传送门] CustomerFilter 组件源码</a></p><p class=\"code-label\">注意事项:</p><ul class=\"ul-demo\"><li>自定义过滤组件使用 <code>FilterProvider</code> 包裹,<code>FilterProvider</code>必须在 <code>FilterTemplate</code> 节点下</li><li>通过 <code>FilterProvider</code> 组件的参数可微调过滤器;例如通过设置 <code>ShowMoreButton</code> 控制是否显示 <b>+ -</b> 符号</li><li><code>v9.6.2</code> 版本前,使用 <code>OnFilterValueChanged</code> 触发过滤回调,重构后使用 <code>OnFilterAsync</code> 触发过滤回调方法</li></ul-demo>", |
Copilot
AI
Jan 27, 2026
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.
There is a missing space after the comma. It should be "FilterProvider必须在" should be "FilterProvider 必须在" (add a space between the closing code tag and the Chinese text "必须").
| "TablesFilterTemplateDescription": "<p><code>FilterTemplate</code> 类型为 <code>RenderFragment</code> <span>其值为自定义组件,组件必须继承</span> <code>FilterBase</code> 本例中最后一列 <b>数量列</b> 通过筛选模板使用自定义组件 <code>CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[传送门] CustomerFilter 组件源码</a></p><p class=\"code-label\">注意事项:</p><ul class=\"ul-demo\"><li>自定义过滤组件使用 <code>FilterProvider</code> 包裹,<code>FilterProvider</code>必须在 <code>FilterTemplate</code> 节点下</li><li>通过 <code>FilterProvider</code> 组件的参数可微调过滤器;例如通过设置 <code>ShowMoreButton</code> 控制是否显示 <b>+ -</b> 符号</li><li><code>v9.6.2</code> 版本前,使用 <code>OnFilterValueChanged</code> 触发过滤回调,重构后使用 <code>OnFilterAsync</code> 触发过滤回调方法</li></ul-demo>", | |
| "TablesFilterTemplateDescription": "<p><code>FilterTemplate</code> 类型为 <code>RenderFragment</code> <span>其值为自定义组件,组件必须继承</span> <code>FilterBase</code> 本例中最后一列 <b>数量列</b> 通过筛选模板使用自定义组件 <code>CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[传送门] CustomerFilter 组件源码</a></p><p class=\"code-label\">注意事项:</p><ul class=\"ul-demo\"><li>自定义过滤组件使用 <code>FilterProvider</code> 包裹,<code>FilterProvider</code> 必须在 <code>FilterTemplate</code> 节点下</li><li>通过 <code>FilterProvider</code> 组件的参数可微调过滤器;例如通过设置 <code>ShowMoreButton</code> 控制是否显示 <b>+ -</b> 符号</li><li><code>v9.6.2</code> 版本前,使用 <code>OnFilterValueChanged</code> 触发过滤回调,重构后使用 <code>OnFilterAsync</code> 触发过滤回调方法</li></ul-demo>", |
| "TablesFilterDescLi1": "对某一列数据进行筛选,通过指定列的 <code>Filterable</code> 属性来指定需要筛选的列", | ||
| "TablesFilterDescLi2": "对某一列数据进行排序,通过指定列的 <code>Sortable</code> 属性来指定需要排序的列,通过多次点击更改排序规则" | ||
| "TablesFilterDescLi2": "对某一列数据进行排序,通过指定列的 <code>Sortable</code> 属性来指定需要排序的列,通过多次点击更改排序规则", | ||
| "TablesFilterTemplateDescription": "<p><code>FilterTemplate</code> 类型为 <code>RenderFragment</code> <span>其值为自定义组件,组件必须继承</span> <code>FilterBase</code> 本例中最后一列 <b>数量列</b> 通过筛选模板使用自定义组件 <code>CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[传送门] CustomerFilter 组件源码</a></p><p class=\"code-label\">注意事项:</p><ul class=\"ul-demo\"><li>自定义过滤组件使用 <code>FilterProvider</code> 包裹,<code>FilterProvider</code>必须在 <code>FilterTemplate</code> 节点下</li><li>通过 <code>FilterProvider</code> 组件的参数可微调过滤器;例如通过设置 <code>ShowMoreButton</code> 控制是否显示 <b>+ -</b> 符号</li><li><code>v9.6.2</code> 版本前,使用 <code>OnFilterValueChanged</code> 触发过滤回调,重构后使用 <code>OnFilterAsync</code> 触发过滤回调方法</li></ul-demo>", |
Copilot
AI
Jan 27, 2026
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.
The closing tag for the unordered list is incorrect. It should be </ul> instead of </ul-demo>. The opening tag is correctly using a class attribute (<ul class="ul-demo">), so the closing tag should match the standard HTML closing tag for an unordered list.
| "TablesFilterTemplateDescription": "<p><code>FilterTemplate</code> 类型为 <code>RenderFragment</code> <span>其值为自定义组件,组件必须继承</span> <code>FilterBase</code> 本例中最后一列 <b>数量列</b> 通过筛选模板使用自定义组件 <code>CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[传送门] CustomerFilter 组件源码</a></p><p class=\"code-label\">注意事项:</p><ul class=\"ul-demo\"><li>自定义过滤组件使用 <code>FilterProvider</code> 包裹,<code>FilterProvider</code>必须在 <code>FilterTemplate</code> 节点下</li><li>通过 <code>FilterProvider</code> 组件的参数可微调过滤器;例如通过设置 <code>ShowMoreButton</code> 控制是否显示 <b>+ -</b> 符号</li><li><code>v9.6.2</code> 版本前,使用 <code>OnFilterValueChanged</code> 触发过滤回调,重构后使用 <code>OnFilterAsync</code> 触发过滤回调方法</li></ul-demo>", | |
| "TablesFilterTemplateDescription": "<p><code>FilterTemplate</code> 类型为 <code>RenderFragment</code> <span>其值为自定义组件,组件必须继承</span> <code>FilterBase</code> 本例中最后一列 <b>数量列</b> 通过筛选模板使用自定义组件 <code>CustomerFilter</code> <a href=\"{0}\" target=\"_blank\">[传送门] CustomerFilter 组件源码</a></p><p class=\"code-label\">注意事项:</p><ul class=\"ul-demo\"><li>自定义过滤组件使用 <code>FilterProvider</code> 包裹,<code>FilterProvider</code>必须在 <code>FilterTemplate</code> 节点下</li><li>通过 <code>FilterProvider</code> 组件的参数可微调过滤器;例如通过设置 <code>ShowMoreButton</code> 控制是否显示 <b>+ -</b> 符号</li><li><code>v9.6.2</code> 版本前,使用 <code>OnFilterValueChanged</code> 触发过滤回调,重构后使用 <code>OnFilterAsync</code> 触发过滤回调方法</li></ul>", |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7592 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 749 749
Lines 32988 32988
Branches 4578 4578
=========================================
Hits 32988 32988
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:
|
Link issues
fixes #7591
Summary By Copilot
Regression?
Risk
Verification
Packaging changes reviewed?
☑️ Self Check before Merge
Summary by Sourcery
Enhancements: