UNPKG

@softwareventures/maintain-project

Version:

Automatically create and maintain TypeScript projects with standard settings for Software Ventures Limited

19 lines 965 B
import releaseSchedule from "node-releases/data/release-schedule/release-schedule.json" assert { type: "json" }; import { afterOrEqual, beforeOrEqual, parseIso8601 } from "@softwareventures/date"; import { chain } from "@softwareventures/chain"; import { entries } from "@softwareventures/dictionary"; import { filterFn, mapFn } from "@softwareventures/array"; export function nodeReleasesSupportedInDateRange(dates) { return chain(entries(releaseSchedule)) .map(mapFn(([version, { start, end }]) => ({ version: version.replace(/^v/u, ""), start: parseIso8601(start), end: parseIso8601(end) }))) .map(filterFn(({ start, end }) => start != null && end != null && (dates.start == null || afterOrEqual(end, dates.start)) && (dates.end == null || beforeOrEqual(start, dates.end)))) .map(mapFn(({ version }) => version)).value; } //# sourceMappingURL=releases-supported-in-date-range.js.map