docs: private static Shader createLinearGradient(@NonNull final Orientation orientation,
                                                 final int bitmapWidth, final int bitmapHeight,
                                                 final float shadowWidth,
                                                 @ColorInt final int shadowColor) {
          RectF bounds = new RectF();
  
          switch (orientation) {
              case LEFT:
                  bounds.left = bitmapWidth;
                  bounds.right = bitmapWidth - shadowWidth;
                  break;
              case TOP:
                  bounds.top = bitmapHeight;
                  bounds.bottom = bitmapHeight - shadowWidth;
                  break;
              case RIGHT:
                  bounds.right = shadowWidth;
                  break;
              case BOTTOM:
                  bounds.bottom = shadowWidth;
                  break;
              default:
                  throw new IllegalArgumentException("Invalid orientation: " + orientation);
          }
  
          return new LinearGradient(bounds.left, bounds.top, bounds.right, bounds.bottom, shadowColor,
                  Color.TRANSPARENT, Shader.TileMode.CLAMP);
      }