Partial web app support

This commit is contained in:
Igor Kulikov
2021-08-18 21:07:19 +03:00
parent 287e808fa8
commit b6361feca9
43 changed files with 169 additions and 107 deletions

View File

@@ -0,0 +1,3 @@
import 'package:thingsboard_client/thingsboard_client.dart';
TbStorage createAppStorage() => throw UnsupportedError('');

View File

@@ -0,0 +1,3 @@
export '_tb_app_storage.dart'
if (dart.library.io) 'tb_secure_storage.dart'
if (dart.library.html) 'tb_web_local_storage.dart';

View File

@@ -1,6 +1,8 @@
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import 'package:thingsboard_client/thingsboard_client.dart';
TbStorage createAppStorage() => TbSecureStorage();
class TbSecureStorage implements TbStorage {
final flutterStorage = FlutterSecureStorage();

View File

@@ -0,0 +1,25 @@
import 'package:thingsboard_client/thingsboard_client.dart';
import 'dart:html';
TbStorage createAppStorage() => TbWebLocalStorage();
class TbWebLocalStorage implements TbStorage {
final Storage _localStorage = window.localStorage;
@override
Future<void> deleteItem(String key) async {
_localStorage.remove(key);
}
@override
Future<String?> getItem(String key) async {
return _localStorage[key];
}
@override
Future<void> setItem(String key, String value) async {
_localStorage[key] = value;
}
}

View File

@@ -7,7 +7,7 @@ import 'package:qr_code_scanner/qr_code_scanner.dart';
import 'package:thingsboard_app/core/context/tb_context.dart';
import 'package:thingsboard_app/core/context/tb_context_widget.dart';
class QrCodeScannerPage extends TbPageWidget<QrCodeScannerPage, _QrCodeScannerPageState> {
class QrCodeScannerPage extends TbPageWidget {
QrCodeScannerPage(TbContext tbContext) : super(tbContext);
@@ -16,7 +16,7 @@ class QrCodeScannerPage extends TbPageWidget<QrCodeScannerPage, _QrCodeScannerPa
}
class _QrCodeScannerPageState extends TbPageState<QrCodeScannerPage, _QrCodeScannerPageState> {
class _QrCodeScannerPageState extends TbPageState<QrCodeScannerPage> {
Timer? simulatedQrTimer;
QRViewController? controller;