* @function * @memberof Modifiers * @argument {Object} data - The data object generated by update method * @argument {Object} options - Modifiers configuration and options * @returns {Object} The data object, properly modified
(data)
| 4613 | |
| 4614 | |
| 4615 | function keepTogether(data) { |
| 4616 | var _data$offsets = data.offsets, |
| 4617 | popper = _data$offsets.popper, |
| 4618 | reference = _data$offsets.reference; |
| 4619 | var placement = data.placement.split('-')[0]; |
| 4620 | var floor = Math.floor; |
| 4621 | var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; |
| 4622 | var side = isVertical ? 'right' : 'bottom'; |
| 4623 | var opSide = isVertical ? 'left' : 'top'; |
| 4624 | var measurement = isVertical ? 'width' : 'height'; |
| 4625 | |
| 4626 | if (popper[side] < floor(reference[opSide])) { |
| 4627 | data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement]; |
| 4628 | } |
| 4629 | |
| 4630 | if (popper[opSide] > floor(reference[side])) { |
| 4631 | data.offsets.popper[opSide] = floor(reference[side]); |
| 4632 | } |
| 4633 | |
| 4634 | return data; |
| 4635 | } |
| 4636 | /** |
| 4637 | * Converts a string containing value + unit into a px value number |
| 4638 | * @function |
nothing calls this directly
no outgoing calls
no test coverage detected
searching dependent graphs…