| Server IP : 185.208.173.17 / Your IP : 87.236.161.98 Web Server : Microsoft-IIS/10.0 System : Windows NT SRV8576125506 10.0 build 26100 (Windows Server 2016) AMD64 User : IUSR ( 0) PHP Version : 7.4.13 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /inetpub/wwwroot/parsmega.nuxt/node_modules/@nuxtjs/pwa/lib/ |
Upload File : |
export function mergeMeta (to, from) {
if (typeof to === 'function') {
// eslint-disable-next-line no-console
console.warn('Cannot merge meta. Avoid using head as a function!')
return
}
for (const key in from) {
const value = from[key]
if (Array.isArray(value)) {
to[key] = to[key] || []
for (const item of value) {
// Avoid duplicates
if (
(item.hid && hasMeta(to[key], 'hid', item.hid)) ||
(item.name && hasMeta(to[key], 'name', item.name))
) {
continue
}
// Add meta
to[key].push(item)
}
} else if (typeof value === 'object') {
to[key] = to[key] || {}
for (const attr in value) {
to[key][attr] = value[attr]
}
} else if (to[key] === undefined) {
to[key] = value
}
}
}
function hasMeta (arr, key, val) {
return arr.find(obj => val ? obj[key] === val : obj[key])
}