button type, add css class for abstract components
revision of the structure of the project, adding enum of button types