tachybase_todo/packages/plugins/@tachybase/plugin-graph-collection-manager/src/client/components/OverrideFieldAction.tsx
sealday ede7ead8b1 chore(version): release v0.21.34 (#1045)
Co-authored-by: sealday <sealday@gmail.com>
Reviewed-on: daoyoucloud/tachybase#1045
2024-05-24 01:06:06 +08:00

34 lines
967 B
TypeScript

import React from 'react';
import { OverridingFieldAction as OverridingCollectionFieldAction } from '@tachybase/client';
import { CopyOutlined } from '@ant-design/icons';
import { useCancelAction, useCreateAction } from '../action-hooks';
import { getPopupContainer } from '../utils';
const useOverridingCollectionField = (record) => {
const collectionName = record.targetCollection;
const { run } = useCreateAction(collectionName);
return {
async run() {
await run();
},
};
};
export const OverrideFieldAction = ({ item: record, parentItem: parentRecord }) => {
return (
<OverridingCollectionFieldAction
item={{ ...record }}
parentItem={parentRecord}
scope={{
useCancelAction,
useOverridingCollectionField: () => useOverridingCollectionField(record),
}}
getContainer={getPopupContainer}
>
<CopyOutlined className="btn-override" />
</OverridingCollectionFieldAction>
);
};