@megafon/ui-core 7.2.1 → 7.3.0

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 (67) hide show
  1. package/dist/es/components/Banner/Banner.css +1 -1
  2. package/dist/es/components/Banner/Banner.d.ts +2 -0
  3. package/dist/es/components/Banner/Banner.js +4 -1
  4. package/dist/es/components/Calendar/Calendar.css +1 -1
  5. package/dist/es/components/Calendar/Calendar.js +2 -2
  6. package/dist/es/components/Calendar/components/_Day/Day.css +1 -1
  7. package/dist/es/components/Calendar/components/_Month/Month.css +1 -1
  8. package/dist/es/components/Tooltip/Tooltip.css +1 -1
  9. package/dist/es/components/Tooltip/Tooltip.d.ts +8 -0
  10. package/dist/es/components/Tooltip/Tooltip.js +9 -2
  11. package/dist/es/components/UploadForm/UploadField/UploadField.css +1 -0
  12. package/dist/es/components/UploadForm/UploadField/UploadField.d.ts +22 -0
  13. package/dist/es/components/UploadForm/UploadField/UploadField.js +56 -0
  14. package/dist/es/components/UploadForm/UploadField/components/_UploadFieldDropArea/UploadFieldDropArea.css +1 -0
  15. package/dist/es/components/UploadForm/UploadField/components/_UploadFieldDropArea/UploadFieldDropArea.d.ts +21 -0
  16. package/dist/es/components/UploadForm/UploadField/components/_UploadFieldDropArea/UploadFieldDropArea.js +50 -0
  17. package/dist/es/components/UploadForm/UploadField/components/useDragAndDrop.d.ts +3 -0
  18. package/dist/es/components/UploadForm/UploadField/components/useDragAndDrop.js +50 -0
  19. package/dist/es/components/UploadForm/UploadFileItem/UploadFileItem.css +1 -0
  20. package/dist/es/components/UploadForm/UploadFileItem/UploadFileItem.d.ts +25 -0
  21. package/dist/es/components/UploadForm/UploadFileItem/UploadFileItem.js +96 -0
  22. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/UploadFileItemIcon.d.ts +7 -0
  23. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/UploadFileItemIcon.js +279 -0
  24. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/attach.svg +3 -0
  25. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/excel.svg +25 -0
  26. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/image.svg +3 -0
  27. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/pdf.svg +4 -0
  28. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/power.svg +21 -0
  29. package/dist/es/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/word.svg +22 -0
  30. package/dist/es/components/UploadForm/UploadFileItem/helpers.d.ts +5 -0
  31. package/dist/es/components/UploadForm/UploadFileItem/helpers.js +27 -0
  32. package/dist/es/index.d.ts +5 -0
  33. package/dist/es/index.js +5 -0
  34. package/dist/lib/components/Banner/Banner.css +1 -1
  35. package/dist/lib/components/Banner/Banner.d.ts +2 -0
  36. package/dist/lib/components/Banner/Banner.js +4 -1
  37. package/dist/lib/components/Calendar/Calendar.css +1 -1
  38. package/dist/lib/components/Calendar/Calendar.js +2 -2
  39. package/dist/lib/components/Calendar/components/_Day/Day.css +1 -1
  40. package/dist/lib/components/Calendar/components/_Month/Month.css +1 -1
  41. package/dist/lib/components/Tooltip/Tooltip.css +1 -1
  42. package/dist/lib/components/Tooltip/Tooltip.d.ts +8 -0
  43. package/dist/lib/components/Tooltip/Tooltip.js +10 -3
  44. package/dist/lib/components/UploadForm/UploadField/UploadField.css +1 -0
  45. package/dist/lib/components/UploadForm/UploadField/UploadField.d.ts +22 -0
  46. package/dist/lib/components/UploadForm/UploadField/UploadField.js +65 -0
  47. package/dist/lib/components/UploadForm/UploadField/components/_UploadFieldDropArea/UploadFieldDropArea.css +1 -0
  48. package/dist/lib/components/UploadForm/UploadField/components/_UploadFieldDropArea/UploadFieldDropArea.d.ts +21 -0
  49. package/dist/lib/components/UploadForm/UploadField/components/_UploadFieldDropArea/UploadFieldDropArea.js +59 -0
  50. package/dist/lib/components/UploadForm/UploadField/components/useDragAndDrop.d.ts +3 -0
  51. package/dist/lib/components/UploadForm/UploadField/components/useDragAndDrop.js +57 -0
  52. package/dist/lib/components/UploadForm/UploadFileItem/UploadFileItem.css +1 -0
  53. package/dist/lib/components/UploadForm/UploadFileItem/UploadFileItem.d.ts +25 -0
  54. package/dist/lib/components/UploadForm/UploadFileItem/UploadFileItem.js +105 -0
  55. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/UploadFileItemIcon.d.ts +7 -0
  56. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/UploadFileItemIcon.js +289 -0
  57. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/attach.svg +3 -0
  58. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/excel.svg +25 -0
  59. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/image.svg +3 -0
  60. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/pdf.svg +4 -0
  61. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/power.svg +21 -0
  62. package/dist/lib/components/UploadForm/UploadFileItem/components/_UploadFileItemIcon/i/word.svg +22 -0
  63. package/dist/lib/components/UploadForm/UploadFileItem/helpers.d.ts +5 -0
  64. package/dist/lib/components/UploadForm/UploadFileItem/helpers.js +33 -0
  65. package/dist/lib/index.d.ts +5 -0
  66. package/dist/lib/index.js +35 -0
  67. package/package.json +3 -3
@@ -1 +1 @@
1
- h1,h2,h3,h4,h5{margin:0}.mfui-banner{position:relative}.mfui-banner .swiper-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.mfui-banner .mfui-banner__swiper-container{position:relative}.mfui-banner__swiper{overflow:hidden}.mfui-banner__slide{-ms-flex-negative:0;flex-shrink:0;height:500px}@media screen and (min-width:1024px) and (max-width:1279px){.mfui-banner__slide{height:420px}}@media screen and (min-width:1280px){.mfui-banner__slide{height:400px}}.mfui-banner__slide-content{border-right:1px solid transparent;margin-right:-1px}@media screen and (max-width:1023px){.mfui-banner__slide-content{height:100%}}.mfui-banner_auto-height .mfui-banner__slide{height:auto}.mfui-banner .mfui-banner__arrow{position:absolute;top:50%;-webkit-transition:scale .2s linear;transition:scale .2s linear;translate:0 -50%;z-index:10}@media screen and (max-width:767px){.mfui-banner .mfui-banner__arrow{display:none}}.mfui-banner .mfui-banner__arrow_theme_white{height:64px;width:64px}@media screen and (max-width:1023px){.mfui-banner .mfui-banner__arrow_theme_white{display:none}}.mfui-banner .mfui-banner__arrow_prev{left:12px}@media screen and (max-width:767px){.mfui-banner .mfui-banner__arrow_prev{left:8px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-banner .mfui-banner__arrow_prev{left:16px}}@media screen and (min-width:1280px){.mfui-banner .mfui-banner__arrow_prev{left:20px}}.mfui-banner .mfui-banner__arrow_next{right:12px}@media screen and (max-width:767px){.mfui-banner .mfui-banner__arrow_next{right:8px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-banner .mfui-banner__arrow_next{right:16px}}@media screen and (min-width:1280px){.mfui-banner .mfui-banner__arrow_next{right:20px}}.mfui-banner .mfui-banner__arrow_prev.mfui-banner__arrow_theme_white{left:0;translate:-50% -50%}.mfui-banner .mfui-banner__arrow_next.mfui-banner__arrow_theme_white{right:0;translate:50% -50%}.mfui-banner_no-touch .mfui-banner__arrow_theme_white:hover{scale:1.25}.mfui-banner_no-touch .mfui-banner__arrow_theme_white:active{scale:1.125}.mfui-banner__pagination{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px;left:50%;z-index:10;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-top:32px}.mfui-banner__pagination_bottom-offset{bottom:60px;left:50%;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:10}@media screen and (min-width:768px) and (max-width:1023px){.mfui-banner__pagination_bottom-offset{bottom:89px}}@media screen and (min-width:1024px) and (max-width:1279px){.mfui-banner__pagination_bottom-offset{bottom:90px}}@media screen and (min-width:1280px) and (max-width:1439px){.mfui-banner__pagination_bottom-offset{bottom:65px}}@media screen and (min-width:1440px){.mfui-banner__pagination_bottom-offset{bottom:72px}}.mfui-banner_radius_rounded .mfui-banner__swiper{border-radius:24px}@media screen and (max-width:767px){.mfui-banner_show-next-slide .mfui-banner__swiper{border-radius:0;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:32px}.mfui-banner_show-next-slide .mfui-banner__slide-content{border-right:none;margin-right:0}.mfui-banner_show-next-slide.mfui-banner_radius_rounded .mfui-banner__slide-content{border-radius:24px}}.mfui-banner_background-color_green .mfui-banner__swiper{background-color:var(--brandGreen)}.mfui-banner_background-color_purple .mfui-banner__swiper{background-color:var(--brandPurple)}.mfui-banner_background-color_gradient .mfui-banner__swiper{background:-webkit-gradient(linear,right top,left top,from(#ada6ba),to(#f6f2f9));background:linear-gradient(270deg,#ada6ba,#f6f2f9)}.mfui-banner_background-color_light .mfui-banner__swiper{background-color:#f6f2f9}.mfui-banner_background-color_spbSky0 .mfui-banner__swiper{background-color:var(--spbSky0)}
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-banner{position:relative}.mfui-banner .swiper-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.mfui-banner .mfui-banner__swiper-container{position:relative}.mfui-banner__swiper{overflow:hidden}.mfui-banner__slide{-ms-flex-negative:0;flex-shrink:0;height:500px}@media screen and (min-width:1024px) and (max-width:1279px){.mfui-banner__slide{height:420px}}@media screen and (min-width:1280px){.mfui-banner__slide{height:400px}}.mfui-banner__slide-content{border-right:1px solid transparent;margin-right:-1px}@media screen and (max-width:1023px){.mfui-banner__slide-content{height:100%}}.mfui-banner_auto-height .mfui-banner__slide{height:auto}.mfui-banner .mfui-banner__arrow{position:absolute;top:50%;-webkit-transition:scale .2s linear;transition:scale .2s linear;translate:0 -50%;z-index:10}@media screen and (max-width:767px){.mfui-banner .mfui-banner__arrow{display:none}}.mfui-banner .mfui-banner__arrow_theme_white{height:64px;width:64px}@media screen and (max-width:1023px){.mfui-banner .mfui-banner__arrow_theme_white{display:none}}.mfui-banner .mfui-banner__arrow_prev{left:12px}@media screen and (max-width:767px){.mfui-banner .mfui-banner__arrow_prev{left:8px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-banner .mfui-banner__arrow_prev{left:16px}}@media screen and (min-width:1280px){.mfui-banner .mfui-banner__arrow_prev{left:20px}}.mfui-banner .mfui-banner__arrow_next{right:12px}@media screen and (max-width:767px){.mfui-banner .mfui-banner__arrow_next{right:8px}}@media screen and (min-width:768px) and (max-width:1023px){.mfui-banner .mfui-banner__arrow_next{right:16px}}@media screen and (min-width:1280px){.mfui-banner .mfui-banner__arrow_next{right:20px}}.mfui-banner .mfui-banner__arrow_prev.mfui-banner__arrow_theme_white{left:0;translate:-50% -50%}.mfui-banner .mfui-banner__arrow_next.mfui-banner__arrow_theme_white{right:0;translate:50% -50%}.mfui-banner_no-touch .mfui-banner__arrow_theme_white:hover{scale:1.25}.mfui-banner_no-touch .mfui-banner__arrow_theme_white:active{scale:1.125}.mfui-banner__pagination{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px;left:50%;z-index:10;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-top:32px}.mfui-banner__pagination_bottom-offset{bottom:60px;left:50%;position:absolute;-webkit-transform:translateX(-50%);transform:translateX(-50%);z-index:10}@media screen and (min-width:768px) and (max-width:1023px){.mfui-banner__pagination_bottom-offset{bottom:89px}}@media screen and (min-width:1024px) and (max-width:1279px){.mfui-banner__pagination_bottom-offset{bottom:90px}}@media screen and (min-width:1280px) and (max-width:1439px){.mfui-banner__pagination_bottom-offset{bottom:65px}}@media screen and (min-width:1440px){.mfui-banner__pagination_bottom-offset{bottom:72px}}.mfui-banner_margin-top{margin-top:24px}.mfui-banner_radius_rounded .mfui-banner__swiper{border-radius:24px}@media screen and (max-width:767px){.mfui-banner_show-next-slide .mfui-banner__swiper{border-radius:0;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:32px}.mfui-banner_show-next-slide .mfui-banner__slide-content{border-right:none;margin-right:0}.mfui-banner_show-next-slide.mfui-banner_radius_rounded .mfui-banner__slide-content{border-radius:24px}}.mfui-banner_background-color_green .mfui-banner__swiper{background-color:var(--brandGreen)}.mfui-banner_background-color_purple .mfui-banner__swiper{background-color:var(--brandPurple)}.mfui-banner_background-color_gradient .mfui-banner__swiper{background:-webkit-gradient(linear,right top,left top,from(#ada6ba),to(#f6f2f9));background:linear-gradient(270deg,#ada6ba,#f6f2f9)}.mfui-banner_background-color_light .mfui-banner__swiper{background-color:#f6f2f9}.mfui-banner_background-color_spbSky0 .mfui-banner__swiper{background-color:var(--spbSky0)}
@@ -69,6 +69,8 @@ export interface IBannerProps {
69
69
  noIncreaseAutoplayDelay?: boolean;
70
70
  /** Показать часть следующего слайда */
71
71
  showNextSlide?: boolean;
72
+ /** Отступ сверху */
73
+ hasMarginTop?: boolean;
72
74
  children?: React.ReactNode;
73
75
  /** Ref на swiper */
74
76
  getSwiper?: (instance: SwiperCore) => void;
@@ -74,6 +74,8 @@ var Banner = function Banner(_ref) {
74
74
  autoHeight = _ref$autoHeight === void 0 ? false : _ref$autoHeight,
75
75
  noIncreaseAutoplayDelay = _ref.noIncreaseAutoplayDelay,
76
76
  showNextSlide = _ref.showNextSlide,
77
+ _ref$hasMarginTop = _ref.hasMarginTop,
78
+ hasMarginTop = _ref$hasMarginTop === void 0 ? false : _ref$hasMarginTop,
77
79
  _ref$children = _ref.children,
78
80
  children = _ref$children === void 0 ? [] : _ref$children,
79
81
  getSwiper = _ref.getSwiper,
@@ -259,7 +261,8 @@ var Banner = function Banner(_ref) {
259
261
  'background-color': backgroundColor,
260
262
  'no-touch': !isTouch,
261
263
  radius: radius,
262
- 'show-next-slide': showNextSlide
264
+ 'show-next-slide': showNextSlide,
265
+ 'margin-top': hasMarginTop
263
266
  }, className),
264
267
  ref: rootRef
265
268
  }), /*#__PURE__*/React.createElement("div", {
@@ -1 +1 @@
1
- h1,h2,h3,h4,h5{margin:0}.mfui-calendar{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.mfui-calendar_modern{display:block;height:304px;overflow-x:hidden;overflow-y:scroll;width:364px}.mfui-calendar_modern::-webkit-scrollbar{width:16px}.mfui-calendar_modern::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#d8d8d8;border:6px solid transparent;border-radius:16px}.mfui-calendar_modern::-webkit-scrollbar-thumb:hover{background-color:#999}
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-calendar{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.mfui-calendar_modern{display:block;height:304px;overflow-x:hidden;overflow-y:scroll;width:100%}.mfui-calendar_modern::-webkit-scrollbar{width:4px}.mfui-calendar_modern::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#d8d8d8;border-radius:16px}.mfui-calendar_modern::-webkit-scrollbar-thumb:hover{background-color:#999}
@@ -319,14 +319,14 @@ var Calendar = function Calendar(_ref) {
319
319
  var isNextMonthDisabled = !!maxBookingDate && isSameMonth(new Date(year, month, 1), maxBookingDate);
320
320
  var isCurrentMonth = new Date().getFullYear() === year && new Date().getMonth() === month;
321
321
  return /*#__PURE__*/React.createElement("div", {
322
- ref: isCurrentMonth ? currentMonthRef : null
322
+ ref: isCurrentMonth ? currentMonthRef : null,
323
+ key: "".concat(year, "-").concat(month)
323
324
  }, /*#__PURE__*/React.createElement(Month, {
324
325
  dataAttrs: {
325
326
  root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.month,
326
327
  arrowLeft: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.arrowLeft,
327
328
  arrowRight: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.arrowRight
328
329
  },
329
- key: "".concat(year, "-").concat(month),
330
330
  year: year,
331
331
  weekdayLabels: weekdayLabels,
332
332
  monthLabel: monthLabel,
@@ -1 +1 @@
1
- h1,h2,h3,h4,h5{margin:0}.mfui-day{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;-webkit-box-sizing:content-box;box-sizing:content-box;color:var(--content);cursor:pointer;height:32px;line-height:24px;outline:none;padding:0 10px 8px 0;position:relative;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:32px;-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:12px;line-height:18px}.mfui-day:last-child{padding-right:0}.mfui-day:not(:disabled):not(.mfui-day_active):focus:after,.mfui-day:not(:disabled):not(.mfui-day_active):hover:after,.mfui-day_active-modern:after,.mfui-day_active:after{background-color:var(--spbSky0);border-radius:50%!important;color:var(--content);content:"";height:32px;left:0;position:absolute;top:0;width:32px;z-index:1}.mfui-day_active-modern:after{height:38px;width:38px}.mfui-day_active-modern:hover:after{background-color:var(--brandGreen)!important}.mfui-day:not(:disabled):not(.mfui-day_active):hover:after{background-color:var(--spbSky0);color:var(--content)}.mfui-day:not(:disabled):not(.mfui-day_active):focus:after,.mfui-day_active-modern:after,.mfui-day_active:after{background-color:var(--brandGreen)}.mfui-day_disabled{cursor:default;opacity:.3;pointer-events:none}.mfui-day:not(:disabled):not(.mfui-day_active):focus,.mfui-day_active,.mfui-day_active-modern:after{color:var(--stcWhite)}.mfui-day_active+.mfui-day_active:before,.mfui-day_between:hover+.mfui-day:not(.mfui-day_monday).mfui-day_active:before{background-color:var(--spbSky1);content:"";display:block;height:32px;left:-22px;position:absolute;top:0;width:32px;z-index:-1}.mfui-day_between{border-radius:0;position:relative}.mfui-day_between:before{left:-22px;padding:0 20px}.mfui-day_between:after,.mfui-day_between:before{background-color:var(--spbSky1);content:"";display:block;height:32px;position:absolute;top:0;z-index:-1}.mfui-day_between:after{right:-16px;width:40px}.mfui-day_last,.mfui-day_sunday{border-radius:50%}.mfui-day_last:after,.mfui-day_sunday:after{border-radius:50%;right:10px;width:32px}.mfui-day_last:after{right:0}.mfui-day_first,.mfui-day_monday{border-radius:50%}.mfui-day_first:before,.mfui-day_monday:before{border-radius:50%;left:0;padding:0;width:32px}.mfui-day_sunday.mfui-day_first{border-radius:50%}.mfui-day__label{position:relative;z-index:99}.mfui-day_modern{height:38px;width:38.29px}.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):focus:after,.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):hover:after,.mfui-day_modern_active-modern:after{background-color:var(--spbSky0);border-radius:50%!important;color:var(--content);content:"";height:38px;left:0;position:absolute;top:0;width:38px;z-index:1}.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):hover:after{background-color:var(--spbSky0);color:var(--content)}.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):focus:after,.mfui-day_modern_active-modern:after{background-color:var(--brandGreen)}.mfui-day:not(:disabled):focus,.mfui-day_active-modern{color:var(--stcWhite)}.mfui-day_active-modern+.mfui-day_active-modern:before,.mfui-day_between-modern:hover+.mfui-day:not(.mfui-day_monday-modern).mfui-day_active-modern:before{background-color:var(--spbSky1);content:"";display:block;height:38px;left:-22px;position:absolute;top:0;width:40px;z-index:-1}.mfui-day_between-modern{border-radius:0;position:relative}.mfui-day_between-modern:before{left:-28px;padding:0 29px}.mfui-day_between-modern:after,.mfui-day_between-modern:before{background-color:var(--spbSky1);content:"";display:block;height:38px;position:absolute;top:0;z-index:-1}.mfui-day_between-modern:after{right:-18px;width:45px}.mfui-day_last-modern,.mfui-day_sunday-modern{border-radius:50%}.mfui-day_last-modern:before,.mfui-day_sunday-modern:before{padding-left:20px}.mfui-day_last-modern:after,.mfui-day_sunday-modern:after{border-radius:50%;right:10px;width:38.29px}.mfui-day_last-modern:after{right:0}.mfui-day_first-modern,.mfui-day_monday-modern{border-radius:50%}.mfui-day_first-modern:before,.mfui-day_monday-modern:before{border-radius:50%;left:0;padding:0;width:38px}.mfui-day_sunday-modern.mfui-day_first-modern{border-radius:50%}.mfui-day__label_modern{font-size:15px;font-weight:400;line-height:24px;text-align:center}
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-day{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;-webkit-box-sizing:content-box;box-sizing:content-box;color:var(--content);cursor:pointer;height:32px;line-height:24px;outline:none;padding:0 10px 8px 0;position:relative;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:32px;-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:12px;line-height:18px}.mfui-day:last-child{padding-right:0}.mfui-day:not(:disabled):not(.mfui-day_active):focus:after,.mfui-day:not(:disabled):not(.mfui-day_active):hover:after,.mfui-day_active-modern:after,.mfui-day_active:after{background-color:var(--spbSky0);border-radius:50%!important;color:var(--content);content:"";height:32px;left:0;position:absolute;top:0;width:32px;z-index:1}.mfui-day_active-modern:after{height:38px;width:38px}.mfui-day_active-modern:focus:after,.mfui-day_active-modern:hover:after{background-color:var(--brandGreen)!important;height:38px!important;width:38px!important}.mfui-day:not(:disabled):not(.mfui-day_active):hover:after{background-color:var(--spbSky0);color:var(--content)}.mfui-day:not(:disabled):not(.mfui-day_active):focus:after,.mfui-day_active-modern:after,.mfui-day_active:after{background-color:var(--brandGreen)}.mfui-day_disabled{cursor:default;opacity:.3;pointer-events:none}.mfui-day:not(:disabled):not(.mfui-day_active):focus,.mfui-day_active,.mfui-day_active-modern:after{color:var(--stcWhite)}.mfui-day_active+.mfui-day:not(.mfui-day_monday).mfui-day_active:before,.mfui-day_between:hover+.mfui-day:not(.mfui-day_monday).mfui-day_active:before{background-color:var(--spbSky1);content:"";display:block;height:32px;left:-22px;position:absolute;top:0;width:32px;z-index:-1}.mfui-day_between{border-radius:0;position:relative}.mfui-day_between:before{left:-22px;padding:0 20px}.mfui-day_between:after,.mfui-day_between:before{background-color:var(--spbSky1);content:"";display:block;height:32px;position:absolute;top:0;z-index:-1}.mfui-day_between:after{right:-16px;width:40px}.mfui-day_last,.mfui-day_sunday{border-radius:50%}.mfui-day_last:after,.mfui-day_sunday:after{border-radius:50%;right:10px;width:32px}.mfui-day_last:after{right:0}.mfui-day_first,.mfui-day_monday{border-radius:50%}.mfui-day_first:before,.mfui-day_monday:before{border-radius:50%;left:0;padding:0;width:32px}.mfui-day_sunday.mfui-day_first{border-radius:50%}.mfui-day__label{position:relative;z-index:99}.mfui-day_modern{height:38px;width:100%}.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):focus:after,.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):hover:after,.mfui-day_modern_active-modern:after{background-color:var(--spbSky0);border-radius:50%!important;color:var(--content);content:"";height:38px;left:0;position:absolute;top:0;width:38px;z-index:1}.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):hover:after{background-color:var(--spbSky0);color:var(--content)}.mfui-day_modern:not(:disabled):not(.mfui-day_active-modern):focus:after,.mfui-day_modern_active-modern:after{background-color:var(--brandGreen)}.mfui-day:not(:disabled):focus,.mfui-day_active-modern{color:var(--stcWhite)}.mfui-day_active-modern+.mfui-day:not(.mfui-day_monday-modern).mfui-day_active-modern:before,.mfui-day_between-modern:hover+.mfui-day:not(.mfui-day_monday-modern).mfui-day_active-modern:before{background-color:var(--spbSky1);content:"";display:block;height:38px;left:-22px;position:absolute;top:0;width:40px;z-index:-1}.mfui-day_between-modern{border-radius:0;position:relative}.mfui-day_between-modern:before{left:-20px;padding:0 29px}.mfui-day_between-modern:after,.mfui-day_between-modern:before{background-color:var(--spbSky1);content:"";display:block;height:38px;position:absolute;top:0;z-index:-1}.mfui-day_between-modern:after{right:-12px;width:45px}.mfui-day_last-modern,.mfui-day_sunday-modern{border-radius:50%}.mfui-day_last-modern:before,.mfui-day_sunday-modern:before{padding-left:8px}.mfui-day_last-modern:after,.mfui-day_sunday-modern:after{border-radius:50%;right:10px;width:38.29px}.mfui-day_last-modern:after{right:0}.mfui-day_first-modern,.mfui-day_monday-modern{border-radius:50%}.mfui-day_first-modern:before,.mfui-day_monday-modern:before{border-radius:50%;left:0;padding:0;width:38px}.mfui-day_sunday-modern.mfui-day_first-modern{border-radius:50%}.mfui-day__label_modern{font-size:15px;font-weight:400;line-height:24px;text-align:center}
@@ -1 +1 @@
1
- h1,h2,h3,h4,h5{margin:0}.mfui-month{position:relative;z-index:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:28px 0;width:284px}.mfui-month,.mfui-month__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mfui-month__header{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:20px;text-transform:capitalize;width:282px}.mfui-month__header svg{cursor:pointer;height:24.5px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;fill:var(--content)}.mfui-month__title{font-size:15px;font-weight:500;line-height:24px;text-align:center;width:224px}.mfui-month__weekday-labels{border-bottom:1px solid var(--spbSky1);-webkit-column-gap:22px;-moz-column-gap:22px;column-gap:22px;display:grid;grid-template-columns:repeat(7,1fr);padding-bottom:13px;width:272px}.mfui-month__weekday{color:var(--content);font-size:12px;font-weight:600;height:16px;line-height:18px;line-height:24px;text-align:center;text-transform:capitalize;width:20px}.mfui-month__days{-webkit-column-gap:0;-moz-column-gap:0;column-gap:0;display:grid;grid-template-columns:repeat(7,1fr);margin-top:8px;row-gap:0;width:284px}.mfui-month svg.mfui-month__arrow_disabled{cursor:default;opacity:.5}.mfui-month_modern{padding:0 0 24px;width:344px}.mfui-month_modern .mfui-month__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:16px;text-transform:capitalize;width:328px}.mfui-month_modern .mfui-month__title{font-size:15px;font-weight:500;line-height:24px;margin:0 auto;text-align:center;width:224px}.mfui-month_modern .mfui-month__weekday-labels{border-bottom:none;-webkit-column-gap:8px;-moz-column-gap:8px;column-gap:8px;display:grid;grid-template-columns:repeat(7,1fr);padding-bottom:0;width:328px}.mfui-month_modern .mfui-month__weekday{color:var(--spbSky3);font-size:15px;font-weight:400;height:24px;line-height:24px;margin:0 auto;text-align:center;text-transform:capitalize;width:20px}.mfui-month_modern .mfui-month__days{-webkit-column-gap:0;-moz-column-gap:0;column-gap:0;display:grid;grid-template-columns:repeat(7,1fr);margin-top:10px;row-gap:0;width:328px}
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-month{position:relative;z-index:1;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:28px 0;width:284px}.mfui-month,.mfui-month__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mfui-month__header{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:20px;text-transform:capitalize;width:282px}.mfui-month__header svg{cursor:pointer;height:24.5px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;fill:var(--content)}.mfui-month__title{font-size:15px;font-weight:500;line-height:24px;text-align:center;width:224px}.mfui-month__weekday-labels{border-bottom:1px solid var(--spbSky1);-webkit-column-gap:22px;-moz-column-gap:22px;column-gap:22px;display:grid;grid-template-columns:repeat(7,1fr);padding-bottom:13px;width:272px}.mfui-month__weekday{color:var(--content);font-size:12px;font-weight:600;height:16px;line-height:18px;line-height:24px;text-align:center;text-transform:capitalize;width:20px}.mfui-month__days{-webkit-column-gap:0;-moz-column-gap:0;column-gap:0;display:grid;grid-template-columns:repeat(7,1fr);margin-top:8px;row-gap:0;width:284px}.mfui-month svg.mfui-month__arrow_disabled{cursor:default;opacity:.5}.mfui-month_modern{padding:0 16px 24px 0;width:100%}.mfui-month_modern .mfui-month__header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:16px;text-transform:capitalize;width:100%}.mfui-month_modern .mfui-month__title{font-size:15px;font-weight:500;line-height:24px;margin:0 auto;text-align:center;width:224px}.mfui-month_modern .mfui-month__weekday-labels{border-bottom:none;-webkit-column-gap:8px;-moz-column-gap:8px;column-gap:8px;display:grid;grid-template-columns:repeat(7,1fr);padding-bottom:0;width:100%}.mfui-month_modern .mfui-month__weekday{color:var(--spbSky3);font-size:15px;font-weight:400;height:24px;line-height:24px;margin:0 auto;text-align:center;text-transform:capitalize;width:20px}.mfui-month_modern .mfui-month__days{-webkit-column-gap:0;-moz-column-gap:0;column-gap:0;display:grid;grid-template-columns:repeat(7,1fr);margin-top:10px;row-gap:0;width:100%}
@@ -1 +1 @@
1
- h1,h2,h3,h4,h5{margin:0}.mfui-tooltip{opacity:0;pointer-events:none;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transition-property:opacity,visibility;transition-property:opacity,visibility;visibility:hidden;z-index:100}.mfui-tooltip_open{opacity:1;pointer-events:all;visibility:visible}.mfui-tooltip_paddings_small .mfui-tooltip__content{padding:16px}.mfui-tooltip_paddings_medium .mfui-tooltip__content{padding:24px}.mfui-tooltip__content{overflow:hidden;position:relative;z-index:1}.mfui-tooltip__content-shadow{bottom:0;left:0;position:absolute;right:0;top:0;z-index:-1}.mfui-tooltip__arrow-container{position:absolute}.mfui-tooltip__arrow,.mfui-tooltip__arrow-wrap{height:13px;width:33px}.mfui-tooltip__arrow{display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mfui-tooltip__arrow svg{position:absolute}.mfui-tooltip__arrow-inner{-webkit-filter:drop-shadow(0 2px 9px rgba(0,0,0,.15));filter:drop-shadow(0 2px 9px rgba(0,0,0,.15));fill:var(--base)}.mfui-tooltip__text{font-size:15px;line-height:24px}@media screen and (max-width:767px){.mfui-tooltip__text{font-size:12px;line-height:18px}}.mfui-tooltip__text_margin{margin-top:8px}.mfui-tooltip__button,.mfui-tooltip__close-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:none;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;padding:0}.mfui-tooltip__button{background-color:transparent;color:var(--brandGreen);font-family:inherit;font-size:15px;font-weight:500;line-height:18px;-webkit-transition:.3s;transition:.3s}@media screen and (max-width:767px){.mfui-tooltip__button{font-size:12px;line-height:14px}}.mfui-tooltip__button_margin{margin-top:8px}.mfui-tooltip__button:hover{color:var(--buttonHoverGreen)}.mfui-tooltip__button:hover .mfui-tooltip__button-arrow{fill:var(--buttonHoverGreen)}.mfui-tooltip__button:active{color:var(--buttonDown)}.mfui-tooltip__button:active .mfui-tooltip__button-arrow{fill:var(--buttonDown)}.mfui-tooltip__close-button{position:relative;right:-6px;top:-6px;-webkit-box-pack:center;-ms-flex-pack:center;background-color:var(--spbSky0);border-radius:12px;float:right;height:24px;justify-content:center;-webkit-transition:.3s;transition:.3s;width:24px}.mfui-tooltip__close-button:hover{background-color:var(--spbSky1)}.mfui-tooltip__close-button:active{background-color:var(--spbSky2)}.mfui-tooltip__close-icon{display:block;height:20px;opacity:.5;width:20px;fill:var(--content)}.mfui-tooltip__button-arrow{height:20px;margin-bottom:-2px;min-width:20px;-webkit-transition:.3s;transition:.3s;width:20px;fill:var(--brandGreen)}.mfui-tooltip__addititonal-content_margin{margin-top:16px}@media screen and (max-width:767px){.mfui-tooltip__addititonal-content_margin{margin-top:12px}}.mfui-tooltip_small .mfui-tooltip__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;gap:18px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mfui-tooltip_small .mfui-tooltip__text{font-weight:500}.mfui-tooltip_small .mfui-tooltip__close-button{top:auto}.mfui-tooltip_theme_white .mfui-tooltip__content{border:1px solid var(--stcWhite10)}.mfui-tooltip_theme_blue .mfui-tooltip__arrow:before,.mfui-tooltip_theme_blue .mfui-tooltip__button,.mfui-tooltip_theme_blue .mfui-tooltip__content,.mfui-tooltip_theme_blue .mfui-tooltip__title,.mfui-tooltip_theme_red .mfui-tooltip__arrow:before,.mfui-tooltip_theme_red .mfui-tooltip__button,.mfui-tooltip_theme_red .mfui-tooltip__content,.mfui-tooltip_theme_red .mfui-tooltip__title{color:var(--stcWhite)}.mfui-tooltip_theme_blue .mfui-tooltip__button-arrow,.mfui-tooltip_theme_red .mfui-tooltip__button-arrow{fill:var(--stcWhite)}.mfui-tooltip_theme_blue .mfui-tooltip__button:hover,.mfui-tooltip_theme_red .mfui-tooltip__button:hover{color:var(--buttonHoverGrey)}.mfui-tooltip_theme_blue .mfui-tooltip__button:hover .mfui-tooltip__button-arrow,.mfui-tooltip_theme_red .mfui-tooltip__button:hover .mfui-tooltip__button-arrow{fill:var(--buttonHoverGrey)}.mfui-tooltip_theme_blue .mfui-tooltip__button:active,.mfui-tooltip_theme_red .mfui-tooltip__button:active{color:var(--buttonDown)}.mfui-tooltip_theme_blue .mfui-tooltip__button:active .mfui-tooltip__button-arrow,.mfui-tooltip_theme_red .mfui-tooltip__button:active .mfui-tooltip__button-arrow{fill:var(--buttonDown)}.mfui-tooltip_theme_blue .mfui-tooltip__close-button,.mfui-tooltip_theme_red .mfui-tooltip__close-button{background-color:var(--stcWhite10)}.mfui-tooltip_theme_blue .mfui-tooltip__close-button:hover,.mfui-tooltip_theme_red .mfui-tooltip__close-button:hover{background-color:var(--stcWhite20)}.mfui-tooltip_theme_blue .mfui-tooltip__close-button:active,.mfui-tooltip_theme_red .mfui-tooltip__close-button:active{background-color:var(--stcWhite50)}.mfui-tooltip_theme_blue .mfui-tooltip__close-icon,.mfui-tooltip_theme_red .mfui-tooltip__close-icon{opacity:1;fill:var(--stcWhite)}.mfui-tooltip_theme_red .mfui-tooltip__arrow:before,.mfui-tooltip_theme_red .mfui-tooltip__content,.mfui-tooltip_theme_red .mfui-tooltip__content-shadow{background-color:var(--fury80)}.mfui-tooltip_theme_red .mfui-tooltip__arrow-inner{fill:var(--fury80)}.mfui-tooltip_theme_blue .mfui-tooltip__arrow:before,.mfui-tooltip_theme_blue .mfui-tooltip__content,.mfui-tooltip_theme_blue .mfui-tooltip__content-shadow{background-color:var(--reflexBlue80)}.mfui-tooltip_theme_blue .mfui-tooltip__arrow-inner{fill:var(--reflexBlue80)}.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__content-shadow{-webkit-transform:translateX(24px);transform:translateX(24px)}.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__arrow-wrap{left:3px}.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__arrow-shadow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__content-shadow{-webkit-transform:translateX(-24px);transform:translateX(-24px)}.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__arrow-wrap{right:3px}.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__arrow-shadow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__content-shadow{-webkit-transform:translateY(-24px);transform:translateY(-24px)}.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__arrow-wrap{bottom:13px}.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__arrow-shadow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.mfui-tooltip[data-popper-placement=bottom-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=bottom-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=bottom-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=bottom-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=bottom] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=bottom] .mfui-tooltip__content-shadow{-webkit-transform:translateY(24px);transform:translateY(24px)}.mfui-tooltip[data-popper-placement=bottom-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=bottom-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=bottom] .mfui-tooltip__arrow-wrap{top:13px}.mfui-tooltip[data-popper-escaped=true].mfui-tooltip_has-escape{pointer-events:none;visibility:hidden}
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-tooltip{opacity:0;pointer-events:none;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transition-property:opacity,visibility;transition-property:opacity,visibility;visibility:hidden;z-index:100}.mfui-tooltip_open{opacity:1;pointer-events:all;visibility:visible}.mfui-tooltip_paddings_small .mfui-tooltip__content{padding:16px}.mfui-tooltip_paddings_medium .mfui-tooltip__content{padding:24px}.mfui-tooltip__content{overflow:hidden;position:relative;z-index:1}.mfui-tooltip__content-shadow{bottom:0;left:0;position:absolute;right:0;top:0;z-index:-1}.mfui-tooltip__arrow-container{position:absolute}.mfui-tooltip__arrow,.mfui-tooltip__arrow-wrap{height:13px;width:33px}.mfui-tooltip__arrow{display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.mfui-tooltip__arrow svg{position:absolute}.mfui-tooltip__arrow-inner{-webkit-filter:drop-shadow(0 2px 9px rgba(0,0,0,.15));filter:drop-shadow(0 2px 9px rgba(0,0,0,.15));fill:var(--base)}.mfui-tooltip__text{font-size:15px;line-height:24px}@media screen and (max-width:767px){.mfui-tooltip__text{font-size:12px;line-height:18px}}.mfui-tooltip__text_margin{margin-top:8px}.mfui-tooltip__button,.mfui-tooltip__close-button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:none;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;padding:0}.mfui-tooltip__button{background-color:transparent;color:var(--brandGreen);font-family:inherit;font-size:15px;font-weight:500;line-height:18px;-webkit-transition:.3s;transition:.3s}@media screen and (max-width:767px){.mfui-tooltip__button{font-size:12px;line-height:14px}}.mfui-tooltip__button_margin{margin-top:8px}.mfui-tooltip__button:hover{color:var(--buttonHoverGreen)}.mfui-tooltip__button:hover .mfui-tooltip__button-arrow{fill:var(--buttonHoverGreen)}.mfui-tooltip__button:active{color:var(--buttonDown)}.mfui-tooltip__button:active .mfui-tooltip__button-arrow{fill:var(--buttonDown)}.mfui-tooltip__close-button{position:relative;right:-6px;top:-6px;-webkit-box-pack:center;-ms-flex-pack:center;background-color:var(--spbSky0);border-radius:12px;float:right;height:24px;justify-content:center;-webkit-transition:.3s;transition:.3s;width:24px}.mfui-tooltip__close-button:hover{background-color:var(--spbSky1)}.mfui-tooltip__close-button:active{background-color:var(--spbSky2)}.mfui-tooltip__close-icon{display:block;height:20px;opacity:.5;width:20px;fill:var(--content)}.mfui-tooltip__button-arrow{height:20px;margin-bottom:-2px;min-width:20px;-webkit-transition:.3s;transition:.3s;width:20px;fill:var(--brandGreen)}.mfui-tooltip__addititonal-content_margin{margin-top:16px}@media screen and (max-width:767px){.mfui-tooltip__addititonal-content_margin{margin-top:12px}}.mfui-tooltip_small .mfui-tooltip__content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;gap:18px;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.mfui-tooltip_small .mfui-tooltip__text{font-weight:500}.mfui-tooltip_small .mfui-tooltip__close-button{top:auto}.mfui-tooltip_theme_white .mfui-tooltip__content{border:1px solid var(--stcWhite10)}.mfui-tooltip_theme_blue .mfui-tooltip__arrow:before,.mfui-tooltip_theme_blue .mfui-tooltip__button,.mfui-tooltip_theme_blue .mfui-tooltip__content,.mfui-tooltip_theme_blue .mfui-tooltip__title,.mfui-tooltip_theme_red .mfui-tooltip__arrow:before,.mfui-tooltip_theme_red .mfui-tooltip__button,.mfui-tooltip_theme_red .mfui-tooltip__content,.mfui-tooltip_theme_red .mfui-tooltip__title{color:var(--stcWhite)}.mfui-tooltip_theme_blue .mfui-tooltip__button-arrow,.mfui-tooltip_theme_red .mfui-tooltip__button-arrow{fill:var(--stcWhite)}.mfui-tooltip_theme_blue .mfui-tooltip__button:hover,.mfui-tooltip_theme_red .mfui-tooltip__button:hover{color:var(--buttonHoverGrey)}.mfui-tooltip_theme_blue .mfui-tooltip__button:hover .mfui-tooltip__button-arrow,.mfui-tooltip_theme_red .mfui-tooltip__button:hover .mfui-tooltip__button-arrow{fill:var(--buttonHoverGrey)}.mfui-tooltip_theme_blue .mfui-tooltip__button:active,.mfui-tooltip_theme_red .mfui-tooltip__button:active{color:var(--buttonDown)}.mfui-tooltip_theme_blue .mfui-tooltip__button:active .mfui-tooltip__button-arrow,.mfui-tooltip_theme_red .mfui-tooltip__button:active .mfui-tooltip__button-arrow{fill:var(--buttonDown)}.mfui-tooltip_theme_blue .mfui-tooltip__close-button,.mfui-tooltip_theme_red .mfui-tooltip__close-button{background-color:var(--stcWhite10)}.mfui-tooltip_theme_blue .mfui-tooltip__close-button:hover,.mfui-tooltip_theme_red .mfui-tooltip__close-button:hover{background-color:var(--stcWhite20)}.mfui-tooltip_theme_blue .mfui-tooltip__close-button:active,.mfui-tooltip_theme_red .mfui-tooltip__close-button:active{background-color:var(--stcWhite50)}.mfui-tooltip_theme_blue .mfui-tooltip__close-icon,.mfui-tooltip_theme_red .mfui-tooltip__close-icon{opacity:1;fill:var(--stcWhite)}.mfui-tooltip_theme_red .mfui-tooltip__arrow:before,.mfui-tooltip_theme_red .mfui-tooltip__content,.mfui-tooltip_theme_red .mfui-tooltip__content-shadow{background-color:var(--fury80)}.mfui-tooltip_theme_red .mfui-tooltip__arrow-inner{fill:var(--fury80)}.mfui-tooltip_theme_blue .mfui-tooltip__arrow:before,.mfui-tooltip_theme_blue .mfui-tooltip__content,.mfui-tooltip_theme_blue .mfui-tooltip__content-shadow{background-color:var(--reflexBlue80)}.mfui-tooltip_theme_blue .mfui-tooltip__arrow-inner{fill:var(--reflexBlue80)}.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__content-shadow{-webkit-transform:translateX(24px);transform:translateX(24px)}.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__arrow-wrap{left:3px}.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=right-end] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=right-start] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=right] .mfui-tooltip__arrow-shadow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.mfui-tooltip_offset_small[data-popper-placement=right-end] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=right-end] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=right-start] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=right-start] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=right] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=right] .mfui-tooltip__content-shadow{-webkit-transform:translateX(15px);transform:translateX(15px)}.mfui-tooltip_offset_small[data-popper-placement=right-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=right-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=right] .mfui-tooltip__arrow-wrap{left:-6px}.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__content-shadow{-webkit-transform:translateX(-24px);transform:translateX(-24px)}.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__arrow-wrap{right:3px}.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=left-end] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=left-start] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=left] .mfui-tooltip__arrow-shadow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.mfui-tooltip_offset_small[data-popper-placement=left-end] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=left-end] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=left-start] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=left-start] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=left] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=left] .mfui-tooltip__content-shadow{-webkit-transform:translateX(-15px);transform:translateX(-15px)}.mfui-tooltip_offset_small[data-popper-placement=left-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=left-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=left] .mfui-tooltip__arrow-wrap{right:-6px}.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__content-shadow{-webkit-transform:translateY(-24px);transform:translateY(-24px)}.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__arrow-wrap{bottom:13px}.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=top-end] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=top-start] .mfui-tooltip__arrow-shadow,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__arrow,.mfui-tooltip[data-popper-placement=top] .mfui-tooltip__arrow-shadow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.mfui-tooltip_offset_small[data-popper-placement=top-end] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=top-end] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=top-start] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=top-start] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=top] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=top] .mfui-tooltip__content-shadow{-webkit-transform:translateY(-15px);transform:translateY(-15px)}.mfui-tooltip_offset_small[data-popper-placement=top-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=top-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=top] .mfui-tooltip__arrow-wrap{bottom:4px}.mfui-tooltip[data-popper-placement=bottom-end] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=bottom-end] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=bottom-start] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=bottom-start] .mfui-tooltip__content-shadow,.mfui-tooltip[data-popper-placement=bottom] .mfui-tooltip__content,.mfui-tooltip[data-popper-placement=bottom] .mfui-tooltip__content-shadow{-webkit-transform:translateY(24px);transform:translateY(24px)}.mfui-tooltip[data-popper-placement=bottom-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=bottom-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip[data-popper-placement=bottom] .mfui-tooltip__arrow-wrap{top:13px}.mfui-tooltip_offset_small[data-popper-placement=bottom-end] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=bottom-end] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=bottom-start] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=bottom-start] .mfui-tooltip__content-shadow,.mfui-tooltip_offset_small[data-popper-placement=bottom] .mfui-tooltip__content,.mfui-tooltip_offset_small[data-popper-placement=bottom] .mfui-tooltip__content-shadow{-webkit-transform:translateY(15px);transform:translateY(15px)}.mfui-tooltip_offset_small[data-popper-placement=bottom-end] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=bottom-start] .mfui-tooltip__arrow-wrap,.mfui-tooltip_offset_small[data-popper-placement=bottom] .mfui-tooltip__arrow-wrap{top:4px}.mfui-tooltip[data-popper-escaped=true].mfui-tooltip_has-escape{pointer-events:none;visibility:hidden}
@@ -23,6 +23,10 @@ export declare const Paddings: {
23
23
  readonly MEDIUM: "medium";
24
24
  };
25
25
  type PaddingsType = (typeof Paddings)[keyof typeof Paddings];
26
+ export declare const Offset: {
27
+ readonly SMALL: "small";
28
+ };
29
+ type OffsetType = (typeof Offset)[keyof typeof Offset];
26
30
  export declare const TriggerEvent: {
27
31
  readonly HOVER: "hover";
28
32
  readonly CLICK: "click";
@@ -59,6 +63,8 @@ export interface ITooltipProps {
59
63
  fallbackPlacements?: PlacementType[];
60
64
  /** Размер отступов от контента */
61
65
  paddings?: PaddingsType;
66
+ /** Смещение тултипа относительно триггер-элемента */
67
+ offset?: OffsetType;
62
68
  /** Тип взаимодействия с триггер-элементом для показа тултипа */
63
69
  triggerEvent?: TriggerEventType;
64
70
  /** Реф на элемент, за границы которого тултип не сможет выйти. По умолчанию viewport */
@@ -69,6 +75,8 @@ export interface ITooltipProps {
69
75
  targetElement?: React.RefObject<HTMLElement>;
70
76
  /** Управление состоянием. Компонент поддерживает контроллируемое и неконтроллируемое состояние. */
71
77
  isOpened?: boolean;
78
+ /** Пересчет позиции тултипа в скрытом состоянии при изменении размера окна */
79
+ isHiddenResize?: boolean;
72
80
  /** Отрендерить компонент в корневой элементе страницы body */
73
81
  isPortal?: boolean;
74
82
  /** Рендеринг компонента в указанном селекторе */
@@ -54,6 +54,9 @@ export var Paddings = {
54
54
  SMALL: 'small',
55
55
  MEDIUM: 'medium'
56
56
  };
57
+ export var Offset = {
58
+ SMALL: 'small'
59
+ };
57
60
  export var TriggerEvent = {
58
61
  HOVER: 'hover',
59
62
  CLICK: 'click',
@@ -90,6 +93,7 @@ var Tooltip = function Tooltip(_ref) {
90
93
  fallbackPlacements = _ref$fallbackPlacemen === void 0 ? ['left', 'right', 'top', 'bottom'] : _ref$fallbackPlacemen,
91
94
  _ref$paddings = _ref.paddings,
92
95
  paddings = _ref$paddings === void 0 ? 'small' : _ref$paddings,
96
+ offset = _ref.offset,
93
97
  _ref$triggerEvent = _ref.triggerEvent,
94
98
  triggerEvent = _ref$triggerEvent === void 0 ? 'hover' : _ref$triggerEvent,
95
99
  boundaryElement = _ref.boundaryElement,
@@ -97,6 +101,8 @@ var Tooltip = function Tooltip(_ref) {
97
101
  targetElement = _ref.targetElement,
98
102
  _ref$isOpened = _ref.isOpened,
99
103
  isOpened = _ref$isOpened === void 0 ? false : _ref$isOpened,
104
+ _ref$isHiddenResize = _ref.isHiddenResize,
105
+ isHiddenResize = _ref$isHiddenResize === void 0 ? false : _ref$isHiddenResize,
100
106
  _ref$isPortal = _ref.isPortal,
101
107
  isPortal = _ref$isPortal === void 0 ? false : _ref$isPortal,
102
108
  portalSelector = _ref.portalSelector,
@@ -169,7 +175,7 @@ var Tooltip = function Tooltip(_ref) {
169
175
  name: 'eventListeners',
170
176
  options: {
171
177
  scroll: isOpen,
172
- resize: isOpen
178
+ resize: isHiddenResize || isOpen
173
179
  }
174
180
  }, {
175
181
  name: 'preventOverflow',
@@ -178,7 +184,7 @@ var Tooltip = function Tooltip(_ref) {
178
184
  }
179
185
  }]
180
186
  };
181
- }, [placement, arrowElement, currentBoundary, isOpen, fallbackPlacements]);
187
+ }, [placement, arrowElement, fallbackPlacements, isOpen, isHiddenResize, currentBoundary]);
182
188
  var _usePopper = usePopper(currentTarget, popperElement, options),
183
189
  styles = _usePopper.styles,
184
190
  attributes = _usePopper.attributes,
@@ -312,6 +318,7 @@ var Tooltip = function Tooltip(_ref) {
312
318
  className: cn({
313
319
  theme: theme,
314
320
  paddings: paddings,
321
+ offset: offset,
315
322
  open: isOpen,
316
323
  small: !isBigSize,
317
324
  'has-escape': !targetElement
@@ -0,0 +1 @@
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-upload-field{-webkit-box-sizing:border-box;box-sizing:border-box;max-width:455px;position:relative;width:100%}.mfui-upload-field__input{border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;clip:rect(0 0 0 0);clip-path:inset(100%)}
@@ -0,0 +1,22 @@
1
+ import * as React from 'react';
2
+ import './UploadField.scss';
3
+ export interface IUploadDropField {
4
+ /** Дополнительный класс корневого элемента */
5
+ className?: string;
6
+ /** Обязательность поля */
7
+ required?: boolean;
8
+ /** Заблокированное состояние */
9
+ disabled?: boolean;
10
+ /** Действие при выборе файла */
11
+ onChange: (files: File[]) => void;
12
+ /** Дополнительная информация */
13
+ description?: string;
14
+ /** Дополнительные data атрибуты к внутренним элементам */
15
+ dataAttrs?: {
16
+ root?: Record<string, string>;
17
+ input?: Record<string, string>;
18
+ dropArea?: Record<string, string>;
19
+ };
20
+ }
21
+ declare const UploadField: React.FC<IUploadDropField>;
22
+ export default UploadField;
@@ -0,0 +1,56 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import "core-js/modules/es.symbol.js";
3
+ import "core-js/modules/es.symbol.description.js";
4
+ import "core-js/modules/es.array.from.js";
5
+ import "core-js/modules/es.string.iterator.js";
6
+ import * as React from 'react';
7
+ import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
8
+ import UploadFieldDropArea from "./components/_UploadFieldDropArea/UploadFieldDropArea";
9
+ import "./UploadField.css";
10
+ var cn = cnCreate('mfui-upload-field');
11
+ var UploadField = function UploadField(_ref) {
12
+ var className = _ref.className,
13
+ _ref$required = _ref.required,
14
+ required = _ref$required === void 0 ? false : _ref$required,
15
+ _ref$disabled = _ref.disabled,
16
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
17
+ onChange = _ref.onChange,
18
+ description = _ref.description,
19
+ dataAttrs = _ref.dataAttrs;
20
+ var inputRef = React.useRef(null);
21
+ var handleInputChange = React.useCallback(function (e) {
22
+ var uploadFiles = Array.from(e.target.files || []);
23
+ onChange(uploadFiles);
24
+ e.target.value = '';
25
+ }, [onChange]);
26
+ var handleFileDrop = React.useCallback(function (uploadFiles) {
27
+ onChange(uploadFiles);
28
+ }, [onChange]);
29
+ var handleSelectButtonClick = React.useCallback(function () {
30
+ if (!inputRef || !inputRef.current) {
31
+ return;
32
+ }
33
+ inputRef.current.click();
34
+ }, []);
35
+ return /*#__PURE__*/React.createElement("div", _extends({
36
+ className: cn([className])
37
+ }, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root)), /*#__PURE__*/React.createElement("input", _extends({
38
+ className: cn('input')
39
+ }, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.input), {
40
+ multiple: true,
41
+ type: "file",
42
+ ref: inputRef,
43
+ onChange: handleInputChange,
44
+ disabled: disabled
45
+ })), /*#__PURE__*/React.createElement(UploadFieldDropArea, {
46
+ description: description,
47
+ required: required,
48
+ disabled: disabled,
49
+ onDrop: handleFileDrop,
50
+ onSelectButtonClick: handleSelectButtonClick,
51
+ dataAttrs: {
52
+ root: dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.dropArea
53
+ }
54
+ }));
55
+ };
56
+ export default UploadField;
@@ -0,0 +1 @@
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-upload-field-drop-area{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:8px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:1px dashed var(--spbSky2);border-radius:12px;padding:12px 32px 20px;width:100%}.mfui-upload-field-drop-area__upload-icon{height:40px;width:40px;fill:var(--spbSky3)}.mfui-upload-field-drop-area__content{text-align:center}.mfui-upload-field-drop-area__select-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--brandGreen);cursor:pointer;display:inline-block;font-family:inherit;font-weight:500;margin-right:4px;outline:none;padding:0;text-align:center;text-decoration:none}.mfui-upload-field-drop-area__description{color:var(--spbSky3);font-size:12px;font-weight:400;line-height:18px;text-align:center}.mfui-upload-field-drop-area__select-button:hover{color:var(--buttonHoverGreen)}.mfui-upload-field-drop-area__mark{color:var(--fury)}.mfui-upload-field-drop-area_dragging{border-color:var(--brandGreen)}.mfui-upload-field-drop-area_dragging *{pointer-events:none}.mfui-upload-field-drop-area_disabled{background-color:var(--spbSky0);color:var(--spbSky3)}.mfui-upload-field-drop-area_disabled .mfui-upload-field-drop-area__select-button{color:var(--spbSky3);cursor:not-allowed}.mfui-upload-field-drop-area_disabled .mfui-upload-field-drop-area__mark{color:var(--spbSky3)}
@@ -0,0 +1,21 @@
1
+ import * as React from 'react';
2
+ import './UploadFieldDropArea.scss';
3
+ export interface IUploadFieldDropArea {
4
+ /** Дополнительная информация */
5
+ description?: string;
6
+ /** Обязательность поля */
7
+ required: boolean;
8
+ /** Заблокированное состояние */
9
+ disabled: boolean;
10
+ /** Обработчик события 'drop' */
11
+ onDrop: (files: File[]) => void;
12
+ /** Обработчик нажатия на кнопку выбора файлов */
13
+ onSelectButtonClick: () => void;
14
+ /** Дополнительные data атрибуты к внутренним элементам */
15
+ dataAttrs?: {
16
+ root?: Record<string, string>;
17
+ button?: Record<string, string>;
18
+ };
19
+ }
20
+ declare const UploadFieldDropArea: React.FC<IUploadFieldDropArea>;
21
+ export default UploadFieldDropArea;
@@ -0,0 +1,50 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import "core-js/modules/es.symbol.js";
3
+ import "core-js/modules/es.symbol.description.js";
4
+ import * as React from 'react';
5
+ import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
6
+ import useDragAndDrop from "../useDragAndDrop";
7
+ import "./UploadFieldDropArea.css";
8
+ var CloudUpload = function CloudUpload(props) {
9
+ return /*#__PURE__*/React.createElement("svg", _extends({
10
+ viewBox: "0 0 40 40"
11
+ }, props), /*#__PURE__*/React.createElement("path", {
12
+ d: "M19 36V22l-2.38 3.9-1.71-1L19 18h1.88l4.14 6.85-1.71 1L21 22v14zM8.21 32H14v-2H8.21A4.27 4.27 0 014 25.6a4.27 4.27 0 014.21-4.4h2.07V18a9.94 9.94 0 019.66-10 9.94 9.94 0 019.66 10v1h1a5.49 5.49 0 010 11H26v2h4.6a7.49 7.49 0 001-14.91A11.94 11.94 0 0019.94 6 11.94 11.94 0 008.27 18v1.16h-.06A6.27 6.27 0 002 25.6 6.27 6.27 0 008.21 32z"
13
+ }));
14
+ };
15
+ var cn = cnCreate('mfui-upload-field-drop-area');
16
+ var UploadFieldDropArea = function UploadFieldDropArea(_ref) {
17
+ var description = _ref.description,
18
+ required = _ref.required,
19
+ disabled = _ref.disabled,
20
+ onDrop = _ref.onDrop,
21
+ onSelectButtonClick = _ref.onSelectButtonClick,
22
+ dataAttrs = _ref.dataAttrs;
23
+ var dropAreaRef = React.useRef(null);
24
+ var currentDropAreaRef = !disabled ? dropAreaRef : {
25
+ current: null
26
+ };
27
+ var isDragging = useDragAndDrop(currentDropAreaRef, onDrop);
28
+ return /*#__PURE__*/React.createElement("div", _extends({
29
+ className: cn({
30
+ disabled: disabled,
31
+ dragging: isDragging
32
+ }),
33
+ ref: dropAreaRef
34
+ }, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root)), /*#__PURE__*/React.createElement(CloudUpload, {
35
+ className: cn('upload-icon')
36
+ }), /*#__PURE__*/React.createElement("div", {
37
+ className: cn('content')
38
+ }, /*#__PURE__*/React.createElement("button", _extends({
39
+ className: cn('select-button')
40
+ }, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.button), {
41
+ type: "button",
42
+ disabled: disabled,
43
+ onClick: !disabled ? onSelectButtonClick : undefined
44
+ }), "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0430\u0439\u043B\u044B"), /*#__PURE__*/React.createElement("span", null, "\u0438\u043B\u0438 \u043F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u0435 \u0438\u0445 \u0441\u044E\u0434\u0430", required && /*#__PURE__*/React.createElement("span", {
45
+ className: cn('mark')
46
+ }, "*"))), !!description && /*#__PURE__*/React.createElement("div", {
47
+ className: cn('description')
48
+ }, description));
49
+ };
50
+ export default UploadFieldDropArea;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const useDragAndDrop: (dropAreaRef: React.RefObject<HTMLElement>, onDrop: (files: File[]) => void) => boolean;
3
+ export default useDragAndDrop;
@@ -0,0 +1,50 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
+ import "core-js/modules/es.array.from.js";
3
+ import "core-js/modules/es.string.iterator.js";
4
+ import React from 'react';
5
+ var useDragAndDrop = function useDragAndDrop(dropAreaRef, onDrop) {
6
+ var _React$useState = React.useState(false),
7
+ _React$useState2 = _slicedToArray(_React$useState, 2),
8
+ isDragging = _React$useState2[0],
9
+ setIsDragging = _React$useState2[1];
10
+ var dragEnterHandler = React.useCallback(function (e) {
11
+ e.preventDefault();
12
+ e.stopPropagation();
13
+ setIsDragging(true);
14
+ }, []);
15
+ var dragLeaveHandler = React.useCallback(function (e) {
16
+ e.preventDefault();
17
+ e.stopPropagation();
18
+ setIsDragging(false);
19
+ }, []);
20
+ var dragOverHandler = React.useCallback(function (e) {
21
+ e.preventDefault();
22
+ e.stopPropagation();
23
+ }, []);
24
+ var dropHandler = React.useCallback(function (e) {
25
+ e.preventDefault();
26
+ e.stopPropagation();
27
+ setIsDragging(false);
28
+ if (e.dataTransfer) {
29
+ onDrop(Array.from(e.dataTransfer.files));
30
+ }
31
+ }, [onDrop]);
32
+ React.useEffect(function () {
33
+ if (!dropAreaRef.current) {
34
+ return undefined;
35
+ }
36
+ var dropArea = dropAreaRef.current;
37
+ dropArea.addEventListener('dragenter', dragEnterHandler);
38
+ dropArea.addEventListener('dragleave', dragLeaveHandler);
39
+ dropArea.addEventListener('dragover', dragOverHandler);
40
+ dropArea.addEventListener('drop', dropHandler);
41
+ return function () {
42
+ dropArea.removeEventListener('dragenter', dragEnterHandler);
43
+ dropArea.removeEventListener('dragleave', dragLeaveHandler);
44
+ dropArea.removeEventListener('dragover', dragOverHandler);
45
+ dropArea.removeEventListener('drop', dropHandler);
46
+ };
47
+ }, [dragEnterHandler, dragLeaveHandler, dragOverHandler, dropHandler, dropAreaRef]);
48
+ return isDragging;
49
+ };
50
+ export default useDragAndDrop;
@@ -0,0 +1 @@
1
+ h1,h2,h3,h4,h5{margin:0}.mfui-upload-file-item{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;border-color:var(--spbSky1);border-radius:12px;border-style:solid;border-width:1px;-webkit-box-sizing:border-box;box-sizing:border-box;max-width:455px;padding:12px;width:100%}.mfui-upload-file-item__cancel-icon-box,.mfui-upload-file-item__file-icon-box{-ms-flex-negative:0;flex-shrink:0;height:32px;margin-top:5px;width:32px}.mfui-upload-file-item__cancel-icon-box{background-color:var(--spbSky0);border:none;border-radius:50%;cursor:pointer;padding:0}.mfui-upload-file-item__cancel-icon-box svg{fill:var(--spbSky3)}.mfui-upload-file-item__cancel-icon-box:hover{background-color:var(--spbSky1)}.mfui-upload-file-item__cancel-icon-box:active{background-color:var(--spbSky2)}.mfui-upload-file-item__icon{height:100%;width:100%}.mfui-upload-file-item__content{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;overflow:hidden}.mfui-upload-file-item__name{font-size:15px;font-weight:500;line-height:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.mfui-upload-file-item__description{color:var(--spbSky3);display:-webkit-box;display:-ms-flexbox;display:flex;font-size:12px;font-weight:400;gap:4px;line-height:18px}.mfui-upload-file-item__progress-bar{background-color:var(--spbSky1);border-radius:2px;height:4px;margin-top:12px;width:100%}.mfui-upload-file-item__progress-bar-fill{background-color:var(--brandGreen);border-radius:2px;height:100%;-webkit-transition:width .3s ease;transition:width .3s ease;width:0}.mfui-upload-file-item__service-message{color:var(--content)}.mfui-upload-file-item__error-message{color:var(--fury);cursor:pointer;-webkit-text-decoration-color:var(--fury);text-decoration-color:var(--fury);-webkit-text-decoration-line:underline;text-decoration-line:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;text-underline-offset:2px}.mfui-upload-file-item__error-tooltip{font-size:15px;font-weight:500;line-height:24px;max-width:260px}.mfui-upload-file-item_error{border-color:var(--fury20)}
@@ -0,0 +1,25 @@
1
+ import * as React from 'react';
2
+ import './UploadFileItem.scss';
3
+ export interface IUploadFileItem {
4
+ /** Дополнительный класс корневого элемента */
5
+ className?: string;
6
+ /** Имя файла с расширением */
7
+ fileName: string;
8
+ /** Размер файла в байтах */
9
+ fileSize?: string | number;
10
+ /** Процент загрузки файла */
11
+ loadingProgress?: number;
12
+ /** Сообщение об ошибке */
13
+ errorText?: string;
14
+ /** Проверка файла */
15
+ isChecking?: string;
16
+ /** Обработчик удаления файла */
17
+ onDelete?: (e: React.SyntheticEvent<EventTarget>) => void;
18
+ /** Дополнительные data атрибуты к внутренним элементам */
19
+ dataAttrs?: {
20
+ root?: Record<string, string>;
21
+ deleteButton?: Record<string, string>;
22
+ };
23
+ }
24
+ declare const UploadFileItem: React.FC<IUploadFileItem>;
25
+ export default UploadFileItem;
@@ -0,0 +1,96 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import "core-js/modules/es.function.name.js";
3
+ import * as React from 'react';
4
+ import { cnCreate, filterDataAttrs } from '@megafon/ui-helpers';
5
+ import Tooltip from "../../Tooltip/Tooltip";
6
+ import UploadFileItemIcon from "./components/_UploadFileItemIcon/UploadFileItemIcon";
7
+ import { getReadableFileSize, splitFileName } from "./helpers";
8
+ import "./UploadFileItem.css";
9
+ var CancelIcon = function CancelIcon(props) {
10
+ return /*#__PURE__*/React.createElement("svg", _extends({
11
+ viewBox: "0 0 32 32"
12
+ }, props), /*#__PURE__*/React.createElement("path", {
13
+ className: "CancelIcon__st0",
14
+ d: "M16 14.5L11.5 10 10 11.5l4.5 4.5-4.5 4.5 1.5 1.5 4.5-4.5 4.5 4.5 1.5-1.5-4.5-4.5 4.5-4.5-1.5-1.5-4.5 4.5z"
15
+ }));
16
+ };
17
+ var MAX_PROGRESS = 100;
18
+ var cn = cnCreate('mfui-upload-file-item');
19
+ var UploadFileItem = function UploadFileItem(_ref) {
20
+ var className = _ref.className,
21
+ fileName = _ref.fileName,
22
+ _ref$fileSize = _ref.fileSize,
23
+ fileSize = _ref$fileSize === void 0 ? 0 : _ref$fileSize,
24
+ _ref$loadingProgress = _ref.loadingProgress,
25
+ loadingProgress = _ref$loadingProgress === void 0 ? 0 : _ref$loadingProgress,
26
+ errorText = _ref.errorText,
27
+ _ref$isChecking = _ref.isChecking,
28
+ isChecking = _ref$isChecking === void 0 ? false : _ref$isChecking,
29
+ onDelete = _ref.onDelete,
30
+ dataAttrs = _ref.dataAttrs;
31
+ var tooltipTriggerElement = React.useRef(null);
32
+ var _splitFileName = splitFileName(fileName),
33
+ name = _splitFileName.name,
34
+ extension = _splitFileName.extension;
35
+ var readableFileSize = getReadableFileSize(fileSize);
36
+ var isError = !!errorText;
37
+ var handleDelete = function handleDelete(e) {
38
+ onDelete === null || onDelete === void 0 ? void 0 : onDelete(e);
39
+ };
40
+ var loadingStatusText = function loadingStatusText() {
41
+ if (isChecking) {
42
+ return 'проверка файла…';
43
+ }
44
+ if (loadingProgress === MAX_PROGRESS) {
45
+ return 'файл загружен';
46
+ }
47
+ return "\u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430 ".concat(loadingProgress, "%");
48
+ };
49
+ var renderExtraContent = function renderExtraContent() {
50
+ if (isError) {
51
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", {
52
+ className: cn('error-message'),
53
+ ref: tooltipTriggerElement
54
+ }, "\u041E\u0448\u0438\u0431\u043A\u0430"), /*#__PURE__*/React.createElement(Tooltip, {
55
+ className: cn('error-tooltip'),
56
+ triggerElement: tooltipTriggerElement,
57
+ colorTheme: "blue",
58
+ placement: "bottom"
59
+ }, errorText));
60
+ }
61
+ return /*#__PURE__*/React.createElement("span", {
62
+ className: cn('service-message')
63
+ }, loadingStatusText());
64
+ };
65
+ return /*#__PURE__*/React.createElement("div", _extends({
66
+ className: cn({
67
+ error: isError
68
+ }, [className])
69
+ }, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.root)), /*#__PURE__*/React.createElement("div", {
70
+ className: cn('file-icon-box')
71
+ }, /*#__PURE__*/React.createElement(UploadFileItemIcon, {
72
+ fileExtension: extension,
73
+ className: cn('icon')
74
+ })), /*#__PURE__*/React.createElement("div", {
75
+ className: cn('content')
76
+ }, /*#__PURE__*/React.createElement("div", {
77
+ className: cn('name')
78
+ }, name), /*#__PURE__*/React.createElement("div", {
79
+ className: cn('description')
80
+ }, !!extension && /*#__PURE__*/React.createElement("span", null, extension.toUpperCase()), /*#__PURE__*/React.createElement("span", null, readableFileSize), renderExtraContent()), /*#__PURE__*/React.createElement("div", {
81
+ className: cn('progress-bar')
82
+ }, /*#__PURE__*/React.createElement("div", {
83
+ className: cn('progress-bar-fill'),
84
+ style: {
85
+ width: "".concat(loadingProgress, "%")
86
+ }
87
+ }))), /*#__PURE__*/React.createElement("button", _extends({
88
+ type: "button",
89
+ className: cn('cancel-icon-box')
90
+ }, filterDataAttrs(dataAttrs === null || dataAttrs === void 0 ? void 0 : dataAttrs.deleteButton), {
91
+ onClick: handleDelete
92
+ }), /*#__PURE__*/React.createElement(CancelIcon, {
93
+ className: cn('icon')
94
+ })));
95
+ };
96
+ export default UploadFileItem;
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ export interface IUploadFileItemIcon {
3
+ className?: string;
4
+ fileExtension: string;
5
+ }
6
+ declare const UploadFileItemIcon: React.FC<IUploadFileItemIcon>;
7
+ export default UploadFileItemIcon;