From 582fd645c6bdd13b60881a8e7ce153dbdbd33e1b Mon Sep 17 00:00:00 2001 From: andromedabushturkey Date: Tue, 3 May 2022 21:00:03 -0400 Subject: [PATCH 1/3] added basic riverpod provider --- snippets/flutter-riverpod.snippets | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 snippets/flutter-riverpod.snippets diff --git a/snippets/flutter-riverpod.snippets b/snippets/flutter-riverpod.snippets new file mode 100644 index 000000000..0e053c9f4 --- /dev/null +++ b/snippets/flutter-riverpod.snippets @@ -0,0 +1,5 @@ +#Basic Riverpod Provider +snippet provider + final $1Provider = Provider<$2>((ref){ + return $3; + }); From fc36366aeda276b6acbac14d87f6b16865b0c7aa Mon Sep 17 00:00:00 2001 From: andromedabushturkey Date: Wed, 4 May 2022 15:23:20 -0400 Subject: [PATCH 2/3] added complete Riverpod snippets --- snippets/dart-flutter.snippets | 1 - snippets/flutter-riverpod.snippets | 147 ++++++++++++++++++++++++++++- 2 files changed, 145 insertions(+), 3 deletions(-) diff --git a/snippets/dart-flutter.snippets b/snippets/dart-flutter.snippets index f51f11ca4..adfc5cf5a 100644 --- a/snippets/dart-flutter.snippets +++ b/snippets/dart-flutter.snippets @@ -86,4 +86,3 @@ snippet fsa } } - diff --git a/snippets/flutter-riverpod.snippets b/snippets/flutter-riverpod.snippets index 0e053c9f4..f8a8436f6 100644 --- a/snippets/flutter-riverpod.snippets +++ b/snippets/flutter-riverpod.snippets @@ -1,5 +1,148 @@ #Basic Riverpod Provider snippet provider final $1Provider = Provider<$2>((ref){ - return $3; - }); + return $3; + }); + +#Basic Riverpod Provider with family +snippet providerFamily + final $1Provider = Provider.family<$2,$3>((ref, $4){ + return $5; + }); + +#Future Riverpod Provider +snippet futureProvider + final $1Provider = FutureProvider<$2>((ref) async { + return $3; + }); + +#Future Riverpod Provider with Family +snippet futureProviderFamily + final $1Provider = FutureProvider.family<$2,$3>((ref, $4) async { + return $5; + }); + +#Stream Riverpod Provider +snippet streamProvider + final $1Provider = StreamProvider<$2>((ref) async* { + return $3; + }); + +#Stream Riverpod Provider with Family +snippet streamProviderFamily + final $1Provider = StreamProvider.family<$2,$3>((ref, $4) async* { + return $5; + }); + +#Provider Listenable +snippet listen + ref.listen<$1>($2,(value) { + $3 + }); + +#Creates a StateProvider +snippet stateProvider + final $1Provider = StateProvider<$2>((ref){ + return $3; + }); + +#Create a StateProvider with Family modifier +snippet stateProviderFamily + final $1Provider = StateProvider.family<$2,$3>((ref, $4){ + return $5; + }); + +#Creates a StateNotifier provider +snippet stateNotifierProvider + final $1Provider = StateNotifierProvider<$2>((ref){ + return $3; + }); + +#Create a StateNotifierProvider with Family modifier +snippet stateNotifierProviderFamily + final $1Provider = StateNotifierProvider.family<$2,$3>((ref, $4){ + return $5; + }); + +#Create a ChangeNotifierProvider +snippet changeNotifierProvider + final $1Provider = ChangeNotifierProvider<$2>((ref) { + return $3; + }); + +#Create a ChangeNotifierProvider with Family modifier +snippet changeNotifierProviderFamily + final $1Provider = ChangeNotifierProvider.family<$2,$3>((ref, $4) { + return $5; + }); + +#Creates a class that extends StateNotifier and allows you to edit the types +snippet stateNotifier + class $1Notifier extends StateNotifier<$2> { + $1Notifier(): super($3); + $4 + } + +#Create Consumer +snippet consumer + Consumer( + builder: (context, ref, child){ + return $1; + } + ) + +#Create a ConsumerStatelessWidget +snippet stlessConsumer + class $1 extends ConsumerWidget { + const $1({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context, WidgetRef ref) { + return Container(); + } + } + +#Create a ConsumerStatefulWidget +snippet stfulConsumer + class $1 extends ConsumerStatefulWidget { + const $1({Key? key}) : super(key: key); + + @override + ConsumerState createState() => _$1State(); + } + + class _$1State extends ConsumerState<$1> { + @override + Widget build(BuildContext context){ + return Container(); + } + } + +#Create a HookConsumerWidget +snippet stlessHookConsumer + class $1 extends HookConsumerWidget { + const $1({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context, WidgetRef ref){ + return Container(); + } + } + +#Create a StatefulHooksConsumerWidget +snippet stfulHookConsumer + class $1 extends StatefulHookConsumerWidget { + const $1({Key? key}) : super(key: key); + + @override + ConsumerState createState() => _$1State(); + + } + + class _$1State extends ConsumerState<$1> { + + @override + Widget build(BuildContext context) { + return Container(); + } + } From 9e27f2b12aa1d2a127eb90acfbd01eb381ccf9a4 Mon Sep 17 00:00:00 2001 From: andromedabushturkey Date: Wed, 4 May 2022 15:31:35 -0400 Subject: [PATCH 3/3] added credits --- snippets/flutter-riverpod.snippets | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/snippets/flutter-riverpod.snippets b/snippets/flutter-riverpod.snippets index f8a8436f6..1394a4ca1 100644 --- a/snippets/flutter-riverpod.snippets +++ b/snippets/flutter-riverpod.snippets @@ -1,3 +1,10 @@ +################################################################################ +#Full credit to Robert Brunhage for creating the original snippet for Riverpod.# +#https://github.com/RobertBrunhage/flutter-riverpod-snippets # +#I just did the grunt work to bring them over to vim-snippets # +################################################################################ + + #Basic Riverpod Provider snippet provider final $1Provider = Provider<$2>((ref){