All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.js.components.TimeSpanSelector.tsx Maven / Gradle / Ivy

There is a newer version: 2.0.101
Show newest version
/**
 * SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
 * SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
 */

import {ClayButtonWithIcon} from '@clayui/button';
import {ClaySelect} from '@clayui/form';
import React, {useContext} from 'react';

import {ChartDispatchContext, TimeSpan} from '../context/ChartStateContext';
import ConnectionContext from '../context/ConnectionContext';

interface TimeSpanOption {
	key: TimeSpan;
	label: string;
}

interface Props {
	disabledNextTimeSpan: boolean;
	disabledPreviousPeriodButton: boolean;
	timeSpanKey: TimeSpan;
	timeSpanOptions: TimeSpanOption[];
}

export default function TimeSpanSelector({
	disabledNextTimeSpan,
	disabledPreviousPeriodButton,
	timeSpanKey,
	timeSpanOptions,
}: Props) {
	const {validAnalyticsConnection} = useContext(ConnectionContext);

	const dispatch = useContext(ChartDispatchContext);

	return (
		
{ const {value} = event.target; dispatch({ payload: {key: value as unknown as TimeSpan}, type: 'CHANGE_TIME_SPAN_KEY', }); }} value={timeSpanKey || undefined} > {timeSpanOptions.map((option) => { return ( ); })}
dispatch({type: 'PREV_TIME_SPAN'})} small symbol="angle-left" title={ disabledPreviousPeriodButton ? Liferay.Language.get( 'you-cannot-choose-a-date-prior-to-the-publication-date' ) : undefined } /> dispatch({type: 'NEXT_TIME_SPAN'})} small symbol="angle-right" />
); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy