@megafon/ui-core 6.4.4 → 6.6.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 (30) hide show
  1. package/CHANGELOG.md +20 -4
  2. package/dist/es/components/Banner/Banner.css +3 -0
  3. package/dist/es/components/Banner/Banner.d.ts +2 -0
  4. package/dist/es/components/Banner/Banner.js +5 -1
  5. package/dist/es/components/Calendar/Calendar.css +2 -3
  6. package/dist/es/components/Calendar/Calendar.js +2 -2
  7. package/dist/es/components/Calendar/components/Day/Day.css +10 -7
  8. package/dist/es/components/Calendar/components/Month/Month.css +5 -5
  9. package/dist/es/components/Search/Search.css +76 -4
  10. package/dist/es/components/Search/Search.d.ts +15 -2
  11. package/dist/es/components/Search/Search.js +204 -25
  12. package/dist/es/components/Search/i/textarea-resizer.svg +4 -0
  13. package/dist/es/components/Tooltip/Tooltip.css +56 -0
  14. package/dist/es/components/Tooltip/Tooltip.d.ts +8 -0
  15. package/dist/es/components/Tooltip/Tooltip.js +11 -2
  16. package/dist/lib/components/Banner/Banner.css +3 -0
  17. package/dist/lib/components/Banner/Banner.d.ts +2 -0
  18. package/dist/lib/components/Banner/Banner.js +5 -1
  19. package/dist/lib/components/Calendar/Calendar.css +2 -3
  20. package/dist/lib/components/Calendar/Calendar.js +2 -2
  21. package/dist/lib/components/Calendar/components/Day/Day.css +10 -7
  22. package/dist/lib/components/Calendar/components/Month/Month.css +5 -5
  23. package/dist/lib/components/Search/Search.css +76 -4
  24. package/dist/lib/components/Search/Search.d.ts +15 -2
  25. package/dist/lib/components/Search/Search.js +217 -26
  26. package/dist/lib/components/Search/i/textarea-resizer.svg +4 -0
  27. package/dist/lib/components/Tooltip/Tooltip.css +56 -0
  28. package/dist/lib/components/Tooltip/Tooltip.d.ts +8 -0
  29. package/dist/lib/components/Tooltip/Tooltip.js +13 -3
  30. package/package.json +2 -2
@@ -269,6 +269,20 @@
269
269
  -webkit-transform: rotate(-90deg);
270
270
  transform: rotate(-90deg);
271
271
  }
272
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right'] .mfui-v6-tooltip__content,
273
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right-start'] .mfui-v6-tooltip__content,
274
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right-end'] .mfui-v6-tooltip__content,
275
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right'] .mfui-v6-tooltip__content-shadow,
276
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right-start'] .mfui-v6-tooltip__content-shadow,
277
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right-end'] .mfui-v6-tooltip__content-shadow {
278
+ -webkit-transform: translateX(15px);
279
+ transform: translateX(15px);
280
+ }
281
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right'] .mfui-v6-tooltip__arrow-wrap,
282
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right-start'] .mfui-v6-tooltip__arrow-wrap,
283
+ .mfui-v6-tooltip_offset_small[data-popper-placement='right-end'] .mfui-v6-tooltip__arrow-wrap {
284
+ left: -6px;
285
+ }
272
286
  .mfui-v6-tooltip[data-popper-placement='left'] .mfui-v6-tooltip__content,
273
287
  .mfui-v6-tooltip[data-popper-placement='left-start'] .mfui-v6-tooltip__content,
274
288
  .mfui-v6-tooltip[data-popper-placement='left-end'] .mfui-v6-tooltip__content,
@@ -292,6 +306,20 @@
292
306
  -webkit-transform: rotate(90deg);
293
307
  transform: rotate(90deg);
294
308
  }
309
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left'] .mfui-v6-tooltip__content,
310
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left-start'] .mfui-v6-tooltip__content,
311
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left-end'] .mfui-v6-tooltip__content,
312
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left'] .mfui-v6-tooltip__content-shadow,
313
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left-start'] .mfui-v6-tooltip__content-shadow,
314
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left-end'] .mfui-v6-tooltip__content-shadow {
315
+ -webkit-transform: translateX(-15px);
316
+ transform: translateX(-15px);
317
+ }
318
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left'] .mfui-v6-tooltip__arrow-wrap,
319
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left-start'] .mfui-v6-tooltip__arrow-wrap,
320
+ .mfui-v6-tooltip_offset_small[data-popper-placement='left-end'] .mfui-v6-tooltip__arrow-wrap {
321
+ right: -6px;
322
+ }
295
323
  .mfui-v6-tooltip[data-popper-placement='top'] .mfui-v6-tooltip__content,
296
324
  .mfui-v6-tooltip[data-popper-placement='top-start'] .mfui-v6-tooltip__content,
297
325
  .mfui-v6-tooltip[data-popper-placement='top-end'] .mfui-v6-tooltip__content,
@@ -315,6 +343,20 @@
315
343
  -webkit-transform: rotate(180deg);
316
344
  transform: rotate(180deg);
317
345
  }
346
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top'] .mfui-v6-tooltip__content,
347
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top-start'] .mfui-v6-tooltip__content,
348
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top-end'] .mfui-v6-tooltip__content,
349
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top'] .mfui-v6-tooltip__content-shadow,
350
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top-start'] .mfui-v6-tooltip__content-shadow,
351
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top-end'] .mfui-v6-tooltip__content-shadow {
352
+ -webkit-transform: translateY(-15px);
353
+ transform: translateY(-15px);
354
+ }
355
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top'] .mfui-v6-tooltip__arrow-wrap,
356
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top-start'] .mfui-v6-tooltip__arrow-wrap,
357
+ .mfui-v6-tooltip_offset_small[data-popper-placement='top-end'] .mfui-v6-tooltip__arrow-wrap {
358
+ bottom: 4px;
359
+ }
318
360
  .mfui-v6-tooltip[data-popper-placement='bottom'] .mfui-v6-tooltip__content,
319
361
  .mfui-v6-tooltip[data-popper-placement='bottom-start'] .mfui-v6-tooltip__content,
320
362
  .mfui-v6-tooltip[data-popper-placement='bottom-end'] .mfui-v6-tooltip__content,
@@ -329,6 +371,20 @@
329
371
  .mfui-v6-tooltip[data-popper-placement='bottom-end'] .mfui-v6-tooltip__arrow-wrap {
330
372
  top: 13px;
331
373
  }
374
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom'] .mfui-v6-tooltip__content,
375
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom-start'] .mfui-v6-tooltip__content,
376
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom-end'] .mfui-v6-tooltip__content,
377
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom'] .mfui-v6-tooltip__content-shadow,
378
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom-start'] .mfui-v6-tooltip__content-shadow,
379
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom-end'] .mfui-v6-tooltip__content-shadow {
380
+ -webkit-transform: translateY(15px);
381
+ transform: translateY(15px);
382
+ }
383
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom'] .mfui-v6-tooltip__arrow-wrap,
384
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom-start'] .mfui-v6-tooltip__arrow-wrap,
385
+ .mfui-v6-tooltip_offset_small[data-popper-placement='bottom-end'] .mfui-v6-tooltip__arrow-wrap {
386
+ top: 4px;
387
+ }
332
388
  .mfui-v6-tooltip[data-popper-escaped='true'].mfui-v6-tooltip_has-escape {
333
389
  visibility: hidden;
334
390
  pointer-events: none;
@@ -23,6 +23,10 @@ export declare const Paddings: {
23
23
  readonly MEDIUM: "medium";
24
24
  };
25
25
  declare type PaddingsType = typeof Paddings[keyof typeof Paddings];
26
+ export declare const Offset: {
27
+ readonly SMALL: "small";
28
+ };
29
+ declare type OffsetType = typeof Offset[keyof typeof Offset];
26
30
  export declare const TriggerEvent: {
27
31
  readonly HOVER: "hover";
28
32
  readonly CLICK: "click";
@@ -55,6 +59,8 @@ export interface ITooltipProps {
55
59
  hasCloseButton?: boolean;
56
60
  /** Позиционирование относительно триггер-элемента */
57
61
  placement?: PlacementType;
62
+ /** Смещение тултипа относительно триггер-элемента */
63
+ offset?: OffsetType;
58
64
  /** Направления перестроения тултипа при переполнении */
59
65
  fallbackPlacements?: PlacementType[];
60
66
  /** Размер отступов от контента */
@@ -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
  /** Рендеринг компонента в указанном селекторе */
@@ -5,7 +5,7 @@ function _typeof3(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "funct
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports["default"] = exports.testIdPrefix = exports.Size = exports.ColorTheme = exports.TriggerEvent = exports.Paddings = exports.Placement = void 0;
8
+ exports["default"] = exports.testIdPrefix = exports.Size = exports.ColorTheme = exports.TriggerEvent = exports.Offset = exports.Paddings = exports.Placement = void 0;
9
9
 
10
10
  var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
11
 
@@ -89,6 +89,10 @@ var Paddings = {
89
89
  MEDIUM: 'medium'
90
90
  };
91
91
  exports.Paddings = Paddings;
92
+ var Offset = {
93
+ SMALL: 'small'
94
+ };
95
+ exports.Offset = Offset;
92
96
  var TriggerEvent = {
93
97
  HOVER: 'hover',
94
98
  CLICK: 'click',
@@ -126,6 +130,7 @@ var Tooltip = function Tooltip(_ref) {
126
130
  fallbackPlacements = _ref$fallbackPlacemen === void 0 ? ['left', 'right', 'top', 'bottom'] : _ref$fallbackPlacemen,
127
131
  _ref$paddings = _ref.paddings,
128
132
  paddings = _ref$paddings === void 0 ? 'small' : _ref$paddings,
133
+ offset = _ref.offset,
129
134
  _ref$triggerEvent = _ref.triggerEvent,
130
135
  triggerEvent = _ref$triggerEvent === void 0 ? 'hover' : _ref$triggerEvent,
131
136
  boundaryElement = _ref.boundaryElement,
@@ -135,6 +140,8 @@ var Tooltip = function Tooltip(_ref) {
135
140
  isOpened = _ref$isOpened === void 0 ? false : _ref$isOpened,
136
141
  _ref$isPortal = _ref.isPortal,
137
142
  isPortal = _ref$isPortal === void 0 ? false : _ref$isPortal,
143
+ _ref$isHiddenResize = _ref.isHiddenResize,
144
+ isHiddenResize = _ref$isHiddenResize === void 0 ? false : _ref$isHiddenResize,
138
145
  portalSelector = _ref.portalSelector,
139
146
  children = _ref.children,
140
147
  _ref$classes = _ref.classes;
@@ -213,7 +220,7 @@ var Tooltip = function Tooltip(_ref) {
213
220
  name: 'eventListeners',
214
221
  options: {
215
222
  scroll: isOpen,
216
- resize: isOpen
223
+ resize: isHiddenResize || isOpen
217
224
  }
218
225
  }, {
219
226
  name: 'preventOverflow',
@@ -222,7 +229,7 @@ var Tooltip = function Tooltip(_ref) {
222
229
  }
223
230
  }]
224
231
  };
225
- }, [placement, arrowElement, currentBoundary, isOpen, fallbackPlacements]);
232
+ }, [placement, arrowElement, fallbackPlacements, isOpen, isHiddenResize, currentBoundary]);
226
233
 
227
234
  var _usePopper = (0, _reactPopper.usePopper)(currentTarget, popperElement, options),
228
235
  styles = _usePopper.styles,
@@ -369,6 +376,7 @@ var Tooltip = function Tooltip(_ref) {
369
376
  className: cn({
370
377
  theme: theme,
371
378
  paddings: paddings,
379
+ offset: offset,
372
380
  open: isOpen,
373
381
  small: !isBigSize,
374
382
  'has-escape': !targetElement
@@ -434,6 +442,7 @@ Tooltip.propTypes = {
434
442
  placement: _propTypes["default"].oneOf(Object.values(Placement)),
435
443
  fallbackPlacements: _propTypes["default"].arrayOf(_propTypes["default"].oneOf(Object.values(Placement)).isRequired),
436
444
  paddings: _propTypes["default"].oneOf(Object.values(Paddings)),
445
+ offset: _propTypes["default"].oneOf(Object.values(Offset)),
437
446
  triggerEvent: _propTypes["default"].oneOf(Object.values(TriggerEvent)),
438
447
  boundaryElement: _propTypes["default"].oneOfType([_propTypes["default"].func, _propTypes["default"].oneOfType([_propTypes["default"].shape({
439
448
  current: _propTypes["default"].elementType
@@ -459,6 +468,7 @@ Tooltip.propTypes = {
459
468
  }), _propTypes["default"].any])]),
460
469
  isOpened: _propTypes["default"].bool,
461
470
  isPortal: _propTypes["default"].bool,
471
+ isHiddenResize: _propTypes["default"].bool,
462
472
  portalSelector: _propTypes["default"].string,
463
473
  className: _propTypes["default"].string,
464
474
  classes: _propTypes["default"].shape({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@megafon/ui-core",
3
- "version": "6.4.4",
3
+ "version": "6.6.0",
4
4
  "files": [
5
5
  "dist",
6
6
  "styles"
@@ -99,5 +99,5 @@
99
99
  "react-popper": "^2.2.3",
100
100
  "swiper": "^6.5.6"
101
101
  },
102
- "gitHead": "cb2d3e9827cb0754536a50f64c09a3b4a37af255"
102
+ "gitHead": "4210e85614d7e10a1d7c6b9af974dc82c4beadb7"
103
103
  }