Skip to content

Commit 0bdf0de

Browse files
Merge pull request #1 from MarvinQuevedo/desktop_ui
Desktop UI
2 parents 9a38a7b + 33f870f commit 0bdf0de

38 files changed

+1644
-403
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,3 +42,5 @@ app.*.map.json
4242
/android/app/debug
4343
/android/app/profile
4444
/android/app/release
45+
46+
**.lock

assets/images/chialisp_dark.svg

Lines changed: 65 additions & 0 deletions
Loading

ios/Podfile.lock

Lines changed: 54 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,75 @@
11
PODS:
2+
- DKImagePickerController/Core (4.3.4):
3+
- DKImagePickerController/ImageDataManager
4+
- DKImagePickerController/Resource
5+
- DKImagePickerController/ImageDataManager (4.3.4)
6+
- DKImagePickerController/PhotoGallery (4.3.4):
7+
- DKImagePickerController/Core
8+
- DKPhotoGallery
9+
- DKImagePickerController/Resource (4.3.4)
10+
- DKPhotoGallery (0.0.17):
11+
- DKPhotoGallery/Core (= 0.0.17)
12+
- DKPhotoGallery/Model (= 0.0.17)
13+
- DKPhotoGallery/Preview (= 0.0.17)
14+
- DKPhotoGallery/Resource (= 0.0.17)
15+
- SDWebImage
16+
- SwiftyGif
17+
- DKPhotoGallery/Core (0.0.17):
18+
- DKPhotoGallery/Model
19+
- DKPhotoGallery/Preview
20+
- SDWebImage
21+
- SwiftyGif
22+
- DKPhotoGallery/Model (0.0.17):
23+
- SDWebImage
24+
- SwiftyGif
25+
- DKPhotoGallery/Preview (0.0.17):
26+
- DKPhotoGallery/Model
27+
- DKPhotoGallery/Resource
28+
- SDWebImage
29+
- SwiftyGif
30+
- DKPhotoGallery/Resource (0.0.17):
31+
- SDWebImage
32+
- SwiftyGif
33+
- file_picker (0.0.1):
34+
- DKImagePickerController/PhotoGallery
35+
- Flutter
236
- Flutter (1.0.0)
337
- flutter_chia_rust_utils (0.0.1):
438
- Flutter
539
- path_provider_foundation (0.0.1):
640
- Flutter
741
- FlutterMacOS
42+
- SDWebImage (5.15.4):
43+
- SDWebImage/Core (= 5.15.4)
44+
- SDWebImage/Core (5.15.4)
845
- share_plus (0.0.1):
946
- Flutter
1047
- shared_preferences_foundation (0.0.1):
1148
- Flutter
1249
- FlutterMacOS
50+
- SwiftyGif (5.4.4)
1351
- url_launcher_ios (0.0.1):
1452
- Flutter
1553

1654
DEPENDENCIES:
55+
- file_picker (from `.symlinks/plugins/file_picker/ios`)
1756
- Flutter (from `Flutter`)
1857
- flutter_chia_rust_utils (from `.symlinks/plugins/flutter_chia_rust_utils/ios`)
1958
- path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/ios`)
2059
- share_plus (from `.symlinks/plugins/share_plus/ios`)
2160
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/ios`)
2261
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
2362

63+
SPEC REPOS:
64+
trunk:
65+
- DKImagePickerController
66+
- DKPhotoGallery
67+
- SDWebImage
68+
- SwiftyGif
69+
2470
EXTERNAL SOURCES:
71+
file_picker:
72+
:path: ".symlinks/plugins/file_picker/ios"
2573
Flutter:
2674
:path: Flutter
2775
flutter_chia_rust_utils:
@@ -36,11 +84,16 @@ EXTERNAL SOURCES:
3684
:path: ".symlinks/plugins/url_launcher_ios/ios"
3785

3886
SPEC CHECKSUMS:
87+
DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac
88+
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
89+
file_picker: ce3938a0df3cc1ef404671531facef740d03f920
3990
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
40-
flutter_chia_rust_utils: e3fe35fb13c59dfde519afb7c3fd0505ffb0d85b
91+
flutter_chia_rust_utils: 4acfa7f1faf9fe0aa25a98c008509e5efe1caf92
4192
path_provider_foundation: c68054786f1b4f3343858c1e1d0caaded73f0be9
93+
SDWebImage: 1c39de67663e5eebb2f41324d5d580eeea12dd4c
4294
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
4395
shared_preferences_foundation: 986fc17f3d3251412d18b0265f9c64113a8c2472
96+
SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f
4497
url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4
4598

4699
PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3

lib/main.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1+
import 'package:chialisp_playground/src/injection_container.dart';
12
import 'package:flutter/material.dart';
23

34
import 'src/app.dart';
45

56
void main() {
7+
injectionContainer();
68
runApp(const MyApp());
79
}

lib/src/app.dart

Lines changed: 41 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,58 @@
1-
import 'package:chialisp_playground/src/features/editor/providers/playground_provider.dart';
1+
22
import 'package:chialisp_playground/src/theme.dart';
33
import 'package:flutter/material.dart';
44
import 'package:flutter_highlight/themes/monokai-sublime.dart';
5+
import 'package:get/get.dart';
56
import 'package:provider/provider.dart';
67

8+
import 'features/editor/providers/editor_actions_provider.dart';
9+
import 'features/editor/providers/projects_handler_provider.dart';
10+
import 'features/editor/providers/projects_provider.dart';
11+
import 'features/editor/providers/puzzles_uncompresser_provider.dart';
12+
import 'features/home/presentation/providers/theme_provider.dart';
713
import 'features/splash/presentation/splash_page.dart';
814

9-
class MyApp extends StatelessWidget {
15+
class MyApp extends StatefulWidget {
1016
const MyApp({super.key});
1117

18+
@override
19+
State<MyApp> createState() => _MyAppState();
20+
}
21+
22+
class _MyAppState extends State<MyApp> {
1223
@override
1324
Widget build(BuildContext context) {
1425
final appThemeData = appTheme(context, Brightness.dark);
1526

16-
return ChangeNotifierProvider(
17-
create: (context) => PlaygroundProvider(),
18-
child: MaterialApp(
19-
title: 'ChiaList Playground',
20-
theme: appThemeData.copyWith(
21-
scaffoldBackgroundColor: monokaiSublimeTheme['root']!.backgroundColor,
27+
return MultiProvider(
28+
providers: [
29+
ChangeNotifierProvider.value(
30+
value: Get.find<ProjectsProvider>(),
31+
),
32+
ChangeNotifierProvider.value(
33+
value: Get.find<ProjectsHandlerProvider>(),
34+
),
35+
Provider.value(
36+
value: Get.find<PuzzleUncompressersProvider>(),
37+
),
38+
ChangeNotifierProvider.value(
39+
value: Get.find<EditorActionsProvider>(),
2240
),
23-
home: const SplashPage(),
24-
),
41+
ChangeNotifierProvider.value(
42+
value: Get.find<ThemeProvider>(),
43+
)
44+
],
45+
builder: (context, child) {
46+
return MaterialApp(
47+
title: 'ChiaList Playground',
48+
debugShowCheckedModeBanner: false,
49+
theme: appThemeData.copyWith(
50+
scaffoldBackgroundColor:
51+
monokaiSublimeTheme['root']!.backgroundColor,
52+
),
53+
home: const SplashPage(),
54+
);
55+
},
2556
);
2657
}
2758
}
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
import 'dart:async';
2+
import 'dart:convert';
3+
import 'dart:io';
4+
5+
import 'package:path_provider/path_provider.dart';
6+
import 'dart:developer' as developer;
7+
8+
// ignore: non_constant_identifier_names
9+
final _DS = Platform.pathSeparator;
10+
11+
class TempRepository {
12+
static final TempRepository instance = TempRepository._();
13+
/* DateTime _lastSaved = DateTime.now();
14+
String _lastSavedData = ""; */
15+
Timer? _timer;
16+
Directory? _appDocDic;
17+
TempRepository._();
18+
final _temp = <String, String>{};
19+
20+
void set(String key, String value) {
21+
_temp[key] = value;
22+
if (_timer != null) {
23+
_timer!.cancel();
24+
}
25+
_timer = Timer(const Duration(seconds: 2), () async {
26+
/* _lastSaved = DateTime.now();
27+
_lastSavedData = value; */
28+
final watch = Stopwatch()..start();
29+
if (_appDocDic == null) {
30+
final docDic = await getApplicationDocumentsDirectory();
31+
_appDocDic =
32+
Directory('${docDic.absolute.path}$_DS.chialisp_playground');
33+
}
34+
final tempDir =
35+
Directory('${_appDocDic!.absolute.path}$_DS.chialisp_temps');
36+
final tempFile = File('${tempDir.absolute.path}${_DS}_tempFile.txt');
37+
if (!tempDir.existsSync()) {
38+
tempDir.createSync(recursive: true);
39+
}
40+
await tempFile.writeAsString(getAlls());
41+
watch.stop();
42+
43+
developer.log('saved, ${watch.elapsedMicroseconds}');
44+
});
45+
}
46+
47+
String getAlls() {
48+
return json.encode(_temp);
49+
}
50+
51+
Future loadTempFile() async {
52+
try {
53+
if (_appDocDic == null) {
54+
final docDic = await getApplicationDocumentsDirectory();
55+
_appDocDic =
56+
Directory('${docDic.absolute.path}$_DS.chialisp_playground');
57+
}
58+
final tempDir =
59+
Directory('${_appDocDic!.absolute.path}$_DS.chialisp_temps');
60+
developer.log(tempDir.absolute.path);
61+
final tempFile = File('${tempDir.absolute.path}${_DS}_tempFile.txt');
62+
final fileData = await tempFile.readAsString();
63+
final readedData = Map<String, String>.from(json.decode(fileData));
64+
_temp.addAll(readedData);
65+
} catch (e) {
66+
developer.log(e.toString());
67+
}
68+
}
69+
70+
String? get(String key) => _temp[key];
71+
72+
void remove(String key) => _temp.remove(key);
73+
}

0 commit comments

Comments
 (0)