@netless/slide 1.4.36 → 1.4.37

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.
@@ -8,7 +8,7 @@ var SyncTaskManager = /** @class */ (function () {
8
8
  _this.isScheduling = true;
9
9
  var task = _this.tasks.shift();
10
10
  if (task && !_this.isDestroy) {
11
- _this.fn(task).then(function () {
11
+ _this.fn(task).finally(function () {
12
12
  if (_this.tasks.length > 0) {
13
13
  window.requestAnimationFrame(_this.schedule);
14
14
  }
package/lib/global.js CHANGED
@@ -43,9 +43,9 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
43
43
  * @param onProgress 加载进度回调函数
44
44
  */
45
45
  import { Slide } from "./Slide";
46
- export function preloadResource(taskId, prefix, maxResolutionLevel, onProgress) {
46
+ export function preloadResource(taskId, prefix, maxResolutionLevel, onProgress, pages) {
47
47
  return __awaiter(this, void 0, void 0, function () {
48
- var div, slide, slideCount, i;
48
+ var div, slide, slideCount, uniquePages, i, pageNumber, i, e_1;
49
49
  return __generator(this, function (_a) {
50
50
  switch (_a.label) {
51
51
  case 0:
@@ -67,23 +67,51 @@ export function preloadResource(taskId, prefix, maxResolutionLevel, onProgress)
67
67
  return [4 /*yield*/, slide.getSlideCountAsync()];
68
68
  case 1:
69
69
  slideCount = _a.sent();
70
- i = 1;
71
70
  _a.label = 2;
72
71
  case 2:
73
- if (!(i <= slideCount)) return [3 /*break*/, 5];
72
+ _a.trys.push([2, 12, 13, 14]);
73
+ if (!(pages && pages.length > 0)) return [3 /*break*/, 7];
74
+ uniquePages = pages.filter(function (item, index) { return pages.indexOf(item) === index; });
75
+ i = 0;
76
+ _a.label = 3;
77
+ case 3:
78
+ if (!(i < uniquePages.length)) return [3 /*break*/, 6];
79
+ pageNumber = uniquePages[i];
80
+ if (!(pageNumber > 0 && pageNumber <= slideCount)) return [3 /*break*/, 5];
81
+ // @ts-ignore
82
+ return [4 /*yield*/, slide.player.stagePool.preload(pageNumber, true)];
83
+ case 4:
84
+ // @ts-ignore
85
+ _a.sent();
86
+ onProgress(Math.round(((i + 1) / uniquePages.length) * 100) / 100);
87
+ _a.label = 5;
88
+ case 5:
89
+ i++;
90
+ return [3 /*break*/, 3];
91
+ case 6: return [3 /*break*/, 11];
92
+ case 7:
93
+ i = 1;
94
+ _a.label = 8;
95
+ case 8:
96
+ if (!(i <= slideCount)) return [3 /*break*/, 11];
74
97
  // @ts-ignore
75
98
  return [4 /*yield*/, slide.player.stagePool.preload(i, true)];
76
- case 3:
99
+ case 9:
77
100
  // @ts-ignore
78
101
  _a.sent();
79
102
  onProgress(Math.round((i / slideCount) * 100) / 100);
80
- _a.label = 4;
81
- case 4:
103
+ _a.label = 10;
104
+ case 10:
82
105
  i++;
83
- return [3 /*break*/, 2];
84
- case 5:
106
+ return [3 /*break*/, 8];
107
+ case 11: return [3 /*break*/, 14];
108
+ case 12:
109
+ e_1 = _a.sent();
110
+ throw e_1;
111
+ case 13:
85
112
  slide.destroy();
86
- return [2 /*return*/];
113
+ return [7 /*endfinally*/];
114
+ case 14: return [2 /*return*/];
87
115
  }
88
116
  });
89
117
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netless/slide",
3
- "version": "1.4.36",
3
+ "version": "1.4.37",
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": "930b256fe1145f0e8252e514224ffe69f139a47e"
39
+ "gitHead": "69a891f192f9771afd439995dad7e49c1776a928"
40
40
  }