goobs-frontend
Version:
A comprehensive React-based libary for building modern web applications
44 lines • 1.73 kB
TypeScript
import { default as React } from 'react';
import { FieldStyleOverrides } from '../Field/Shell/types';
/**
* Client-side event filters applied by BigCalendar. All set criteria AND
* together; an unset or empty criterion is ignored.
*/
export interface CalendarFilterOptions {
/** Case-insensitive substring match against event title, description, and resource. */
searchText?: string;
/** Keep events whose `type` is in this list. */
eventTypes?: string[];
/** Bounds on the event START date; each bound is optional. */
dateRange?: {
/** Inclusive lower bound on the event start date. */
start?: Date | null;
/** Upper bound on the event start date, inclusive through the end of that day. */
end?: Date | null;
};
/** Keep events whose `resource` is in this list. */
resources?: string[];
/** Keep events whose `metadata.tags` contains at least one of these tags. */
tags?: string[];
/** Keep events whose `metadata.status` is in this list. */
status?: string[];
/** Per-`metadata`-key equality filters (an array value means "one of"); empty/null values are skipped. */
customFilters?: Record<string, any>;
}
interface CalendarFiltersProps {
filters: CalendarFilterOptions;
onFiltersChange: (filters: CalendarFilterOptions) => void;
availableResources?: {
id: string;
title: string;
}[];
cities?: string[];
propertyTypes?: string[];
bedroomOptions?: Array<string | number>;
priceRanges?: string[];
expanded?: boolean;
styles?: FieldStyleOverrides;
}
export declare const CalendarFilters: React.FC<CalendarFiltersProps>;
export {};
//# sourceMappingURL=CalendarFilters.d.ts.map