hexo-swpp 1.6.0 → 1.7.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/index.js CHANGED
@@ -250,7 +250,7 @@ const fetchFile = link => new Promise((resolve, reject) => {
250
250
  referer: new URL(link).hostname,
251
251
  'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62'
252
252
  },
253
- timeout: pluginConfig.timeout ?? 1500
253
+ timeout: pluginConfig.external.timeout ?? 1500
254
254
  }).then(response => {
255
255
  switch (response.status) {
256
256
  case 200: case 301: case 302:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hexo-swpp",
3
- "version": "1.6.0",
3
+ "version": "1.7.0",
4
4
  "main": "index.js",
5
5
  "dependencies": {
6
6
  "hexo-log": "^3.0.0",
package/sw-template.js CHANGED
@@ -9,7 +9,7 @@
9
9
  self.addEventListener('install', () => self.skipWaiting())
10
10
 
11
11
  // noinspection JSFileReferences
12
- const { cacheList, replaceList } = require('../sw-cache')
12
+ const { cacheList, modifyRequest } = require('../sw-cache')
13
13
 
14
14
  /**
15
15
  * 删除指定缓存
@@ -29,7 +29,7 @@
29
29
  self.addEventListener('fetch', event => {
30
30
  const request = event.request
31
31
  if (request.method !== 'GET') return
32
- const replace = replaceRequest(request)
32
+ const edit = modifyRequest(request)
33
33
  const url = new URL(request.url)
34
34
  if (findCache(url)) {
35
35
  const key = `${url.protocol}//${url.host}${url.pathname}`
@@ -42,7 +42,7 @@
42
42
  return response
43
43
  })
44
44
  ))
45
- } else if (replace) {
45
+ } else if (edit) {
46
46
  event.respondWith(fetch(request))
47
47
  }
48
48
  })
@@ -72,29 +72,6 @@
72
72
  return null
73
73
  }
74
74
 
75
- /**
76
- * 检查连接是否需要重定向至另外的链接,如果需要则返回新的Request,否则返回null<br/>
77
- * 该函数会顺序匹配{@link replaceList}中的所有项目,即使已经有可用的替换项<br/>
78
- * 故该函数允许重复替换,例如:<br/>
79
- * 如果第一个匹配项把链接由"http://abc.com/"改为了"https://abc.com/"<br/>
80
- * 此时第二个匹配项可以以此为基础继续进行修改,替换为"https://abc.net/"<br/>
81
- * @return {boolean} 是否进行了替换
82
- */
83
- function replaceRequest(request) {
84
- let flag = false
85
- for (let key in replaceList) {
86
- const value = replaceList[key]
87
- for (let source of value.source) {
88
- if (request.url.match(source)) {
89
- // noinspection JSUnresolvedVariable
90
- request.url = request.url.replace(source, value.dist)
91
- flag = true
92
- }
93
- }
94
- }
95
- return flag
96
- }
97
-
98
75
  /**
99
76
  * 根据JSON删除缓存
100
77
  * @returns {Promise<{version, list}>}