Files
twenty/packages/twenty-server/src/engine/metadata-modules/flat-skill/utils/from-skill-entity-to-flat-skill.util.ts
T
Paul Rastoin d35d5c0463 [BREAKING_CHANGE] Deprecate remaining entities standardId (#17639)
# Introduction
Following https://github.com/twentyhq/twenty/pull/17632 and
https://github.com/twentyhq/twenty/pull/17572
This PR deprecates the agent, skill, field metadata and role
`standardId` in favor of the `universalIdentifier` usage

## Note
- Removed previous standard ids declaration modules
- Twenty-sdk now re-exports the `STANDARD_OBJECTS` universalIdentifier
hashmap constant
- deleted some sync-metadata deadcode too ( mainly types )
2026-02-03 09:06:24 +01:00

44 lines
1.6 KiB
TypeScript

import { isDefined } from 'twenty-shared/utils';
import {
FlatEntityMapsException,
FlatEntityMapsExceptionCode,
} from 'src/engine/metadata-modules/flat-entity/exceptions/flat-entity-maps.exception';
import { type FlatSkill } from 'src/engine/metadata-modules/flat-skill/types/flat-skill.type';
import { type FromEntityToFlatEntityArgs } from 'src/engine/workspace-cache/types/from-entity-to-flat-entity-args.type';
export const fromSkillEntityToFlatSkill = ({
entity: skillEntity,
applicationIdToUniversalIdentifierMap,
}: FromEntityToFlatEntityArgs<'skill'>): FlatSkill => {
const applicationUniversalIdentifier =
applicationIdToUniversalIdentifierMap.get(skillEntity.applicationId);
if (!isDefined(applicationUniversalIdentifier)) {
throw new FlatEntityMapsException(
`Application with id ${skillEntity.applicationId} not found for skill ${skillEntity.id}`,
FlatEntityMapsExceptionCode.ENTITY_NOT_FOUND,
);
}
return {
createdAt: skillEntity.createdAt.toISOString(),
updatedAt: skillEntity.updatedAt.toISOString(),
id: skillEntity.id,
name: skillEntity.name,
label: skillEntity.label,
icon: skillEntity.icon,
description: skillEntity.description,
content: skillEntity.content,
workspaceId: skillEntity.workspaceId,
isCustom: skillEntity.isCustom,
isActive: skillEntity.isActive,
universalIdentifier: skillEntity.universalIdentifier,
applicationId: skillEntity.applicationId,
__universal: {
universalIdentifier: skillEntity.universalIdentifier,
applicationUniversalIdentifier,
},
};
};