MCPcopy Create free account
hub / github.com/code-pushup/cli / normalizeHashOptions

Function normalizeHashOptions

packages/cli/src/lib/history/utils.ts:5–36  ·  view source on GitHub ↗
(
  processArgs: HistoryCliOptions & HistoryOptions,
)

Source from the content-addressed store, hash-verified

3import type { HistoryCliOptions } from './history.model.js';
4
5export async function normalizeHashOptions(
6 processArgs: HistoryCliOptions & HistoryOptions,
7): Promise<HistoryCliOptions & HistoryOptions> {
8 const {
9 onlySemverTags,
10 // overwritten
11 maxCount,
12 ...opt
13 } = processArgs;
14
15 // eslint-disable-next-line functional/no-let, prefer-const
16 let { from, to, ...processOptions } = opt;
17 // if no semver filter is used resolve hash of tags, as hashes are used to collect history
18 if (!onlySemverTags) {
19 if (from && isSemver(from)) {
20 const { hash } = await getHashFromTag(from);
21 from = hash;
22 }
23 if (to && isSemver(to)) {
24 const { hash } = await getHashFromTag(to);
25 to = hash;
26 }
27 }
28
29 return {
30 ...processOptions,
31 onlySemverTags,
32 maxCount: maxCount && maxCount > 0 ? maxCount : undefined,
33 from,
34 to,
35 };
36}

Callers 2

handlerFunction · 0.85
utils.unit.test.tsFile · 0.85

Calls 2

isSemverFunction · 0.90
getHashFromTagFunction · 0.90

Tested by

no test coverage detected