UNPKG

@formatjs/intl-relativetimeformat

Version:

Formats JavaScript dates to relative time strings.

24 lines (23 loc) 580 B
import { invariant, PartitionPattern } from "@formatjs/ecma402-abstract"; export function MakePartsList(pattern, unit, parts) { const patternParts = PartitionPattern(pattern); const result = []; for (const patternPart of patternParts) { if (patternPart.type === "literal") { result.push({ type: "literal", value: patternPart.value }); } else { invariant(patternPart.type === "0", `Malformed pattern ${pattern}`); for (const part of parts) { result.push({ type: part.type, value: part.value, unit }); } } } return result; }