import { CLEAN_WRITING, NO_PAYLOAD, UNREAD_SUFFIX } from "#configuration/strings/derivation.strings"; import { READING_SCOPE, READING_SIGNOFFS } from "#configuration/records/writing.record"; import { conclude, say } from "#core/reporters/derivation.reporter"; import { readSections, sitePages } from "#core/loaders/section.loader"; import { unreadCount, unsignedSections } from "#core/validators/writing.validator"; import { WRITING_COMMAND } from "#configuration/constants/contract.constants"; import { WRITING_SUMMARY } from "#configuration/strings/contract.strings"; import { resolveArgv } from "@govlab/argv"; resolveArgv({ command: WRITING_COMMAND, flags: [], summary: WRITING_SUMMARY }); const { missing, sections } = readSections(await sitePages()); const absent = missing .filter((page) => READING_SCOPE.includes(page)) .map((page) => ({ file: page, message: `${NO_PAYLOAD}${page}` })); say(`${String(unreadCount(READING_SCOPE, sections))}${UNREAD_SUFFIX}`); conclude(WRITING_COMMAND, [...absent, ...unsignedSections(READING_SCOPE, READING_SIGNOFFS, sections)], CLEAN_WRITING);