| 12345678910111213141516171819202122232425262728 |
- import { isVariantLabel } from './is-variant-label.mjs';
- import { variantProps } from './variant-props.mjs';
- const numVariantProps = variantProps.length;
- function getVariantContext(visualElement) {
- if (!visualElement)
- return undefined;
- if (!visualElement.isControllingVariants) {
- const context = visualElement.parent
- ? getVariantContext(visualElement.parent) || {}
- : {};
- if (visualElement.props.initial !== undefined) {
- context.initial = visualElement.props.initial;
- }
- return context;
- }
- const context = {};
- for (let i = 0; i < numVariantProps; i++) {
- const name = variantProps[i];
- const prop = visualElement.props[name];
- if (isVariantLabel(prop) || prop === false) {
- context[name] = prop;
- }
- }
- return context;
- }
- export { getVariantContext };
|