@avan-persian/travel
v0.1.1
Published
Travel & pricing extensions for Avan Persian Date Picker
Maintainers
Readme
@avan-persian/travel

Pricing, availability, and booking-rule helpers for travel/hotel/e-commerce date-selection UIs,
built to plug straight into @avan-persian/react's
AvanCalendar#getDayMeta.
Install
pnpm add @avan-persian/travelQuick example
import { createPriceDayMeta, computeRangePrice, isRangeAvailable } from '@avan-persian/travel';
import { AvanDateRangePicker } from '@avan-persian/react/client';
const getPriceForDate = (date: Date) => ({
amount: date.getDay() === 5 ? 3_200_000 : 2_400_000,
currency: 'IRR',
});
const rules = { minNights: 2, maxNights: 14 };
<AvanDateRangePicker getDayMeta={createPriceDayMeta(getPriceForDate)} />;
isRangeAvailable(checkIn, checkOut, rules, getPriceForDate); // boolean
computeRangePrice(checkIn, checkOut, getPriceForDate, rules); // { nights, totalPrice, ... }validateTravelRange throws a descriptive TravelRangeError for invalid bookings (too short/long,
disabled night, wrong check-in weekday, no availability) — useful for form validation messages.
Docs
Full recipe: documentation/recipes.md
License
MIT © Danial Riazati
