Files
api/sample/prod/talk/bundle/popper-2.11.8/esm/utils/mergeByName.js
2025-07-02 21:55:07 +09:00

14 lines
524 B
JavaScript

export default function mergeByName(modifiers) {
var merged = modifiers.reduce(function (merged, current) {
var existing = merged[current.name];
merged[current.name] = existing ? Object.assign({}, existing, current, {
options: Object.assign({}, existing.options, current.options),
data: Object.assign({}, existing.data, current.data)
}) : current;
return merged;
}, {}); // IE11 does not support Object.values
return Object.keys(merged).map(function (key) {
return merged[key];
});
}