validateSourcefunction
Refuses a source that cannot be shown honestly: it throws a TypeError at once, when a source is added, not at the first draw. An empty credit (either language), a licence with no name or no
link, a bad or already used id, a missing name, page or day, or a missing function is refused.
Import it
import { validateSource } from "@johnmorrisdotca/hoshi-stars/door";
Definition
function validateSource(source: unknown, taken?: Iterable<string>): asserts source is DataSource
Parameters
| Name | Type | Description |
|---|---|---|
source | unknown | What the caller handed in. |
taken (optional) | Iterable<string> | The ids already in the view, so that a clash is refused. |
Examples
import { validateSource } from "./data-door.ts";
validateSource(mySource, view.sources.map((one) => one.info.id)); // throws TypeError: source "mine": the credit is empty (en)