flutter_persian_calendar

Last updated:

0 purchases

flutter_persian_calendar Image
flutter_persian_calendar Images
Add to Cart

Description:

flutter persian calendar

Flutter Persian Calendar: A Widget for Jalali (Persian) Date Display #


This Flutter package provides a simple and customizable Persian calendar widget for easy integration into your Flutter project. The package is based on shamsi_date.
Features #

Filter Start and End Date: You can add start-date and end-date to filter showing dates.
Customization Options: Tailor the appearance of the calendar to fit your application's theme with customizable options.

Usage #
Add it to your pubspec.yaml file:
dependencies:

flutter_persian_calendar: ^0.0.2
copied to clipboard
Then, run the following command in your terminal:
flutter pub get
copied to clipboard
In your library add the following import:

import 'package:flutter_persian_calendar/flutter_persian_calendar.dart';

copied to clipboard
check example to use:
//import package at top of class
import 'package:flutter_persian_calendar/flutter_persian_calendar.dart';

//Create a button to user tap on it and show calendar to select date
ElevatedButton(
onPressed: () {
//Show calendar in Dialog
showDialog(
context: context,
builder: (context) {
return Dialog(
child:
shamsiDateCalendarWidget(context, calendarDarkTheme),
);
},
);
},
child: const Text('Select Date'),
);

//Can create a base Calendar widget to show with different Themes
PersianCalendar shamsiDateCalendarWidget(
BuildContext context,
//Pass different Theme
PersianCalendarTheme calendarTheme,
) {
return PersianCalendar(
calendarHeight: 376, //set height of calendar widget to 376
calendarWidth: 360, //set width of calendar widget to 360
selectedDate: selectedDate, // the selected date shown in initializing calendar widget
onDateChanged: (newDate) {
// type of newDate and selectedDate should be Jalali
selectedDate = newDate; // set the selectedDate to new selected date
},
onConfirmButtonPressed: () {
Navigator.pop(context); // pop widget when user press on confirm button
},
calendarStartDate: Jalali(1300, 4, 12), // show calendar from 1300/4/12
calendarEndDate: Jalali(1402, 7, 10), // show calendar until 1402/7/10
calendarTheme: calendarTheme, // set calendarTheme that is passed here
);
}

copied to clipboard
Customization #
You can change colors, textStyle, and the height and width of items in PersianCalendarTheme. Here is a customized lightTheme:
// Model of calendar Theme
PersianCalendarTheme(
backgroundColor: const Color(0XFFEDF2F4),
selectedColor: const Color(0XFFEF233C),
headerBackgroundColor: const Color(0XFF8D99AE),
textStyle: const TextStyle(
fontSize: 14,
color: Colors.black,
),
selectedItemTextStyle: const TextStyle(
fontSize: 14,
color: Color(0XFFF2F2F2),
),
confirmButtonTextStyle: const TextStyle(
fontSize: 14,
color: Color(0XFFF2F2F2),
),
headerTextStyle: const TextStyle(
fontSize: 14,
color: Colors.black,
),
);

copied to clipboard
Output screenshot:

Contributions #
We welcome contributions from the community! If you'd like to contribute to the development of Flutter Persian Calendar, please follow these guidelines:
Reporting Issues #
If you encounter any issues with the package or have suggestions for improvements, please open an issue on the GitHub issue tracker. When reporting issues, please provide detailed information about the problem, including steps to reproduce it and your environment (Flutter version, platform, etc.).
Making Changes #

Fork the repository.
Create a new branch for your feature or bug fix: git checkout -b feature/my-feature or git checkout -b bugfix/fix-issue.
Make your changes and test thoroughly.
Commit your changes: git commit -m 'Add some feature'.
Push to the branch: git push origin feature/my-feature.
Submit a pull request.

Feel free to use or modify this version based on your preferences!

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.