@expressms/smartapp-ui 1.1.5 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/build/main/assets/icons/check-mark.svg +2 -2
  2. package/build/main/assets/icons/notification-error.svg +3 -0
  3. package/build/main/assets/icons/notification-info.svg +5 -0
  4. package/build/main/assets/icons/notification-success.svg +4 -0
  5. package/build/main/assets/icons/notification-warning.svg +5 -0
  6. package/build/main/constants/constants.d.ts +3 -2
  7. package/build/main/constants/constants.js +3 -2
  8. package/build/main/helpers/index.d.ts +1 -1
  9. package/build/main/helpers/index.js +1 -1
  10. package/build/main/styles/stories.module.scss +178 -54
  11. package/build/main/styles/styles.min.css +1 -1
  12. package/build/main//321/201omponents/Checkbox/Checkbox.d.ts +1 -1
  13. package/build/main//321/201omponents/Checkbox/Checkbox.js +7 -3
  14. package/build/main//321/201omponents/Checkbox/types.d.ts +4 -3
  15. package/build/main//321/201omponents/DragAndDrop/DragAndDrop.js +1 -1
  16. package/build/main//321/201omponents/Header/Header.d.ts +1 -1
  17. package/build/main//321/201omponents/Header/Header.js +2 -2
  18. package/build/main//321/201omponents/Header/types.d.ts +2 -0
  19. package/build/main//321/201omponents/Notification/Notification.d.ts +4 -0
  20. package/build/main//321/201omponents/Notification/Notification.js +40 -0
  21. package/build/main//321/201omponents/Notification/index.d.ts +1 -0
  22. package/build/main//321/201omponents/Notification/index.js +1 -0
  23. package/build/main//321/201omponents/Notification/types.d.ts +14 -0
  24. package/build/main//321/201omponents/Notification/types.js +1 -0
  25. package/build/main//321/201omponents/RadioButton/RadioButton.d.ts +4 -0
  26. package/build/main//321/201omponents/RadioButton/RadioButton.js +25 -0
  27. package/build/main//321/201omponents/RadioButton/index.d.ts +1 -0
  28. package/build/main//321/201omponents/RadioButton/index.js +1 -0
  29. package/build/main//321/201omponents/RadioButton/types.d.ts +8 -0
  30. package/build/main//321/201omponents/RadioButton/types.js +1 -0
  31. package/build/main//321/201omponents/Stories/Stories.js +22 -18
  32. package/build/main//321/201omponents/Toggle/Toggle.d.ts +1 -1
  33. package/build/main//321/201omponents/Toggle/Toggle.js +11 -2
  34. package/build/main//321/201omponents/Toggle/types.d.ts +4 -1
  35. package/build/main//321/201omponents/index.d.ts +2 -0
  36. package/build/main//321/201omponents/index.js +2 -0
  37. package/package.json +1 -1
@@ -1,3 +1,3 @@
1
- <svg width="19" height="18" viewBox="0 0 19 18" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path fill-rule="evenodd" clip-rule="evenodd" d="M9.42871 18C14.3993 18 18.4287 13.9706 18.4287 9C18.4287 4.02944 14.3993 0 9.42871 0C4.45815 0 0.428711 4.02944 0.428711 9C0.428711 13.9706 4.45815 18 9.42871 18ZM8.86036 12.3453L14.1358 7.07023C14.5264 6.67921 14.5264 6.04566 14.1356 5.65486C13.7449 5.26428 13.1112 5.26399 12.7203 5.65486L8.15288 10.2223L6.137 8.20643C5.7463 7.81571 5.11265 7.81571 4.72178 8.20658C4.33098 8.59738 4.33098 9.23115 4.72178 9.62187L7.44499 12.3453C7.83601 12.736 8.46971 12.736 8.86036 12.3453Z" fill="currentColor"/>
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M20 10C20 15.5227 15.5227 20 10 20C4.47727 20 0 15.5227 0 10C0 4.47727 4.47727 0 10 0C15.5227 0 20 4.47727 20 10ZM15.1909 7.91364C15.5445 7.55727 15.5427 6.98182 15.1864 6.62818C14.83 6.27364 14.2545 6.27545 13.9009 6.63182L8.22091 12.3464L6.09909 10.2118C5.74545 9.85545 5.17 9.85364 4.81364 10.2073C4.45727 10.5618 4.45545 11.1373 4.81 11.4927L7.57636 14.2773C7.74727 14.4491 7.97909 14.5455 8.22182 14.5455C8.46364 14.5455 8.69545 14.4491 8.86636 14.2773L15.19 7.91364H15.1909Z" fill="currentColor"/>
3
3
  </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M11.5314 5.99017L19.0614 19.0002L4.00137 19.0002L11.5314 5.99017ZM2.27137 18.0002C1.50137 19.3302 2.46137 21.0002 4.00137 21.0002L19.0614 21.0002C20.6014 21.0002 21.5614 19.3302 20.7914 18.0002L13.2614 4.99017C12.4914 3.66017 10.5714 3.66017 9.80137 4.99017L2.27137 18.0002ZM10.5314 11.0002L10.5314 13.0002C10.5314 13.5502 10.9814 14.0002 11.5314 14.0002C12.0814 14.0002 12.5314 13.5502 12.5314 13.0002L12.5314 11.0002C12.5314 10.4502 12.0814 10.0002 11.5314 10.0002C10.9814 10.0002 10.5314 10.4502 10.5314 11.0002ZM10.5314 16.0002L12.5314 16.0002L12.5314 18.0002L10.5314 18.0002L10.5314 16.0002Z" fill="#C84235"/>
3
+ </svg>
@@ -0,0 +1,5 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g id="icon/info">
3
+ <path id="Vector" d="M11.9951 17C12.5451 17 12.9951 16.55 12.9951 16V12C12.9951 11.45 12.5451 11 11.9951 11C11.4451 11 10.9951 11.45 10.9951 12V16C10.9951 16.55 11.4451 17 11.9951 17ZM11.9851 22.0001C6.46512 22.0001 1.99512 17.52 1.99512 12C1.99512 6.48 6.46512 2 11.9851 2C17.515 2 21.9951 6.48 21.9951 12C21.9951 17.52 17.515 22.0001 11.9851 22.0001ZM11.9951 4.00001C7.57512 4.00001 3.99513 7.58 3.99513 12C3.99513 16.42 7.57512 20 11.9951 20C16.4151 20 19.9951 16.42 19.9951 12C19.9951 7.58 16.4151 4.00001 11.9951 4.00001ZM12.9951 7.00001H10.9951V9H12.9951V7.00001Z" fill="#4799E3"/>
4
+ </g>
5
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M17.0055 9.65883C17.365 9.29928 17.365 8.71634 17.0055 8.3568C16.6459 7.99725 16.063 7.99725 15.7034 8.3568L10.3701 13.6902L8.30092 11.621C7.94137 11.2615 7.35843 11.2615 6.99889 11.621C6.63934 11.9805 6.63934 12.5635 6.99889 12.923L9.71906 15.6432C10.0786 16.0027 10.6615 16.0027 11.0211 15.6432L17.0055 9.65883Z" fill="#4799E3"/>
3
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M1.99512 12C1.99512 17.52 6.46512 22.0001 11.9851 22.0001C17.515 22.0001 21.9951 17.52 21.9951 12C21.9951 6.48 17.515 2 11.9851 2C6.46512 2 1.99512 6.48 1.99512 12ZM3.99513 12C3.99513 7.58 7.57512 4.00001 11.9951 4.00001C16.4151 4.00001 19.9951 7.58 19.9951 12C19.9951 16.42 16.4151 20 11.9951 20C7.57512 20 3.99513 16.42 3.99513 12Z" fill="#4799E3"/>
4
+ </svg>
@@ -0,0 +1,5 @@
1
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g id="icon/info">
3
+ <path id="Vector" d="M11.9951 17C12.5451 17 12.9951 16.55 12.9951 16V12C12.9951 11.45 12.5451 11 11.9951 11C11.4451 11 10.9951 11.45 10.9951 12V16C10.9951 16.55 11.4451 17 11.9951 17ZM11.9851 22.0001C6.46512 22.0001 1.99512 17.52 1.99512 12C1.99512 6.48 6.46512 2 11.9851 2C17.515 2 21.9951 6.48 21.9951 12C21.9951 17.52 17.515 22.0001 11.9851 22.0001ZM11.9951 4.00001C7.57512 4.00001 3.99513 7.58 3.99513 12C3.99513 16.42 7.57512 20 11.9951 20C16.4151 20 19.9951 16.42 19.9951 12C19.9951 7.58 16.4151 4.00001 11.9951 4.00001ZM12.9951 7.00001H10.9951V9H12.9951V7.00001Z" fill="#FC9E5A"/>
4
+ </g>
5
+ </svg>
@@ -1,5 +1,6 @@
1
1
  export declare const DEFAULT_BLUE_LIGHT_ICON_COLOR = "#4799E30D";
2
2
  export declare const DEFAULT_BLUE_ICON_COLOR = "#4799E3";
3
+ export declare const DEFAULT_BLUE_ICON_HOVER_COLOR = "#3C82C1";
3
4
  export declare const DEFAULT_RED_ICON_COLOR = "#EB5545";
4
5
  export declare const DEFAULT_GRAY_ICON_COLOR = "#1111114D";
5
6
  export declare const DEFAULT_BLACK_ICON_COLOR = "#111111";
@@ -32,6 +33,6 @@ export declare enum THEME {
32
33
  default = "default",
33
34
  dark = "dark"
34
35
  }
35
- export declare const BUTTON_PADDING: number;
36
- export declare const MAX_PADDING_FOR_IMAGE: number;
36
+ export declare const CANCEL_ACTION_TEXT: string;
37
+ export declare const NUMBER_OF_STORIES_FOR_ROUND_INDICATORS: number;
37
38
  export declare const DEFAULT_FONT_FAMILY: string;
@@ -1,5 +1,6 @@
1
1
  export var DEFAULT_BLUE_LIGHT_ICON_COLOR = '#4799E30D';
2
2
  export var DEFAULT_BLUE_ICON_COLOR = '#4799E3';
3
+ export var DEFAULT_BLUE_ICON_HOVER_COLOR = '#3C82C1';
3
4
  export var DEFAULT_RED_ICON_COLOR = '#EB5545';
4
5
  export var DEFAULT_GRAY_ICON_COLOR = '#1111114D';
5
6
  export var DEFAULT_BLACK_ICON_COLOR = '#111111';
@@ -36,6 +37,6 @@ export var THEME;
36
37
  THEME["default"] = "default";
37
38
  THEME["dark"] = "dark";
38
39
  })(THEME || (THEME = {}));
39
- export var BUTTON_PADDING = 32;
40
- export var MAX_PADDING_FOR_IMAGE = 200;
40
+ export var CANCEL_ACTION_TEXT = 'Отменить';
41
+ export var NUMBER_OF_STORIES_FOR_ROUND_INDICATORS = 5;
41
42
  export var DEFAULT_FONT_FAMILY = 'Open Sans';
@@ -3,4 +3,4 @@ export declare const isWebPlatform: (platform: string) => boolean;
3
3
  export declare const isIosPlatform: (platform: string) => boolean;
4
4
  export declare const isAndroidPlatform: (platform: string) => boolean;
5
5
  export declare const isMobilePlatform: (platform: string) => boolean;
6
- export declare const getClassNames: (className: string, delimiter: string, platform: string) => string;
6
+ export declare const getClassNames: (className: string, delimiter: string, additionalClassName: string) => string;
@@ -7,4 +7,4 @@ export var isWebPlatform = function (platform) { return platform === PLATFORM.we
7
7
  export var isIosPlatform = function (platform) { return platform === PLATFORM.ios; };
8
8
  export var isAndroidPlatform = function (platform) { return platform === PLATFORM.android; };
9
9
  export var isMobilePlatform = function (platform) { return isAndroidPlatform(platform) || isIosPlatform(platform); };
10
- export var getClassNames = function (className, delimiter, platform) { return classNames(className, "".concat(className).concat(delimiter).concat(platform)); };
10
+ export var getClassNames = function (className, delimiter, additionalClassName) { return (classNames(className, "".concat(className).concat(delimiter).concat(additionalClassName))); };
@@ -2,6 +2,8 @@
2
2
  @import 'react-datepicker/dist/react-datepicker';
3
3
 
4
4
  $color-black: rgba(17, 17, 17, 1);
5
+ $color-black-10: rgba(0, 0, 0, 0.1);
6
+ $color-black-8: rgba(0, 0, 0, 0.08);
5
7
  $color-dark-gray: rgba(17, 17, 17, 0.5);
6
8
  $color-darker-gray: rgba(17, 17, 17, 0.3);
7
9
  $color-darker-gray-opacity: rgba(0, 0, 0, 0.2);
@@ -9,22 +11,25 @@ $color-darkest-gray-opacity: rgba(204, 204, 204, 1);
9
11
  $color-gray: rgba(17, 17, 17, 0.1);
10
12
  $color-light-gray: rgba(239, 242, 244, 1);
11
13
  $color-lighter-gray: rgba(224, 228, 236, 1);
12
- $color-lighter-gray-opacity: rgba(224, 228, 236, 0.4);
13
14
  $color-lightest-gray: rgba(0, 0, 0, 0.05);
14
15
  $color-white: rgba(255, 255, 255, 1);
15
16
  $color-dark-red: rgba(222, 97, 97, 1);
16
17
  $color-red: rgba(235, 85, 69, 1);
18
+ $color-light-red: rgba(200, 66, 53, 1);
17
19
  $color-purple: rgba(130, 98, 223, 1);
20
+ $color-dark-blue: rgba(60, 130, 193, 1);
18
21
  $color-blue: rgba(71, 153, 227, 1);
19
22
  $color-light-blue: rgba(205, 244, 255, 1);
20
- $color-lighter-blue: rgba(71, 153, 227, 0.2);
23
+ $color-orange: rgba(252, 158, 90, 1);
24
+ $color-orange-10: rgba(252, 158, 90, 0.1);
25
+ $color-light-orange: rgba(253, 246, 228, 1);
21
26
 
22
- $border-color: rgba(85, 85, 85, 0.2);
27
+ $border-dark-gray-color: rgba(102, 102, 102, 1);
28
+ $border-gray-color: rgba(128, 128, 128, 1);
23
29
 
24
30
  $popup-background: rgba(37, 77, 145, 0.2);
25
31
 
26
32
  $box-shadow-light-color: rgba(0, 0, 0, 0.05);
27
- $box-shadow-color: rgba(0, 0, 0, 0.25);
28
33
  $box-shadow-dark-color: rgba(0, 0, 0, 0.6);
29
34
 
30
35
  .smartapp-action-modal {
@@ -401,40 +406,44 @@ $box-shadow-dark-color: rgba(0, 0, 0, 0.6);
401
406
  .checkmark::before {
402
407
  content: '';
403
408
  display: inline-block;
404
- width: 20px;
405
- height: 20px;
409
+ width: 17px;
410
+ height: 17px;
406
411
  background-color: $color-white;
407
- border: 1px solid $color-gray;
412
+ border: 1.5px solid $border-gray-color;
408
413
  border-radius: 50%;
409
414
  cursor: pointer;
410
415
  }
411
416
 
412
417
  /* стили при наведении курсора на радио */
413
418
  &__custom-check-box:not(:disabled):not(:checked) + .checkmark:hover::before {
414
- border-color: $color-gray;
419
+ border-color: $border-dark-gray-color;
415
420
  }
416
421
 
417
422
  /* стили для активной радиокнопки (при нажатии на неё) */
418
423
  &__custom-check-box:not(:disabled):active + .checkmark::before {
419
- background-color: $color-gray;
420
- border-color: $color-gray;
424
+ border-color: $border-gray-color;
421
425
  }
422
426
 
423
427
  /* стили для радиокнопки, находящейся в фокусе и не находящейся в состоянии checked */
424
428
  &__custom-check-box:focus:not(:checked) + .checkmark::before {
425
- border-color: $color-gray;
429
+ border-color: $border-gray-color;
426
430
  background-size: 60% 60%;
427
431
  }
428
432
 
429
433
  /* стили для радиокнопки, находящейся в состоянии checked */
430
434
  &__custom-check-box:checked + svg {
431
- height: 22px;
432
- width: 22px;
435
+ height: 20px;
436
+ width: 20px;
433
437
  cursor: pointer;
434
438
  }
435
439
 
440
+ &__custom-check-box:checked:not(:disabled):hover + svg {
441
+ color: var(--checkbox-hover-color, $color-dark-blue) !important;
442
+ }
443
+
436
444
  &__custom-check-box:disabled:not(:checked) + .checkmark::before,
437
445
  &__custom-check-box:disabled:checked + svg {
446
+ opacity: 0.3;
438
447
  cursor: default;
439
448
  }
440
449
  }
@@ -1022,67 +1031,78 @@ $box-shadow-dark-color: rgba(0, 0, 0, 0.6);
1022
1031
  }
1023
1032
  }
1024
1033
 
1025
- .smartapp-toggle {
1026
- position: relative;
1027
- display: inline-block;
1028
- width: 34px;
1029
- height: 14px;
1030
- }
1031
-
1032
1034
  .smartapp-toggle-wrapper {
1033
1035
  display: flex;
1034
1036
  flex-direction: row;
1035
1037
  align-items: center;
1038
+ width: fit-content;
1036
1039
  }
1037
1040
 
1038
- .smartapp-toggle input {
1039
- display: none;
1041
+ .smartapp-toggle {
1042
+ position: relative;
1043
+ display: inline-block;
1044
+ width: 38px;
1045
+ height: 20px;
1046
+
1047
+ input {
1048
+ display: none;
1049
+ }
1040
1050
  }
1041
1051
 
1042
1052
  .smartapp-slider {
1043
1053
  position: absolute;
1044
- cursor: pointer;
1045
1054
  top: 0;
1046
1055
  left: 0;
1047
1056
  right: 0;
1048
1057
  bottom: 0;
1049
- background: $color-dark-gray;
1050
- -webkit-transition: 0.2s;
1058
+ border-radius: 69px;
1059
+ background: $border-gray-color;
1051
1060
  transition: 0.2s;
1052
- }
1053
-
1054
- .smartapp-slider:before {
1055
- position: absolute;
1056
- content: '';
1057
- height: 20px;
1058
- width: 20px;
1059
- top: -3px;
1060
- left: 0;
1061
- bottom: 3px;
1062
- background: $color-lighter-gray;
1063
1061
  -webkit-transition: 0.2s;
1064
- transition: 0.2s;
1065
- box-shadow: 0 2px 2px $box-shadow-color;
1062
+ cursor: pointer;
1063
+
1064
+ &__disabled {
1065
+ opacity: 0.3;
1066
+ background: $border-gray-color !important;
1067
+ cursor: default;
1068
+ }
1069
+
1070
+ &:before {
1071
+ content: '';
1072
+ position: absolute;
1073
+ left: 2px;
1074
+ top: 0;
1075
+ bottom: 0;
1076
+ height: 16px;
1077
+ width: 16px;
1078
+ border-radius: 50%;
1079
+ background: $color-white;
1080
+ transition: 0.2s;
1081
+ -webkit-transition: 0.2s;
1082
+ margin: auto 0;
1083
+ }
1084
+
1085
+ &:hover {
1086
+ background: $border-dark-gray-color;
1087
+ }
1066
1088
  }
1067
1089
 
1068
1090
  input:checked + .smartapp-slider {
1069
- background: $color-lighter-blue;
1091
+ background: var(--toggle-color, $color-blue);
1070
1092
  }
1071
1093
 
1072
- input:checked + .smartapp-slider:before {
1073
- -webkit-transform: translateX(14px);
1074
- -ms-transform: translateX(14px);
1075
- transform: translateX(14px);
1076
- background-color: $color-blue;
1077
- box-shadow: 0 2px 2px $box-shadow-color;
1094
+ input:checked + .smartapp-slider__disabled {
1095
+ background: var(--toggle-color, $color-blue) !important;
1078
1096
  }
1079
1097
 
1080
- .smartapp-slider.round {
1081
- border-radius: 34px;
1098
+ input:checked + .smartapp-slider:hover {
1099
+ background: var(--toggle-hover-color, $color-dark-blue);
1082
1100
  }
1083
1101
 
1084
- .smartapp-slider.round:before {
1085
- border-radius: 50%;
1102
+ input:checked + .smartapp-slider:before {
1103
+ transform: translateX(18px);
1104
+ -ms-transform: translateX(18px);
1105
+ -webkit-transform: translateX(18px);
1086
1106
  }
1087
1107
 
1088
1108
  .smartapp-stories-content {
@@ -1156,14 +1176,17 @@ input:checked + .smartapp-slider:before {
1156
1176
  }
1157
1177
 
1158
1178
  &__story {
1179
+ height: 100%;
1180
+ display: flex;
1181
+ flex-direction: column;
1182
+ justify-content: center;
1159
1183
  color: $color-white;
1160
- padding-top: var(--padding);
1161
1184
 
1162
1185
  &--title {
1163
1186
  font-size: 24px;
1164
1187
  font-weight: 700;
1165
1188
  line-height: 33px;
1166
- margin-bottom: 24px;
1189
+ margin-bottom: 8px;
1167
1190
  padding: 0 24px;
1168
1191
  }
1169
1192
 
@@ -1188,9 +1211,9 @@ input:checked + .smartapp-slider:before {
1188
1211
  &--button {
1189
1212
  position: absolute;
1190
1213
  bottom: 32px;
1191
- font-size: 14px;
1192
- font-weight: 600;
1193
- line-height: 19px;
1214
+ font-size: 16px;
1215
+ font-weight: 700;
1216
+ line-height: 22px;
1194
1217
  text-align: center;
1195
1218
  border-radius: 8px;
1196
1219
  padding: 12px 32px;
@@ -1400,4 +1423,105 @@ input:checked + .smartapp-slider:before {
1400
1423
  .modal-android-overlay {
1401
1424
  background: var(--modal-background, $popup-background);
1402
1425
  cursor: pointer;
1426
+ }
1427
+
1428
+ .smartapp-notification {
1429
+ display: grid;
1430
+ grid-template-columns: 24px auto;
1431
+ gap: 8px;
1432
+ width: calc(100vw - 50px);
1433
+ font-family: Open Sans, 'sans-serif';
1434
+ font-size: 14px;
1435
+ font-weight: 400;
1436
+ line-height: 19px;
1437
+ color: $color-black;
1438
+ background: $color-white;
1439
+ border-radius: 4px;
1440
+ border: 1px solid $color-black-10;
1441
+ box-shadow: 0 2px 16px 0 $color-black-8;
1442
+ padding: 16px;
1443
+
1444
+ &__content {
1445
+ display: flex;
1446
+ align-items: center;
1447
+ justify-content: space-between;
1448
+
1449
+ &--action {
1450
+ font-weight: 600;
1451
+ color: $color-blue;
1452
+ cursor: pointer;
1453
+ }
1454
+ }
1455
+
1456
+ &__warning {
1457
+ color: $color-orange;
1458
+ background: $color-light-orange;
1459
+ border: 1px solid $color-orange-10;
1460
+ box-shadow: none;
1461
+ }
1462
+
1463
+ &__error {
1464
+ color: $color-light-red;
1465
+ }
1466
+ }
1467
+
1468
+ .notification-overlay {
1469
+ inset: auto 8px 8px 8px !important;
1470
+ }
1471
+
1472
+ .notification-ios-overlay,
1473
+ .notification-android-overlay {
1474
+ bottom: 40px !important;
1475
+ }
1476
+
1477
+ .smartapp-radio-button {
1478
+ width: fit-content;
1479
+
1480
+ input[type="radio"] {
1481
+ display: grid;
1482
+ align-items: center;
1483
+ justify-content: center;
1484
+ width: 20px;
1485
+ height: 20px;
1486
+ border: 1.5px solid $border-gray-color;
1487
+ border-radius: 50%;
1488
+ background-color: $color-white;
1489
+ margin: 0;
1490
+ appearance: none;
1491
+ -webkit-appearance: none;
1492
+ }
1493
+
1494
+ input[type="radio"]:not(:disabled):hover {
1495
+ border-color: $border-dark-gray-color;
1496
+ cursor: pointer;
1497
+ }
1498
+
1499
+ input[type="radio"]:disabled {
1500
+ opacity: 0.3;
1501
+ }
1502
+
1503
+ input[type="radio"]:checked {
1504
+ border: 2px solid var(--radio-button-color, $color-blue);
1505
+ }
1506
+
1507
+ input[type="radio"]:checked:not(:disabled):hover {
1508
+ border-color: var(--radio-button-hover-color, $color-dark-blue);
1509
+ }
1510
+
1511
+ input[type="radio"]::before {
1512
+ content: "";
1513
+ width: 10px;
1514
+ height: 10px;
1515
+ border-radius: 50%;
1516
+ transform: scale(0);
1517
+ background: var(--radio-button-color, $color-blue);
1518
+ }
1519
+
1520
+ input[type="radio"]:checked::before {
1521
+ transform: scale(1);
1522
+ }
1523
+
1524
+ input[type="radio"]:checked:not(:disabled):hover::before {
1525
+ background: var(--radio-button-hover-color, $color-dark-blue);
1526
+ }
1403
1527
  }