Compare commits

..

No commits in common. "66ebff38a5696a7dead9f7c5977211ed6bf7ca31" and "805fc2bf1771b207462c52f49e0854affdd0ab8c" have entirely different histories.

8 changed files with 13 additions and 79 deletions

View file

@ -1,37 +0,0 @@
---
name: 'Bug Report'
about: 'Use this when filing a bug report'
title: 'Bug title'
ref: 'main'
labels:
- 'Kind/Bug'
- 'Status/Need More Info'
---
<!--
Answer the following questions to speed up the bug fixing process
-->
### Operating System + Version
<!-- for example "Android 13" -->
### App version
<!--
Can be found in the app by clicking
the three dots > 'About' or in app info in your device's setting
-->
### What was expected to happen
<!-- Enter what you thought SHOULD happen when the bug occured -->
### What actually happened
<!-- Here describe what ACTUALLY happened -->
### Steps to reproduce
<!--
Enter the exact steps that you made when you encountered the bug,
so we can reproduce it
-->
- [] I have checked the [list of issues](https://git.mnau.xyz/hernik/prasule/issues) and I'm sure this is not a duplicate
<!-- This is a checkbox, either check it after creating the issue or change [] to [X] -->

View file

@ -1,17 +0,0 @@
---
name: 'Feature Request'
about: 'Request a new feature'
title: 'My awesome feature'
ref: 'main'
labels:
- 'Kind/Feature'
---
- [] I have checked the [list of issues](https://git.mnau.xyz/hernik/prasule/issues) and I'm sure this is not a duplicate
<!-- This is a checkbox, either check it after creating the issue or change [] to [X] -->
### Is your feature request related to a bug or an issue? If yes, describe it or link it
<!-- You can link issues by simply writing # followed by the ID of the issue or PR, for example #12 -->
### Describe your request, how you'd like it to be implemented etc.
<!-- This is the space for your requests to be made -->

View file

@ -1,5 +1,3 @@
# 1.0.0-alpha+4
- Fix OCR downloads
# 1.0.0-alpha+3 # 1.0.0-alpha+3
- Add settings view for editing wallet categories - Add settings view for editing wallet categories
- Change code according to more aggressive linting - Change code according to more aggressive linting

View file

@ -1,5 +0,0 @@
# Localization
[![Translation status](https://hosted.weblate.org/widget/prasule/287x66-grey.png)](https://hosted.weblate.org/engage/prasule/)
You can help with localization through Weblate, join the translation project on https://hosted.weblate.org/engage/prasule/

View file

@ -1,11 +1,8 @@
# prasule # prasule
[![Codemagic build status](https://api.codemagic.io/apps/64faee78aae8c48abc70dbc6/64faee78aae8c48abc70dbc5/status_badge.svg)](https://codemagic.io/apps/64faee78aae8c48abc70dbc6/64faee78aae8c48abc70dbc5/latest_build) [![Bug issue count](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgit.mnau.xyz%2Fapi%2Fv1%2Frepos%2Fhernik%2Fprasule%2Fissues%3Flabels%3DKind%2FBug&query=%24.length&logo=forgejo&label=bug%20issues&color=red)](https://git.mnau.xyz/hernik/prasule/issues?q=&type=all&sort=&state=open&labels=144&milestone=0&project=0&assignee=0&poster=0) [![wakatime](https://wakatime.com/badge/user/17178fab-a33c-430f-a764-7b3f26c7b966/project/bf1f40b0-c8c0-4f72-8ad6-c861ecdcc90c.svg)](https://wakatime.com/badge/user/17178fab-a33c-430f-a764-7b3f26c7b966/project/bf1f40b0-c8c0-4f72-8ad6-c861ecdcc90c) [![Translation status](https://hosted.weblate.org/widget/prasule/svg-badge.svg)](https://hosted.weblate.org/engage/prasule/) [![Translation status](https://hosted.weblate.org/widget/prasule/svg-badge.svg)](https://hosted.weblate.org/engage/prasule/) [![Codemagic build status](https://api.codemagic.io/apps/64faee78aae8c48abc70dbc6/64faee78aae8c48abc70dbc5/status_badge.svg)](https://codemagic.io/apps/64faee78aae8c48abc70dbc6/64faee78aae8c48abc70dbc5/latest_build) [![Bug issue count](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fgit.mnau.xyz%2Fapi%2Fv1%2Frepos%2Fhernik%2Fprasule%2Fissues%3Flabels%3DKind%2FBug&query=%24.length&logo=forgejo&label=bug%20issues&color=red)](https://git.mnau.xyz/hernik/prasule/issues?q=&type=all&sort=&state=open&labels=144&milestone=0&project=0&assignee=0&poster=0) [![wakatime](https://wakatime.com/badge/user/17178fab-a33c-430f-a764-7b3f26c7b966/project/bf1f40b0-c8c0-4f72-8ad6-c861ecdcc90c.svg)](https://wakatime.com/badge/user/17178fab-a33c-430f-a764-7b3f26c7b966/project/bf1f40b0-c8c0-4f72-8ad6-c861ecdcc90c) [![Commit Style: Conventional Commits](https://img.shields.io/badge/commit%20style-conventional%20commits-pink)](https://www.conventionalcommits.org/en/v1.0.0/) [![Please don't upload to GitHub](https://nogithub.codeberg.page/badge.svg)](https://nogithub.codeberg.page)
Expense manager Expense manager
- [Apple Testflight](https://testflight.apple.com/join/C22pcnPc)
- [Google Play beta testing](https://play.google.com/store/apps/details?id=cafe.caras.prasule)
## License ## License
``` Prašule - simple, private & open-source expense tracker ``` Prašule - simple, private & open-source expense tracker
Copyright (C) 2023 Matyáš Caras Copyright (C) 2023 Matyáš Caras

View file

@ -11,22 +11,21 @@ class TessdataApi {
static final Dio _client = Dio( static final Dio _client = Dio(
BaseOptions( BaseOptions(
validateStatus: (status) => true, validateStatus: (status) => true,
headers: {"User-Agent": "prasule/1.0.0"},
), ),
); );
/// Gets available languages from the repo /// Gets available languages from the repo
static Future<List<String>> getAvailableData() async { static Future<List<String>> getAvailableData() async {
final res = await _client.get<List<dynamic>>( final res = await _client.get<List<Map<String, dynamic>>>(
"https://git.mnau.xyz/api/v1/repos/hernik/tessdata_fast/contents", "https://git.mnau.xyz/api/v1/repos/hernik/tessdata_fast/contents",
options: Options(headers: {"Accept": "application/json"}), options: Options(headers: {"Accept": "application/json"}),
); );
if ((res.statusCode ?? 500) > 399) { if ((res.statusCode ?? 500) > 399) {
return Future.error("The server returned status code ${res.statusCode}"); return Future.error("The server returned status code ${res.statusCode}");
} }
final data = List<Map<String, dynamic>>.from(res.data ?? []); final data = res.data;
final dataFiles = <String>[]; final dataFiles = <String>[];
for (final file in data) { for (final file in data ?? <Map<String, dynamic>>[]) {
if (!(file["name"] as String).endsWith(".traineddata")) continue; if (!(file["name"] as String).endsWith(".traineddata")) continue;
dataFiles.add((file["name"] as String).replaceAll(".traineddata", "")); dataFiles.add((file["name"] as String).replaceAll(".traineddata", ""));
} }

View file

@ -501,13 +501,12 @@ class _HomeViewState extends State<HomeView> {
PlatformButton( PlatformButton(
text: AppLocalizations.of(context).download, text: AppLocalizations.of(context).download,
onPressed: () { onPressed: () {
Navigator.of(context) Navigator.of(context).push(
.push( platformRoute(
platformRoute( (c) => const TessdataListView(),
(c) => const TessdataListView(), ),
), );
) Navigator.of(c).pop();
.then((value) => Navigator.of(c).pop());
}, },
), ),
PlatformButton( PlatformButton(

View file

@ -1,7 +1,7 @@
name: prasule name: prasule
description: Open-source private expense tracker description: Open-source private expense tracker
version: 1.0.0-alpha+4 version: 1.0.0-alpha+3
environment: environment:
sdk: '>=3.1.0-262.2.beta <4.0.0' sdk: '>=3.1.0-262.2.beta <4.0.0'
@ -84,8 +84,8 @@ flutter:
# the material Icons class. # the material Icons class.
uses-material-design: true uses-material-design: true
assets: assets:
- assets/tessdata_config.json - assets/
- assets/tessdata/eng.traineddata - assets/tessdata/
# To add assets to your application, add an assets section, like this: # To add assets to your application, add an assets section, like this:
# assets: # assets:
# - images/a_dot_burr.jpeg # - images/a_dot_burr.jpeg