2
0
mirror of https://github.com/inventree/inventree-app.git synced 2025-04-27 21:16:48 +00:00

Display version information (using external markdown file)

This commit is contained in:
Oliver Walters 2021-02-02 21:20:04 +11:00
parent 1823dca61d
commit c3bc6a94b0
5 changed files with 66 additions and 2 deletions

3
assets/release_notes.md Normal file
View File

@ -0,0 +1,3 @@
## 0.1.0 (February 2021)
- Initial app version release

27
lib/settings/release.dart Normal file
View File

@ -0,0 +1,27 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_markdown/flutter_markdown.dart';
import 'package:markdown/markdown.dart' as md;
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
class ReleaseNotesWidget extends StatelessWidget {
final String releaseNotes;
ReleaseNotesWidget(this.releaseNotes);
@override
Widget build (BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Release Notes")
),
body: Markdown(
selectable: false,
data: releaseNotes,
)
);
}
}

View File

@ -1,7 +1,9 @@
import 'package:InvenTree/settings/about.dart';
import 'package:InvenTree/settings/login.dart';
import 'package:InvenTree/settings/release.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:shared_preferences/shared_preferences.dart';
@ -44,6 +46,12 @@ class _InvenTreeSettingsState extends State<InvenTreeSettingsWidget> {
leading: FaIcon(FontAwesomeIcons.infoCircle),
onTap: _about,
),
ListTile(
title: Text("Release Notes"),
subtitle: Text("Display app release notes"),
leading: FaIcon(FontAwesomeIcons.fileAlt),
onTap: _releaseNotes,
),
ListTile(
title: Text("Report Bug"),
subtitle: Text("Report bug or suggest new feature"),
@ -70,4 +78,15 @@ class _InvenTreeSettingsState extends State<InvenTreeSettingsWidget> {
MaterialPageRoute(builder: (context) => InvenTreeAboutWidget(info)));
});
}
void _releaseNotes() async {
// Load release notes from external file
String notes = await rootBundle.loadString("assets/release_notes.md");
Navigator.push(
context,
MaterialPageRoute(builder: (context) => ReleaseNotesWidget(notes))
);
}
}

View File

@ -179,6 +179,13 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
flutter_markdown:
dependency: "direct main"
description:
name: flutter_markdown
url: "https://pub.dartlang.org"
source: hosted
version: "0.5.2"
flutter_plugin_android_lifecycle:
dependency: transitive
description:
@ -259,6 +266,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.16.1"
markdown:
dependency: transitive
description:
name: markdown
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.0"
matcher:
dependency: transitive
description:

View File

@ -11,7 +11,7 @@ description: InvenTree stock management
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1
version: 0.1.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
@ -39,7 +39,7 @@ dependencies:
flutter_typeahead: ^1.8.1 # Auto-complete input field
image_picker: ^0.6.6 # Select or take photos
url_launcher: ^5.7.10 # Open link in system browser
flutter_markdown: ^0.5.2 # Rendering markdown
camera:
path_provider:
path:
@ -69,6 +69,7 @@ flutter:
assets:
- assets/image/icon.png
- assets/release_notes.md
# To add assets to your application, add an assets section, like this:
# assets: