vevet 3.0.0-beta.2 → 3.0.0-beta.3

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 (120) hide show
  1. package/lib/cjs/version.js +1 -1
  2. package/lib/esm/Application/events/PageLoad/index.js +28 -54
  3. package/lib/esm/Application/events/PageLoad/index.js.map +1 -1
  4. package/lib/esm/Application/events/Viewport/index.js +107 -180
  5. package/lib/esm/Application/events/Viewport/index.js.map +1 -1
  6. package/lib/esm/Application/index.js +96 -178
  7. package/lib/esm/Application/index.js.map +1 -1
  8. package/lib/esm/base/Callbacks/index.js +45 -78
  9. package/lib/esm/base/Callbacks/index.js.map +1 -1
  10. package/lib/esm/base/Component/index.js +10 -31
  11. package/lib/esm/base/Component/index.js.map +1 -1
  12. package/lib/esm/base/Module/index.js +77 -132
  13. package/lib/esm/base/Module/index.js.map +1 -1
  14. package/lib/esm/base/MutableProps/index.js +30 -49
  15. package/lib/esm/base/MutableProps/index.js.map +1 -1
  16. package/lib/esm/base/Plugin/index.js +13 -35
  17. package/lib/esm/base/Plugin/index.js.map +1 -1
  18. package/lib/esm/components/AnimationFrame/index.js +55 -98
  19. package/lib/esm/components/AnimationFrame/index.js.map +1 -1
  20. package/lib/esm/components/BaseTimeline/index.js +41 -88
  21. package/lib/esm/components/BaseTimeline/index.js.map +1 -1
  22. package/lib/esm/components/Ctx2D/index.js +82 -150
  23. package/lib/esm/components/Ctx2D/index.js.map +1 -1
  24. package/lib/esm/components/Ctx2DPrerender/index.js +20 -54
  25. package/lib/esm/components/Ctx2DPrerender/index.js.map +1 -1
  26. package/lib/esm/components/CustomCursor/index.js +149 -216
  27. package/lib/esm/components/CustomCursor/index.js.map +1 -1
  28. package/lib/esm/components/DraggerBase/index.js +98 -164
  29. package/lib/esm/components/DraggerBase/index.js.map +1 -1
  30. package/lib/esm/components/DraggerDirection/index.js +10 -42
  31. package/lib/esm/components/DraggerDirection/index.js.map +1 -1
  32. package/lib/esm/components/DraggerMove/index.js +42 -83
  33. package/lib/esm/components/DraggerMove/index.js.map +1 -1
  34. package/lib/esm/components/Preloader/index.js +77 -135
  35. package/lib/esm/components/Preloader/index.js.map +1 -1
  36. package/lib/esm/components/ProgressPreloader/index.js +112 -190
  37. package/lib/esm/components/ProgressPreloader/index.js.map +1 -1
  38. package/lib/esm/components/ProgressPreloader/utils/preloadCustomElement.js +9 -10
  39. package/lib/esm/components/ProgressPreloader/utils/preloadCustomElement.js.map +1 -1
  40. package/lib/esm/components/ProgressPreloader/utils/preloadImage.js +3 -3
  41. package/lib/esm/components/ProgressPreloader/utils/preloadImage.js.map +1 -1
  42. package/lib/esm/components/ProgressPreloader/utils/preloadVideo.js +2 -2
  43. package/lib/esm/components/ProgressPreloader/utils/preloadVideo.js.map +1 -1
  44. package/lib/esm/components/ScrollBar/Bar/index.js +90 -136
  45. package/lib/esm/components/ScrollBar/Bar/index.js.map +1 -1
  46. package/lib/esm/components/ScrollBar/index.js +70 -118
  47. package/lib/esm/components/ScrollBar/index.js.map +1 -1
  48. package/lib/esm/components/ScrollView/index.js +103 -154
  49. package/lib/esm/components/ScrollView/index.js.map +1 -1
  50. package/lib/esm/components/SectionScrollProgress/index.js +95 -170
  51. package/lib/esm/components/SectionScrollProgress/index.js.map +1 -1
  52. package/lib/esm/components/SmoothScroll/AnimatonFrame.js +20 -37
  53. package/lib/esm/components/SmoothScroll/AnimatonFrame.js.map +1 -1
  54. package/lib/esm/components/SmoothScroll/Elements.js +42 -59
  55. package/lib/esm/components/SmoothScroll/Elements.js.map +1 -1
  56. package/lib/esm/components/SmoothScroll/index.js +205 -304
  57. package/lib/esm/components/SmoothScroll/index.js.map +1 -1
  58. package/lib/esm/components/SmoothScrollDragPlugin/index.js +48 -86
  59. package/lib/esm/components/SmoothScrollDragPlugin/index.js.map +1 -1
  60. package/lib/esm/components/SmoothScrollKeyboardPlugin/index.js +34 -70
  61. package/lib/esm/components/SmoothScrollKeyboardPlugin/index.js.map +1 -1
  62. package/lib/esm/components/SplitText/index.js +117 -177
  63. package/lib/esm/components/SplitText/index.js.map +1 -1
  64. package/lib/esm/components/Timeline/index.js +45 -88
  65. package/lib/esm/components/Timeline/index.js.map +1 -1
  66. package/lib/esm/utils/common/mergeWithoutArrays.js +1 -1
  67. package/lib/esm/utils/common/mergeWithoutArrays.js.map +1 -1
  68. package/lib/esm/utils/common/normalizedTimeoutCallback.js +3 -3
  69. package/lib/esm/utils/common/normalizedTimeoutCallback.js.map +1 -1
  70. package/lib/esm/utils/common/pickObjectProps.js +2 -2
  71. package/lib/esm/utils/common/pickObjectProps.js.map +1 -1
  72. package/lib/esm/utils/common/times.js +2 -2
  73. package/lib/esm/utils/common/times.js.map +1 -1
  74. package/lib/esm/utils/common/uid.js +3 -4
  75. package/lib/esm/utils/common/uid.js.map +1 -1
  76. package/lib/esm/utils/image/load.js +15 -26
  77. package/lib/esm/utils/image/load.js.map +1 -1
  78. package/lib/esm/utils/image/pathsToProps.js +5 -5
  79. package/lib/esm/utils/image/pathsToProps.js.map +1 -1
  80. package/lib/esm/utils/image/sizesToSrcSet.js +5 -5
  81. package/lib/esm/utils/image/sizesToSrcSet.js.map +1 -1
  82. package/lib/esm/utils/internal/fetchWebpSupport.js +3 -3
  83. package/lib/esm/utils/internal/fetchWebpSupport.js.map +1 -1
  84. package/lib/esm/utils/internal/getDeviceInfo.js +7 -7
  85. package/lib/esm/utils/internal/getDeviceInfo.js.map +1 -1
  86. package/lib/esm/utils/internal/onResize.js +13 -16
  87. package/lib/esm/utils/internal/onResize.js.map +1 -1
  88. package/lib/esm/utils/math/clamp.js +1 -2
  89. package/lib/esm/utils/math/clamp.js.map +1 -1
  90. package/lib/esm/utils/math/clampScope.js +1 -3
  91. package/lib/esm/utils/math/clampScope.js.map +1 -1
  92. package/lib/esm/utils/math/easing.js +1 -5
  93. package/lib/esm/utils/math/easing.js.map +1 -1
  94. package/lib/esm/utils/math/inScope.js +1 -2
  95. package/lib/esm/utils/math/inScope.js.map +1 -1
  96. package/lib/esm/utils/math/lerp.js +3 -4
  97. package/lib/esm/utils/math/lerp.js.map +1 -1
  98. package/lib/esm/utils/math/normalizeNestedScope.js +1 -1
  99. package/lib/esm/utils/math/normalizeNestedScope.js.map +1 -1
  100. package/lib/esm/utils/math/scoped.js +2 -3
  101. package/lib/esm/utils/math/scoped.js.map +1 -1
  102. package/lib/esm/utils/math/spreadScope.js +5 -5
  103. package/lib/esm/utils/math/spreadScope.js.map +1 -1
  104. package/lib/esm/utils/math/wrap.js +2 -2
  105. package/lib/esm/utils/math/wrap.js.map +1 -1
  106. package/lib/esm/utils/scroll/getScrollValues.js +5 -6
  107. package/lib/esm/utils/scroll/getScrollValues.js.map +1 -1
  108. package/lib/esm/utils/scroll/onScroll.js +20 -23
  109. package/lib/esm/utils/scroll/onScroll.js.map +1 -1
  110. package/lib/esm/utils/scroll/scrollTo.js +10 -12
  111. package/lib/esm/utils/scroll/scrollTo.js.map +1 -1
  112. package/lib/esm/utils/scroll/scrollToElement.js +8 -19
  113. package/lib/esm/utils/scroll/scrollToElement.js.map +1 -1
  114. package/lib/esm/version.js +1 -1
  115. package/lib/esm/version.js.map +1 -1
  116. package/lib/esm/vevet.js +1 -1
  117. package/lib/esm/vevet.js.map +1 -1
  118. package/lib/types/version.d.ts +1 -1
  119. package/package.json +2 -2
  120. package/src/version.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- var version = '3.0.0-beta.2';
3
+ var version = '3.0.0-beta.3';
4
4
  exports.default = version;
5
5
  //# sourceMappingURL=version.js.map
@@ -1,80 +1,54 @@
1
- var __extends = (this && this.__extends) || (function () {
2
- var extendStatics = function (d, b) {
3
- extendStatics = Object.setPrototypeOf ||
4
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
- return extendStatics(d, b);
7
- };
8
- return function (d, b) {
9
- if (typeof b !== "function" && b !== null)
10
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
- extendStatics(d, b);
12
- function __() { this.constructor = d; }
13
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
- };
15
- })();
16
1
  import { addEventListener } from 'vevet-dom';
17
2
  import { Callbacks } from '../../../base/Callbacks';
18
3
  /**
19
4
  * Callbacks on page loaded
20
5
  */
21
- var PageLoad = /** @class */ (function (_super) {
22
- __extends(PageLoad, _super);
23
- function PageLoad() {
24
- var _this = _super.call(this, false) || this;
25
- _this._isLoaded = false;
26
- _this._init();
27
- return _this;
6
+ export class PageLoad extends Callbacks {
7
+ /** The page is loaded */
8
+ get isLoaded() {
9
+ return this._isLoaded;
28
10
  }
29
- Object.defineProperty(PageLoad.prototype, "isLoaded", {
30
- /** The page is loaded */
31
- get: function () {
32
- return this._isLoaded;
33
- },
34
- enumerable: false,
35
- configurable: true
36
- });
37
- PageLoad.prototype._init = function () {
38
- _super.prototype._init.call(this);
11
+ constructor() {
12
+ super(false);
13
+ this._isLoaded = false;
14
+ this._init();
15
+ }
16
+ _init() {
17
+ super._init();
39
18
  this._setEvents();
40
- };
41
- PageLoad.prototype._setEvents = function () {
42
- var _this = this;
19
+ }
20
+ _setEvents() {
43
21
  if (document.readyState === 'complete') {
44
22
  this._handleLoaded();
45
23
  return;
46
24
  }
47
- this._loadListener = addEventListener(window, 'load', function () {
48
- return _this._handleLoaded();
49
- });
50
- };
25
+ this._loadListener = addEventListener(window, 'load', () => this._handleLoaded());
26
+ }
51
27
  /** Callback on page loaded */
52
- PageLoad.prototype._handleLoaded = function () {
53
- var app = this.app;
54
- var prefix = app.prefix;
28
+ _handleLoaded() {
29
+ const { app } = this;
30
+ const { prefix } = app;
55
31
  this._isLoaded = true;
56
- app.html.classList.remove("".concat(prefix, "loading"));
57
- app.body.classList.remove("".concat(prefix, "loading"));
58
- app.html.classList.add("".concat(prefix, "loaded"));
32
+ app.html.classList.remove(`${prefix}loading`);
33
+ app.body.classList.remove(`${prefix}loading`);
34
+ app.html.classList.add(`${prefix}loaded`);
59
35
  this.tbt('loaded', undefined);
60
- };
36
+ }
61
37
  /**
62
38
  * Add a callback on page load.
63
39
  * If the page is already loaded, the callback will be immediately triggered.
64
40
  */
65
- PageLoad.prototype.onLoad = function (callback) {
41
+ onLoad(callback) {
66
42
  if (this.isLoaded) {
67
43
  callback();
68
44
  return undefined;
69
45
  }
70
46
  return this.add('loaded', callback.bind(this));
71
- };
72
- PageLoad.prototype.destroy = function () {
47
+ }
48
+ destroy() {
73
49
  var _a;
74
- _super.prototype.destroy.call(this);
50
+ super.destroy();
75
51
  (_a = this._loadListener) === null || _a === void 0 ? void 0 : _a.remove();
76
- };
77
- return PageLoad;
78
- }(Callbacks));
79
- export { PageLoad };
52
+ }
53
+ }
80
54
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/Application/events/PageLoad/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAqB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAK7C;;GAEG;AACH;IAA8B,4BAAoC;IAWhE;QAAA,YACE,kBAAM,KAAK,CAAC,SAKb;QAHC,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,KAAI,CAAC,KAAK,EAAE,CAAC;;IACf,CAAC;IAZD,sBAAI,8BAAQ;QADZ,yBAAyB;aACzB;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;;;OAAA;IAYS,wBAAK,GAAf;QACE,iBAAM,KAAK,WAAE,CAAC;QAEd,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAES,6BAAU,GAApB;QAAA,iBAUC;QATC,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;YACtC,IAAI,CAAC,aAAa,EAAE,CAAC;YAErB,OAAO;SACR;QAED,IAAI,CAAC,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE;YACpD,OAAA,KAAI,CAAC,aAAa,EAAE;QAApB,CAAoB,CACrB,CAAC;IACJ,CAAC;IAED,8BAA8B;IACpB,gCAAa,GAAvB;QACU,IAAA,GAAG,GAAK,IAAI,IAAT,CAAU;QACb,IAAA,MAAM,GAAK,GAAG,OAAR,CAAS;QAEvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAG,MAAM,YAAS,CAAC,CAAC;QAC9C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,UAAG,MAAM,YAAS,CAAC,CAAC;QAE9C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAG,MAAM,WAAQ,CAAC,CAAC;QAE1C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAChC,CAAC;IAED;;;OAGG;IACI,yBAAM,GAAb,UAAc,QAAoB;QAChC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,QAAQ,EAAE,CAAC;YAEX,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAEM,0BAAO,GAAd;;QACE,iBAAM,OAAO,WAAE,CAAC;QAEhB,MAAA,IAAI,CAAC,aAAa,0CAAE,MAAM,EAAE,CAAC;IAC/B,CAAC;IACH,eAAC;AAAD,CAAC,AAvED,CAA8B,SAAS,GAuEtC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/Application/events/PageLoad/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAK7C;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,SAAoC;IAIhE,yBAAyB;IACzB,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAID;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QAEvB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAES,KAAK;QACb,KAAK,CAAC,KAAK,EAAE,CAAC;QAEd,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAES,UAAU;QAClB,IAAI,QAAQ,CAAC,UAAU,KAAK,UAAU,EAAE;YACtC,IAAI,CAAC,aAAa,EAAE,CAAC;YAErB,OAAO;SACR;QAED,IAAI,CAAC,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CACzD,IAAI,CAAC,aAAa,EAAE,CACrB,CAAC;IACJ,CAAC;IAED,8BAA8B;IACpB,aAAa;QACrB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrB,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;QAEvB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC;QAC9C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC;QAE9C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAC;QAE1C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAChC,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,QAAoB;QAChC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,QAAQ,EAAE,CAAC;YAEX,OAAO,SAAS,CAAC;SAClB;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAEM,OAAO;;QACZ,KAAK,CAAC,OAAO,EAAE,CAAC;QAEhB,MAAA,IAAI,CAAC,aAAa,0CAAE,MAAM,EAAE,CAAC;IAC/B,CAAC;CACF"}
@@ -1,175 +1,105 @@
1
- var __extends = (this && this.__extends) || (function () {
2
- var extendStatics = function (d, b) {
3
- extendStatics = Object.setPrototypeOf ||
4
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
- return extendStatics(d, b);
7
- };
8
- return function (d, b) {
9
- if (typeof b !== "function" && b !== null)
10
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
- extendStatics(d, b);
12
- function __() { this.constructor = d; }
13
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
- };
15
- })();
16
1
  import { addEventListener } from 'vevet-dom';
17
2
  import { Callbacks } from '../../../base/Callbacks';
18
3
  import { EOrientationTypes, ESizeTypes } from './types';
19
4
  /**
20
5
  * Callbacks on window resize
21
6
  */
22
- var Viewport = /** @class */ (function (_super) {
23
- __extends(Viewport, _super);
24
- function Viewport() {
25
- var _this = _super.call(this, false) || this;
26
- _this._width = 0;
27
- _this._height = 0;
28
- _this._init();
29
- return _this;
7
+ export class Viewport extends Callbacks {
8
+ get width() {
9
+ return this._width;
30
10
  }
31
- Object.defineProperty(Viewport.prototype, "width", {
32
- get: function () {
33
- return this._width;
34
- },
35
- enumerable: false,
36
- configurable: true
37
- });
38
- Object.defineProperty(Viewport.prototype, "height", {
39
- get: function () {
40
- return this._height;
41
- },
42
- enumerable: false,
43
- configurable: true
44
- });
45
- Object.defineProperty(Viewport.prototype, "radius", {
46
- get: function () {
47
- return Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / 2;
48
- },
49
- enumerable: false,
50
- configurable: true
51
- });
52
- Object.defineProperty(Viewport.prototype, "vw", {
53
- /** VW value */
54
- get: function () {
55
- return this.width / 100;
56
- },
57
- enumerable: false,
58
- configurable: true
59
- });
60
- Object.defineProperty(Viewport.prototype, "vh", {
61
- /** VH value */
62
- get: function () {
63
- return this.height / 100;
64
- },
65
- enumerable: false,
66
- configurable: true
67
- });
68
- Object.defineProperty(Viewport.prototype, "vr", {
69
- /** VR value (viewport radius / 100) */
70
- get: function () {
71
- return this.radius / 100;
72
- },
73
- enumerable: false,
74
- configurable: true
75
- });
76
- Object.defineProperty(Viewport.prototype, "isLandscape", {
77
- /** Width greater than height */
78
- get: function () {
79
- return this.width > this.height;
80
- },
81
- enumerable: false,
82
- configurable: true
83
- });
84
- Object.defineProperty(Viewport.prototype, "isPortrait", {
85
- /** Width less than height */
86
- get: function () {
87
- return this.width < this.height;
88
- },
89
- enumerable: false,
90
- configurable: true
91
- });
92
- Object.defineProperty(Viewport.prototype, "isDesktop", {
93
- /** Is desktop size */
94
- get: function () {
95
- return this.width >= this.app.props.tablet;
96
- },
97
- enumerable: false,
98
- configurable: true
99
- });
100
- Object.defineProperty(Viewport.prototype, "isTablet", {
101
- /** Is tablet size */
102
- get: function () {
103
- return (this.width <= this.app.props.tablet && this.width > this.app.props.phone);
104
- },
105
- enumerable: false,
106
- configurable: true
107
- });
108
- Object.defineProperty(Viewport.prototype, "isPhone", {
109
- /** Is phone size */
110
- get: function () {
111
- return this.width <= this.app.props.phone;
112
- },
113
- enumerable: false,
114
- configurable: true
115
- });
116
- Object.defineProperty(Viewport.prototype, "dpr", {
117
- /**
118
- * Device pixel ratio
119
- */
120
- get: function () {
121
- if (typeof window.devicePixelRatio !== 'undefined') {
122
- return window.devicePixelRatio;
123
- }
11
+ get height() {
12
+ return this._height;
13
+ }
14
+ get radius() {
15
+ return Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / 2;
16
+ }
17
+ /** VW value */
18
+ get vw() {
19
+ return this.width / 100;
20
+ }
21
+ /** VH value */
22
+ get vh() {
23
+ return this.height / 100;
24
+ }
25
+ /** VR value (viewport radius / 100) */
26
+ get vr() {
27
+ return this.radius / 100;
28
+ }
29
+ /** Width greater than height */
30
+ get isLandscape() {
31
+ return this.width > this.height;
32
+ }
33
+ /** Width less than height */
34
+ get isPortrait() {
35
+ return this.width < this.height;
36
+ }
37
+ /** Is desktop size */
38
+ get isDesktop() {
39
+ return this.width >= this.app.props.tablet;
40
+ }
41
+ /** Is tablet size */
42
+ get isTablet() {
43
+ return (this.width <= this.app.props.tablet && this.width > this.app.props.phone);
44
+ }
45
+ /** Is phone size */
46
+ get isPhone() {
47
+ return this.width <= this.app.props.phone;
48
+ }
49
+ /**
50
+ * Device pixel ratio
51
+ */
52
+ get dpr() {
53
+ if (typeof window.devicePixelRatio !== 'undefined') {
54
+ return window.devicePixelRatio;
55
+ }
56
+ return 1;
57
+ }
58
+ /**
59
+ * Device pixel ratio. For non-mobile devices it is always 1.
60
+ */
61
+ get lowerDesktopDpr() {
62
+ if (this.app.isDesktop) {
124
63
  return 1;
125
- },
126
- enumerable: false,
127
- configurable: true
128
- });
129
- Object.defineProperty(Viewport.prototype, "lowerDesktopDpr", {
130
- /**
131
- * Device pixel ratio. For non-mobile devices it is always 1.
132
- */
133
- get: function () {
134
- if (this.app.isDesktop) {
135
- return 1;
136
- }
137
- return this.dpr;
138
- },
139
- enumerable: false,
140
- configurable: true
141
- });
142
- Viewport.prototype._init = function () {
64
+ }
65
+ return this.dpr;
66
+ }
67
+ constructor() {
68
+ super(false);
69
+ this._width = 0;
70
+ this._height = 0;
71
+ this._init();
72
+ }
73
+ _init() {
143
74
  this._updateValues();
144
75
  this._setEvents();
145
- };
76
+ }
146
77
  /** Set events on resize */
147
- Viewport.prototype._setEvents = function () {
148
- var _this = this;
149
- this._resizeListener = addEventListener(window, 'resize', function () {
150
- if (_this._resizeTimeout) {
151
- clearTimeout(_this._resizeTimeout);
152
- _this._resizeTimeout = undefined;
78
+ _setEvents() {
79
+ this._resizeListener = addEventListener(window, 'resize', () => {
80
+ if (this._resizeTimeout) {
81
+ clearTimeout(this._resizeTimeout);
82
+ this._resizeTimeout = undefined;
153
83
  }
154
- _this._resizeTimeout = setTimeout(function () {
155
- _this._onResize();
156
- _this._resizeTimeout = undefined;
157
- }, _this.app.props.resizeDebounce);
84
+ this._resizeTimeout = setTimeout(() => {
85
+ this._onResize();
86
+ this._resizeTimeout = undefined;
87
+ }, this.app.props.resizeDebounce);
158
88
  });
159
- };
89
+ }
160
90
  /** Set viewport values */
161
- Viewport.prototype._updateValues = function () {
162
- var html = this.app.html;
91
+ _updateValues() {
92
+ const { html } = this.app;
163
93
  // set sizes
164
94
  this._width = html.clientWidth;
165
95
  this._height = html.clientHeight;
166
96
  // update states
167
97
  this._updateClassNames();
168
98
  this._updateCSSVars();
169
- };
99
+ }
170
100
  /** Change classes of the document element */
171
- Viewport.prototype._updateClassNames = function () {
172
- var viewportSizeTypes = [
101
+ _updateClassNames() {
102
+ const viewportSizeTypes = [
173
103
  ESizeTypes.Desktop,
174
104
  ESizeTypes.Tablet,
175
105
  ESizeTypes.Phone,
@@ -183,7 +113,7 @@ var Viewport = /** @class */ (function (_super) {
183
113
  else {
184
114
  this._updateBreakpointClassNames(ESizeTypes.Phone, viewportSizeTypes);
185
115
  }
186
- var orientationTypes = [
116
+ const orientationTypes = [
187
117
  EOrientationTypes.Landscape,
188
118
  EOrientationTypes.Portrait,
189
119
  ];
@@ -196,36 +126,35 @@ var Viewport = /** @class */ (function (_super) {
196
126
  else {
197
127
  this._updateBreakpointClassNames('', orientationTypes);
198
128
  }
199
- };
129
+ }
200
130
  /** Change breakpoint classes of the document element */
201
- Viewport.prototype._updateBreakpointClassNames = function (activeType, types) {
202
- var _a = this.app, html = _a.html, prefix = _a.prefix;
203
- types.forEach(function (type) {
131
+ _updateBreakpointClassNames(activeType, types) {
132
+ const { html, prefix } = this.app;
133
+ types.forEach((type) => {
204
134
  if (type === activeType) {
205
- html.classList.add("".concat(prefix, "viewport-").concat(type));
135
+ html.classList.add(`${prefix}viewport-${type}`);
206
136
  }
207
137
  else {
208
- html.classList.remove("".concat(prefix, "viewport-").concat(type));
138
+ html.classList.remove(`${prefix}viewport-${type}`);
209
139
  }
210
140
  });
211
- };
141
+ }
212
142
  /** Update CSS vars */
213
- Viewport.prototype._updateCSSVars = function () {
214
- var html = this.app.html;
215
- html.style.setProperty('--vw', "".concat(this.vw, "px"));
216
- html.style.setProperty('--vh', "".concat(this.vh, "px"));
217
- html.style.setProperty('--vr', "".concat(this.vr, "px"));
218
- };
143
+ _updateCSSVars() {
144
+ const { html } = this.app;
145
+ html.style.setProperty('--vw', `${this.vw}px`);
146
+ html.style.setProperty('--vh', `${this.vh}px`);
147
+ html.style.setProperty('--vr', `${this.vr}px`);
148
+ }
219
149
  /** Launch callbacks on resize. */
220
- Viewport.prototype._onResize = function (
150
+ _onResize(
221
151
  /** force all callbacks */
222
- force) {
223
- if (force === void 0) { force = false; }
224
- var _a = this, prevWidth = _a._width, prevHeight = _a._height;
152
+ force = false) {
153
+ const { _width: prevWidth, _height: prevHeight } = this;
225
154
  this._updateValues();
226
- var _b = this, width = _b.width, height = _b.height;
155
+ const { width, height } = this;
227
156
  // get changes in viewport
228
- var changes = {
157
+ const changes = {
229
158
  isWidthChanged: width !== prevWidth,
230
159
  isHeightChanged: height !== prevHeight,
231
160
  isOrientationChanged: width > height !== prevWidth > prevHeight,
@@ -246,22 +175,20 @@ var Viewport = /** @class */ (function (_super) {
246
175
  this.tbt('height', changes);
247
176
  }
248
177
  this.tbt('any', changes);
249
- };
178
+ }
250
179
  /**
251
180
  * Force launching all callbacks
252
181
  */
253
- Viewport.prototype.forceResize = function () {
182
+ forceResize() {
254
183
  this._onResize(true);
255
- };
256
- Viewport.prototype.destroy = function () {
184
+ }
185
+ destroy() {
257
186
  var _a;
258
- _super.prototype.destroy.call(this);
187
+ super.destroy();
259
188
  if (this._resizeTimeout) {
260
189
  clearTimeout(this._resizeTimeout);
261
190
  }
262
191
  (_a = this._resizeListener) === null || _a === void 0 ? void 0 : _a.remove();
263
- };
264
- return Viewport;
265
- }(Callbacks));
266
- export { Viewport };
192
+ }
193
+ }
267
194
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/Application/events/Viewport/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/Application/events/Viewport/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAa,MAAM,SAAS,CAAC;AAInE;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,SAAoC;IAGhE,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAID,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,SAAA,IAAI,CAAC,KAAK,EAAI,CAAC,CAAA,GAAG,SAAA,IAAI,CAAC,MAAM,EAAI,CAAC,CAAA,CAAC,GAAG,CAAC,CAAC;IAC3D,CAAC;IAED,eAAe;IACf,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;IAC1B,CAAC;IAED,eAAe;IACf,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;IAC3B,CAAC;IAED,uCAAuC;IACvC,IAAI,EAAE;QACJ,OAAO,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;IAC3B,CAAC;IAED,gCAAgC;IAChC,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,6BAA6B;IAC7B,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;IAClC,CAAC;IAED,sBAAsB;IACtB,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;IAC7C,CAAC;IAED,qBAAqB;IACrB,IAAI,QAAQ;QACV,OAAO,CACL,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CACzE,CAAC;IACJ,CAAC;IAED,oBAAoB;IACpB,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,IAAI,GAAG;QACL,IAAI,OAAO,MAAM,CAAC,gBAAgB,KAAK,WAAW,EAAE;YAClD,OAAO,MAAM,CAAC,gBAAgB,CAAC;SAChC;QAED,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACjB,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE;YACtB,OAAO,CAAC,CAAC;SACV;QAED,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAMD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QAEb,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QAEjB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAES,KAAK;QACb,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED,2BAA2B;IACnB,UAAU;QAChB,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE;YAC7D,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAClC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;aACjC;YAED,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;gBACpC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAClC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0BAA0B;IAClB,aAAa;QACnB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAE1B,YAAY;QACZ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;QAEjC,gBAAgB;QAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,6CAA6C;IACrC,iBAAiB;QACvB,MAAM,iBAAiB,GAAiB;YACtC,UAAU,CAAC,OAAO;YAClB,UAAU,CAAC,MAAM;YACjB,UAAU,CAAC,KAAK;SACjB,CAAC;QAEF,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;SACzE;aAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YACxB,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;SACxE;aAAM;YACL,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;SACvE;QAED,MAAM,gBAAgB,GAAwB;YAC5C,iBAAiB,CAAC,SAAS;YAC3B,iBAAiB,CAAC,QAAQ;SAC3B,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,2BAA2B,CAC9B,iBAAiB,CAAC,SAAS,EAC3B,gBAAgB,CACjB,CAAC;SACH;aAAM,IAAI,IAAI,CAAC,UAAU,EAAE;YAC1B,IAAI,CAAC,2BAA2B,CAC9B,iBAAiB,CAAC,QAAQ,EAC1B,gBAAgB,CACjB,CAAC;SACH;aAAM;YACL,IAAI,CAAC,2BAA2B,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;SACxD;IACH,CAAC;IAED,wDAAwD;IAChD,2BAA2B,CAAC,UAAkB,EAAE,KAAe;QACrE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAElC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACrB,IAAI,IAAI,KAAK,UAAU,EAAE;gBACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,MAAM,YAAY,IAAI,EAAE,CAAC,CAAC;aACjD;iBAAM;gBACL,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,MAAM,YAAY,IAAI,EAAE,CAAC,CAAC;aACpD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,sBAAsB;IACd,cAAc;QACpB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,kCAAkC;IAC1B,SAAS;IACf,0BAA0B;IAC1B,KAAK,GAAG,KAAK;QAEb,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAExD,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAE/B,0BAA0B;QAC1B,MAAM,OAAO,GAAuB;YAClC,cAAc,EAAE,KAAK,KAAK,SAAS;YACnC,eAAe,EAAE,MAAM,KAAK,UAAU;YACtC,oBAAoB,EAAE,KAAK,GAAG,MAAM,KAAK,SAAS,GAAG,UAAU;SAChE,CAAC;QAEF,IAAI,KAAK,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,UAAU,CAAC,EAAE;YAC3D,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;SAChC;QACD,IAAI,KAAK,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,KAAK,KAAK,SAAS,CAAC,EAAE;YAC3D,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;SACjC;QACD,IAAI,KAAK,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,UAAU,CAAC,EAAE;YAC3D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAC3B;QACD,IAAI,KAAK,IAAI,KAAK,KAAK,SAAS,EAAE;YAChC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;SAC5B;QACD,IAAI,KAAK,IAAI,MAAM,KAAK,UAAU,EAAE;YAClC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;SAC7B;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,WAAW;QAChB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAEM,OAAO;;QACZ,KAAK,CAAC,OAAO,EAAE,CAAC;QAEhB,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SACnC;QAED,MAAA,IAAI,CAAC,eAAe,0CAAE,MAAM,EAAE,CAAC;IACjC,CAAC;CACF"}