put<T> static method

T put<T>(
  1. T instance, {
  2. String? tag,
  3. bool? isPermanent,
})

Register a dependency in the root scope (convenience method)

Implementation

static T put<T>(T instance, {String? tag, bool? isPermanent}) {
  // Smart default: ZenService instances default to permanent
  final permanent = isPermanent ?? (instance is ZenService ? true : false);

  final result = rootScope.put<T>(
    instance,
    tag: tag,
    isPermanent: permanent,
  );

  // Initialize via lifecycle manager for consistency
  if (instance is ZenController) {
    _lifecycleManager.initializeController(instance);
  } else if (instance is ZenService) {
    _lifecycleManager.initializeService(instance); // New method
  }

  return result;
}