fix(mobile): fix style issue when adding template in subpage (#5340)

This commit is contained in:
Zeke Zhang 2024-09-29 09:11:03 +08:00 committed by GitHub
parent 4130d1d180
commit 062dc4c93a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 17 additions and 13 deletions

View File

@ -13,7 +13,7 @@ import { SchemaInitializerItem, useSchemaInitializer, useSchemaInitializerItem }
import { useCollection_deprecated } from '../../../../collection-manager'; import { useCollection_deprecated } from '../../../../collection-manager';
import { useAssociationName, useCollectionManager } from '../../../../data-source'; import { useAssociationName, useCollectionManager } from '../../../../data-source';
import { useRecordCollectionDataSourceItems } from '../../../../schema-initializer/utils'; import { useRecordCollectionDataSourceItems } from '../../../../schema-initializer/utils';
import { useSchemaTemplateManager } from '../../../../schema-templates'; import { useBlockTemplateContext, useSchemaTemplateManager } from '../../../../schema-templates';
import { createDetailsUISchema } from './createDetailsUISchema'; import { createDetailsUISchema } from './createDetailsUISchema';
export const RecordReadPrettyFormBlockInitializer = () => { export const RecordReadPrettyFormBlockInitializer = () => {
@ -38,11 +38,12 @@ export function useCreateSingleDetailsSchema() {
const { getTemplateSchemaByMode } = useSchemaTemplateManager(); const { getTemplateSchemaByMode } = useSchemaTemplateManager();
const association = useAssociationName(); const association = useAssociationName();
const cm = useCollectionManager(); const cm = useCollectionManager();
const { componentNamePrefix } = useBlockTemplateContext();
const templateWrap = useCallback( const templateWrap = useCallback(
(templateSchema, options) => { (templateSchema, options) => {
const { item } = options; const { item } = options;
if (item.template.componentName === 'ReadPrettyFormItem') { if (item.template.componentName === `${componentNamePrefix}ReadPrettyFormItem`) {
const collectionName = item.collectionName || item.name; const collectionName = item.collectionName || item.name;
const collection = cm.getCollection(collectionName); const collection = cm.getCollection(collectionName);
const blockSchema = createDetailsUISchema( const blockSchema = createDetailsUISchema(
@ -69,7 +70,7 @@ export function useCreateSingleDetailsSchema() {
return templateSchema; return templateSchema;
} }
}, },
[association, cm], [association, cm, componentNamePrefix],
); );
const createSingleDetailsSchema = useCallback( const createSingleDetailsSchema = useCallback(

View File

@ -13,7 +13,7 @@ import { SchemaInitializerItem, useSchemaInitializer, useSchemaInitializerItem }
import { useCollection_deprecated } from '../../../../collection-manager'; import { useCollection_deprecated } from '../../../../collection-manager';
import { useAssociationName, useCollectionManager } from '../../../../data-source'; import { useAssociationName, useCollectionManager } from '../../../../data-source';
import { useRecordCollectionDataSourceItems } from '../../../../schema-initializer/utils'; import { useRecordCollectionDataSourceItems } from '../../../../schema-initializer/utils';
import { useSchemaTemplateManager } from '../../../../schema-templates'; import { useBlockTemplateContext, useSchemaTemplateManager } from '../../../../schema-templates';
import { createEditFormBlockUISchema } from './createEditFormBlockUISchema'; import { createEditFormBlockUISchema } from './createEditFormBlockUISchema';
/** /**
@ -50,6 +50,7 @@ export function useCreateEditFormBlock() {
const { insert } = useSchemaInitializer(); const { insert } = useSchemaInitializer();
const association = useAssociationName(); const association = useAssociationName();
const cm = useCollectionManager(); const cm = useCollectionManager();
const { componentNamePrefix } = useBlockTemplateContext();
const createEditFormBlock = useCallback( const createEditFormBlock = useCallback(
({ item }) => { ({ item }) => {
@ -76,7 +77,7 @@ export function useCreateEditFormBlock() {
const templateWrap = useCallback( const templateWrap = useCallback(
(templateSchema, { item }) => { (templateSchema, { item }) => {
if (item.template.componentName === 'FormItem') { if (item.template.componentName === `${componentNamePrefix}FormItem`) {
const collectionName = item.collectionName || item.name; const collectionName = item.collectionName || item.name;
const collection = cm.getCollection(collectionName); const collection = cm.getCollection(collectionName);
const blockSchema = createEditFormBlockUISchema( const blockSchema = createEditFormBlockUISchema(
@ -102,7 +103,7 @@ export function useCreateEditFormBlock() {
return templateSchema; return templateSchema;
} }
}, },
[association, cm], [association, cm, componentNamePrefix],
); );
return { createEditFormBlock, templateWrap }; return { createEditFormBlock, templateWrap };

View File

@ -13,7 +13,7 @@ import React, { useCallback, useMemo } from 'react';
import { SchemaInitializerItem, useSchemaInitializer, useSchemaInitializerItem } from '../../application'; import { SchemaInitializerItem, useSchemaInitializer, useSchemaInitializerItem } from '../../application';
import { useCollectionManager_deprecated } from '../../collection-manager'; import { useCollectionManager_deprecated } from '../../collection-manager';
import { createCreateFormBlockUISchema } from '../../modules/blocks/data-blocks/form/createCreateFormBlockUISchema'; import { createCreateFormBlockUISchema } from '../../modules/blocks/data-blocks/form/createCreateFormBlockUISchema';
import { useSchemaTemplateManager } from '../../schema-templates'; import { useBlockTemplateContext, useSchemaTemplateManager } from '../../schema-templates';
import { useRecordCollectionDataSourceItems } from '../utils'; import { useRecordCollectionDataSourceItems } from '../utils';
/** /**
@ -70,6 +70,7 @@ export const RecordAssociationFormBlockInitializer = () => {
export function useCreateAssociationFormBlock() { export function useCreateAssociationFormBlock() {
const { insert } = useSchemaInitializer(); const { insert } = useSchemaInitializer();
const { getCollection } = useCollectionManager_deprecated(); const { getCollection } = useCollectionManager_deprecated();
const { componentNamePrefix } = useBlockTemplateContext();
const createAssociationFormBlock = useCallback( const createAssociationFormBlock = useCallback(
({ item }) => { ({ item }) => {
@ -88,7 +89,7 @@ export function useCreateAssociationFormBlock() {
const templateWrap = useCallback( const templateWrap = useCallback(
(templateSchema, { item }) => { (templateSchema, { item }) => {
if (item.template.componentName === 'FormItem' && item.associationField) { if (item.template.componentName === `${componentNamePrefix}FormItem` && item.associationField) {
const field = item.associationField; const field = item.associationField;
const collection = getCollection(field.target); const collection = getCollection(field.target);
const blockSchema = createCreateFormBlockUISchema({ const blockSchema = createCreateFormBlockUISchema({
@ -104,7 +105,7 @@ export function useCreateAssociationFormBlock() {
return templateSchema; return templateSchema;
} }
}, },
[getCollection], [getCollection, componentNamePrefix],
); );
return { createAssociationFormBlock, templateWrap }; return { createAssociationFormBlock, templateWrap };

View File

@ -11,10 +11,10 @@ import { FormOutlined } from '@ant-design/icons';
import React, { useCallback } from 'react'; import React, { useCallback } from 'react';
import { SchemaInitializerItem, useSchemaInitializer, useSchemaInitializerItem } from '../../application'; import { SchemaInitializerItem, useSchemaInitializer, useSchemaInitializerItem } from '../../application';
import { useSchemaTemplateManager } from '../../schema-templates';
import { useRecordCollectionDataSourceItems } from '../utils';
import { useCollectionManager_deprecated } from '../../collection-manager'; import { useCollectionManager_deprecated } from '../../collection-manager';
import { createDetailsUISchema } from '../../modules/blocks/data-blocks/details-single/createDetailsUISchema'; import { createDetailsUISchema } from '../../modules/blocks/data-blocks/details-single/createDetailsUISchema';
import { useBlockTemplateContext, useSchemaTemplateManager } from '../../schema-templates';
import { useRecordCollectionDataSourceItems } from '../utils';
/** /**
* @deprecated * @deprecated
@ -69,6 +69,7 @@ export const RecordReadPrettyAssociationFormBlockInitializer = () => {
export function useCreateAssociationDetailsWithoutPagination() { export function useCreateAssociationDetailsWithoutPagination() {
const { insert } = useSchemaInitializer(); const { insert } = useSchemaInitializer();
const { getCollection } = useCollectionManager_deprecated(); const { getCollection } = useCollectionManager_deprecated();
const { componentNamePrefix } = useBlockTemplateContext();
const createAssociationDetailsWithoutPagination = useCallback( const createAssociationDetailsWithoutPagination = useCallback(
({ item }) => { ({ item }) => {
@ -90,7 +91,7 @@ export function useCreateAssociationDetailsWithoutPagination() {
const field = item.associationField; const field = item.associationField;
const collection = getCollection(field.target); const collection = getCollection(field.target);
if (item.template.componentName === 'ReadPrettyFormItem') { if (item.template.componentName === `${componentNamePrefix}ReadPrettyFormItem`) {
const blockSchema = createDetailsUISchema({ const blockSchema = createDetailsUISchema({
dataSource: collection.dataSource, dataSource: collection.dataSource,
association: `${field.collectionName}.${field.name}`, association: `${field.collectionName}.${field.name}`,
@ -104,7 +105,7 @@ export function useCreateAssociationDetailsWithoutPagination() {
return templateSchema; return templateSchema;
} }
}, },
[getCollection], [getCollection, componentNamePrefix],
); );
return { createAssociationDetailsWithoutPagination, templateWrap }; return { createAssociationDetailsWithoutPagination, templateWrap };