/
githubmirror
/
strapi
Обзор
Документация
Войти
/
githubmirror
/
strapi
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
packages/core/database/src/fields/boolean.ts
45 строк
961 B
Araksya Gevorgyan
feat(core): adding clear button to boolean toggle (#24836)
02 дек 2025, 19:33
Не верифицирован
02 дек 2025, 19:33
e7ae51b
Код
Авторство
О чём код?
import { toString } from 'lodash/fp'; import Field from './field'; function isStringOrNumber(value: unknown): value is string | number { return typeof value === 'string' || typeof value === 'number'; } export default class BooleanField extends Field { toDB(value: unknown) { if (typeof value === 'boolean') { return value; } // Handle null/undefined values explicitly if (value === null || value === undefined) { return null; } if (isStringOrNumber(value) && ['true', 't', '1', 1].includes(value)) { return true; } if (isStringOrNumber(value) && ['false', 'f', '0', 0].includes(value)) { return false; } return Boolean(value); } fromDB(value: unknown) { if (typeof value === 'boolean') { return value; } const strVal = toString(value); if (strVal === '1') { return true; } if (strVal === '0') { return false; } return null; } }