Skip to content

Commit

Permalink
Fix plugin.id check
Browse files Browse the repository at this point in the history
  • Loading branch information
ehmicky committed Feb 20, 2022
1 parent da32f39 commit be1bc3a
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions src/config/plugin/lib/duplicates.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,25 @@ import { ConsumerError } from './error.js'
// - The same module or file being referenced in different ways
export const validateDuplicatePlugins = function (
plugins,
{ name, duplicates, pluginProp },
{ name, duplicates },
) {
if (duplicates) {
return
}

const duplicateId = plugins
.map(({ plugin }) => plugin[pluginProp])
.find(isDuplicateId)
const duplicateId = plugins.map(getPluginId).find(isDuplicateId)

if (duplicateId !== undefined) {
throw new ConsumerError(
`Configuration property "${name}" must not contain the same "${pluginProp}" "${duplicateId}" multiple times`,
`Configuration property "${name}" must not contain the same "id" "${duplicateId}" multiple times`,
)
}
}

const getPluginId = function ({ plugin: { id } }) {
return id
}

const isDuplicateId = function (id, index, ids) {
return ids.some((idA, indexA) => index > indexA && id === idA)
}

0 comments on commit be1bc3a

Please sign in to comment.