mirror of
https://github.com/foss42/apidash.git
synced 2025-12-02 02:39:19 +08:00
- Deleted old implementations of AutoFixService, RequestApplyService, PromptBuilder, and UrlEnvService from the chat feature. - Introduced new implementations of AutoFixService, RequestApplyService, PromptBuilder, and UrlEnvService in the core services directory. - Updated import paths to reflect the new structure. - Ensured all functionalities remain intact after the refactor.
68 lines
2.3 KiB
Dart
68 lines
2.3 KiB
Dart
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
|
|
import '../../../core/services/agent/prompt_builder.dart';
|
|
import '../../../core/services/base/url_env_service.dart';
|
|
import '../../../core/services/actions/auto_fix_service.dart';
|
|
import '../../../core/services/actions/request_apply_service.dart';
|
|
import '../../../../providers/providers.dart';
|
|
import 'package:apidash_core/apidash_core.dart';
|
|
|
|
final promptBuilderProvider = Provider<PromptBuilder>((ref) {
|
|
return PromptBuilder();
|
|
});
|
|
|
|
final urlEnvServiceProvider = Provider<UrlEnvService>((ref) {
|
|
return UrlEnvService();
|
|
});
|
|
|
|
final requestApplyServiceProvider = Provider<RequestApplyService>((ref) {
|
|
return RequestApplyService(urlEnv: ref.read(urlEnvServiceProvider));
|
|
});
|
|
|
|
final autoFixServiceProvider = Provider<AutoFixService>((ref) {
|
|
final collection = ref.read(collectionStateNotifierProvider.notifier);
|
|
final urlEnv = ref.read(urlEnvServiceProvider);
|
|
return AutoFixService(
|
|
requestApply: ref.read(requestApplyServiceProvider),
|
|
updateSelected: ({
|
|
required String id,
|
|
HTTPVerb? method,
|
|
String? url,
|
|
List<NameValueModel>? headers,
|
|
List<bool>? isHeaderEnabledList,
|
|
String? body,
|
|
ContentType? bodyContentType,
|
|
List<FormDataModel>? formData,
|
|
List<NameValueModel>? params,
|
|
List<bool>? isParamEnabledList,
|
|
String? postRequestScript,
|
|
}) {
|
|
collection.update(
|
|
id: id,
|
|
method: method,
|
|
url: url,
|
|
headers: headers,
|
|
isHeaderEnabledList: isHeaderEnabledList,
|
|
body: body,
|
|
bodyContentType: bodyContentType,
|
|
formData: formData,
|
|
params: params,
|
|
isParamEnabledList: isParamEnabledList,
|
|
postRequestScript: postRequestScript,
|
|
);
|
|
},
|
|
addNewRequest: (model, {name}) =>
|
|
collection.addRequestModel(model, name: name ?? 'New Request'),
|
|
readCurrentRequestId: () => ref.read(selectedRequestModelProvider)?.id,
|
|
ensureBaseUrl: (baseUrl) => urlEnv.ensureBaseUrlEnv(
|
|
baseUrl,
|
|
readEnvs: () => ref.read(environmentsStateNotifierProvider),
|
|
readActiveEnvId: () => ref.read(activeEnvironmentIdStateProvider),
|
|
updateEnv: (id, {values}) => ref
|
|
.read(environmentsStateNotifierProvider.notifier)
|
|
.updateEnvironment(id, values: values),
|
|
),
|
|
readCurrentRequest: () => ref.read(selectedRequestModelProvider),
|
|
);
|
|
});
|