mirror of
https://github.com/foss42/apidash.git
synced 2025-07-03 06:27:26 +08:00
Updated csv_previewer
This commit is contained in:
@ -3,6 +3,9 @@ include: package:flutter_lints/flutter.yaml
|
|||||||
analyzer:
|
analyzer:
|
||||||
errors:
|
errors:
|
||||||
invalid_annotation_target: ignore
|
invalid_annotation_target: ignore
|
||||||
|
exclude:
|
||||||
|
- "**/*.freezed.dart"
|
||||||
|
- "**/*.g.dart"
|
||||||
|
|
||||||
linter:
|
linter:
|
||||||
rules:
|
rules:
|
||||||
|
@ -378,7 +378,7 @@ const Map<String, Map<String, List<ResponseBodyView>>>
|
|||||||
kSubTypeDefaultViewOptions: kRawBodyViewOptions,
|
kSubTypeDefaultViewOptions: kRawBodyViewOptions,
|
||||||
kSubTypeCss: kCodeRawBodyViewOptions,
|
kSubTypeCss: kCodeRawBodyViewOptions,
|
||||||
kSubTypeHtml: kCodeRawBodyViewOptions,
|
kSubTypeHtml: kCodeRawBodyViewOptions,
|
||||||
kSubTypeCsv: kPreviewCodeRawBodyViewOptions,
|
kSubTypeCsv: kPreviewRawBodyViewOptions,
|
||||||
kSubTypeJavascript: kCodeRawBodyViewOptions,
|
kSubTypeJavascript: kCodeRawBodyViewOptions,
|
||||||
kSubTypeMarkdown: kCodeRawBodyViewOptions,
|
kSubTypeMarkdown: kCodeRawBodyViewOptions,
|
||||||
kSubTypeTextXml: kCodeRawBodyViewOptions,
|
kSubTypeTextXml: kCodeRawBodyViewOptions,
|
||||||
@ -499,7 +499,6 @@ const kRaiseIssue =
|
|||||||
const kCsvError =
|
const kCsvError =
|
||||||
"There seems to be an issue rendering this CSV. Please raise an issue in API Dash GitHub repo so that we can resolve it.";
|
"There seems to be an issue rendering this CSV. Please raise an issue in API Dash GitHub repo so that we can resolve it.";
|
||||||
|
|
||||||
|
|
||||||
const kHintTextUrlCard = "Enter API endpoint like api.foss42.com/country/codes";
|
const kHintTextUrlCard = "Enter API endpoint like api.foss42.com/country/codes";
|
||||||
const kLabelPlusNew = "+ New";
|
const kLabelPlusNew = "+ New";
|
||||||
const kLabelSend = "Send";
|
const kLabelSend = "Send";
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:csv/csv.dart';
|
import 'package:csv/csv.dart';
|
||||||
import 'package:apidash/consts.dart';
|
import 'error_message.dart';
|
||||||
import 'package:apidash/widgets/widgets.dart';
|
import '../consts.dart';
|
||||||
|
|
||||||
class CsvPreviewer extends StatelessWidget {
|
class CsvPreviewer extends StatelessWidget {
|
||||||
const CsvPreviewer({Key? key, required this.body}) : super(key: key);
|
const CsvPreviewer({super.key, required this.body});
|
||||||
|
|
||||||
final String body;
|
final String body;
|
||||||
|
|
||||||
|
@ -154,6 +154,7 @@ class _JsonPreviewerState extends State<JsonPreviewer> {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
void didUpdateWidget(JsonPreviewer oldWidget) {
|
void didUpdateWidget(JsonPreviewer oldWidget) {
|
||||||
|
super.didUpdateWidget(oldWidget);
|
||||||
if (oldWidget.code != widget.code) {
|
if (oldWidget.code != widget.code) {
|
||||||
store.buildNodes(widget.code, areAllCollapsed: true);
|
store.buildNodes(widget.code, areAllCollapsed: true);
|
||||||
store.expandAll();
|
store.expandAll();
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'package:apidash/widgets/csv_previewer.dart';
|
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:printing/printing.dart';
|
import 'package:printing/printing.dart';
|
||||||
@ -8,6 +7,7 @@ import 'package:vector_graphics_compiler/vector_graphics_compiler.dart';
|
|||||||
import 'error_message.dart';
|
import 'error_message.dart';
|
||||||
import 'uint8_audio_player.dart';
|
import 'uint8_audio_player.dart';
|
||||||
import 'json_previewer.dart';
|
import 'json_previewer.dart';
|
||||||
|
import 'csv_previewer.dart';
|
||||||
import '../consts.dart';
|
import '../consts.dart';
|
||||||
|
|
||||||
class Previewer extends StatefulWidget {
|
class Previewer extends StatefulWidget {
|
||||||
@ -83,11 +83,7 @@ class _PreviewerState extends State<Previewer> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
if (widget.type == kTypeText && widget.subtype == kSubTypeCsv) {
|
if (widget.type == kTypeText && widget.subtype == kSubTypeCsv) {
|
||||||
try {
|
return CsvPreviewer(body: widget.body);
|
||||||
return CsvPreviewer(body: widget.body);
|
|
||||||
} catch (e) {
|
|
||||||
return const ErrorMessage(message: kCsvError);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (widget.type == kTypeVideo) {
|
if (widget.type == kTypeVideo) {
|
||||||
// TODO: Video Player
|
// TODO: Video Player
|
||||||
@ -97,5 +93,4 @@ class _PreviewerState extends State<Previewer> {
|
|||||||
: "$kMimeTypeRaiseIssueStart${widget.type}/${widget.subtype}$kMimeTypeRaiseIssue";
|
: "$kMimeTypeRaiseIssueStart${widget.type}/${widget.subtype}$kMimeTypeRaiseIssue";
|
||||||
return ErrorMessage(message: message);
|
return ErrorMessage(message: message);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -217,6 +217,14 @@ packages:
|
|||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.0.3"
|
version: "3.0.3"
|
||||||
|
csv:
|
||||||
|
dependency: "direct main"
|
||||||
|
description:
|
||||||
|
name: csv
|
||||||
|
sha256: "63ed2871dd6471193dffc52c0e6c76fb86269c00244d244297abbb355c84a86e"
|
||||||
|
url: "https://pub.dev"
|
||||||
|
source: hosted
|
||||||
|
version: "5.1.1"
|
||||||
dart_style:
|
dart_style:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
// ignore_for_file: unused_import
|
||||||
|
// TODO: Added ignore to calculate code coverage
|
||||||
|
|
||||||
import 'package:apidash/main.dart';
|
import 'package:apidash/main.dart';
|
||||||
import 'package:apidash/app.dart';
|
import 'package:apidash/app.dart';
|
||||||
import 'package:apidash/common/utils.dart';
|
import 'package:apidash/common/utils.dart';
|
||||||
|
Reference in New Issue
Block a user