import 'package:flutter/material.dart';

import '../tema/pluriwave_theme.dart';

abstract final class PluriLayout {
  static const double horizontal = 16;
  static const double sectionGap = 12;
  static const double panelGap = 12;
  static const double compactGap = 8;
  static const double bottomChromeInset = 146;

  static const EdgeInsets pageListPadding = EdgeInsets.fromLTRB(
    0,
    0,
    0,
    bottomChromeInset,
  );

  static const EdgeInsets pageContentPadding = EdgeInsets.symmetric(
    horizontal: horizontal,
  );

  static const EdgeInsets sheetPadding = EdgeInsets.all(18);
}

class PluriPanelColumn extends StatelessWidget {
  const PluriPanelColumn({super.key, required this.children, this.gap});

  final List<Widget> children;
  final double? gap;

  @override
  Widget build(BuildContext context) {
    final resolvedGap = gap ?? context.pluriTokens.spacingSm + 4;
    return Column(
      children: [
        for (var i = 0; i < children.length; i++) ...[
          if (i > 0) SizedBox(height: resolvedGap),
          children[i],
        ],
      ],
    );
  }
}
