File tree Expand file tree Collapse file tree
src/app/service/service_worker Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -409,6 +409,31 @@ export class ScriptService {
409409 if ( updatetime ) {
410410 script . updatetime = updatetime ;
411411 }
412+ // 拖拉安装等同本地创建脚本
413+ if ( script . origin ?. startsWith ( "file:///*from-local*/" ) ) {
414+ script . origin = "" ;
415+ script . originDomain = "" ;
416+ script . downloadUrl = "" ;
417+ script . checkUpdateUrl = "" ;
418+ }
419+ // 处理 ScriptCat 旧版本进行安装时的 origin 错误 ( 1.2.x & 1.3.x & 1.4.x - 自 commit d9b0eeede1a8b114f79a43fade99d825323c63f6 @ 2025.07.23 )
420+ if ( oldScript ?. origin ?. startsWith ( "file:///*from-local*/" ) || oldScript ?. origin ?. startsWith ( "file://-/" ) ) {
421+ oldScript . origin = "" ;
422+ oldScript . originDomain = "" ;
423+ oldScript . downloadUrl = "" ;
424+ oldScript . checkUpdateUrl = "" ;
425+ }
426+ // 现存的脚本:以最初的安装(即creationtime)为标准
427+ if ( oldScript && script . createtime === oldScript . createtime ) {
428+ // 如果最初是从网络安装,之后拖拉安装本机档案,则保留origin资讯。用于更新检查。
429+ // 如果本机安装的版本号较低,则会在下次更新检查时提醒有更新。那个时候,用户可以选择更新至网络上最新版本,或忽略并保留本机版本
430+ if ( oldScript && oldScript . origin && ! script . origin ) {
431+ script . origin = oldScript . origin ;
432+ script . originDomain = oldScript . originDomain ;
433+ script . downloadUrl = oldScript . downloadUrl ;
434+ script . checkUpdateUrl = oldScript . checkUpdateUrl ;
435+ }
436+ }
412437 return this . scriptDAO
413438 . save ( script )
414439 . then ( async ( ) => {
You can’t perform that action at this time.
0 commit comments