registerAll method
Registers multiple feature flags simultaneously from a map.
Values can be boolean (true/false) or strings ("true", "false").
Updates existing flags' values and records the new defaults. Useful for initializing
flags from JSON payloads, server-rendered configuration, or remote config endpoints.
features.registerAll({
'checkout_v2': true,
'promo_banner': 'true',
'ai_suggestions': false,
});
Implementation
void registerAll(Map<String, dynamic> flags) {
flags.forEach((key, val) {
final boolVal =
val is bool ? val : val.toString().toLowerCase() == 'true';
_defaults[key] = boolVal;
if (_flags.containsKey(key)) {
_flags[key]!.value = boolVal;
} else {
_flags[key] = signal(boolVal);
}
});
}