Tom Butcher 39d5206130 Enhance Document Template Management with Referenced Templates Support
- Updated NewDocumentTemplate component to include 'referencedTemplates' in visible properties and object data management, improving template handling.
- Modified DocumentTemplate model to add 'referencedTemplates' field, allowing for better data structure and management of related templates.
- Adjusted App.css to refine styling for object display tags, enhancing visual consistency across the application.
2026-08-22 16:39:07 +01:00

96 lines
2.5 KiB
JavaScript

import PropTypes from 'prop-types'
import ObjectInfo from '../../common/ObjectInfo'
import NewObjectForm from '../../common/NewObjectForm'
import WizardView from '../../common/WizardView'
const NewDocumentTemplate = ({ onOk, defaultValues }) => {
return (
<NewObjectForm
type={'documentTemplate'}
defaultValues={{ active: true, global: false, ...defaultValues }}
>
{({ handleSubmit, submitLoading, objectData, formValid }) => {
const steps = [
{
title: 'Required',
key: 'required',
content: (
<ObjectInfo
type='documentTemplate'
column={1}
bordered={false}
isEditing={true}
required={true}
labelWidth={130}
objectData={objectData}
/>
)
},
{
title: 'Optional',
key: 'optional',
content: (
<ObjectInfo
type='documentTemplate'
column={1}
bordered={false}
isEditing={true}
required={false}
visibleProperties={{
content: false,
testObject: false,
referencedTemplates: false
}}
objectData={objectData}
/>
)
},
{
title: 'Summary',
key: 'summary',
content: (
<ObjectInfo
type='documentTemplate'
column={1}
bordered={false}
visibleProperties={{
_id: false,
_reference: false,
createdAt: false,
updatedAt: false,
referencedTemplates: false
}}
isEditing={false}
objectData={objectData}
/>
)
}
]
return (
<WizardView
steps={steps}
loading={submitLoading}
formValid={formValid}
title='New Document Template'
onSubmit={async () => {
const result = await handleSubmit()
if (result) {
onOk()
}
}}
/>
)
}}
</NewObjectForm>
)
}
NewDocumentTemplate.propTypes = {
onOk: PropTypes.func.isRequired,
reset: PropTypes.bool,
defaultValues: PropTypes.object
}
export default NewDocumentTemplate