import {
ActionDesigner,
SchemaSettings,
SchemaSettingsItemType,
SchemaSettingsLinkageRules,
useCollection_deprecated,
useSchemaToolbar,
} from '@tachybase/client';
const schemaSettingsItems: SchemaSettingsItemType[] = [
{
name: 'Customize',
Component: (props): any => {
return props.children;
},
children: [
name: 'editButton',
Component: ActionDesigner.ButtonEditor,
useComponentProps() {
const { buttonEditorProps } = useSchemaToolbar();
return buttonEditorProps;
name: 'linkageRules',
Component: SchemaSettingsLinkageRules,
const { name } = useCollection_deprecated();
const { linkageRulesProps } = useSchemaToolbar();
return {
...linkageRulesProps,
collectionName: name,
};
name: 'remove',
sort: 100,
Component: ActionDesigner.RemoveButton as any,
const { removeButtonProps } = useSchemaToolbar();
return removeButtonProps;
],
];
/**
* @deprecated
* 用于兼容之前的 name
*/
const deprecatedPrintActionSettings = new SchemaSettings({
name: 'ActionSettings:print',
items: schemaSettingsItems,
});
const printActionSettings = new SchemaSettings({
name: 'actionSettings:print',
export { deprecatedPrintActionSettings, printActionSettings };