createCheck
Стабильный · с 0.1.0
Строит хелпер check, который обработчики получают через ctx.check. Рантайм собирает его за тебя на каждом запуске — createCheck экспортируется только для редких случаев, когда нужно использовать тот же предикатный DSL вне контекста обработчика (кастомные middleware, тестирование по условиям, панели devtools).
is, all и any принимают предикаты над NonNullable<C[K]>. Когда значение условия равно undefined или null, предикат не вызывается, а результат по этому ключу — false.
Сигнатура
Заголовок раздела «Сигнатура»Параметры
Заголовок раздела «Параметры»| Параметр | Тип | Описание |
|---|---|---|
conditions | Record<string, unknown> | Карта-снепшот значений условий. Передавай ту же форму, которую рантайм даёт обработчикам. |
Возвращает
Заголовок раздела «Возвращает»Объект CheckCtx:
| Метод | Сигнатура | Результат |
|---|---|---|
is(key, predicate) | (key, value => boolean) => boolean | true, когда условие существует (не null) и предикат вернул truthy. |
all(map) | ({ key: predicate, … }) => boolean | Каждое перечисленное условие должно существовать и проходить свой предикат. |
any(map) | ({ key: predicate, … }) => boolean | Хотя бы одно перечисленное условие должно существовать и проходить свой предикат. |
Примеры
Заголовок раздела «Примеры»Внутри обработчика (обычный случай)
Заголовок раздела «Внутри обработчика (обычный случай)»Обычно ты используешь ctx.check вместо ручной сборки:
Standalone (продвинутый — вне обработчика)
Заголовок раздела «Standalone (продвинутый — вне обработчика)»Null-safety
Заголовок раздела «Null-safety»Замечания
Заголовок раздела «Замечания»См. также
Заголовок раздела «См. также» createTrigger Обработчик получает экземпляр `check` автоматически.
TriggerCtx Полный тип контекста обработчика, включая `check`.
Руководство по условиям Когда читать условия напрямую, а когда через `check`.
Ограничение required Зачем вообще существует `check` — заметки по сужению типов в V1.