flutter_introduction/packages/flutter_introduction_interface/lib/src/local_introduction.dart

28 lines
829 B
Dart
Raw Normal View History

// SPDX-FileCopyrightText: 2022 Iconica
//
// SPDX-License-Identifier: BSD-3-Clause
import 'package:flutter_introduction_interface/src/introduction_interface.dart';
2024-02-19 16:53:21 +01:00
/// Provides local data storage for managing introduction data.
///
/// This class extends [IntroductionInterface] and implements methods to manage
/// introduction data locally.
class LocalIntroductionDataProvider extends IntroductionInterface {
2024-02-19 16:53:21 +01:00
/// Constructs an instance of [LocalIntroductionDataProvider].
///
/// Initializes the [hasViewed] flag to `false`.
LocalIntroductionDataProvider();
2024-02-19 16:53:21 +01:00
/// Flag indicating whether the introduction has been viewed or not.
bool hasViewed = false;
@override
2023-11-29 11:54:25 +01:00
Future<void> setCompleted({bool value = true}) async {
hasViewed = value;
}
@override
2023-11-29 11:54:25 +01:00
Future<bool> shouldShow() async => hasViewed;
}