submitSuggestion method

Future<bool> submitSuggestion({
  1. required String packageName,
  2. required List<String> categories,
  3. String? notes,
})

Submit a package categorization suggestion

Implementation

Future<bool> submitSuggestion({
  required String packageName,
  required List<String> categories,
  String? notes,
}) async {
  try {
    final payload = {
      'name': packageName,
      'categories': categories,
      'source': 'cli-suggestion',
      'notes': notes ?? 'Suggested by SmartPub user',
      'submittedAt': DateTime.now().toIso8601String(),
    };

    final response = await http.post(
      Uri.parse('$apiEndpoint/suggest/package'),
      headers: {
        'Content-Type': 'application/json',
        'User-Agent':
            'SmartPub/1.0 (+https://github.com/VatsalJaganwala/smartpub)',
      },
      body: jsonEncode(payload),
    );

    return response.statusCode == 200 || response.statusCode == 201;
  } catch (e) {
    // Silently fail for now - suggestions are optional
    return false;
  }
}