Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 

99 wiersze
2.7 KiB

  1. 'use strict';
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. var _constant = require('./constant');
  6. var getScrollPosition = function getScrollPosition() {
  7. var position = {
  8. x: document.documentElement.scrollLeft || document.body.scrollLeft || 0,
  9. y: document.documentElement.scrollTop || document.body.scrollTop || 0
  10. };
  11. return position;
  12. };
  13. var mousePosition = function mousePosition(e) {
  14. var event = e || window.event;
  15. var xPos = void 0;
  16. var scrollPosition = getScrollPosition();
  17. if (event.pageX) {
  18. xPos = event.pageX;
  19. } else if (event.clientX + scrollPosition.x - document.body.clientLeft) {
  20. xPos = event.clientX + scrollPosition.x - document.body.clientLeft;
  21. } else if (event.touches[0]) {
  22. xPos = event.touches[0].clientX;
  23. } else {
  24. xPos = event.changedTouches[0].clientX;
  25. }
  26. var yPos = void 0;
  27. if (event.pageY) {
  28. yPos = event.pageY;
  29. } else if (event.clientY + scrollPosition.y - document.body.clientTop) {
  30. yPos = event.clientY + scrollPosition.y - document.body.clientTop;
  31. } else if (event.touches[0]) {
  32. yPos = event.touches[0].clientY;
  33. } else {
  34. yPos = event.changedTouches[0].clientY;
  35. }
  36. return {
  37. x: xPos,
  38. y: yPos
  39. };
  40. };
  41. var disableMouseDown = function disableMouseDown(e) {
  42. var event = e || window.event;
  43. event.preventDefault();
  44. event.stopPropagation();
  45. };
  46. var browserStyles = function browserStyles(type, style) {
  47. return _constant.BROWSER_COMPATIBLE.reduce(function (dict, browser) {
  48. var key = browser ? '' + browser + type[0].toUpperCase() + type.slice(1) : type;
  49. dict[key] = style;
  50. return dict;
  51. }, {});
  52. };
  53. var getRotateStyle = function getRotateStyle(degree) {
  54. return browserStyles('transform', 'rotate(' + degree + 'deg)');
  55. };
  56. var getInlineRotateStyle = function getInlineRotateStyle(degree) {
  57. return browserStyles('transform', 'translateX(-50%) rotate(' + degree + 'deg)');
  58. };
  59. var getInitialPointerStyle = function getInitialPointerStyle(height, top, degree) {
  60. return Object.assign({
  61. height: height + 'px',
  62. top: top + 'px'
  63. }, browserStyles('transform', 'translateX(-50%) rotate(' + degree + 'deg)'));
  64. };
  65. var getStandardAbsolutePosition = function getStandardAbsolutePosition(position, minPosition, maxPosition) {
  66. var p = position;
  67. if (p < minPosition) {
  68. p = minPosition;
  69. }
  70. if (p > maxPosition) {
  71. p = maxPosition;
  72. }
  73. return p;
  74. };
  75. var degree2Radian = function degree2Radian(degree) {
  76. return degree * (2 * Math.PI) / 360;
  77. };
  78. exports.default = {
  79. degree2Radian: degree2Radian,
  80. mousePosition: mousePosition,
  81. disableMouseDown: disableMouseDown,
  82. rotateStyle: getRotateStyle,
  83. inlineRotateStyle: getInlineRotateStyle,
  84. initialPointerStyle: getInitialPointerStyle,
  85. validatePosition: getStandardAbsolutePosition
  86. };