Files
react-gantt/demos/cases/ProBaselines.jsx
Marta Kowalska bb81e7a336 v2.4.3
2025-12-22 20:22:30 +00:00

55 lines
1.2 KiB
JavaScript

import { useMemo, useState } from 'react';
import { getData } from '../data';
import { Gantt, Editor, getEditorItems } from '../../src/';
function ProBaseline({ skinSettings }) {
const data = useMemo(() => getData('day', { baselines: true }), []);
const [api, setApi] = useState();
const items = useMemo(
() =>
getEditorItems().flatMap((item) =>
item.key === 'links'
? [
...[
{
key: 'base_start',
comp: 'date',
label: 'Baseline start',
},
{
key: 'base_end',
comp: 'date',
label: 'Baseline end',
},
{
key: 'base_duration',
comp: 'counter',
hidden: true,
},
],
item,
]
: item,
),
[],
);
return (
<>
<Gantt
ref={setApi}
{...skinSettings}
baselines={true}
cellHeight={45}
tasks={data.tasks}
links={data.links}
/>
{api && <Editor api={api} items={items} />}
</>
);
}
export default ProBaseline;