Add default relation to standard object on custom object in manifest (#18033)

add default relation fields when creating an object from an application

---------

Co-authored-by: prastoin <paul@twenty.com>
This commit is contained in:
martmull
2026-02-20 11:49:06 +01:00
committed by GitHub
parent d060c843d1
commit 3bc887e12e
48 changed files with 1812 additions and 554 deletions
@@ -1,21 +1,21 @@
// Loose type for JSON manifest imports where enum values are inferred as strings
type JsonManifestInput = {
logicFunctions?: Array<{
builtHandlerChecksum?: string | null;
[key: string]: unknown;
}>;
frontComponents?: Array<{
builtComponentChecksum?: string;
[key: string]: unknown;
}>;
[key: string]: unknown;
};
import { type Manifest } from 'twenty-shared/application';
// Replace dynamic checksum values with a placeholder for consistent comparisons
export const normalizeManifestForComparison = <T extends JsonManifestInput>(
export const normalizeManifestForComparison = <T extends Manifest>(
manifest: T,
): T => ({
...manifest,
application: {
...manifest.application,
yarnLockChecksum: manifest.application.yarnLockChecksum
? '[checksum]'
: null,
packageJsonChecksum: manifest.application.packageJsonChecksum
? '[checksum]'
: null,
apiClientChecksum: manifest.application.apiClientChecksum
? '[checksum]'
: null,
},
logicFunctions: manifest.logicFunctions?.map((fn) => ({
...fn,
builtHandlerChecksum: fn.builtHandlerChecksum ? '[checksum]' : null,