Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.0.0 #5

Merged
merged 60 commits into from
Dec 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
27f3f40
removed messaging
tpkowastaken Sep 25, 2024
ce5e344
Notifications work
tpkowastaken Sep 25, 2024
bc588c0
add fonts
m-verhaegen Sep 26, 2024
f314c57
rework theme logic
m-verhaegen Sep 26, 2024
2e81671
move Locales class
m-verhaegen Sep 26, 2024
a5da6b5
wrap MaterialApp in Consumer
m-verhaegen Sep 27, 2024
e671525
add Hive Adapters
m-verhaegen Sep 27, 2024
714b281
fix theme switching
m-verhaegen Oct 1, 2024
982b0d9
add ThemeModePicker()
m-verhaegen Oct 1, 2024
8599f55
add ThemeStylePicker()
m-verhaegen Oct 1, 2024
7655aba
move rest of app theme
m-verhaegen Oct 1, 2024
6710e65
Merge pull request #1 from App-Elevate/theme
m-verhaegen Oct 1, 2024
cef3127
delete unused pages
m-verhaegen Oct 1, 2024
3cfe043
update default appbar
m-verhaegen Oct 1, 2024
b3807ca
remove unused localized messages
m-verhaegen Oct 1, 2024
9a83b0c
move debug page from /pages/ to /pages/dev/
m-verhaegen Oct 1, 2024
4cdffa2
Merge pull request #2 from App-Elevate/clean-up
m-verhaegen Oct 1, 2024
341ff40
add menu & more pages
m-verhaegen Oct 1, 2024
39f1c34
add all settings pages (placeholder only)
m-verhaegen Oct 1, 2024
64d3775
add all 'more' pages (placeholder only)
m-verhaegen Oct 1, 2024
083af9b
add remaining pages (placeholder only)
m-verhaegen Oct 1, 2024
919b784
add custom divider & ScrollViewColumn
m-verhaegen Oct 1, 2024
25dfa4b
complete settings page migration
m-verhaegen Oct 1, 2024
d80435c
migrate settings provider
m-verhaegen Oct 2, 2024
5f5fee3
migrate SectionTitle() widget
m-verhaegen Oct 2, 2024
9738759
migrate analytics page
m-verhaegen Oct 2, 2024
94d1c4d
add configured alert dialog, dialog and bottom sheet
m-verhaegen Oct 3, 2024
0a26a26
migrate getCorrectDateString
m-verhaegen Oct 3, 2024
eb1bc1e
migrate dateFormatPicker
m-verhaegen Oct 3, 2024
2152f83
migrate appearance page
m-verhaegen Oct 3, 2024
b091239
chore: static indent size in custom divider
m-verhaegen Oct 3, 2024
cb0aadb
migrate convenience page
m-verhaegen Oct 3, 2024
de8fe13
remove default appbar from routerPage
m-verhaegen Oct 3, 2024
9ca943f
chore: update notifications.dart
m-verhaegen Oct 3, 2024
13a47d2
migrate about page
m-verhaegen Oct 4, 2024
9aee2c0
fix about page logo
m-verhaegen Oct 4, 2024
e7496b0
migrate part of more page
m-verhaegen Oct 4, 2024
1b7733b
more page stuff
m-verhaegen Oct 4, 2024
1370d31
delete unused import
m-verhaegen Oct 4, 2024
eb04de5
chore: rename account classes
m-verhaegen Oct 5, 2024
71fc7a5
update fromJson methods in Account() and LoggedAccounts()
m-verhaegen Oct 5, 2024
ad4aec1
chore: secure storage naming
m-verhaegen Oct 5, 2024
e0da957
delete AnalyticsEventIds & merge Assets classes
m-verhaegen Oct 5, 2024
3de441b
create Dates class
m-verhaegen Oct 5, 2024
f898f08
change getter to const in SecureStorage()
m-verhaegen Oct 5, 2024
0b83dc2
use App.secureStorage
m-verhaegen Oct 5, 2024
227fb63
create AccountProvider
m-verhaegen Oct 5, 2024
7db3221
move dialogs to dialogs folder
m-verhaegen Oct 5, 2024
3ce383b
migrate LinedCard()
m-verhaegen Oct 5, 2024
c4d0b3f
migrate LocationPickerCard() UI
m-verhaegen Oct 5, 2024
ea519a4
migrate AccountOverviewCard() UI
m-verhaegen Oct 5, 2024
3f58169
add locations to accountProvider
m-verhaegen Oct 6, 2024
0c208ed
add Account Provider to MultiProvider()
m-verhaegen Oct 6, 2024
e05ed0b
use account provider in AccountOverviewCard() & LocationPickerCard()
m-verhaegen Oct 6, 2024
608e969
migrate Switch Account UI
m-verhaegen Oct 6, 2024
db6aa16
migrate AccountPage() UI
m-verhaegen Oct 6, 2024
eaf387d
fix clipping in themestylepicker
m-verhaegen Oct 9, 2024
227d370
Merge pull request #4 from App-Elevate/more-page
m-verhaegen Oct 9, 2024
e9fea78
add lincense
m-verhaegen Oct 10, 2024
2ce70ed
migrate readme
m-verhaegen Oct 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
674 changes: 674 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

46 changes: 9 additions & 37 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,17 @@
# APPE Core
# Autojidelna

Core pro aplikace. Obsahuje template pro aplikace vytvořené v App Elevate.
Aplikace pro objednávání ze systému Icanteen. Cíl této aplikace je zjednodušit, zrychlit, (případně i zautomatizovat) objednávání obědů.

## Doporučený environment
## Kód pro přistup do Icanteen

- macOS má aktuálně implementované všechny skripty, ale pro windows uživatele nebude náročné si je upravit. Na linuxu by mělo vše fungovat bez problémů.
- Doporučený editor je Visual Studio Code s rozšířeními [Flutter](https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter), [Arb-files](https://marketplace.visualstudio.com/items?itemName=Google.arb-editor), [Run on save](https://marketplace.visualstudio.com/items?itemName=emeraldwalk.RunOnSave) a [Build Runner](https://marketplace.visualstudio.com/items?itemName=GaetSchwartz.build-runner&ssr=false#review-details). Run on save je pro automatické formátování arb souborů (překlady) a build runner je pro automatické generování kódu.
- tyto extensiony nepotřebují žádné další konfigurace.
- macOS má zároveň podporu kompilace pro iOS a macOS.
Aplikace používá package [canteenlib](https://github.com/App-Elevate/AUT.canteenlib), ve které se nachází všechen kód ohledně přihlašování, objednávání obědů apod. Pokud by vás zajímalo jak aplikace ukládá vaše údaje podívejte se do [canteenwrapper.dart](./lib/src/logic/canteenwrapper.dart)

## Vývojářské nástroje
## Podporované platformy

- Tento projekt používá build_runner pro automatické generování kódu. Pro spuštění je potřeba spustit `dart run build_runner watch` nebo `dart run build_runner build` pro jednorázový build. Toto je potřeba spustit pokaždé, co upravíte freezed soubory, nebo router. (např `@RoutePage` nebo `@freezed`)
- Doporučuji to mít zapnuté jako `watch` dole, když máte build runner extension ve Visual Studio Code. Pokud se vás to zeptá na složku, ve které to spusti, zvolte `lib`.
Aktuálně je podporován pouze Android, ale je v plánu podporovat i IOS. Ostatní systémy není v plánu podporovat.

# [Spouštění aplikace](docs/spousteni_aplikace.md)
## Kompilování

# [Distribuce](docs/automaticky_deployment.md)
Odstraňte klíče originálního autora tím, že přepíšete ['signingConfig signingConfigs.release'](https://github.com/App-Elevate/AUT.aplikace/blob/28096713e958f0e1e4f3cf8e49aaefbeeedbb5f2/android/app/build.gradle#L71-L72) na `signingConfig signingConfigs.debug`, odstraněním [signing Keys](https://github.com/tpkowastaken/autojidelna/blob/5d0587befd74fd58315ccc131894feb8588b09fe/android/app/build.gradle#L27-L31) a odstraněním [signing Configs](https://github.com/tpkowastaken/autojidelna/blob/5d0587befd74fd58315ccc131894feb8588b09fe/android/app/build.gradle#L60-L67).

# Omezení implementace CORU

1. firebase_options.dart MUSÍ být v /lib/firebase_options.dart

## iOS

1. Je potřeba po každém přidání entitlementu zapnout automatické podepisování v Xcode a následně ho vypnout. Potom už stačí jen regenerovat certifikáty pomocí fastlane match:

```bash
cd ios && bundle install && bundle exec fastlane match appstore --force && bundle exec fastlane match development --force && cd ..
```

a následně znovu buildnout aplikaci. Toto musí udělat Tom, protože je potřeba mít přístup k certifikátům.

## macOS

1. Je potřeba po každém přidání entitlementu zapnout automatické podepisování v Xcode a následně ho vypnout. Potom už stačí jen regenerovat certifikáty pomocí fastlane match:

```bash
cd macos && bundle install && bundle exec fastlane match appstore --additional-cert-types=mac_installer_distribution --force --platform=macos && bundle exec fastlane match development --force --platform=macos && cd ..
```

a následně znovu buildnout aplikaci. Toto musí udělat Tom, protože je potřeba mít přístup k certifikátům.

# [Vytváření nové aplikace](docs/novy_projekt.md)
Pro systém android stačí mít nainstalovaný [Flutter](https://docs.flutter.dev/get-started/install) a poté `flutter build apk` pro android na windows nebo `flutter build ipa` pro ios na macbooku. Aplikaci na IOS můžete nainstalovat pomocí [tohoto návodu](https://chrunos.com/install-ipa-on-iphone/)
9 changes: 8 additions & 1 deletion android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<!--
Internet permissions do not affect the `permission_handler` plugin, but are required if your app needs access to
the internet.
-->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM"/>
<uses-permission android:minSdkVersion="34" android:name="android.permission.USE_EXACT_ALARM" />

<!--
<uses-feature
Expand Down Expand Up @@ -124,10 +128,13 @@
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
-->

<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

<application
android:label="Autojídelna"
android:name="${applicationName}"
tools:replace="android:label"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
Expand Down
1 change: 1 addition & 0 deletions android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ allprojects {
repositories {
google()
mavenCentral()
maven { url "${project(':background_fetch').projectDir}/libs" }
}
tasks.withType(JavaCompile){
options.compilerArgs <<"-Xlint:deprecation"
Expand Down
Binary file added assets/fonts/Inter-VariableFont_slnt,wght.ttf
Binary file not shown.
Binary file added assets/fonts/Lexend-VariableFont_wght.ttf
Binary file not shown.
70 changes: 70 additions & 0 deletions assets/logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
70 changes: 70 additions & 0 deletions assets_dev/logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 13 additions & 0 deletions ios/Podfile
Original file line number Diff line number Diff line change
Expand Up @@ -117,4 +117,17 @@ post_install do |installer|

end
end

################ Awesome Notifications pod modification 1 ###################
awesome_pod_file = File.expand_path(File.join('plugins', 'awesome_notifications', 'ios', 'Scripts', 'AwesomePodFile'), '.symlinks')
require awesome_pod_file
update_awesome_pod_build_settings(installer)
################ Awesome Notifications pod modification 1 ###################

end

################ Awesome Notifications pod modification 2 ###################
awesome_pod_file = File.expand_path(File.join('plugins', 'awesome_notifications', 'ios', 'Scripts', 'AwesomePodFile'), '.symlinks')
require awesome_pod_file
update_awesome_main_target_settings('Runner', File.dirname(File.realpath(__FILE__)), flutter_root)
################ Awesome Notifications pod modification 2 ###################
Loading
Loading