nepali_calendar_axios 1.1.4 copy "nepali_calendar_axios: ^1.1.4" to clipboard
nepali_calendar_axios: ^1.1.4 copied to clipboard

A Flutter package for creating and displaying beautiful Nepali calendars.

example/lib/main.dart

// ignore_for_file: prefer_const_constructors

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:nepali_calendar_axios/nepali_calendar_axios.dart';

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

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  TextEditingController startcontroller = TextEditingController();
  TextEditingController endDateController = TextEditingController();
  TextEditingController startDateController = TextEditingController();

  String? date;
  int? selectedDateId;
  int? endselectedDateId;
  String url = "https://demo79.nivid.app/";

  @override
  void initState() {
    Get.put(CalendarController(url));

    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Calendar(
              baseUrl: url,
              dateController: startcontroller,
              themeColor: const Color(0xFF29ABE2),
              calendarLblText: "From Date",
              border: const OutlineInputBorder(
                  borderRadius: BorderRadius.all(Radius.circular(12))),
              // ignore: non_constant_identifier_names
              onSelectedDateId: (DateId) {
                setState(() {
                  selectedDateId = DateId;
                });
                update();
              },
            ),
            const SizedBox(height: 20.0),
            Row(
              mainAxisAlignment: MainAxisAlignment.spaceAround,
              children: <Widget>[
                SizedBox(
                    width: 110,
                    child: Calendar(
                      baseUrl: url,
                      themeColor: const Color(0xFF29ABE2),
                      dateController: startDateController,
                      border: InputBorder.none,
                      filled: true,
                      fillColor: Colors.blueGrey[50],
                      hintText: "Start Date",
                      calendarLblText: "From Date",
                      shouldPreventPastDateSelection: true,
                      //Icons.Calenbar_month is not appear, use others
                      calendarIcon: Icons.calendar_month,
                      style: const TextStyle(fontSize: 14),
                      hintStyle: TextStyle(color: Colors.blueGrey[400]),
                      labelStyle: TextStyle(
                        color: Colors.blueGrey[400],
                      ),
                      onSelectedDateId: (dateId) {},
                    )),
                SizedBox(
                    width: 110,
                    child: Calendar(
                      baseUrl: url,
                      themeColor: const Color(0xFF29ABE2),
                      dateController: endDateController,
                      border: InputBorder.none,
                      filled: true,
                      readOnly: true,
                      fillColor: Colors.blueGrey[50],
                      hintText: "End Date",
                      calendarLblText: "To Date",
                      prefixIcon: Icons.calendar_today_rounded,
                      hintStyle: TextStyle(color: Colors.blueGrey[400]),
                      labelStyle: TextStyle(color: Colors.blueGrey[400]),
                      onSelectedDateId: (dateId) {},
                    ))
              ],
            ),
            Calendar(
              baseUrl: url,
              themeColor: const Color(0xFF29ABE2),
              dateController: startDateController,
              border: InputBorder.none,
              filled: true,
              fillColor: Colors.blueGrey[50],
              hintText: "Start Date",
              calendarLblText: "From Date",
              shouldPreventPastDateSelection: true,
              //Icons.Calenbar_month is not appear, use others
              // calendarIcon: Icons.calendar_month,
              prefixIcon: Icons.calendar_today_rounded,
              style: const TextStyle(fontSize: 14),
              hintStyle: TextStyle(color: Colors.blueGrey[400]),
              labelStyle: TextStyle(
                color: Colors.blueGrey[400],
              ),
              onSelectedDateId: (dateId) {},
            ),
            Container(
              width: MediaQuery.of(context).size.width * 0.265,
              height: 30,
              decoration: BoxDecoration(
                color: Color.fromRGBO(255, 255, 255, 0.9),
                border: Border.all(
                  color: Colors.grey,
                ),
                borderRadius: BorderRadius.circular(8),
              ),
              child: Row(
                children: [
                  Icon(
                    Icons.note,
                    color: Colors.black,
                    size: 16,
                  ),
                  Expanded(
                    child: Calendar(
                      hintText: "Today",
                      baseUrl: url,
                      dateController: startDateController,
                      themeColor: const Color(0xFF29ABE2),
                      isDense: true,
                      readOnly: true,
                      shouldPreventPastDateSelection: true,
                      showIcon: false,
                      border: InputBorder.none,
                      onSelectedDateId: (dateId) {
                        setState(() {});
                      },
                    ),
                  ),
                ],
              ),
            ),
          ],
        ),
      ),
    );
  }

  update() {
    // ignore: avoid_print
    print("Axios");
  }
}
3
likes
130
points
46
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter package for creating and displaying beautiful Nepali calendars.

Repository (GitLab)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

dio, flutter, get, intl

More

Packages that depend on nepali_calendar_axios