Skip to content

Commit

Permalink
Refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
ehmicky committed Mar 13, 2022
1 parent 42126db commit cc5e143
Showing 1 changed file with 11 additions and 8 deletions.
19 changes: 11 additions & 8 deletions src/config/normalize/lib/wild_wild_path/iterate.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,14 +40,7 @@ const iterateLevel = function (entries, childFirst, index) {
return parentEntries
}

const nextIndex = index + 1
const childEntries =
levelEntries.length === 1
? iterateLevel(levelEntries, childFirst, nextIndex)
: Object.values(groupBy(levelEntries, getLastProp)).flatMap(
(groupedLevelEntries) =>
iterateLevel(groupedLevelEntries, childFirst, nextIndex),
)
const childEntries = iterateChildren(levelEntries, childFirst, index)
return childFirst
? [...childEntries, ...parentEntries]
: [...parentEntries, ...childEntries]
Expand Down Expand Up @@ -114,6 +107,16 @@ export const handleMissingValue = function (value, token) {
return { tokenType, missing, value: valueA }
}

const iterateChildren = function (levelEntries, childFirst, index) {
const nextIndex = index + 1
return levelEntries.length === 1
? iterateLevel(levelEntries, childFirst, nextIndex)
: Object.values(groupBy(levelEntries, getLastProp)).flatMap(
(groupedLevelEntries) =>
iterateLevel(groupedLevelEntries, childFirst, nextIndex),
)
}

const getLastProp = function ({ props }) {
return props[props.length - 1]
}
Expand Down

0 comments on commit cc5e143

Please sign in to comment.