diff --git a/lib/consts.dart b/lib/consts.dart index e5a77d18..3162cea6 100644 --- a/lib/consts.dart +++ b/lib/consts.dart @@ -14,7 +14,6 @@ const kAssetSendingLottie = "assets/sending.json"; const kAssetSavingLottie = "assets/saving.json"; const kAssetSavedLottie = "assets/completed.json"; - final kIsMacOS = !kIsWeb && Platform.isMacOS; final kIsWindows = !kIsWeb && Platform.isWindows; final kIsLinux = !kIsWeb && Platform.isLinux; diff --git a/lib/providers/collection_providers.dart b/lib/providers/collection_providers.dart index 4c731ee3..ee20f99f 100644 --- a/lib/providers/collection_providers.dart +++ b/lib/providers/collection_providers.dart @@ -1,5 +1,4 @@ import 'package:apidash_core/apidash_core.dart'; -//import 'package:apidash_core/services/no_ssl_http_service.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:apidash/consts.dart'; import 'providers.dart'; @@ -276,11 +275,11 @@ class CollectionStateNotifier state = map; bool noSSL = ref.read(settingsProvider).isSSLDisabled; - (HttpResponse?, Duration?, String?)? responseRec = await request( + (HttpResponse?, Duration?, String?)? responseRec = await request( requestId, substitutedHttpRequestModel, defaultUriScheme: defaultUriScheme, - noSSL: noSSL + noSSL: noSSL, ); late final RequestModel newRequestModel; diff --git a/lib/screens/settings_page.dart b/lib/screens/settings_page.dart index 1c6c2eb8..279d6f69 100644 --- a/lib/screens/settings_page.dart +++ b/lib/screens/settings_page.dart @@ -1,7 +1,7 @@ +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:apidash_design_system/apidash_design_system.dart'; -import 'package:flutter/foundation.dart'; import '../providers/providers.dart'; import '../services/services.dart'; import '../utils/utils.dart'; @@ -25,9 +25,9 @@ class SettingsPage extends ConsumerWidget { child: kIsDesktop ? Text("Settings", style: Theme.of(context).textTheme.headlineLarge) - : const SizedBox.shrink(), + : kSizedBoxEmpty, ) - : const SizedBox.shrink(), + : kSizedBoxEmpty, kIsDesktop ? const Padding( padding: kPh20, @@ -35,24 +35,26 @@ class SettingsPage extends ConsumerWidget { height: 1, ), ) - : const SizedBox.shrink(), + : kSizedBoxEmpty, Expanded( child: ListView( shrinkWrap: true, children: [ - - !kIsWeb ?SwitchListTile( + !kIsWeb + ? SwitchListTile( hoverColor: kColorTransparent, - title: const Text('Disabling SSL verification'), + title: const Text('Disable SSL verification'), subtitle: Text( - 'Current selection: ${settings.isSSLDisabled ? "SSL Verification Disabled" : "SSL Verification Enabled"}', - ), + 'Current selection: ${settings.isSSLDisabled ? "SSL Verification Disabled" : "SSL Verification Enabled"}', + ), value: settings.isSSLDisabled, onChanged: (bool? value) { - ref.read(settingsProvider.notifier).update(isSSLDisabled: value ?? false); + ref + .read(settingsProvider.notifier) + .update(isSSLDisabled: value ?? false); }, - ) :const SizedBox.shrink(), - + ) + : kSizedBoxEmpty, SwitchListTile( hoverColor: kColorTransparent, title: const Text('Switch Theme Mode'), diff --git a/packages/apidash_core/lib/services/http_client_manager.dart b/packages/apidash_core/lib/services/http_client_manager.dart index e16d503b..bec23214 100644 --- a/packages/apidash_core/lib/services/http_client_manager.dart +++ b/packages/apidash_core/lib/services/http_client_manager.dart @@ -1,8 +1,15 @@ -import 'package:apidash_core/utils/http_request_utils.dart'; +import 'dart:io'; +import 'dart:collection'; import 'package:flutter/foundation.dart'; import 'package:http/http.dart' as http; -import 'dart:collection'; -import ''; +import 'package:http/io_client.dart'; + +http.Client createHttpClientWithNoSSL() { + var ioClient = HttpClient() + ..badCertificateCallback = + (X509Certificate cert, String host, int port) => true; + return IOClient(ioClient); +} class HttpClientManager { static final HttpClientManager _instance = HttpClientManager._internal(); @@ -16,14 +23,16 @@ class HttpClientManager { HttpClientManager._internal(); - http.Client createClient(String requestId,{bool noSSL = false}) { - final client = noSSL && !kIsWeb ? createHttpClientWithNoSSL() :http.Client(); + http.Client createClient( + String requestId, { + bool noSSL = false, + }) { + final client = + (noSSL && !kIsWeb) ? createHttpClientWithNoSSL() : http.Client(); _clients[requestId] = client; return client; } - - void cancelRequest(String? requestId) { if (requestId != null && _clients.containsKey(requestId)) { _clients[requestId]?.close(); diff --git a/packages/apidash_core/lib/services/http_service.dart b/packages/apidash_core/lib/services/http_service.dart index 27d3729d..2fb6aa7a 100644 --- a/packages/apidash_core/lib/services/http_service.dart +++ b/packages/apidash_core/lib/services/http_service.dart @@ -9,11 +9,12 @@ import '../utils/utils.dart'; import 'http_client_manager.dart'; typedef HttpResponse = http.Response; + Future<(HttpResponse?, Duration?, String?)> request( String requestId, HttpRequestModel requestModel, { SupportedUriSchemes defaultUriScheme = kDefaultUriScheme, - bool noSSL = false, // Add a parameter to specify SSL-bypass + bool noSSL = false, }) async { final clientManager = HttpClientManager(); final client = clientManager.createClient(requestId, noSSL: noSSL); @@ -73,7 +74,6 @@ Future<(HttpResponse?, Duration?, String?)> request( return (convertedMultiPartResponse, stopwatch.elapsed, null); } } - switch (requestModel.method) { case HTTPVerb.get: response = await client.get(requestUrl, headers: headers); diff --git a/packages/apidash_core/lib/services/services.dart b/packages/apidash_core/lib/services/services.dart index fa82eac4..d155e9c7 100644 --- a/packages/apidash_core/lib/services/services.dart +++ b/packages/apidash_core/lib/services/services.dart @@ -1,3 +1,2 @@ export 'http_client_manager.dart'; export 'http_service.dart'; - diff --git a/packages/apidash_core/lib/utils/http_request_utils.dart b/packages/apidash_core/lib/utils/http_request_utils.dart index 7935ccc3..2e1daea5 100644 --- a/packages/apidash_core/lib/utils/http_request_utils.dart +++ b/packages/apidash_core/lib/utils/http_request_utils.dart @@ -1,18 +1,6 @@ -import 'dart:io'; - import 'package:collection/collection.dart'; -import 'package:http/http.dart' as http; -import 'package:http/io_client.dart'; import 'package:seed/seed.dart'; - -http.Client createHttpClientWithNoSSL() { - var ioClient = HttpClient() - ..badCertificateCallback = - (X509Certificate cert, String host, int port) => true; - return IOClient(ioClient); -} - Map? rowsToMap( List? kvRows, { bool isHeader = false,