NIFI-15951 modularize customized angular material themed components#11262
Open
scottyaslan wants to merge 1 commit into
Open
NIFI-15951 modularize customized angular material themed components#11262scottyaslan wants to merge 1 commit into
scottyaslan wants to merge 1 commit into
Conversation
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.
Summary
NIFI-15951
Summary
Decomposes the monolithic
material.scssand_app.scsstheme files into 22 per-component SCSSpartials under
themes/components/. Each partial exposes agenerate-material-theme()mixin thatis called from the bottom of
material.scss.Intentional Scope Changes
The following styles were intentionally narrowed or removed as part of this refactoring:
mat.select-overrides()(trigger text size, line-height, tracking): Removed from globalscope. These overrides were tightly coupled to the searchable-overlay pattern and are no longer
applied globally to all
mat-selectinstances..mat-mdc-select-panel(margin-top, border, border-radius): Removed from global scope.Select panel border styling is now scoped to
.searchable-overlayin_searchable-overlay.scss..mat-mdc-optiongeneral styling (min-height, padding, font-weight,.faicon sizing):Narrowed to
.searchable-overlayscope. The typography-related option styles (font-size,letter-spacing, line-height) remain global within
.mat-typography.text-basein_typography.scss..mat-mdc-form-field-icon-prefix .faand form-field padding (.mdc-text-field--outlined,.mat-mdc-form-field-has-icon-prefix): Narrowed from global scope to.searchable-overlayandsearchable-select.component.scssrespectively, as these paddings were only relevant tosearchable components.
Bug Fix
--themed-reusable-text-primary: The original_app.scssreferenced this CSS custom propertyfor
.mat-mdc-form-field-icon-prefix .facolor, but this is a Balto/openflow-ui token that doesnot exist in NiFi. Corrected to
var(--mat-app-text-color)in_searchable-overlay.scss.Purple Theme Simplification
The purple theme previously duplicated component overrides (snackbar, checkbox, spinner, icon-button,
error-button) that were identical to the default theme. These have been removed. The purple theme now
only imports
dialogas a demonstration of how secondary themes can selectively reuse NiFi'scomponent partials. Documentation comments explain the three available customization strategies.
Other Notes
.mdc-dialog__contentfont-size intentionally changed from hardcoded14pxtovar(--mat-sys-body-medium-size)to align with the typography scale. Currently resolves to the same value.
hover:cursor-pointeradded directly to copy-button template via Tailwind class, replacing aglobal
.copy-button:hoverrule.Please complete the following tracking steps prior to pull request creation.
Issue Tracking
Pull Request Tracking
NIFI-00000NIFI-00000VerifiedstatusPull Request Formatting
mainbranchVerification
Please indicate the verification steps performed prior to pull request creation.
Build
./mvnw clean install -P contrib-checkLicensing
LICENSEandNOTICEfilesDocumentation