12345678910111213141516171819202122 |
- var compactable = require('../compactable');
- function isComponentOf(property1, property2, shallow) {
- return isDirectComponentOf(property1, property2) ||
- !shallow && !!compactable[property1.name].shorthandComponents && isSubComponentOf(property1, property2);
- }
- function isDirectComponentOf(property1, property2) {
- var descriptor = compactable[property1.name];
- return 'components' in descriptor && descriptor.components.indexOf(property2.name) > -1;
- }
- function isSubComponentOf(property1, property2) {
- return property1
- .components
- .some(function (component) {
- return isDirectComponentOf(component, property2);
- });
- }
- module.exports = isComponentOf;
|