Skip to content

Commit

Permalink
Fixes formatting error in the rules.md table (#206)
Browse files Browse the repository at this point in the history
* Fixes formatting error in the rules.md table

The content after the rule `invalid_runtime_check_with_js_interop_types` was not formatted in a table due to syntax error

* Fix multiline descriptions formatting in markdown generation

- Updated the `_createRuleTableRow` function to properly handle multiline descriptions by replacing line breaks with spaces
- Trimmed leading/trailing whitespace and reduced consecutive spaces to a single space
- This ensures that the generated markdown table rows in rules.md are correctly formatted, preventing description content from breaking across lines or having inconsistent spacing
  • Loading branch information
lenzpaul authored Sep 10, 2024
1 parent 6580f83 commit 9e4fd7d
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 3 deletions.
3 changes: 1 addition & 2 deletions rules.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,7 @@
| [`empty_statements`](https://dart.dev/lints/empty_statements) | Avoid empty statements. ||
| [`exhaustive_cases`](https://dart.dev/lints/exhaustive_cases) | Define case clauses for all constants in enum-like classes. ||
| [`implementation_imports`](https://dart.dev/lints/implementation_imports) | Don't import implementation files from another package. | |
| [`invalid_runtime_check_with_js_interop_types`](https://dart.dev/lints/invalid_runtime_check_with_js_interop_types) | Avoid runtime type tests with JS interop types where the result may not
be platform-consistent. | |
| [`invalid_runtime_check_with_js_interop_types`](https://dart.dev/lints/invalid_runtime_check_with_js_interop_types) | Avoid runtime type tests with JS interop types where the result may not be platform-consistent. | |
| [`library_prefixes`](https://dart.dev/lints/library_prefixes) | Use `lowercase_with_underscores` when specifying a library prefix. | |
| [`library_private_types_in_public_api`](https://dart.dev/lints/library_private_types_in_public_api) | Avoid using private types in public APIs. | |
| [`no_leading_underscores_for_library_prefixes`](https://dart.dev/lints/no_leading_underscores_for_library_prefixes) | Avoid leading underscores for library prefixes. ||
Expand Down
5 changes: 4 additions & 1 deletion tool/gen_docs.dart
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,10 @@ String _createRuleTableRow(
if (ruleMeta == null) {
stderr.writeln("WARNING: Missing rule information for rule: $rule");
}
final description = ruleMeta?['description'] ?? '';
final description = (ruleMeta?['description'] ?? '')
.replaceAll('\n', ' ')
.replaceAll(RegExp(r'\s+'), ' ')
.trim();
final hasFix = ruleMeta?['fixStatus'] == 'hasFix';
final fixDesc = hasFix ? '✅' : '';

Expand Down

0 comments on commit 9e4fd7d

Please sign in to comment.