retrieveBoxShadow function

List<BoxShadow> retrieveBoxShadow(
  1. BaseNode node,
  2. ScopedValues scopedValues
)

Implementation

List<BoxShadow> retrieveBoxShadow(BaseNode node, ScopedValues scopedValues) {
  if (node is! DefaultShapeNode) return [];
  return node.effects
      .where((effect) => effect.type == EffectType.dropShadow && effect.visible)
      .map(
    (effect) {
      final ColorRGBA? color =
          PropertyValueDelegate.getPropertyValue<ColorRGBA>(
                node,
                'shadow-color-${effect.id}',
                scopedValues: scopedValues,
              ) ??
              effect.color;
      return BoxShadow(
        spreadRadius: effect.spread!,
        offset:
            Offset(effect.offset!.x.toDouble(), effect.offset!.y.toDouble()),
        blurRadius: effect.radius,
        color: color!.toFlutterColor(),
      );
    },
  ).toList();
}