Skip to content

Commit

Permalink
add data service
Browse files Browse the repository at this point in the history
  • Loading branch information
LiquidatorCoder2 committed Nov 13, 2021
1 parent 00bc3ab commit cd95d6c
Show file tree
Hide file tree
Showing 5 changed files with 73 additions and 3 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Expand Up @@ -44,3 +44,6 @@ app.*.map.json
/android/app/debug
/android/app/profile
/android/app/release

# Environment Variables
*.env
2 changes: 2 additions & 0 deletions lib/main.dart
@@ -1,10 +1,12 @@
import 'package:bitsdojo_window/bitsdojo_window.dart';
import 'package:flutter/material.dart';
import 'package:flutter_acrylic/flutter_acrylic.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:odin/pages/home_page.dart';

void main() async {
WidgetsFlutterBinding.ensureInitialized();
await dotenv.load();
await Window.initialize();
await Window.setEffect(
effect: WindowEffect.acrylic,
Expand Down
27 changes: 27 additions & 0 deletions lib/services/data_service.dart
@@ -0,0 +1,27 @@
import 'dart:convert';
import 'dart:io';

import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:github/github.dart';
import 'package:path/path.dart' as path;

class DataService {
final _env = dotenv.env;
final _gh =
GitHub(auth: Authentication.withToken(dotenv.env['GITHUB_TOKEN']));

Future<void> uploadFileAnonymous(File file) async {
await _gh.repositories.createFile(
RepositorySlug(
_env['GITHUB_USERNAME'] ?? '', _env['GITHUB_REPO_NAME'] ?? ''),
CreateFile(
branch: _env['GITHUB_BRANCH_NAME'],
committer: CommitUser(
_env['GITHUB_COMMIT_USER_NAME'], _env['GITHUB_COMMIT_USER_EMAIL']),
content: base64Encode(file.readAsBytesSync()),
message: "☄️ -> '${path.basename(file.path)}'",
path: path.basename(file.path),
),
);
}
}
37 changes: 36 additions & 1 deletion pubspec.lock
Expand Up @@ -118,6 +118,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.0"
flutter_dotenv:
dependency: "direct main"
description:
name: flutter_dotenv
url: "https://pub.dartlang.org"
source: hosted
version: "5.0.2"
flutter_lints:
dependency: "direct dev"
description:
Expand All @@ -130,6 +137,34 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
github:
dependency: "direct main"
description:
name: github
url: "https://pub.dartlang.org"
source: hosted
version: "8.2.5"
http:
dependency: transitive
description:
name: http
url: "https://pub.dartlang.org"
source: hosted
version: "0.13.4"
http_parser:
dependency: transitive
description:
name: http_parser
url: "https://pub.dartlang.org"
source: hosted
version: "4.0.0"
json_annotation:
dependency: transitive
description:
name: json_annotation
url: "https://pub.dartlang.org"
source: hosted
version: "4.3.0"
lints:
dependency: transitive
description:
Expand All @@ -152,7 +187,7 @@ packages:
source: hosted
version: "1.7.0"
path:
dependency: transitive
dependency: "direct main"
description:
name: path
url: "https://pub.dartlang.org"
Expand Down
7 changes: 5 additions & 2 deletions pubspec.yaml
Expand Up @@ -37,6 +37,9 @@ dependencies:
bitsdojo_window: ^0.1.1+1
flutter_acrylic: ^0.1.0
desktop_drop: ^0.1.2
github: ^8.2.5
path: ^1.8.0
flutter_dotenv: ^5.0.2

dev_dependencies:
flutter_test:
Expand All @@ -61,8 +64,8 @@ flutter:
uses-material-design: true

# To add assets to your application, add an assets section, like this:
# assets:
# - images/a_dot_burr.jpeg
assets:
- .env
# - images/a_dot_ham.jpeg

# An image asset can refer to one or more resolution-specific "variants", see
Expand Down

0 comments on commit cd95d6c

Please sign in to comment.