From 02f34b5f23c75bd6bfde630448e78ff534a58d51 Mon Sep 17 00:00:00 2001 From: Vitaliy Zarubin Date: Mon, 10 Jul 2023 12:41:02 +0300 Subject: [PATCH] [packages] Add rxdart --- example/lib/l10n/app_en.arb | 4 ++++ example/lib/l10n/app_ru.arb | 4 ++++ example/lib/packages/rxdart/model.dart | 14 ++++++++++++++ example/lib/packages/rxdart/page.dart | 6 ++++++ 4 files changed, 28 insertions(+) diff --git a/example/lib/l10n/app_en.arb b/example/lib/l10n/app_en.arb index a953f22..0344f7e 100644 --- a/example/lib/l10n/app_en.arb +++ b/example/lib/l10n/app_en.arb @@ -1,4 +1,8 @@ { + "@_RXDART": {}, + "rxdartTitle": "Rxdart", + "rxdartSubtitle": "Simple example using Rx for Dart", + "@_TRANSLATOR": {}, "translatorTitle": "Translate", "translatorSubtitle": "Translate en -> ru 'Hello!'", diff --git a/example/lib/l10n/app_ru.arb b/example/lib/l10n/app_ru.arb index f991c8d..98c5956 100644 --- a/example/lib/l10n/app_ru.arb +++ b/example/lib/l10n/app_ru.arb @@ -1,4 +1,8 @@ { + "@_RXDART": {}, + "rxdartTitle": "Rxdart", + "rxdartSubtitle": "Простой пример использования Rx для Dart", + "@_TRANSLATOR": {}, "translatorTitle": "Переводчик", "translatorSubtitle": "Перевод en -> ru 'Hello!'", diff --git a/example/lib/packages/rxdart/model.dart b/example/lib/packages/rxdart/model.dart index f86e175..94d01b7 100644 --- a/example/lib/packages/rxdart/model.dart +++ b/example/lib/packages/rxdart/model.dart @@ -3,6 +3,7 @@ * License: Proprietary. */ import 'package:flutter/widgets.dart'; +import 'package:rxdart/rxdart.dart'; import 'package:scoped_model/scoped_model.dart'; /// Model for [RxdartPage] @@ -10,4 +11,17 @@ class RxdartModel extends Model { /// Get [ScopedModel] static RxdartModel of(BuildContext context) => ScopedModel.of(context); + + final listObjects = [1, 'First', 2, 'Second', 3, 'Third', null]; + + /// Example of using rxdart + Future> getNumberList() { + return Stream.fromIterable(listObjects) + .doOnEach((notification) { + debugPrint(notification.toString()); + }) + .whereNotNull() + .whereType() + .toList(); + } } diff --git a/example/lib/packages/rxdart/page.dart b/example/lib/packages/rxdart/page.dart index d695c7b..60eb8c6 100644 --- a/example/lib/packages/rxdart/page.dart +++ b/example/lib/packages/rxdart/page.dart @@ -7,6 +7,7 @@ import 'package:flutter_example_packages/base/di/app_di.dart'; import 'package:flutter_example_packages/base/package/package.dart'; import 'package:flutter_example_packages/widgets/base/export.dart'; import 'package:flutter_example_packages/widgets/blocks/block_info_package.dart'; +import 'package:flutter_example_packages/widgets/blocks/block_item.dart'; import 'package:flutter_example_packages/widgets/layouts/block_layout.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart'; @@ -42,6 +43,11 @@ class _RxdartPageState extends AppState { crossAxisAlignment: CrossAxisAlignment.start, children: [ BlockInfoPackage(widget.package), + BlockItem( + title: l10n.rxdartTitle, + desc: l10n.rxdartSubtitle, + future: model.getNumberList(), + ), ], ), ),