swpp-backends 2.0.7 → 2.0.9

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.
@@ -175,13 +175,17 @@ exports.isStable = isStable;
175
175
  async function loadVersionJson(url) {
176
176
  const key = 'oldVersionJson';
177
177
  const response = await (0, Utils_1.fetchFile)(url).catch(err => err);
178
- if (response?.status === 404 || response?.code === 'ENOTFOUND') {
179
- (0, Utils_1.warn)('LoadVersionJson', `拉取 ${url} 时出现 404 错误,如果您是第一次构建请忽略这个警告。`);
178
+ if (response.status === 404 || response?.code === 'ENOTFOUND') {
179
+ (0, Utils_1.warn)('VersionJsonLoader', `拉取 ${url} 时出现 404 错误,如果您是第一次构建请忽略这个警告。`);
180
180
  return (0, Variant_1.writeVariant)(key, null);
181
181
  }
182
- else {
183
- return (0, Variant_1.writeVariant)(key, await response.json());
182
+ else if (![200, 301, 302, 307, 308].includes(response.status)) {
183
+ (0, Utils_1.error)('VersionJsonLoader', `拉取 ${url} 时出现 ${response.status} 错误!`);
184
+ if ('status' in response)
185
+ throw `拉取时出现 ${response.status} 异常`;
186
+ throw response;
184
187
  }
188
+ return (0, Variant_1.writeVariant)(key, await response.json());
185
189
  }
186
190
  exports.loadVersionJson = loadVersionJson;
187
191
  /** 提交要存储到 version json 的值 */
@@ -34,6 +34,8 @@ function buildUpdateJson(root, dif) {
34
34
  if (userUpdate.flag === (0, Variant_1.readOldVersionJson)()?.external?.swppFlag)
35
35
  userUpdate = undefined;
36
36
  }
37
+ if (!dif)
38
+ dif = (0, Variant_1.readAnalyzeResult)();
37
39
  // 如果需要强制刷新直接返回
38
40
  if (dif.force || userUpdate?.force)
39
41
  return {
@@ -113,10 +115,16 @@ exports.submitChange = submitChange;
113
115
  async function loadUpdateJson(url) {
114
116
  const key = 'oldUpdateJson';
115
117
  const response = await (0, Utils_1.fetchFile)(url).catch(err => err);
116
- if (response?.status === 404 || response.code === 'ENOTFOUND') {
117
- (0, Utils_1.warn)('LoadUpdateJson', `拉取 ${url} 时出现 404 错误,如果您是第一次构建请忽略这个警告。`);
118
+ if (response.status === 404 || response.code === 'ENOTFOUND') {
119
+ (0, Utils_1.warn)('UpdateJsonLoader', `拉取 ${url} 时出现 404 错误,如果您是第一次构建请忽略这个警告。`);
118
120
  return (0, Variant_1.writeVariant)(key, null);
119
121
  }
122
+ else if (![200, 301, 302, 307, 308].includes(response.status)) {
123
+ (0, Utils_1.error)('UpdateJsonLoader', `拉取 ${url} 时出现 ${response.status} 错误!`);
124
+ if ('status' in response)
125
+ throw `拉取时出现 ${response.status} 异常`;
126
+ throw response;
127
+ }
120
128
  return (0, Variant_1.writeVariant)(key, await response.json());
121
129
  }
122
130
  exports.loadUpdateJson = loadUpdateJson;
package/dist/index.js CHANGED
@@ -10,7 +10,7 @@ const VersionAnalyzer_1 = require("./VersionAnalyzer");
10
10
  const DomBuilder_1 = require("./DomBuilder");
11
11
  // noinspection JSUnusedGlobalSymbols
12
12
  exports.default = {
13
- version: '2.0.7',
13
+ version: '2.0.9',
14
14
  cache: {
15
15
  readEjectData: Utils_1.readEjectData, readUpdateJson: Variant_1.readUpdateJson,
16
16
  readRules: Variant_1.readRules, readMergeVersionMap: Variant_1.readMergeVersionMap,
@@ -195,11 +195,12 @@
195
195
  */
196
196
  this.match = url => {
197
197
  if (this.force) return true
198
- else if (this.refresh) return findCache(url).clean
198
+ // noinspection JSValidateTypes
199
+ url = new URL(url)
200
+ if (this.refresh) return findCache(url).clean
199
201
  else {
200
- const obj = new URL(url)
201
202
  for (let it of list) {
202
- if (it.match(obj)) return true
203
+ if (it.match(url)) return true
203
204
  }
204
205
  }
205
206
  return false
@@ -232,7 +233,7 @@
232
233
  const getMatch = () => {
233
234
  switch (json['flag']) {
234
235
  case 'html':
235
- return url => url.match(/(\/|\.html)$/)
236
+ return url => url.pathname.match(/(\/|\.html)$/)
236
237
  case 'end':
237
238
  return url => forEachValues(value => url.href.endsWith(value))
238
239
  case 'begin':
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "swpp-backends",
3
- "version": "2.0.7",
3
+ "version": "2.0.9",
4
4
  "main": "dist/index.js",
5
5
  "typings": "types/index.d.ts",
6
6
  "description": "Generate a powerful ServiceWorker for your website.",
@@ -10,7 +10,7 @@ import { AnalyzeResult } from './VersionAnalyzer';
10
10
  * @param root 网站根路径(包括网络协议)
11
11
  * @param dif 网站文件变化
12
12
  */
13
- export declare function buildUpdateJson(root: string, dif: AnalyzeResult): UpdateJson;
13
+ export declare function buildUpdateJson(root: string, dif?: AnalyzeResult): UpdateJson;
14
14
  /** 提交修改 */
15
15
  export declare function submitChange(...change: ChangeExpression[]): void;
16
16
  /**