초기 커밋

This commit is contained in:
2026-03-01 07:55:59 +09:00
commit b0262d6bab
67 changed files with 4660 additions and 0 deletions

View File

@@ -0,0 +1,55 @@
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';
import 'package:shared_preferences/shared_preferences.dart';
part 'local_storage.g.dart';
@Riverpod(keepAlive: true)
LocalStorage localStorage(Ref ref) {
return LocalStorage();
}
class LocalStorage {
Future<SharedPreferences> get _prefs async =>
SharedPreferences.getInstance();
Future<void> setString(String key, String value) async {
final prefs = await _prefs;
await prefs.setString(key, value);
}
Future<String?> getString(String key) async {
final prefs = await _prefs;
return prefs.getString(key);
}
Future<void> setBool(String key, {required bool value}) async {
final prefs = await _prefs;
await prefs.setBool(key, value);
}
Future<bool?> getBool(String key) async {
final prefs = await _prefs;
return prefs.getBool(key);
}
Future<void> setInt(String key, int value) async {
final prefs = await _prefs;
await prefs.setInt(key, value);
}
Future<int?> getInt(String key) async {
final prefs = await _prefs;
return prefs.getInt(key);
}
Future<void> remove(String key) async {
final prefs = await _prefs;
await prefs.remove(key);
}
Future<void> clear() async {
final prefs = await _prefs;
await prefs.clear();
}
}

View File

@@ -0,0 +1,36 @@
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';
part 'secure_storage.g.dart';
@Riverpod(keepAlive: true)
SecureStorage secureStorage(Ref ref) {
return SecureStorage();
}
class SecureStorage {
static const _storage = FlutterSecureStorage(
aOptions: AndroidOptions(encryptedSharedPreferences: true),
);
Future<void> write({required String key, required String value}) async {
await _storage.write(key: key, value: value);
}
Future<String?> read({required String key}) async {
return _storage.read(key: key);
}
Future<void> delete({required String key}) async {
await _storage.delete(key: key);
}
Future<void> deleteAll() async {
await _storage.deleteAll();
}
Future<bool> containsKey({required String key}) async {
return _storage.containsKey(key: key);
}
}