oke
This commit is contained in:
parent
9971d5d1fe
commit
ed4cf44239
|
|
@ -1,5 +1,4 @@
|
||||||
manifest.json,1768956954743,5edb32bebce763b2b7e55774ae4c5c4354a44df248387cc3c174e8710e85aaa1
|
manifest.json,1768956954743,5edb32bebce763b2b7e55774ae4c5c4354a44df248387cc3c174e8710e85aaa1
|
||||||
main.dart.js,1783212101370,2eea759be6123210cb2071dadb738cebd59c858398588e3d7c64d61ad6276a7e
|
|
||||||
flutter.js,1767911992319,970356511bee637e57348b9e01b3218a3d1d6c4add478fdc306033b4b3e21ef4
|
flutter.js,1767911992319,970356511bee637e57348b9e01b3218a3d1d6c4add478fdc306033b4b3e21ef4
|
||||||
favicon.png,1768956954741,19880e004e8357a51f6a64f5d1fdc8828a6432fe9c781f8acb6b730eced2cd13
|
favicon.png,1768956954741,19880e004e8357a51f6a64f5d1fdc8828a6432fe9c781f8acb6b730eced2cd13
|
||||||
splash/img/light-4x.png,1782356157453,09ff8858378bb70d5f4b0381eb98dc9a889e541aeb2dd7576da7d62f205de578
|
splash/img/light-4x.png,1782356157453,09ff8858378bb70d5f4b0381eb98dc9a889e541aeb2dd7576da7d62f205de578
|
||||||
|
|
@ -31,15 +30,16 @@ assets/images/windy.png,1776157890991,b9d34ed004fff60a4fea365c23508823943f3f0793
|
||||||
assets/images/logo_klimatologi.png,1777103040742,e042ff556e356926fcd5ff92555519a569a71316ab2f7074f86f4ea4a215f325
|
assets/images/logo_klimatologi.png,1777103040742,e042ff556e356926fcd5ff92555519a569a71316ab2f7074f86f4ea4a215f325
|
||||||
assets/images/google-icon-logo.png,1776157890990,333cfafcd5c87738a4098359e18e02ff5848b2b1b819ec8aff29424c3f82d32b
|
assets/images/google-icon-logo.png,1776157890990,333cfafcd5c87738a4098359e18e02ff5848b2b1b819ec8aff29424c3f82d32b
|
||||||
assets/images/atmosfer.png,1776157890990,c3a9ddfa5676b5f0e1cf833f73c0f09c1dfb9d2e202906c1afcdd7a50dcf2506
|
assets/images/atmosfer.png,1776157890990,c3a9ddfa5676b5f0e1cf833f73c0f09c1dfb9d2e202906c1afcdd7a50dcf2506
|
||||||
version.json,1783212554571,237d17e2e585a791361ca905fcf3f475c56ae306611b22c2065ed0802c5045ff
|
version.json,1783214541712,3e2d1c0872ebb7dda9ed8a4eaaa0a79ab01441bee7f5edf95c1c1c2bb97ceed3
|
||||||
index.html,1783212517855,3ffbcfc0c9d82b851ce84d2b1bfc85cea0a34b077bdad955e7cf52643a3cf434
|
flutter_service_worker.js,1783214550502,068ca34a1f4332b214d5f511cd1abfed1b720f280f94b8ce08ec732d29655af1
|
||||||
flutter_service_worker.js,1783212562132,b60d1b5150d75c89aa3e26780245ef4b2a22f1d9ba3ab3c2fa9d94276c367b9c
|
flutter_bootstrap.js,1783214445091,85234afb8416b00e9b302f567a0b48b5718eaced8b43bc42c636268556e25888
|
||||||
flutter_bootstrap.js,1783212517826,b4851c428cfda20cee582a74b8247773fb18dd3245842b0edb1aee51879abf3c
|
index.html,1783214445115,3ffbcfc0c9d82b851ce84d2b1bfc85cea0a34b077bdad955e7cf52643a3cf434
|
||||||
assets/FontManifest.json,1783212554681,e38b95988f5d060cf9b7ce97cb5ac9236d6f4cc04a11d69567df97b2b4cbc5e5
|
assets/FontManifest.json,1783214542097,e38b95988f5d060cf9b7ce97cb5ac9236d6f4cc04a11d69567df97b2b4cbc5e5
|
||||||
assets/AssetManifest.bin.json,1783212554681,bf7d61eab58f76fb4e7c8b7ba7cbd4c92c16dbc887d554d7cf7e71a5435e961d
|
assets/AssetManifest.bin.json,1783214542097,bf7d61eab58f76fb4e7c8b7ba7cbd4c92c16dbc887d554d7cf7e71a5435e961d
|
||||||
assets/AssetManifest.bin,1783212554681,186d0884c1555d59162e31b14fe7fb0038864e322d7c9f3fb3318a1527be9242
|
assets/AssetManifest.bin,1783214542097,186d0884c1555d59162e31b14fe7fb0038864e322d7c9f3fb3318a1527be9242
|
||||||
assets/shaders/stretch_effect.frag,1783212554818,586ff23669838dd33070077916f0b971a8800f67093ae8d6eed47e6cea50926f
|
assets/shaders/stretch_effect.frag,1783214542233,586ff23669838dd33070077916f0b971a8800f67093ae8d6eed47e6cea50926f
|
||||||
assets/shaders/ink_sparkle.frag,1783212554800,591c7517d5cb43eb91ea451e0d3f9f585cbf8298cf6c46a9144b77cb0775a406
|
assets/shaders/ink_sparkle.frag,1783214542233,591c7517d5cb43eb91ea451e0d3f9f585cbf8298cf6c46a9144b77cb0775a406
|
||||||
assets/packages/cupertino_icons/assets/CupertinoIcons.ttf,1783212556191,85140ea453cd3e02bd93650fe8add6a724ae8c0ac73d0c491085b301e7bd21d2
|
assets/packages/cupertino_icons/assets/CupertinoIcons.ttf,1783214543601,85140ea453cd3e02bd93650fe8add6a724ae8c0ac73d0c491085b301e7bd21d2
|
||||||
assets/fonts/MaterialIcons-Regular.otf,1783212556207,d7ea214218a5b907538107aad5f49caeb5eae4bc9814b83cf52731bcfc9dbebc
|
assets/fonts/MaterialIcons-Regular.otf,1783214543601,d7ea214218a5b907538107aad5f49caeb5eae4bc9814b83cf52731bcfc9dbebc
|
||||||
assets/NOTICES,1783212554681,0ca1b4f48ad9b11b50a47eda04252140a3044c7a1db622232baa51c99986d210
|
assets/NOTICES,1783214542098,0ca1b4f48ad9b11b50a47eda04252140a3044c7a1db622232baa51c99986d210
|
||||||
|
main.dart.js,1783214385985,ae4a739c52dfeee3490632bd8b675449427f74ec48625866104330eab7e41182
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@ class SensorGrid extends StatelessWidget {
|
||||||
value: state.isLoading
|
value: state.isLoading
|
||||||
? '—'
|
? '—'
|
||||||
: state.currentSpeed.toStringAsFixed(1),
|
: state.currentSpeed.toStringAsFixed(1),
|
||||||
unit: 'm/s',
|
unit: 'km/h',
|
||||||
isLoading: state.isLoading,
|
isLoading: state.isLoading,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ const _kRealtimeOptions = <String, int>{
|
||||||
'5 detik': 5000,
|
'5 detik': 5000,
|
||||||
'30 detik': 30000,
|
'30 detik': 30000,
|
||||||
'1 menit': 60000,
|
'1 menit': 60000,
|
||||||
|
'6 menit': 360000,
|
||||||
'1 jam': 3600000,
|
'1 jam': 3600000,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -194,10 +194,8 @@ class WindSpeedExcelService {
|
||||||
sheet.merge(CellIndex.indexByColumnRow(columnIndex: 0, rowIndex: secRow),
|
sheet.merge(CellIndex.indexByColumnRow(columnIndex: 0, rowIndex: secRow),
|
||||||
CellIndex.indexByColumnRow(columnIndex: 3, rowIndex: secRow));
|
CellIndex.indexByColumnRow(columnIndex: 3, rowIndex: secRow));
|
||||||
|
|
||||||
_setCell(sheet, secRow + 1, 0, 'Kecepatan (m/s)', bold: true);
|
|
||||||
_setCellDouble(sheet, secRow + 1, 1, currentSpeed);
|
|
||||||
_setCell(sheet, secRow + 2, 0, 'Kecepatan (km/h)', bold: true);
|
_setCell(sheet, secRow + 2, 0, 'Kecepatan (km/h)', bold: true);
|
||||||
_setCellDouble(sheet, secRow + 2, 1, currentSpeed * 3.6);
|
_setCellDouble(sheet, secRow + 2, 1, currentSpeed);
|
||||||
_setCell(sheet, secRow + 3, 0, 'Status', bold: true);
|
_setCell(sheet, secRow + 3, 0, 'Status', bold: true);
|
||||||
_setCell(sheet, secRow + 3, 1, alertLevel,
|
_setCell(sheet, secRow + 3, 1, alertLevel,
|
||||||
bgColor: _alertBgColor(alertLevel));
|
bgColor: _alertBgColor(alertLevel));
|
||||||
|
|
@ -282,7 +280,7 @@ class WindSpeedExcelService {
|
||||||
for (var i = 0; i < sorted.length; i++) {
|
for (var i = 0; i < sorted.length; i++) {
|
||||||
final item = sorted[i];
|
final item = sorted[i];
|
||||||
final rowIdx = i + 1;
|
final rowIdx = i + 1;
|
||||||
final kmh = item.speed * 3.6;
|
final kmh = item.speed;
|
||||||
final status = _getAlertLevel(item.speed);
|
final status = _getAlertLevel(item.speed);
|
||||||
final bgColor = i.isEven ? _colorNormal : _colorWhite;
|
final bgColor = i.isEven ? _colorNormal : _colorWhite;
|
||||||
|
|
||||||
|
|
@ -453,8 +451,8 @@ class WindSpeedExcelService {
|
||||||
}
|
}
|
||||||
|
|
||||||
static String _getAlertLevel(double speed) {
|
static String _getAlertLevel(double speed) {
|
||||||
if (speed >= 12.5) return 'Bahaya';
|
if (speed >= 45.5) return 'Bahaya';
|
||||||
if (speed >= 8.0) return 'Waspada';
|
if (speed >= 25.0) return 'Waspada';
|
||||||
return 'Normal';
|
return 'Normal';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -364,7 +364,7 @@ class _HistoryItemTile extends StatelessWidget {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final kmh = item.speed * 3.6;
|
final kmh = item.speed;
|
||||||
|
|
||||||
return Padding(
|
return Padding(
|
||||||
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 10),
|
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 10),
|
||||||
|
|
|
||||||
|
|
@ -1136,13 +1136,13 @@ class _HistoryTile extends StatelessWidget {
|
||||||
crossAxisAlignment: CrossAxisAlignment.end,
|
crossAxisAlignment: CrossAxisAlignment.end,
|
||||||
children: [
|
children: [
|
||||||
Text(
|
Text(
|
||||||
'avg ${item.windwegKm.toStringAsFixed(3)} km',
|
'${item.speed.toStringAsFixed(3)} km/h',
|
||||||
style: const TextStyle(
|
style: const TextStyle(
|
||||||
fontSize: 12, fontWeight: FontWeight.bold),
|
fontSize: 12, fontWeight: FontWeight.bold),
|
||||||
),
|
),
|
||||||
if (item.maxWindwegKm > 0)
|
if (item.maxWindwegKm > 0)
|
||||||
Text(
|
Text(
|
||||||
'max ${item.maxWindwegKm.toStringAsFixed(3)} km',
|
'max ${item.maxWindwegKm.toStringAsFixed(3)} km/h',
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 10, color: Colors.orange.shade600),
|
fontSize: 10, color: Colors.orange.shade600),
|
||||||
),
|
),
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue