@netless/slide 1.4.31-alpha.3 → 1.4.32-alpha.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 +3 -0
- package/lib/AliTrackLogger.js +1 -1
- package/lib/LocalFileSystem.d.ts +0 -0
- package/lib/LocalFileSystem.js +1 -0
- package/lib/PlayerController.js +1 -1
- package/lib/RenderingTaskManager.js +2 -2
- package/lib/Slide.js +2 -2
- package/lib/StateDriveSlide.d.ts +237 -0
- package/lib/StateDriveSlide.js +664 -0
- package/lib/SyncEventQueue.d.ts +13 -0
- package/lib/SyncEventQueue.js +83 -0
- package/lib/Ticker.d.ts +2 -0
- package/lib/Ticker.js +2 -0
- package/lib/global.js +1 -1
- package/lib/waitUntil.d.ts +2 -0
- package/lib/waitUntil.js +56 -0
- package/package.json +2 -2
- package/lib/Slide.js.map +0 -1
- package/lib/typeGuard/SyncEvent.d.ts +0 -10
- package/lib/typeGuard/SyncEvent.js +0 -27
|
@@ -0,0 +1,83 @@
|
|
|
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
|
+
import EventEmitter from "eventemitter3";
|
|
17
|
+
var SyncEventQueue = /** @class */ (function (_super) {
|
|
18
|
+
__extends(SyncEventQueue, _super);
|
|
19
|
+
function SyncEventQueue() {
|
|
20
|
+
var _this = _super.call(this) || this;
|
|
21
|
+
_this.queue = [];
|
|
22
|
+
_this.slideIndex = -1;
|
|
23
|
+
_this.isLoading = false;
|
|
24
|
+
_this.schedule = function () {
|
|
25
|
+
var last = _this.queue[_this.queue.length - 1];
|
|
26
|
+
if (last && last.slideIndex !== _this.slideIndex && last.type !== "renderSlide" &&
|
|
27
|
+
_this.queue.length > 0 && !_this.isLoading && last.slideIndex >= 0) {
|
|
28
|
+
_this.emit("load", _this.queue[_this.queue.length - 1].slideIndex);
|
|
29
|
+
window.requestAnimationFrame(_this.schedule);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if (_this.queue.some(function (evt) { return evt.type === "renderSlide"; })) {
|
|
33
|
+
var index = _this.findLastRenderSlideIndex();
|
|
34
|
+
if (index >= 0) {
|
|
35
|
+
_this.queue = _this.queue.slice(index);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
var evt = _this.queue[0];
|
|
39
|
+
if (evt) {
|
|
40
|
+
if (evt.type === "renderSlide" || evt.slideIndex === _this.slideIndex) {
|
|
41
|
+
_this.queue.splice(0, 1);
|
|
42
|
+
_this.emit("schedule", evt);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
window.requestAnimationFrame(_this.schedule);
|
|
46
|
+
};
|
|
47
|
+
_this.schedule();
|
|
48
|
+
return _this;
|
|
49
|
+
}
|
|
50
|
+
SyncEventQueue.prototype.findLastRenderSlideIndex = function () {
|
|
51
|
+
for (var i = this.queue.length - 1; i >= 0; i--) {
|
|
52
|
+
var evt = this.queue[i];
|
|
53
|
+
if (evt.type === "renderSlide") {
|
|
54
|
+
return i;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
return -1;
|
|
58
|
+
};
|
|
59
|
+
SyncEventQueue.prototype.setSlideIndex = function (index) {
|
|
60
|
+
this.slideIndex = index;
|
|
61
|
+
};
|
|
62
|
+
SyncEventQueue.prototype.setIsLoading = function (val) {
|
|
63
|
+
this.isLoading = val;
|
|
64
|
+
};
|
|
65
|
+
SyncEventQueue.prototype.addEvent = function (evt) {
|
|
66
|
+
var lastIndex = this.queue.length - 1;
|
|
67
|
+
var last = this.queue[lastIndex];
|
|
68
|
+
if (last && last.slideIndex === evt.slideIndex) {
|
|
69
|
+
if ((last.type === "prevStep" || last.type === "nextStep") && last.type === evt.type) {
|
|
70
|
+
this.queue[lastIndex] = evt;
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
this.queue.push(evt);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
this.queue.push(evt);
|
|
78
|
+
}
|
|
79
|
+
console.log(this.queue);
|
|
80
|
+
};
|
|
81
|
+
return SyncEventQueue;
|
|
82
|
+
}(EventEmitter));
|
|
83
|
+
export { SyncEventQueue };
|
package/lib/Ticker.d.ts
ADDED
package/lib/Ticker.js
ADDED
package/lib/global.js
CHANGED
|
@@ -13,7 +13,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
13
13
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
14
|
function step(op) {
|
|
15
15
|
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
-
while (
|
|
16
|
+
while (_) try {
|
|
17
17
|
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
18
|
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
19
|
switch (op[0]) {
|
package/lib/waitUntil.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
11
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
12
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
13
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
14
|
+
function step(op) {
|
|
15
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
16
|
+
while (_) try {
|
|
17
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
18
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
19
|
+
switch (op[0]) {
|
|
20
|
+
case 0: case 1: t = op; break;
|
|
21
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
22
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
23
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
24
|
+
default:
|
|
25
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
26
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
27
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
28
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
29
|
+
if (t[2]) _.ops.pop();
|
|
30
|
+
_.trys.pop(); continue;
|
|
31
|
+
}
|
|
32
|
+
op = body.call(thisArg, _);
|
|
33
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
34
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
export var delay = function (value) { return new Promise(function (resolve) { return setTimeout(resolve, value); }); };
|
|
38
|
+
export function waitUntil(fn, timeout) {
|
|
39
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
40
|
+
var start;
|
|
41
|
+
return __generator(this, function (_a) {
|
|
42
|
+
switch (_a.label) {
|
|
43
|
+
case 0:
|
|
44
|
+
start = Date.now();
|
|
45
|
+
_a.label = 1;
|
|
46
|
+
case 1:
|
|
47
|
+
if (!(!fn() && Date.now() - start < timeout)) return [3 /*break*/, 3];
|
|
48
|
+
return [4 /*yield*/, delay(50)];
|
|
49
|
+
case 2:
|
|
50
|
+
_a.sent();
|
|
51
|
+
return [3 /*break*/, 1];
|
|
52
|
+
case 3: return [2 /*return*/];
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@netless/slide",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.32-alpha.0",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"author": "huaguzheng <huaguzheng2007@126.com>",
|
|
6
6
|
"homepage": "https://github.com/netless-io/netless-slide-demo",
|
|
@@ -36,5 +36,5 @@
|
|
|
36
36
|
"publishConfig": {
|
|
37
37
|
"access": "public"
|
|
38
38
|
},
|
|
39
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "1a88e8a4aba7801ee561d5fc0a5026626ec3173b"
|
|
40
40
|
}
|