# @royalschedule/input-verifier

> A script that verifies the structure of the json input to be processed by the scheduling algorithm.

Latest version **6.0.5** (published 2026-06-22) · 0 weekly downloads

## Install

```sh
npm install @royalschedule/input-verifier
pnpm add @royalschedule/input-verifier
yarn add @royalschedule/input-verifier
bun add @royalschedule/input-verifier
```

## Health

**Score 60/100 (C)** — status: active.

Positive: has types; esm support; no vulnerabilities; high quality score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 6.0.5 |
| Published | 2026-06-22 |
| First published | 2020-08-25 |
| Weekly downloads | 0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 3 |
| Unpacked size | 519.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Royal Schedule |
| Maintainers | blomquist, andersson-royalschedule, victor-royalschedule |

## Links

- npm: https://www.npmjs.com/package/@royalschedule/input-verifier
- npm.io page: https://npm.io/package/@royalschedule/input-verifier

## Dependencies (3)

- [zod](https://npm.io/package/zod.md) ^4.3.6
- [rxjs](https://npm.io/package/rxjs.md) ^7.8.2
- [lodash-es](https://npm.io/package/lodash-es.md) ^4.17.21

## Recent versions

- 6.0.5 (latest) — 2026-06-22
- 3.0.0-beta.3 (beta) — 2023-04-14
- 0.0.0 (old-version) — 2021-04-24
- 6.0.4 — 2026-04-02
- 6.0.3 — 2026-04-02
- 6.0.2 — 2026-04-01
- 6.0.1 — 2026-03-31
- 6.0.0 — 2026-03-08
- 5.0.7 — 2025-11-13
- 5.0.6 — 2025-11-12
- 5.0.5 — 2025-11-05
- 5.0.4 — 2025-11-05
- 5.0.3 — 2025-10-23
- 5.0.2 — 2025-10-22
- 5.0.1 — 2025-08-22
- … 39 more at https://npm.io/package/@royalschedule/input-verifier/versions

## README

# Input verifier

A script that verifies the structure of the json input to be processed by the scheduling algorithm.

Active migration note: [event-mass-distribution-analysis-migration.md](event-mass-distribution-analysis-migration.md)

## Time Units At The Native Boundary

The native C++ analyses use two time surfaces:

- Internal typed analysis models stay in discretized schedule units.
- Wasm and JSON payloads scale those values to real-time minutes at serialization.

This now applies consistently to both start-time feasibility and event-mass distribution. The rule of thumb is:

- builder, solver, cache, and intermediate result types use discretized units
- serializer code is responsible for converting those values to real time

The shared serialization helpers for this boundary live in `cpp/src/json-serialization-utils.h`.


## Installation

`npm i -S @royalschedule/input-verifier`


## Usage

```typescript
import { verify } from '@royalschedule/input-verifier';

// analyze the json input
const result = verify({ ... });

if (result.valid) {
  console.log('Valid input 🎉');
} else {
  console.log(`${result.errors.length} error(s) found`);
}
```

---
_Source: https://npm.io/package/@royalschedule/input-verifier · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
