Files
twenty/packages/twenty-server/src/engine/workspace-manager/utils/is-searchable-subfield.util.ts
T
Charles Bochet d9eb317bb5 feat: rename RICH_TEXT_V2 → RICH_TEXT in codebase (keep DB value) (#18628)
## Summary

- Renames the `FieldMetadataType` enum key from `RICH_TEXT_V2` to
`RICH_TEXT` across the entire codebase, while keeping the underlying
string value as `'RICH_TEXT_V2'` to maintain PostgreSQL database
compatibility
- Renames all related types, guards, hooks, components, and files from
`*RichTextV2*` / `*rich-text-v2*` to `*RichText*` / `*rich-text*` (e.g.
`FormRichTextV2FieldInput` → `FormRichTextFieldInput`,
`isFieldRichTextV2` → `isFieldRichText`)
- Updates generated files (GraphQL schema, SDK types) to use the new key
while preserving the `RICH_TEXT_V2` string value for DB/API layer
- Updates i18n locale files, test snapshots, and integration tests to
reflect the rename

## Context

The legacy `RICH_TEXT` (V1) field type was deprecated and migrated to
`TEXT` in a previous PR (#18623). With V1 gone, the `RICH_TEXT_V2`
naming is no longer necessary — `RICH_TEXT` is now the canonical name.
The DB enum value stays `'RICH_TEXT_V2'` to avoid confusion with the
just-deprecated V1 type and to prevent a database migration.

## Test plan

- [x] `twenty-server` typecheck passes
- [x] `twenty-front` typecheck passes (only pre-existing Apollo client
errors remain)
- [x] `twenty-server` lint passes
- [x] `twenty-front` lint passes
- [x] `twenty-shared` build passes
- [ ] CI passes


Made with [Cursor](https://cursor.com)
2026-03-13 19:07:55 +01:00

22 lines
604 B
TypeScript

import { FieldMetadataType } from 'twenty-shared/types';
export const isSearchableSubfield = (
compositeFieldMetadataType: FieldMetadataType,
subFieldMetadataType: FieldMetadataType,
subFieldName: string,
) => {
if (subFieldMetadataType !== FieldMetadataType.TEXT) {
return false;
}
switch (compositeFieldMetadataType) {
case FieldMetadataType.RICH_TEXT:
return ['markdown'].includes(subFieldName);
case FieldMetadataType.PHONES:
return ['primaryPhoneNumber', 'primaryPhoneCallingCode'].includes(
subFieldName,
);
default:
return true;
}
};