Pivot menüsü

This commit is contained in:
Sedat Öztürk 2026-02-08 20:37:18 +03:00
parent cd67bd2b06
commit 1c93a7acb9

View file

@ -32,8 +32,8 @@ import {
} from './Utils' } from './Utils'
import { useFilters } from './useFilters' import { useFilters } from './useFilters'
import WidgetGroup from '@/components/common/WidgetGroup' import WidgetGroup from '@/components/common/WidgetGroup'
import { Button, Notification, toast } from '@/components/ui' import { Button, Dropdown, Notification, toast } from '@/components/ui'
import { FaCog, FaSave, FaTimes, FaUndo } from 'react-icons/fa' import { FaChevronDown, FaCog, FaEllipsisV, FaSave, FaTimes, FaUndo } from 'react-icons/fa'
import { usePermission } from '@/utils/hooks/usePermission' import { usePermission } from '@/utils/hooks/usePermission'
import { ROUTES_ENUM } from '@/routes/route.constant' import { ROUTES_ENUM } from '@/routes/route.constant'
import { usePWA } from '@/utils/hooks/usePWA' import { usePWA } from '@/utils/hooks/usePWA'
@ -422,29 +422,40 @@ const Pivot = (props: PivotProps) => {
{gridDto && columnData && ( {gridDto && columnData && (
<div className="p-1 bg-white dark:bg-neutral-800 dark:border-neutral-700 "> <div className="p-1 bg-white dark:bg-neutral-800 dark:border-neutral-700 ">
<div className="flex justify-end items-center"> <div className="flex justify-end items-center">
<div className="relative pb-1 flex gap-1 border-b-1"> <div className="relative flex gap-1">
<label className="flex items-center gap-2 text-sm px-2 cursor-pointer"> <label className="flex items-center gap-1 text-xs cursor-pointer">
<Checkbox <span>{translate('::ListForms.ListFormEdit.ShowChart')}</span>
checked={showChart} <Checkbox checked={showChart} onChange={(checked) => setShowChart(checked)} />
onChange={(checked) => setShowChart(checked)}
/>
<span>{translate('::ListForms.ListFormEdit.ShowChart') || 'Grafik'}</span>
</label> </label>
<div className="dx-menu">
<Dropdown
placement="bottom-end"
renderTitle={
<Button <Button
size="xs" size="xs"
variant={'default'} variant={'default'}
className="text-sm flex items-center gap-1" className="text-sm flex items-center gap-1 border-0"
onClick={clearPivotFilters} title="Menu"
title={translate('::ListForms.ListForm.RemoveFilter')}
> >
<FaTimes className="w-3 h-3" /> {translate('::ListForms.ListForm.RemoveFilter')} <i className="dx-icon dx-icon-overflow"></i>
<span>{translate('::ListForms.ListForm.GridMenu')}</span>
<FaChevronDown className="w-2 h-2" />
</Button> </Button>
}
>
<Dropdown.Item
eventKey="removeFilter"
onClick={clearPivotFilters}
className="px-2"
>
<span className="flex items-center gap-2">
<FaTimes className="w-3 h-3" />
<span>{translate('::ListForms.ListForm.RemoveFilter')}</span>
</span>
</Dropdown.Item>
<Button <Dropdown.Item
size="xs" eventKey="saveGridState"
variant={'default'}
className="text-sm flex items-center gap-1"
onClick={() => { onClick={() => {
const instance = gridRef.current?.instance() const instance = gridRef.current?.instance()
if (instance) { if (instance) {
@ -471,26 +482,28 @@ const Pivot = (props: PivotProps) => {
} }
} }
}} }}
title={translate('::ListForms.ListForm.SaveGridState')} className="px-2"
> >
<FaSave className="w-3 h-3" /> {translate('::ListForms.ListForm.SaveGridState')} <span className="flex items-center gap-2">
</Button> <FaSave className="w-3 h-3" />
<span>{translate('::ListForms.ListForm.SaveGridState')}</span>
</span>
</Dropdown.Item>
<Button <Dropdown.Item
size="xs" eventKey="resetGridState"
variant={'default'}
className="text-sm flex items-center gap-1"
onClick={resetPivotGridState} onClick={resetPivotGridState}
title={translate('::ListForms.ListForm.ResetGridState')} className="px-2"
> >
<FaUndo className="w-3 h-3" /> {translate('::ListForms.ListForm.ResetGridState')} <span className="flex items-center gap-2">
</Button> <FaUndo className="w-3 h-3" />
<span>{translate('::ListForms.ListForm.ResetGridState')}</span>
</span>
</Dropdown.Item>
{checkPermission(gridDto?.gridOptions.permissionDto.u) && ( {checkPermission(gridDto?.gridOptions.permissionDto.u) && (
<Button <Dropdown.Item
size="xs" eventKey="formManager"
variant={'default'}
className="text-sm"
onClick={() => { onClick={() => {
window.open( window.open(
ROUTES_ENUM.protected.saas.listFormManagement.edit.replace( ROUTES_ENUM.protected.saas.listFormManagement.edit.replace(
@ -500,11 +513,16 @@ const Pivot = (props: PivotProps) => {
isPwaMode ? '_self' : '_blank', isPwaMode ? '_self' : '_blank',
) )
}} }}
title={translate('::ListForms.ListForm.Manage')} className="px-2"
> >
<span className="flex items-center gap-2">
<FaCog className="w-3 h-3" /> <FaCog className="w-3 h-3" />
</Button> <span>{translate('::ListForms.ListForm.Manage')}</span>
</span>
</Dropdown.Item>
)} )}
</Dropdown>
</div>
</div> </div>
</div> </div>
{showChart && ( {showChart && (