Urara-Blog/node_modules/.pnpm-store/v3/files/45/4bbd278d09923f01a6c27f82bff24b6efc45d22d3a4e15669a462b5608cafbd709505cf01c3fb3f38f522c192620f50f8cecc5cc651cc0e3a5cd35eb9bffa6
2022-08-14 01:14:53 +08:00

26 lines
642 B
Text

var own = {}.hasOwnProperty
/**
* Check if `node` has a set `name` property.
*
* @param {unknown} node
* @param {string} name
* @returns {boolean}
*/
export function hasProperty(node, name) {
/** @type {unknown} */
var value =
name &&
node &&
typeof node === 'object' &&
// @ts-ignore Looks like a node.
node.type === 'element' &&
// @ts-ignore Looks like an element.
node.properties &&
// @ts-ignore Looks like an element.
own.call(node.properties, name) &&
// @ts-ignore Looks like an element.
node.properties[name]
return value !== null && value !== undefined && value !== false
}