flutter_artist_styles 2.1.2
flutter_artist_styles: ^2.1.2 copied to clipboard
A modular and foundational design system package providing centralized theme tokens, custom typography, and color systems.
CHANGELOG #
All notable changes to this project will be documented in this file.
2.1.2 #
- Update Dependencies.
2.1.1 #
- Update Dependencies.
2.1.0 - 2026-06-14 #
- Remove tokens - success, warning, danger, error, info from context.faColors.surface namespace.
2.0.0 - 2026-06-10 #
Added #
- Established the Strict Structural Consistency Rule for the design system token vocabulary:
- Single-word core tokens (e.g.,
primary,success,error) are strictly mapped as Bold/Intense targets. - Multi-word and structural component tokens (e.g.,
ground,standard,primaryTonal,tertiaryQuiet) are strictly mapped as Soft/Adaptive targets.
- Single-word core tokens (e.g.,
Changed #
- Refactored Absolute Luminance Matrix (
LumConstants):- Completely flipped and rearranged the luminance spectrum across all namespaces to respect the single-word rule.
- In Light Theme, single-word tokens are pushed deep into the low-frequency dark zone (low
Lumvalues) to align natively with theFaColorBrightness.darkOnLighttarget signature. - In Dark Theme, single-word tokens are dynamically hoisted into the high-frequency light pastel zone (high
Lumvalues) to ensure optimal visual ergonomics and eliminate eye strain.
- Calibrated
LightSpecialFillLum&DarkSpecialFillLum:- Fixed a structural mapping flaw where engineering container nodes (
code,highlight,technical) were leaking into layout canvas zones. - Swapped frequency allocations between
highlightandhighlightTonalto ensure proper spatial encapsulation and background nesting.
- Fixed a structural mapping flaw where engineering container nodes (
- Optimized Binary Search Contrast Resolution:
- Improved color engine predictability. Brand identity colors (like primary brand violet) now retain absolute hue fidelity on solid backings, while standalone inks dynamically shift down toward dark bounds to ensure bulletproof text readability on bright canvases.
Fixed #
- Fixed a luminance-versus-metadata collision where
FaColorBrightnesslabels were conflicting with hardcoded target coordinates. - Eliminated all residual legacy Material Design 3 surface elevation ambiguities, solidifying FlutterArtist's own sovereign algorithmic color architecture.
1.0.0 - 2026-06-01 #
BREAKING CHANGES & MIGRATION GUIDE #
This release introduces a major architectural restructuring of the reactive state color platform. The legacy static namespace context.faColors.selection.* has been completely deprecated and removed from the framework binary core.
Color state processing has transitioned from specialized structural wrappers into an embedded engine layer driven directly by smart atomic FaColor property entities. Any color token returned from the design pipeline now natively exposes explicit state properties (.hover, .selected, .current, .pressed, .disabled).
API Namespace Remapping Matrix
| Legacy API (0.9.x) | Modern Production Alternative (1.0.0) |
|---|---|
context.faColors.selection.hover |
context.faColors.surface.subtle.hover or context.faColors.action.fill.primary.hover |
context.faColors.selection.selected |
context.faColors.surface.subtle.selected or context.faColors.action.fill.primary.selected |
context.faColors.selection.current |
context.faColors.surface.subtle.current or context.faColors.action.fill.primary.current |
NEW FEATURES & IMPLEMENTATION STANDARDS #
1. Contextual Surface Mappings (context.faColors.surface)
Developers can now leverage semantic background layouts that natively resolve reactive interactions:
- Access baseline system sheets via
context.faColors.surface.ground,.subtle,.muted,.standard,.emphasized, or.strong. - Trigger micro-interactions directly from the chosen color instance:
// Example: Reactive hover background mask
Color hoverBg = context.faColors.surface.subtle.hover;
2. Action Presentation Layers (context.faColors.action.fill)
For control interfaces, interactive components, and interactive bounds, leverage the dedicated action sub-namespace:
- Access high-contrast targets via
context.faColors.action.fill.primary,.secondary,.highlight, or.muted. - Chain state rules directly onto the component boundaries:
// Example: Multi-selection indicator highlight
Color activeSelection = context.faColors.action.fill.primary.selected;
3. Semantic Layout Conventions (Enterprise Grid Architecture)
To ensure absolute presentation consistency across massive data layouts, we introduce explicit layout-specific structural recommendations:
-
Data Tables Grid Implementation:
-
Strongly Recommended: Utilize
context.faColors.surface.rowto drive standardDataRowor layout list line canvases. -
Flexible Fallback: Developers are not strictly forced into this token; standard layout blocks can still safely use
context.faColors.surface.xxxconfigurations if required. -
Corresponding text elements should align to
context.faColors.ink.row. -
List / Grid View Components Implementation:
-
Strongly Recommended: Utilize
context.faColors.surface.itemto provide background bounds for repeating item tiles, cards, or dashboard slots. -
Flexible Fallback: Standard viewport structures remain free to adopt any general
context.faColors.surface.xxxvariant. -
Corresponding text elements should align to
context.faColors.ink.item.
4. Navigation & Workspace Controls (Menu State Processing)
Complex structural shell systems (such as sidebars, tabs, or drawer list layouts) can maintain stateful focus properties deterministically using the action layout pipeline:
- Use
context.faColors.action.fill.primaryto render the default background bounds of a menu node item in its standard state. - Chain the active focal target property
.currentto highlight the currently executed screen workspace route seamlessly:
Widget buildSidebarItem(BuildContext context, bool isActive) {
return Container(
color: isActive
? context.faColors.action.fill.primary.current
: context.faColors.action.fill.primary,
child: const Text("Active Menu Option"),
);
}
0.9.1+1 #
- Update documents (Readme).
0.9.1 #
- Update documents (Readme).
0.9.0 #
- Initial release.