进度修复

This commit is contained in:
tianmo committed 2026-10-30 16:31:27 +08:00
1 parent 63663f3bb7
commit 55dc52be37
7 files changed
+13 -6

No files matched your search

+1 -1
View File
@@ -99,7 +99,7 @@
// Windows 上 pathname 形如 /C:/...,要去掉盘符前那个多余的斜杠;
// macOS/Linux 是 /Users/...,前导斜杠必须留着,否则会变成相对路径。
const pathname = decodeURIComponent(new URL('.', location.href).pathname).replace(/\\/g, '/');
window.SpinePluginRoot = pathname.replace(/^\/([A-Za-z]:)/, '$1');
window.SpinePluginRoot = pathname.replace(/^\/+([A-Za-z]:)/, '$1');
} catch (error) {
window.SpinePluginRoot = '';
}
+1 -1
View File
@@ -2,7 +2,7 @@
// 每次改动递增。Eagle 里的 service 插件是启动时加载并常驻的,改完代码必须重新加载插件
// 才会生效;状态栏会显示这个版本号,方便确认加载的到底是不是最新代码。
const VERSION = 'v67';
const VERSION = 'v68';
const SHOW_DEV_VERSION = true;
const path = require('path');
+1 -1
View File
@@ -45,7 +45,7 @@
(function () {
try {
const pathname = decodeURIComponent(new URL('.', location.href).pathname).replace(/\\/g, '/');
window.SpinePluginRoot = pathname.replace(/^\/([A-Za-z]:)/, '$1');
window.SpinePluginRoot = pathname.replace(/^\/+([A-Za-z]:)/, '$1');
} catch (error) {
window.SpinePluginRoot = '';
}
@@ -6,13 +6,20 @@ const path = require('node:path');
const root = path.join(__dirname, '..');
const html = fs.readFileSync(path.join(root, 'progress.html'), 'utf8');
const indexHtml = fs.readFileSync(path.join(root, 'index.html'), 'utf8');
const windowSource = fs.readFileSync(path.join(root, 'js', 'progress-window.js'), 'utf8');
const i18nSource = fs.readFileSync(path.join(root, 'js', 'i18n.js'), 'utf8');
const normalizePluginRoot = (pathname) => pathname.replace(/^\/+([A-Za-z]:)/, '$1');
assert.match(windowSource, /minimizable: true/);
assert.match(windowSource, /url: 'progress\.html',/);
assert.doesNotMatch(windowSource, /url: 'progress\.html\?/);
assert.match(i18nSource, /params\.get\('lang'\) \|\| params\.get\('locale'\)/);
for (const source of [html, indexHtml]) {
assert.match(source, /pathname\.replace\(\/\^\\\/\+\(\[A-Za-z\]:\)\/, '\$1'\)/);
}
assert.equal(normalizePluginRoot('//C:/Users/demo/plugin/'), 'C:/Users/demo/plugin/');
assert.equal(normalizePluginRoot('/Users/demo/plugin/'), '/Users/demo/plugin/');
assert.match(html, /addEventListener\('beforeunload'/);
assert.match(html, /function requestStop\(\)[\s\S]*writeControl\('pause'\)[\s\S]*resumeEl\.focus\(\)/);
assert.match(html, /if \(allowClose \|\| finished\) return;[\s\S]*event\.returnValue = false;[\s\S]*requestStop\(\)/);