// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'guru_asset_bar.dart';

// **************************************************************************
// DesignSpecGenerator
// **************************************************************************

class _GuruAssetBarS1DesignSpec extends GuruAssetBarS1DesignSpec {
  _GuruAssetBarS1DesignSpec._(
    this.measuredMetrics,
    this.specOffset,
    this.assetIconSize,
    this.assetIconTopSpcing,
    this.barHeight,
    this.balanceFontSize,
    this.balancePadding,
    this.trailingSize,
    this.trailingEndSpacing,
  );

  static final designMetrics = DesignMetrics.create(const Size(200.0, 60.0));

  static final Map<String, _GuruAssetBarS1DesignSpec> _cache = {};

  @override
  final double assetIconSize;

  @override
  final double assetIconTopSpcing;

  @override
  final double barHeight;

  @override
  final double balanceFontSize;

  @override
  final EdgeInsets balancePadding;

  @override
  final double trailingSize;

  @override
  final double trailingEndSpacing;

  @override
  final MeasuredMetrics measuredMetrics;

  @override
  final Offset specOffset;

  @override
  Size get measuredSize => measuredMetrics.size;

  static _GuruAssetBarS1DesignSpec _create(
    Size measuredSize, {
    Offset offset = Offset.zero,
  }) {
    final _measuredMetrics = designMetrics.measure(measuredSize);
    return _GuruAssetBarS1DesignSpec._(
      _measuredMetrics, offset,
      _measuredMetrics.measureHeight(60.0, consistent: false), // assetIconSize
      _measuredMetrics.measureHeight(2.0,
          consistent: false), // assetIconTopSpcing
      _measuredMetrics.measureHeight(56.0, consistent: false), // barHeight
      _measuredMetrics.measureAbsoluteFontSize(24.0,
          consistent: false), // balanceFontSize
      EdgeInsets.only(
          left: _measuredMetrics.measureWidth(4.0),
          right: _measuredMetrics.measureWidth(4.0),
          top: 0.0,
          bottom: 0.0),
      _measuredMetrics.measureHeight(48.0, consistent: false), // trailingSize
      _measuredMetrics.measureHorizontal(4.0), // trailingEndSpacing
    );
  }

  static GuruAssetBarS1DesignSpec from(
    Size size, {
    Offset offset = Offset.zero,
  }) {
    final Size measuredSize = size;
    final key = BasicDesignSpec.buildSpecKey(measuredSize, offset);
    _GuruAssetBarS1DesignSpec? designSpec = _cache[key];
    if (kDebugMode || designSpec == null) {
      designSpec = _create(measuredSize, offset: offset);
      _cache[key] = designSpec;
    }
    return designSpec;
  }
}

class _GuruAssetBarS2DesignSpec extends GuruAssetBarS2DesignSpec {
  _GuruAssetBarS2DesignSpec._(
    this.measuredMetrics,
    this.specOffset,
    this.barRightSpcing,
    this.assetIconSize,
    this.barTopSpacing,
    this.barStartSpacing,
    this.barEndSpacing,
    this.barWidth,
    this.barHeight,
    this.balanceWidth,
    this.balanceStartSpacing,
    this.balanceFontSize,
    this.trailingSize,
  );

  static final designMetrics = DesignMetrics.create(const Size(169.0, 72.0));

  static final Map<String, _GuruAssetBarS2DesignSpec> _cache = {};

  @override
  final double barRightSpcing;

  @override
  final double assetIconSize;

  @override
  final double barTopSpacing;

  @override
  final double barStartSpacing;

  @override
  final double barEndSpacing;

  @override
  final double barWidth;

  @override
  final double barHeight;

  @override
  final double balanceWidth;

  @override
  final double balanceStartSpacing;

  @override
  final double balanceFontSize;

  @override
  final double trailingSize;

  @override
  final MeasuredMetrics measuredMetrics;

  @override
  final Offset specOffset;

  @override
  Size get measuredSize => measuredMetrics.size;

  static _GuruAssetBarS2DesignSpec _create(
    Size measuredSize, {
    Offset offset = Offset.zero,
  }) {
    final _measuredMetrics = designMetrics.measure(measuredSize);
    return _GuruAssetBarS2DesignSpec._(
      _measuredMetrics, offset,
      _measuredMetrics.measureWidth(56.0), // barRightSpcing
      _measuredMetrics.measureHeight(72.0, consistent: false), // assetIconSize
      _measuredMetrics.measureVertical(14.0), // barTopSpacing
      _measuredMetrics.measureHorizontal(23.0), // barStartSpacing
      _measuredMetrics.measureHorizontal(2.0), // barEndSpacing
      _measuredMetrics.measureWidth(144.0), // barWidth
      _measuredMetrics.measureHeight(44.0, consistent: false), // barHeight
      _measuredMetrics.measureWidth(71.0), // balanceWidth
      _measuredMetrics.measureHorizontal(49.0), // balanceStartSpacing
      _measuredMetrics.measureAbsoluteFontSize(24.0,
          consistent: false), // balanceFontSize
      _measuredMetrics.measureHeight(48.0, consistent: false), // trailingSize
    );
  }

  static GuruAssetBarS2DesignSpec from(
    Size size, {
    Offset offset = Offset.zero,
  }) {
    final Size measuredSize = size;
    final key = BasicDesignSpec.buildSpecKey(measuredSize, offset);
    _GuruAssetBarS2DesignSpec? designSpec = _cache[key];
    if (kDebugMode || designSpec == null) {
      designSpec = _create(measuredSize, offset: offset);
      _cache[key] = designSpec;
    }
    return designSpec;
  }
}
