package com.margelo.nitro.lunardatepicker.constants import com.margelo.nitro.lunardatepicker.utils.DimensionUtils.dpToPx import com.margelo.nitro.lunardatepicker.utils.ScaleUtils /** * Layout-related constants including paddings, margins, and dimensions */ object LayoutConstants { // Text sizes object TextSize { val TITLE = ScaleUtils.scale(16f) val MONTH_HEADER = ScaleUtils.scale(18f) val DAY_TEXT = ScaleUtils.scale(16f) val WEEK_DAY = ScaleUtils.scale(14f) val LUNAR_TEXT = ScaleUtils.scale(9f) val TOP_HEADER_TITLE = ScaleUtils.scale(11f) val TOP_HEADER_DATE = ScaleUtils.scale(12f) } // Padding values object Padding { const val TITLE_HORIZONTAL = 24 const val TITLE_VERTICAL = 16 const val MONTH_HEADER_HORIZONTAL = 0 val MONTH_HEADER_TOP = dpToPx(16) val MONTH_HEADER_BOTTOM = ScaleUtils.scaleDp(8) val WEEK_VIEW_ALL = ScaleUtils.scaleDp(12) val MONTH_VIEW_HORIZONTAL = dpToPx(12) val WEEK_VIEW_HORIZONTAL = dpToPx(12) val CELL_VERTICAL = ScaleUtils.scaleDp(3) val TOP_HEADER_HORIZONTAL = dpToPx(0) val TOP_HEADER_VERTICAL = dpToPx(0) val BOTTOM_BAR_HORIZONTAL = ScaleUtils.scaleDp(12) val BOTTOM_BAR_VERTICAL = ScaleUtils.scaleDp(4) } // Margin values object Margin { const val MONTH_HEADER_VERTICAL = 0 const val WEEK_VIEW_VERTICAL = 0 } // Dimensions object Dimensions { const val MATCH_PARENT = android.view.ViewGroup.LayoutParams.MATCH_PARENT const val WRAP_CONTENT = android.view.ViewGroup.LayoutParams.WRAP_CONTENT const val WEIGHT_EQUAL = 1f const val WEIGHT_FULL = 1.0f val TOP_HEADER_DIVIDER_WIDTH = dpToPx(1) val TOP_HEADER_DIVIDER_HEIGHT = dpToPx(ScaleUtils.scaleDp(40)) val BORDER_THICKNESS = dpToPx(ScaleUtils.scaleDp(1)) val BUTTON_HEIGHT = dpToPx(ScaleUtils.scaleDp(48)) val BUTTON_TOP_MARGIN = dpToPx(ScaleUtils.scaleDp(12)) val BUTTON_CORNER_RADIUS = dpToPx(ScaleUtils.scaleDp(12)) val CLOSE_ICON_SIZE = dpToPx(ScaleUtils.scaleDp(20)) } }