Merge branch 'foss42:main' into add-request-cancellation

This commit is contained in:
Sasank Tumpati
2024-12-07 11:32:08 +05:30
committed by GitHub
22 changed files with 498 additions and 122 deletions

View File

@@ -1,16 +1,14 @@
import 'package:apidash_design_system/apidash_design_system.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:apidash/importer/import_dialog.dart';
import 'package:apidash/providers/providers.dart';
import 'package:apidash/importer/importer.dart';
import 'package:apidash/extensions/extensions.dart';
import 'package:apidash/widgets/widgets.dart';
import 'package:apidash/models/models.dart';
import 'package:apidash/consts.dart';
import '../common_widgets/common_widgets.dart';
final kImporter = Importer();
class CollectionPane extends ConsumerWidget {
const CollectionPane({
super.key,
@@ -19,6 +17,7 @@ class CollectionPane extends ConsumerWidget {
@override
Widget build(BuildContext context, WidgetRef ref) {
final collection = ref.watch(collectionStateNotifierProvider);
var sm = ScaffoldMessenger.of(context);
if (collection == null) {
return const Center(
child: CircularProgressIndicator(),
@@ -37,32 +36,7 @@ class CollectionPane extends ConsumerWidget {
ref.read(collectionStateNotifierProvider.notifier).add();
},
onImport: () {
showImportDialog(
context: context,
importFormat: ref.watch(importFormatStateProvider),
onImportFormatChange: (format) {
if (format != null) {
ref.read(importFormatStateProvider.notifier).state = format;
}
},
onFileDropped: (file) {
final importFormatType = ref.read(importFormatStateProvider);
file.readAsString().then((content) {
kImporter
.getHttpRequestModel(importFormatType, content)
.then((importedRequestModel) {
if (importedRequestModel != null) {
ref
.read(collectionStateNotifierProvider.notifier)
.addRequestModel(importedRequestModel);
} else {
// TODO: Throw an error, unable to parse
}
});
});
Navigator.of(context).pop();
},
);
importToCollectionPane(context, ref, sm);
},
),
kVSpacer10,