UNPKG

@struktoai/mirage-core

Version:

A Unified Virtual Filesystem For AI Agents

27 lines • 1.17 kB
import { compareCodePoints } from "../utils/sort.js"; export function validateOptions(query, allowed) { const unknown = Object.keys(query.options ?? {}) .filter((key) => !allowed.includes(key)) .sort(compareCodePoints); if (unknown.length > 0) throw new Error(`unknown options: ${unknown.join(', ')}`); } export function intOption(query, key, fallback) { const value = query.options?.[key] === undefined ? fallback : query.options[key]; if (typeof value !== 'number' || !Number.isSafeInteger(value)) throw new Error(`${key} must be an integer`); return value; } export function floatOption(query, key, fallback) { const value = query.options?.[key] === undefined ? fallback : query.options[key]; if (typeof value !== 'number' || !Number.isFinite(value)) throw new Error(`${key} must be a finite number`); return value; } export function textOption(query, key, fallback) { const value = query.options?.[key] === undefined ? fallback : query.options[key]; if (typeof value !== 'string') throw new Error(`${key} must be a string`); return value; } //# sourceMappingURL=search.js.map