代码拉取完成,页面将自动刷新
import { SchemaInitializer, useCollection, useCollectionManager, useIsMobile } from '@tachybase/client';
import { canBeOptionalField, canBeRelatedField } from '../tab-search/utils';
import { createSchemaImageSearchItem } from './search-item/ImageSearchItem.schema';
export const ImageSearchConfigureFields = new SchemaInitializer({
name: 'ImageSearchView:configureFields',
title: '{{t("Configure fields")}}',
style: { marginTop: 16 },
icon: 'SettingOutlined',
items: [
{
name: 'choicesFields',
type: 'itemGroup',
title: '{{t("Choices fields")}}',
useChildren: useChildrenChoicesFieldSchemas,
},
],
});
function useChildrenChoicesFieldSchemas() {
const collection = useCollection();
const fields = collection?.fields;
const cm = useCollectionManager();
const isMobile = useIsMobile();
const choicesFieldsSchemas = fields
.map((field) => {
const { interface: _interface, target: collectionName } = field;
const label = cm.getCollection(collectionName)?.getPrimaryKey() ?? 'id';
const isCanBeOptional = canBeOptionalField(_interface);
const isCanBeRelated = canBeRelatedField(_interface);
if (isCanBeOptional || isCanBeRelated) {
const schema = createSchemaImageSearchItem({
collection,
field,
isMobile,
label,
isCanBeOptional,
isCanBeRelated,
});
return schema;
}
return null;
})
.filter(Boolean);
return choicesFieldsSchemas;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。