mirror of
https://github.com/ImranR98/Obtainium.git
synced 2025-07-13 05:16:43 +02:00
Clearer GitHub PAT instructions
This commit is contained in:
@ -1,9 +1,11 @@
|
||||
import 'dart:convert';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:http/http.dart';
|
||||
import 'package:obtainium/components/generated_form.dart';
|
||||
import 'package:obtainium/custom_errors.dart';
|
||||
import 'package:obtainium/providers/settings_provider.dart';
|
||||
import 'package:obtainium/providers/source_provider.dart';
|
||||
import 'package:url_launcher/url_launcher_string.dart';
|
||||
|
||||
class GitHub implements AppSource {
|
||||
@override
|
||||
@ -137,7 +139,7 @@ class GitHub implements AppSource {
|
||||
@override
|
||||
List<GeneratedFormItem> moreSourceSettingsFormItems = [
|
||||
GeneratedFormItem(
|
||||
label: 'GitHub Credentials (Increases Rate Limit)',
|
||||
label: 'GitHub Personal Access Token (Increases Rate Limit)',
|
||||
id: 'github-creds',
|
||||
required: false,
|
||||
additionalValidators: [
|
||||
@ -153,6 +155,23 @@ class GitHub implements AppSource {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
],
|
||||
hint: 'username:token',
|
||||
belowWidgets: [
|
||||
const SizedBox(
|
||||
height: 8,
|
||||
),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
launchUrlString(
|
||||
'https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token',
|
||||
mode: LaunchMode.externalApplication);
|
||||
},
|
||||
child: const Text(
|
||||
'About GitHub PATs',
|
||||
style: TextStyle(
|
||||
decoration: TextDecoration.underline, fontSize: 12),
|
||||
))
|
||||
])
|
||||
];
|
||||
}
|
||||
|
@ -11,6 +11,8 @@ class GeneratedFormItem {
|
||||
late int max;
|
||||
late List<String? Function(String? value)> additionalValidators;
|
||||
late String id;
|
||||
late List<Widget> belowWidgets;
|
||||
late String? hint;
|
||||
|
||||
GeneratedFormItem(
|
||||
{this.label = 'Input',
|
||||
@ -18,7 +20,9 @@ class GeneratedFormItem {
|
||||
this.required = true,
|
||||
this.max = 1,
|
||||
this.additionalValidators = const [],
|
||||
this.id = 'input'});
|
||||
this.id = 'input',
|
||||
this.belowWidgets = const [],
|
||||
this.hint});
|
||||
}
|
||||
|
||||
class GeneratedForm extends StatefulWidget {
|
||||
@ -91,7 +95,8 @@ class _GeneratedFormState extends State<GeneratedForm> {
|
||||
});
|
||||
},
|
||||
decoration: InputDecoration(
|
||||
helperText: e.value.label + (e.value.required ? ' *' : '')),
|
||||
helperText: e.value.label + (e.value.required ? ' *' : ''),
|
||||
hintText: e.value.hint),
|
||||
minLines: e.value.max <= 1 ? null : e.value.max,
|
||||
maxLines: e.value.max <= 1 ? 1 : e.value.max,
|
||||
validator: (value) {
|
||||
@ -157,7 +162,13 @@ class _GeneratedFormState extends State<GeneratedForm> {
|
||||
width: 20,
|
||||
));
|
||||
}
|
||||
rowItems.add(Expanded(child: rowInput.value));
|
||||
rowItems.add(Expanded(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.stretch,
|
||||
children: [
|
||||
rowInput.value,
|
||||
...widget.items[rowInputs.key][rowInput.key].belowWidgets
|
||||
])));
|
||||
});
|
||||
rows.add(rowItems);
|
||||
});
|
||||
|
Reference in New Issue
Block a user