PU-Button-Icon Component

A compact icon button component with multiple styling variants and sizes

Usage

Basic Usage

PropTypeRequiredDefaultDescription
namestringYes-Icon name from PUIcon collection
disabledbooleanNofalseDisables the button
flavornormal | outlined | ghostNonormalVisual style variant
shaperounded | circleNocircleButton shape
sizesmall | medium | largeNomediumButton size
customClassstringNo''Additional CSS classes
  • Base styling with Tailwind:
    .pu-button-icon {
      @apply p-2 shadow-md transition duration-200 ease-in-out 
            flex justify-center items-center;
    }
    
  • Flavor variants:
    .pu-button-icon--normal {
      @apply bg-primary-light-500 border-2 rounded-lg text-primary-light-50;
    }
    
    .pu-button-icon--outlined {
      @apply bg-transparent border-2 border-primary-light-500 text-primary-light-500;
    }
    
    .pu-button-icon--ghost {
      @apply bg-transparent border-2 text-primary-light-500 border-transparent;
    }
    
  • Hover effect:
    .pu-button-icon:not(:disabled):hover {
      @apply shadow-primary-light-500/50 font-bold;
    }
    
  • Disabled state:
    .pu-button-icon--disabled {
      @apply opacity-50 cursor-not-allowed;
    }