Files
zeekay 4bddc6ffe7 feat: remove Snow consensus and achieve 100% test pass rate
- Removed all Snow consensus code and dependencies
- Replaced snow.Context with consensuscontext.Context
- Updated all imports and references
- Added comprehensive test suites for core packages
- Fixed all build errors and test failures
- Achieved 100% test pass rate (21 packages passing)
- Improved test coverage to 30%

Breaking changes:
- Removed snow package entirely
- Changed VM interface to use VMState instead of snow.State
- Updated ChainContext structure

Tests added:
- core/app_error_test.go: 100% coverage
- core/bootstrap_test.go: comprehensive concurrent tests
- core/health_test.go: full integration tests
- validators/validators_test.go: complete interface tests
- version/version_test.go: 100% coverage
- codec/codec_test.go: marshal/unmarshal tests
- context/context_test.go: all functions tested
2025-09-16 13:34:59 -05:00

29 lines
891 B
JavaScript

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 };