vevet 2.7.1 → 2.10.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.
- package/README.md +2 -1
- package/build/cdn/index.js +1 -1
- package/build/cjs/app/events/Viewport.js +19 -0
- package/build/cjs/base/Callbacks.js +1 -1
- package/build/cjs/utils/common/id.js +12 -0
- package/build/cjs/utils/common/index.js +3 -3
- package/build/cjs/utils/common/orderId.js +12 -0
- package/build/cjs/utils/common/randID.js +1 -1
- package/build/cjs/utils/listeners/onScroll.js +2 -2
- package/build/es/app/events/Viewport.js +11 -0
- package/build/es/base/Callbacks.js +2 -2
- package/build/es/utils/common/id.js +8 -0
- package/build/es/utils/common/index.js +2 -2
- package/build/es/utils/common/orderId.js +8 -0
- package/build/es/utils/common/randID.js +1 -1
- package/build/es/utils/listeners/onScroll.js +3 -3
- package/build/types/app/events/Viewport.d.ts +9 -0
- package/build/types/app/events/Viewport.d.ts.map +1 -1
- package/build/types/utils/common/id.d.ts +5 -0
- package/build/types/utils/common/id.d.ts.map +1 -0
- package/build/types/utils/common/index.d.ts +2 -2
- package/build/types/utils/common/index.d.ts.map +1 -1
- package/build/types/utils/common/orderId.d.ts +5 -0
- package/build/types/utils/common/orderId.d.ts.map +1 -0
- package/package.json +14 -6
- package/src/ts/app/events/Viewport.ts +16 -0
- package/src/ts/base/Callbacks.ts +2 -2
- package/src/ts/utils/common/id.ts +11 -0
- package/src/ts/utils/common/index.ts +2 -2
- package/src/ts/utils/listeners/onScroll.ts +3 -3
- package/build/cjs/utils/scroll/to.js +0 -41
- package/build/es/utils/scroll/to.js +0 -34
- package/build/types/utils/scroll/to.d.ts +0 -28
- package/build/types/utils/scroll/to.d.ts.map +0 -1
- package/src/ts/utils/common/randID.ts +0 -9
|
@@ -45,6 +45,7 @@ var Viewport = /** @class */ (function (_super) {
|
|
|
45
45
|
var _this = _super.call(this, false) || this;
|
|
46
46
|
_this._width = 0;
|
|
47
47
|
_this._height = 0;
|
|
48
|
+
_this._radius = 0;
|
|
48
49
|
_this._prevSize = { w: 0, h: 0 };
|
|
49
50
|
_this._isDesktop = false;
|
|
50
51
|
_this._isTablet = false;
|
|
@@ -66,6 +67,13 @@ var Viewport = /** @class */ (function (_super) {
|
|
|
66
67
|
enumerable: false,
|
|
67
68
|
configurable: true
|
|
68
69
|
});
|
|
70
|
+
Object.defineProperty(Viewport.prototype, "radius", {
|
|
71
|
+
get: function () {
|
|
72
|
+
return Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / 2;
|
|
73
|
+
},
|
|
74
|
+
enumerable: false,
|
|
75
|
+
configurable: true
|
|
76
|
+
});
|
|
69
77
|
Object.defineProperty(Viewport.prototype, "vw", {
|
|
70
78
|
/**
|
|
71
79
|
* Get VW value
|
|
@@ -86,6 +94,16 @@ var Viewport = /** @class */ (function (_super) {
|
|
|
86
94
|
enumerable: false,
|
|
87
95
|
configurable: true
|
|
88
96
|
});
|
|
97
|
+
Object.defineProperty(Viewport.prototype, "vr", {
|
|
98
|
+
/**
|
|
99
|
+
* Get VR value (viewport radius / 100)
|
|
100
|
+
*/
|
|
101
|
+
get: function () {
|
|
102
|
+
return this.radius / 100;
|
|
103
|
+
},
|
|
104
|
+
enumerable: false,
|
|
105
|
+
configurable: true
|
|
106
|
+
});
|
|
89
107
|
Object.defineProperty(Viewport.prototype, "prevSize", {
|
|
90
108
|
/**
|
|
91
109
|
* Get previous Viewport size
|
|
@@ -259,6 +277,7 @@ var Viewport = /** @class */ (function (_super) {
|
|
|
259
277
|
var html = this._app.html;
|
|
260
278
|
html.style.setProperty('--vw', "".concat(this.vw, "px"));
|
|
261
279
|
html.style.setProperty('--vh', "".concat(this.vh, "px"));
|
|
280
|
+
html.style.setProperty('--vr', "".concat(this.vr, "px"));
|
|
262
281
|
};
|
|
263
282
|
/**
|
|
264
283
|
* Launch callbacks on resize.
|
|
@@ -72,7 +72,7 @@ var Callbacks = /** @class */ (function () {
|
|
|
72
72
|
*/
|
|
73
73
|
Callbacks.prototype.add = function (target, func, data) {
|
|
74
74
|
if (data === void 0) { data = {}; }
|
|
75
|
-
var id = (0, common_1.
|
|
75
|
+
var id = (0, common_1.id)('callback');
|
|
76
76
|
var obj = {
|
|
77
77
|
id: id,
|
|
78
78
|
on: true,
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var index = 0;
|
|
4
|
+
/**
|
|
5
|
+
* Generate an ID
|
|
6
|
+
*/
|
|
7
|
+
function id(prefix) {
|
|
8
|
+
if (prefix === void 0) { prefix = 'id'; }
|
|
9
|
+
index += 1;
|
|
10
|
+
return "".concat(prefix, "_").concat(index);
|
|
11
|
+
}
|
|
12
|
+
exports.default = id;
|
|
@@ -3,9 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.timeoutCallback = exports.mergeWithoutArrays = exports.
|
|
7
|
-
var
|
|
8
|
-
exports.
|
|
6
|
+
exports.timeoutCallback = exports.mergeWithoutArrays = exports.id = void 0;
|
|
7
|
+
var id_1 = __importDefault(require("./id"));
|
|
8
|
+
exports.id = id_1.default;
|
|
9
9
|
var mergeWithoutArrays_1 = __importDefault(require("./mergeWithoutArrays"));
|
|
10
10
|
exports.mergeWithoutArrays = mergeWithoutArrays_1.default;
|
|
11
11
|
var timeoutCallback_1 = __importDefault(require("./timeoutCallback"));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var index = 0;
|
|
4
|
+
/**
|
|
5
|
+
* Generate a random ID
|
|
6
|
+
*/
|
|
7
|
+
function orderId(prefix) {
|
|
8
|
+
if (prefix === void 0) { prefix = 'id'; }
|
|
9
|
+
index += 1;
|
|
10
|
+
return "".concat(prefix, "_").concat(index);
|
|
11
|
+
}
|
|
12
|
+
exports.default = orderId;
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
5
5
|
*/
|
|
6
6
|
function randID(prefix) {
|
|
7
7
|
if (prefix === void 0) { prefix = 'id'; }
|
|
8
|
-
var id = "".concat(+new Date(), "_").concat(Math.round(Math.random() *
|
|
8
|
+
var id = "".concat(+new Date(), "_").concat(Math.round(Math.random() * 1));
|
|
9
9
|
return "".concat(prefix, "_").concat(id);
|
|
10
10
|
}
|
|
11
11
|
exports.default = randID;
|
|
@@ -11,7 +11,7 @@ function onScroll(_a) {
|
|
|
11
11
|
var container = _a.container, callback = _a.callback, _b = _a.isPassive, isPassive = _b === void 0 ? false : _b;
|
|
12
12
|
// check if listeners for this element already exist
|
|
13
13
|
var instance = instances.find(function (data) { return (data.container === container && data.isPassive === isPassive); });
|
|
14
|
-
var callbackId = (0, common_1.
|
|
14
|
+
var callbackId = (0, common_1.id)('scroll-event');
|
|
15
15
|
// if a listener exists, we just add a new callback to its stack
|
|
16
16
|
if (instance) {
|
|
17
17
|
instance.callbacks.push({
|
|
@@ -22,7 +22,7 @@ function onScroll(_a) {
|
|
|
22
22
|
else {
|
|
23
23
|
// otherwise we create a new instance
|
|
24
24
|
instance = {
|
|
25
|
-
id: (0, common_1.
|
|
25
|
+
id: (0, common_1.id)('scroll-event-instance'),
|
|
26
26
|
container: container,
|
|
27
27
|
callbacks: [{
|
|
28
28
|
id: callbackId,
|
|
@@ -26,6 +26,7 @@ export class Viewport extends Callbacks {
|
|
|
26
26
|
super(false);
|
|
27
27
|
this._width = 0;
|
|
28
28
|
this._height = 0;
|
|
29
|
+
this._radius = 0;
|
|
29
30
|
this._prevSize = { w: 0, h: 0 };
|
|
30
31
|
this._isDesktop = false;
|
|
31
32
|
this._isTablet = false;
|
|
@@ -38,6 +39,9 @@ export class Viewport extends Callbacks {
|
|
|
38
39
|
get height() {
|
|
39
40
|
return this._height;
|
|
40
41
|
}
|
|
42
|
+
get radius() {
|
|
43
|
+
return Math.sqrt(Math.pow(this.width, 2) + Math.pow(this.height, 2)) / 2;
|
|
44
|
+
}
|
|
41
45
|
/**
|
|
42
46
|
* Get VW value
|
|
43
47
|
*/
|
|
@@ -50,6 +54,12 @@ export class Viewport extends Callbacks {
|
|
|
50
54
|
get vh() {
|
|
51
55
|
return this.height / 100;
|
|
52
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Get VR value (viewport radius / 100)
|
|
59
|
+
*/
|
|
60
|
+
get vr() {
|
|
61
|
+
return this.radius / 100;
|
|
62
|
+
}
|
|
53
63
|
/**
|
|
54
64
|
* Get previous Viewport size
|
|
55
65
|
*/
|
|
@@ -190,6 +200,7 @@ export class Viewport extends Callbacks {
|
|
|
190
200
|
const { html } = this._app;
|
|
191
201
|
html.style.setProperty('--vw', `${this.vw}px`);
|
|
192
202
|
html.style.setProperty('--vh', `${this.vh}px`);
|
|
203
|
+
html.style.setProperty('--vr', `${this.vr}px`);
|
|
193
204
|
}
|
|
194
205
|
/**
|
|
195
206
|
* Launch callbacks on resize.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { timeoutCallback,
|
|
1
|
+
import { timeoutCallback, id as orderId } from '../utils/common';
|
|
2
2
|
/**
|
|
3
3
|
* A class for callbacks' manipulation.
|
|
4
4
|
*/
|
|
@@ -52,7 +52,7 @@ export class Callbacks {
|
|
|
52
52
|
* });
|
|
53
53
|
*/
|
|
54
54
|
add(target, func, data = {}) {
|
|
55
|
-
const id =
|
|
55
|
+
const id = orderId('callback');
|
|
56
56
|
const obj = {
|
|
57
57
|
id,
|
|
58
58
|
on: true,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import id from './id';
|
|
2
2
|
import mergeWithoutArrays from './mergeWithoutArrays';
|
|
3
3
|
import timeoutCallback from './timeoutCallback';
|
|
4
|
-
export {
|
|
4
|
+
export { id, mergeWithoutArrays, timeoutCallback, };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { addEventListener, selectOne } from 'vevet-dom';
|
|
2
2
|
import { SmoothScroll } from '../../components/scroll/smooth-scroll/SmoothScroll';
|
|
3
|
-
import {
|
|
3
|
+
import { id as orderId } from '../common';
|
|
4
4
|
let instances = [];
|
|
5
5
|
/**
|
|
6
6
|
* Add OnScroll event
|
|
@@ -8,7 +8,7 @@ let instances = [];
|
|
|
8
8
|
export default function onScroll({ container, callback, isPassive = false, }) {
|
|
9
9
|
// check if listeners for this element already exist
|
|
10
10
|
let instance = instances.find((data) => (data.container === container && data.isPassive === isPassive));
|
|
11
|
-
const callbackId =
|
|
11
|
+
const callbackId = orderId('scroll-event');
|
|
12
12
|
// if a listener exists, we just add a new callback to its stack
|
|
13
13
|
if (instance) {
|
|
14
14
|
instance.callbacks.push({
|
|
@@ -19,7 +19,7 @@ export default function onScroll({ container, callback, isPassive = false, }) {
|
|
|
19
19
|
else {
|
|
20
20
|
// otherwise we create a new instance
|
|
21
21
|
instance = {
|
|
22
|
-
id:
|
|
22
|
+
id: orderId('scroll-event-instance'),
|
|
23
23
|
container,
|
|
24
24
|
callbacks: [{
|
|
25
25
|
id: callbackId,
|
|
@@ -58,6 +58,11 @@ export declare class Viewport extends Callbacks<NViewport.CallbacksTypes> {
|
|
|
58
58
|
*/
|
|
59
59
|
protected _height: number;
|
|
60
60
|
get height(): number;
|
|
61
|
+
/**
|
|
62
|
+
* Current Viewport radius
|
|
63
|
+
*/
|
|
64
|
+
protected _radius: number;
|
|
65
|
+
get radius(): number;
|
|
61
66
|
/**
|
|
62
67
|
* Get VW value
|
|
63
68
|
*/
|
|
@@ -66,6 +71,10 @@ export declare class Viewport extends Callbacks<NViewport.CallbacksTypes> {
|
|
|
66
71
|
* Get VH value
|
|
67
72
|
*/
|
|
68
73
|
get vh(): number;
|
|
74
|
+
/**
|
|
75
|
+
* Get VR value (viewport radius / 100)
|
|
76
|
+
*/
|
|
77
|
+
get vr(): number;
|
|
69
78
|
/**
|
|
70
79
|
* Previous Viewport size
|
|
71
80
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../../../src/ts/app/events/Viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,yBAAiB,SAAS,CAAC;IAEvB;;OAEG;IACH,UAAiB,OAAO;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;QACvB,kBAAkB,EAAE,OAAO,CAAC;KAC/B;IAED;;OAEG;IACH,UAAiB,cAAe,SAAQ,UAAU,CAAC,cAAc;QAC7D;;WAEG;QACH,GAAG,EAAE,OAAO,CAAC;QACb;;WAEG;QACH,GAAG,EAAE,OAAO,CAAC;QACb;;WAEG;QACH,IAAI,EAAE,OAAO,CAAC;QACd;;WAEG;QACH,IAAI,EAAE,OAAO,CAAA;QACb;;WAEG;QACH,IAAI,EAAE,OAAO,CAAC;QACd;;WAEG;QACH,IAAI,EAAE,OAAO,CAAC;QACd;;WAEG;QACH,EAAE,EAAE,OAAO,CAAC;KACf;CAEJ;AAqBD;;;GAGG;AACH,qBAAa,QAAS,SAAQ,SAAS,CACnC,SAAS,CAAC,cAAc,CAC3B;IACG;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,IAAI,KAAK,WAER;IAED;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,IAAI,MAAM,WAET;IAED;;OAEG;IACH,IAAI,EAAE,WAEL;IACD;;OAEG;IACH,IAAI,EAAE,WAEL;IAED;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE;QACjB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;IAEF;;OAEG;IACH,IAAI,QAAQ;;;MAEX;IAED;;OAEG;IACH,IAAI,WAAW,YAEd;IAED;;OAEG;IACH,IAAI,UAAU,YAEb;IAED;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;IAC9B,IAAI,SAAS,YAEZ;IAED;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC;IAC7B,IAAI,QAAQ,YAEX;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC5B,IAAI,OAAO,YAEV;IAED;;OAEG;IACH,IAAI,GAAG,WAKN;IAED;;OAEG;IACH,IAAI,eAAe,WAKlB;IAED,SAAS,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;;
|
|
1
|
+
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../../../src/ts/app/events/Viewport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,yBAAiB,SAAS,CAAC;IAEvB;;OAEG;IACH,UAAiB,OAAO;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,aAAa,EAAE,OAAO,CAAC;QACvB,kBAAkB,EAAE,OAAO,CAAC;KAC/B;IAED;;OAEG;IACH,UAAiB,cAAe,SAAQ,UAAU,CAAC,cAAc;QAC7D;;WAEG;QACH,GAAG,EAAE,OAAO,CAAC;QACb;;WAEG;QACH,GAAG,EAAE,OAAO,CAAC;QACb;;WAEG;QACH,IAAI,EAAE,OAAO,CAAC;QACd;;WAEG;QACH,IAAI,EAAE,OAAO,CAAA;QACb;;WAEG;QACH,IAAI,EAAE,OAAO,CAAC;QACd;;WAEG;QACH,IAAI,EAAE,OAAO,CAAC;QACd;;WAEG;QACH,EAAE,EAAE,OAAO,CAAC;KACf;CAEJ;AAqBD;;;GAGG;AACH,qBAAa,QAAS,SAAQ,SAAS,CACnC,SAAS,CAAC,cAAc,CAC3B;IACG;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,IAAI,KAAK,WAER;IAED;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,IAAI,MAAM,WAET;IAED;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,IAAI,MAAM,WAET;IAED;;OAEG;IACH,IAAI,EAAE,WAEL;IACD;;OAEG;IACH,IAAI,EAAE,WAEL;IACD;;OAEG;IACH,IAAI,EAAE,WAEL;IAED;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE;QACjB,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;IAEF;;OAEG;IACH,IAAI,QAAQ;;;MAEX;IAED;;OAEG;IACH,IAAI,WAAW,YAEd;IAED;;OAEG;IACH,IAAI,UAAU,YAEb;IAED;;OAEG;IACH,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;IAC9B,IAAI,SAAS,YAEZ;IAED;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC;IAC7B,IAAI,QAAQ,YAEX;IAED;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC5B,IAAI,OAAO,YAEV;IAED;;OAEG;IACH,IAAI,GAAG,WAKN;IAED;;OAEG;IACH,IAAI,eAAe,WAKlB;IAED,SAAS,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;;IAiB9D,SAAS,CAAC,YAAY;IAMtB,SAAS,CAAC,UAAU;IAapB;;OAEG;IACH,SAAS,CAAC,UAAU;IA0BpB;;OAEG;IACH,SAAS,CAAC,cAAc;IA4CxB;;OAEG;IACH,SAAS,CAAC,wBAAwB,CAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EAAE;IAenB;;OAEG;IACH,SAAS,CAAC,cAAc;IASxB;;OAEG;IACH,SAAS,CAAC,SAAS;IACf;;OAEG;IACH,KAAK,UAAQ;IA6CjB;;OAEG;IACI,WAAW;CAGrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id.d.ts","sourceRoot":"","sources":["../../../../src/ts/utils/common/id.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,EAAE,CACtB,MAAM,SAAO,UAIhB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import id from './id';
|
|
2
2
|
import mergeWithoutArrays from './mergeWithoutArrays';
|
|
3
3
|
import timeoutCallback from './timeoutCallback';
|
|
4
|
-
export {
|
|
4
|
+
export { id, mergeWithoutArrays, timeoutCallback, };
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ts/utils/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ts/utils/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EACH,EAAE,EACF,kBAAkB,EAClB,eAAe,GAClB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orderId.d.ts","sourceRoot":"","sources":["../../../../src/ts/utils/common/orderId.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAC3B,MAAM,SAAO,UAIhB"}
|
package/package.json
CHANGED
|
@@ -1,22 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vevet",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.10.0",
|
|
4
4
|
"description": "VEVET - A JavaScript library",
|
|
5
5
|
"browserslist": [
|
|
6
6
|
"since 2015"
|
|
7
7
|
],
|
|
8
8
|
"scripts": {
|
|
9
|
-
"pages-build": "node ./examples-src/compiler/index.js && webpack --config ./examples-src/webpack/
|
|
9
|
+
"pages-build": "node ./examples-src/compiler/index.js && NODE_ENV=production webpack --config ./examples-src/webpack/prod.js",
|
|
10
10
|
"pages-dev": "npm-run-all --parallel pages-dev:pug pages-dev:webpack",
|
|
11
11
|
"pages-dev:pug": "nodemon --watch ./examples-src/pages --watch ./examples-src/compiler --ext pug,json,ts,js,html,css ./examples-src/compiler/index.js",
|
|
12
|
-
"pages-dev:webpack": "webpack serve --config ./examples-src/webpack/
|
|
13
|
-
"watch-tsc": "nodemon --watch ./src/ts --ext ts,js --exec \"npm run prepare:es\"",
|
|
12
|
+
"pages-dev:webpack": "NODE_ENV=development webpack serve --config ./examples-src/webpack/dev.js",
|
|
14
13
|
"prepare:all": "npm run prepare:es && npm run prepare:cjs && npm run prepare:cdn",
|
|
15
14
|
"prepare:es": "tsc ./src/ts/index.ts --outDir ./build/es --target es6 --module es6 --moduleResolution node --esModuleInterop true --allowSyntheticDefaultImports true --declaration true --declarationDir ./build/types --declarationMap true",
|
|
16
15
|
"prepare:cjs": "tsc ./src/ts/index.ts --outDir ./build/cjs --target es5 --module commonjs --moduleResolution node --esModuleInterop true --allowSyntheticDefaultImports true",
|
|
17
16
|
"prepare:cdn": "webpack --config ./config/webpack.cdn.js",
|
|
18
17
|
"lint:js": "eslint . --ext .ts,.js",
|
|
19
|
-
"
|
|
18
|
+
"docs": "typedoc --out examples-build/docs ./src/ts --theme default --hideGenerator",
|
|
19
|
+
"gh-pages": "git add examples-build/* && git commit -m \"Update github pages\" && npm run gh-pages:push",
|
|
20
|
+
"gh-pages:push": "git subtree split --prefix examples-build/ -b gh-pages-temp && git push -f origin gh-pages-temp:gh-pages && git branch -D gh-pages-temp",
|
|
21
|
+
"prepare": "npm run lint:js && npm run prepare:all && npm run pages-build && npm run docs && npm run gh-pages",
|
|
20
22
|
"release": "npm publish"
|
|
21
23
|
},
|
|
22
24
|
"main": "./build/cjs/index.js",
|
|
@@ -57,6 +59,10 @@
|
|
|
57
59
|
"text animation",
|
|
58
60
|
"timeline"
|
|
59
61
|
],
|
|
62
|
+
"files": [
|
|
63
|
+
"src",
|
|
64
|
+
"build"
|
|
65
|
+
],
|
|
60
66
|
"author": "Anton Bobrov <anton.bobrov@hotmail.com>",
|
|
61
67
|
"license": "MIT",
|
|
62
68
|
"devDependencies": {
|
|
@@ -67,7 +73,8 @@
|
|
|
67
73
|
"@typescript-eslint/eslint-plugin": "^4.28.1",
|
|
68
74
|
"@typescript-eslint/parser": "^4.28.1",
|
|
69
75
|
"babel-loader": "^8.2.2",
|
|
70
|
-
"
|
|
76
|
+
"base-href-webpack-plugin": "^3.0.1",
|
|
77
|
+
"bootstrap": "^5.1.3",
|
|
71
78
|
"clean-webpack-plugin": "^4.0.0-alpha.0",
|
|
72
79
|
"copy-webpack-plugin": "^9.0.1",
|
|
73
80
|
"css-loader": "^6.2.0",
|
|
@@ -90,6 +97,7 @@
|
|
|
90
97
|
"style-loader": "^3.2.1",
|
|
91
98
|
"terser-webpack-plugin": "^5.1.4",
|
|
92
99
|
"ts-loader": "^9.2.3",
|
|
100
|
+
"typedoc": "^0.22.15",
|
|
93
101
|
"typescript": "^4.3.5",
|
|
94
102
|
"webpack": "^5.41.1",
|
|
95
103
|
"webpack-cli": "^4.7.2",
|
|
@@ -92,6 +92,14 @@ export class Viewport extends Callbacks<
|
|
|
92
92
|
return this._height;
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
+
/**
|
|
96
|
+
* Current Viewport radius
|
|
97
|
+
*/
|
|
98
|
+
protected _radius: number;
|
|
99
|
+
get radius () {
|
|
100
|
+
return Math.sqrt(this.width ** 2 + this.height ** 2) / 2;
|
|
101
|
+
}
|
|
102
|
+
|
|
95
103
|
/**
|
|
96
104
|
* Get VW value
|
|
97
105
|
*/
|
|
@@ -104,6 +112,12 @@ export class Viewport extends Callbacks<
|
|
|
104
112
|
get vh () {
|
|
105
113
|
return this.height / 100;
|
|
106
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Get VR value (viewport radius / 100)
|
|
117
|
+
*/
|
|
118
|
+
get vr () {
|
|
119
|
+
return this.radius / 100;
|
|
120
|
+
}
|
|
107
121
|
|
|
108
122
|
/**
|
|
109
123
|
* Previous Viewport size
|
|
@@ -186,6 +200,7 @@ export class Viewport extends Callbacks<
|
|
|
186
200
|
super(false);
|
|
187
201
|
this._width = 0;
|
|
188
202
|
this._height = 0;
|
|
203
|
+
this._radius = 0;
|
|
189
204
|
this._prevSize = { w: 0, h: 0 };
|
|
190
205
|
this._isDesktop = false;
|
|
191
206
|
this._isTablet = false;
|
|
@@ -316,6 +331,7 @@ export class Viewport extends Callbacks<
|
|
|
316
331
|
const { html } = this._app;
|
|
317
332
|
html.style.setProperty('--vw', `${this.vw}px`);
|
|
318
333
|
html.style.setProperty('--vh', `${this.vh}px`);
|
|
334
|
+
html.style.setProperty('--vr', `${this.vr}px`);
|
|
319
335
|
}
|
|
320
336
|
|
|
321
337
|
|
package/src/ts/base/Callbacks.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Application } from '../app/Application';
|
|
2
|
-
import { timeoutCallback,
|
|
2
|
+
import { timeoutCallback, id as orderId } from '../utils/common';
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
@@ -174,7 +174,7 @@ export class Callbacks<
|
|
|
174
174
|
func: NCallbacks.CallbackSettings<Types, Target>['do'],
|
|
175
175
|
data: NCallbacks.CallbackBaseSettings = {},
|
|
176
176
|
): NCallbacks.AddedCallback {
|
|
177
|
-
const id =
|
|
177
|
+
const id = orderId('callback');
|
|
178
178
|
const obj: NCallbacks.CallbacksData<Types> = {
|
|
179
179
|
id,
|
|
180
180
|
on: true,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { addEventListener, selectOne } from 'vevet-dom';
|
|
2
2
|
import { IRemovable } from '../types/general';
|
|
3
3
|
import { SmoothScroll } from '../../components/scroll/smooth-scroll/SmoothScroll';
|
|
4
|
-
import {
|
|
4
|
+
import { id as orderId } from '../common';
|
|
5
5
|
|
|
6
6
|
type Container = string | Element | SmoothScroll | Window;
|
|
7
7
|
|
|
@@ -43,7 +43,7 @@ export default function onScroll ({
|
|
|
43
43
|
let instance = instances.find((data) => (
|
|
44
44
|
data.container === container && data.isPassive === isPassive
|
|
45
45
|
))!;
|
|
46
|
-
const callbackId =
|
|
46
|
+
const callbackId = orderId('scroll-event');
|
|
47
47
|
|
|
48
48
|
// if a listener exists, we just add a new callback to its stack
|
|
49
49
|
if (instance) {
|
|
@@ -54,7 +54,7 @@ export default function onScroll ({
|
|
|
54
54
|
} else {
|
|
55
55
|
// otherwise we create a new instance
|
|
56
56
|
instance = {
|
|
57
|
-
id:
|
|
57
|
+
id: orderId('scroll-event-instance'),
|
|
58
58
|
container,
|
|
59
59
|
callbacks: [{
|
|
60
60
|
id: callbackId,
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var Timeline_1 = require("../../components/timeline/Timeline");
|
|
7
|
-
var getScrollValues_1 = __importDefault(require("./getScrollValues"));
|
|
8
|
-
/**
|
|
9
|
-
* Scroll to coordinates
|
|
10
|
-
*/
|
|
11
|
-
function scrollTo(_a) {
|
|
12
|
-
var _b = _a.container, container = _b === void 0 ? window : _b, _c = _a.top, top = _c === void 0 ? 0 : _c, _d = _a.left, left = _d === void 0 ? 0 : _d, _e = _a.duration, duration = _e === void 0 ? 250 : _e;
|
|
13
|
-
return new Promise(function (resolve, reject) {
|
|
14
|
-
// save start values
|
|
15
|
-
var startValues = (0, getScrollValues_1.default)(container);
|
|
16
|
-
if (startValues) {
|
|
17
|
-
// create animation
|
|
18
|
-
var timeline = new Timeline_1.Timeline({
|
|
19
|
-
duration: duration,
|
|
20
|
-
});
|
|
21
|
-
timeline.addCallback('progress', function (data) {
|
|
22
|
-
if (container) {
|
|
23
|
-
container.scrollTo({
|
|
24
|
-
top: startValues.scrollTop
|
|
25
|
-
+ (top - startValues.scrollTop) * data.easing,
|
|
26
|
-
left: startValues.scrollLeft
|
|
27
|
-
+ (left - startValues.scrollLeft) * data.easing,
|
|
28
|
-
behavior: 'auto',
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
timeline.addCallback('end', function () {
|
|
33
|
-
resolve();
|
|
34
|
-
});
|
|
35
|
-
timeline.play();
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
reject();
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
exports.default = scrollTo;
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Timeline } from '../../components/timeline/Timeline';
|
|
2
|
-
import getScrollValues from './getScrollValues';
|
|
3
|
-
/**
|
|
4
|
-
* Scroll to coordinates
|
|
5
|
-
*/
|
|
6
|
-
export default function scrollTo({ container = window, top = 0, left = 0, duration = 250, }) {
|
|
7
|
-
return new Promise((resolve, reject) => {
|
|
8
|
-
// save start values
|
|
9
|
-
const startValues = getScrollValues(container);
|
|
10
|
-
if (startValues) {
|
|
11
|
-
// create animation
|
|
12
|
-
const timeline = new Timeline({
|
|
13
|
-
duration,
|
|
14
|
-
});
|
|
15
|
-
timeline.addCallback('progress', (data) => {
|
|
16
|
-
if (container) {
|
|
17
|
-
container.scrollTo({
|
|
18
|
-
top: startValues.scrollTop
|
|
19
|
-
+ (top - startValues.scrollTop) * data.easing,
|
|
20
|
-
left: startValues.scrollLeft
|
|
21
|
-
+ (left - startValues.scrollLeft) * data.easing,
|
|
22
|
-
behavior: 'auto',
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
timeline.addCallback('end', () => {
|
|
27
|
-
resolve();
|
|
28
|
-
});
|
|
29
|
-
timeline.play();
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
reject();
|
|
33
|
-
});
|
|
34
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { ScrollLike } from '../types/general';
|
|
2
|
-
interface Props {
|
|
3
|
-
/**
|
|
4
|
-
* @default window
|
|
5
|
-
*/
|
|
6
|
-
container?: Window | Element | ScrollLike;
|
|
7
|
-
/**
|
|
8
|
-
* top padding
|
|
9
|
-
* @default 0
|
|
10
|
-
*/
|
|
11
|
-
top?: number;
|
|
12
|
-
/**
|
|
13
|
-
* left padding
|
|
14
|
-
* @default 0
|
|
15
|
-
*/
|
|
16
|
-
left?: number;
|
|
17
|
-
/**
|
|
18
|
-
* scroll duration
|
|
19
|
-
* @default 250
|
|
20
|
-
*/
|
|
21
|
-
duration?: number;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Scroll to coordinates
|
|
25
|
-
*/
|
|
26
|
-
export default function scrollTo({ container, top, left, duration, }: Props): Promise<void>;
|
|
27
|
-
export {};
|
|
28
|
-
//# sourceMappingURL=to.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"to.d.ts","sourceRoot":"","sources":["../../../../src/ts/utils/scroll/to.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,UAAU,KAAK;IACX;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;IAC1C;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAE,EAC9B,SAAkB,EAClB,GAAO,EACP,IAAQ,EACR,QAAc,GACjB,EAAE,KAAK,iBA8BP"}
|