From 53dd4a1005de71bb32722c602d480d7a9a029563 Mon Sep 17 00:00:00 2001 From: Sergey Penkovsky Date: Mon, 19 May 2025 10:36:26 +0300 Subject: [PATCH] add provide typedef --- cherrypick/lib/src/binding.dart | 9 ++++++--- examples/client_app/pubspec.lock | 4 ++-- examples/postly/pubspec.lock | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/cherrypick/lib/src/binding.dart b/cherrypick/lib/src/binding.dart index be00592..78c6774 100644 --- a/cherrypick/lib/src/binding.dart +++ b/cherrypick/lib/src/binding.dart @@ -13,6 +13,8 @@ enum Mode { simple, instance, providerInstance, providerInstanceWithParams } +typedef Provider = T? Function(); + typedef ProviderWithParams = T Function(dynamic params); typedef AsyncProvider = Future Function(); @@ -27,11 +29,12 @@ class Binding { late Type _key; late String _name; T? _instance; - T? Function()? _provider; + Provider? _provider; + ProviderWithParams? _providerWithParams; + AsyncProvider? asyncProvider; AsyncProviderWithParams? asyncProviderWithParams; - ProviderWithParams? _providerWithParams; late bool _isSingleton = false; late bool _isNamed = false; @@ -95,7 +98,7 @@ class Binding { /// ENG: Initialization instance via provider [value]. /// /// return [Binding] - Binding toProvide(T Function() value) { + Binding toProvide(Provider value) { _mode = Mode.providerInstance; _provider = value; return this; diff --git a/examples/client_app/pubspec.lock b/examples/client_app/pubspec.lock index 43c8489..1b8f1a3 100644 --- a/examples/client_app/pubspec.lock +++ b/examples/client_app/pubspec.lock @@ -31,14 +31,14 @@ packages: path: "../../cherrypick" relative: true source: path - version: "2.1.0-dev.1" + version: "2.1.0" cherrypick_flutter: dependency: "direct main" description: path: "../../cherrypick_flutter" relative: true source: path - version: "1.1.1-dev.1" + version: "1.1.1" clock: dependency: transitive description: diff --git a/examples/postly/pubspec.lock b/examples/postly/pubspec.lock index 7e9843a..880c933 100644 --- a/examples/postly/pubspec.lock +++ b/examples/postly/pubspec.lock @@ -156,7 +156,7 @@ packages: path: "../../cherrypick" relative: true source: path - version: "2.1.0-dev.1" + version: "2.1.0" clock: dependency: transitive description: