action_box 0.0.28 copy "action_box: ^0.0.28" to clipboard
action_box: ^0.0.28 copied to clipboard

outdated

This package isolates business logic so that it can be reused.

example/action_box.dart

import 'dart:async';

import 'package:action_box/action_box.dart';

import 'string_to_list.dart';

class ActionBox extends ActionBoxBase<_ActionRoot> {
  static ActionBox? _instance;
  ActionBox._(StreamController<dynamic> Function()? errorStreamFactory,
      Duration? defaultTimeout)
      : super(() => _ActionRoot(),
            errorStreamFactory: errorStreamFactory,
            defaultTimeout: defaultTimeout);

  factory ActionBox.shared(
          {StreamController<dynamic> Function()? errorStreamFactory,
          Duration? defaultTimeout}) =>
      _instance ??= ActionBox._(errorStreamFactory, defaultTimeout);

  @override
  void dispose() {
    super.dispose();
    _instance = null;
  }
}

class _ActionRoot extends ActionDirectory {
  _ValueConverter get valueConverter =>
      putIfAbsentDirectory('valueConverter', () => _ValueConverter());
}

class _ValueConverter extends ActionDirectory {
  _ValueConverter() : super();

  ActionDescriptor<StringToList, String, List<String>>
      get getStringToListValue =>
          putIfAbsentDescriptor('getStringToListValue', () => StringToList());
}
2
likes
0
pub points
12%
popularity

Publisher

unverified uploader

This package isolates business logic so that it can be reused.

Repository (GitHub)
View/report issues

License

unknown (LICENSE)

More

Packages that depend on action_box