flutter_request_kit 0.0.10 copy "flutter_request_kit: ^0.0.10" to clipboard
flutter_request_kit: ^0.0.10 copied to clipboard

A Flutter package that simplify the way you deal with feedbacks, feature requests and bugs in your app.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter_request_kit/flutter_request_kit.dart';

void main() {
  runApp(const RequestApp());
}

class RequestApp extends StatelessWidget {
  const RequestApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Request Kit Demo',
      theme: RequestCustomTheme.defaultTheme.copyWith(
        extensions: [
          const RequestStatusPillTheme(),
          const RequestVotingBoxTheme(),
          const RequestItemCardTheme(),
        ],
        primaryColor: Colors.blue,
        primaryColorLight: Colors.lightBlue,
        primaryColorDark: Colors.blue[900],
        inputDecorationTheme: const InputDecorationTheme(
          border: OutlineInputBorder(
            borderRadius: BorderRadius.all(Radius.circular(4)),
          ),
          constraints: BoxConstraints(maxHeight: 42),
          contentPadding: EdgeInsets.symmetric(horizontal: 12),
        ),
        iconButtonTheme: IconButtonThemeData(
          style: IconButton.styleFrom(
            shape: RoundedRectangleBorder(
              borderRadius: BorderRadius.circular(4),
            ),
            iconSize: 24,
          ),
        ),
      ),
      home: const RequestHomePage(),
    );
  }
}

class RequestHomePage extends StatefulWidget {
  const RequestHomePage({super.key});

  @override
  State<RequestHomePage> createState() => _RequestHomePageState();
}

class _RequestHomePageState extends State<RequestHomePage> {
  // Mocked current user as the creator of the requests
  final Creator currentUser = const Creator(
    userId: 'user123',
    username: 'johndoe',
    isAdmin: true,
  );

  Future<RequestItem> addRequest(RequestItem item) async {
    // Simulate a request to the server
    await Future.delayed(const Duration(seconds: 1));
    return item.copyWith(id: 'new_id');
  }

  late final store = RequestStore(
    requests: <RequestItem>[],
    onAddRequest: (item) async {
      return addRequest(item);
    },
    onAddComment: (requestId, comment) {
      debugPrint(requestId);
      debugPrint(comment.toString());
    },
    onDeleteRequest: print,
    onUpdateRequest: print,
    onVoteChange: print,
  );

  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: () => FocusScope.of(context).unfocus(),
      child: Scaffold(
        appBar: AppBar(
          title: const Text('Flutter Request Kit Demo'),
        ),
        body: RequestPage(
          currentUser: currentUser,
          store: store,
          locale: RequestKitLocales.enUS.locale,
          theme: Theme.of(context),
        ),
      ),
    );
  }
}
3
likes
160
points
59
downloads

Publisher

verified publisherpolarstork.com

Weekly Downloads

A Flutter package that simplify the way you deal with feedbacks, feature requests and bugs in your app.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on flutter_request_kit