- 将所有图片路径从绝对路径改为使用 process.env.PUBLIC_URL - 修复 HomePage.tsx 中所有图片引用 - 修复 CoursePage.tsx 中所有图片引用 - 确保图片在 GitHub Pages 上正确加载 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
101 lines
2.9 KiB
JavaScript
101 lines
2.9 KiB
JavaScript
'use strict';
|
|
var call = require('../internals/function-call');
|
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
var createIteratorProxy = require('../internals/iterator-create-proxy');
|
|
var iteratorCloseAll = require('../internals/iterator-close-all');
|
|
|
|
var $TypeError = TypeError;
|
|
var slice = uncurryThis([].slice);
|
|
var push = uncurryThis([].push);
|
|
var ITERATOR_IS_EXHAUSTED = 'Iterator is exhausted';
|
|
var THROW = 'throw';
|
|
|
|
// eslint-disable-next-line max-statements -- specification case
|
|
var IteratorProxy = createIteratorProxy(function () {
|
|
var iterCount = this.iterCount;
|
|
if (!iterCount) {
|
|
this.done = true;
|
|
return;
|
|
}
|
|
var openIters = this.openIters;
|
|
var iters = this.iters;
|
|
var padding = this.padding;
|
|
var mode = this.mode;
|
|
var finishResults = this.finishResults;
|
|
|
|
var results = [];
|
|
var result, done;
|
|
for (var i = 0; i < iterCount; i++) {
|
|
var iter = iters[i];
|
|
if (iter === null) {
|
|
push(results, padding[i]);
|
|
} else {
|
|
try {
|
|
result = call(iter.next, iter.iterator);
|
|
done = result.done;
|
|
result = result.value;
|
|
} catch (error) {
|
|
openIters[i] = undefined;
|
|
return iteratorCloseAll(openIters, THROW, error);
|
|
}
|
|
if (done) {
|
|
openIters[i] = undefined;
|
|
this.openItersCount--;
|
|
if (mode === 'shortest') {
|
|
this.done = true;
|
|
return iteratorCloseAll(openIters, 'normal', undefined);
|
|
}
|
|
if (mode === 'strict') {
|
|
if (i) {
|
|
return iteratorCloseAll(openIters, THROW, new $TypeError(ITERATOR_IS_EXHAUSTED));
|
|
}
|
|
|
|
var open, openDone;
|
|
for (var k = 1; k < iterCount; k++) {
|
|
// eslint-disable-next-line max-depth -- specification case
|
|
try {
|
|
open = call(iters[k].next, iters[k].iterator);
|
|
openDone = open.done;
|
|
open = open.value;
|
|
} catch (error) {
|
|
openIters[k] = undefined;
|
|
return iteratorCloseAll(openIters, THROW, open);
|
|
}
|
|
// eslint-disable-next-line max-depth -- specification case
|
|
if (openDone) {
|
|
openIters[k] = undefined;
|
|
this.openItersCount--;
|
|
} else {
|
|
return iteratorCloseAll(openIters, THROW, new $TypeError(ITERATOR_IS_EXHAUSTED));
|
|
}
|
|
}
|
|
this.done = true;
|
|
return;
|
|
}
|
|
if (!this.openItersCount) {
|
|
this.done = true;
|
|
return;
|
|
}
|
|
iters[i] = null;
|
|
result = padding[i];
|
|
}
|
|
}
|
|
push(results, result);
|
|
}
|
|
|
|
return finishResults ? finishResults(results) : results;
|
|
});
|
|
|
|
module.exports = function (iters, mode, padding, finishResults) {
|
|
var iterCount = iters.length;
|
|
return new IteratorProxy({
|
|
iters: iters,
|
|
iterCount: iterCount,
|
|
openIters: slice(iters, 0),
|
|
openItersCount: iterCount,
|
|
mode: mode,
|
|
padding: padding,
|
|
finishResults: finishResults
|
|
});
|
|
};
|