Conversation
Packages Report
|
15e8b53 to
f39d410
Compare
There was a problem hiding this comment.
Pull request overview
This PR refactors the utils package to consolidate utility class generation through a centralized configuration system, replacing repetitive boilerplate code with a declarative approach that improves maintainability and consistency.
Key Changes:
- Introduced a unified configuration-driven utility generator (
generate-utils-from-config) - Migrated 80+ utility files from manual
generate-utilscalls to config-based generation - Restructured
$kendo-utilsmap with nested property/prefix/values format - Added comprehensive helper functions for config validation and processing
Reviewed changes
Copilot reviewed 93 out of 93 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
packages/utils/scss/_variables.scss |
Restructured $kendo-utils from flat value maps to nested configs with property/prefix/values/aliases metadata |
packages/utils/scss/_mixins.scss |
Added config-driven generation system with generate-utils-from-config and helper mixins |
packages/utils/scss/_functions.scss |
Added config validation, normalization, and alias resolution functions |
packages/utils/scss/_globals.scss |
Added import-once mixin to global exports |
packages/utils/scss/typography/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/transform/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/layout/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/flex-grid/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/spacing/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/sizing/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/border/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/background/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/interactivity/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/effects/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/filter/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/svg/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/scss/table/*.scss |
Replaced manual generate-utils calls with generate-utils-from-config |
packages/utils/docs/*.md |
Added documentation for new config system functions and mixins |
| $kendo-utils-grid-template-columns: map.get( $kendo-utils, "grid-template-columns" ) !default; | ||
| @include generate-utils( grid-cols-#{$key}, grid-template-columns, $kendo-utils-grid-template-columns, $important: false ); | ||
|
|
||
| @include generate-utils-from-config("grid-template-columns", $responsive-key: $key); |
There was a problem hiding this comment.
Incorrect mixin call syntax. The $responsive-key parameter should be passed as the second positional argument to generate-utils-from-config-responsive, not as a named parameter. Based on the mixin signature at line 263 of _mixins.scss, the correct call should be @include generate-utils-from-config-responsive('grid-template-columns', $key);
| @include generate-utils-from-config("grid-template-columns", $responsive-key: $key); | |
| @include generate-utils-from-config("grid-template-columns", $key); |
|
|
||
| // Screen readers utility classes | ||
| $kendo-utils-accessibility: map.get( $kendo-utils, "accessibility" ) !default; | ||
| $kendo-utils-accessibility: map.get( $kendo-utils, "screen-readers" ) !default; |
There was a problem hiding this comment.
The config key has been changed from 'accessibility' to 'screen-readers', but there's no corresponding 'screen-readers' key visible in the $kendo-utils map in _variables.scss. This will cause the utility classes to not be generated. Either add a 'screen-readers' entry to $kendo-utils or revert this change to use 'accessibility'.
| $kendo-utils-accessibility: map.get( $kendo-utils, "screen-readers" ) !default; | |
| $kendo-utils-accessibility: map.get( $kendo-utils, "accessibility" ) !default; |
|
Overall looks good, in addition we might decouple the |
|
We should also investigate the compile time increase in all |
No description provided.