@social-mail/social-mail-web-server 1.7.696 → 1.7.697
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/dist/common/Retry.d.ts +4 -0
- package/dist/common/Retry.d.ts.map +1 -0
- package/dist/common/Retry.js +18 -0
- package/dist/common/Retry.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/wwwroot/routes/social-mail/site/templates/list/get.js +2 -2
- package/dist/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.d.ts.map +1 -1
- package/dist/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.js +6 -2
- package/dist/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.js.map +1 -1
- package/package.json +1 -1
- package/src/common/Retry.ts +18 -0
- package/src/wwwroot/routes/social-mail/site/templates/list/get.tsx +2 -2
- package/src/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.tsx +7 -2
|
@@ -60,8 +60,8 @@ export default class default_1 extends Page {
|
|
|
60
60
|
tags: x.webSiteTags?.map((t) => t.tag.name) ?? [],
|
|
61
61
|
name: x.folder.name,
|
|
62
62
|
host,
|
|
63
|
-
preview: `https://${cdn}/social-mail/site/templates/preview/${host}/desktop/
|
|
64
|
-
previewMobile: `https://${cdn}/social-mail/site/templates/preview/${host}/mobile/
|
|
63
|
+
preview: `https://${cdn}/social-mail/site/templates/preview/${host}/desktop/c2-${currentVersionID}/desktop-preview-1.webp`,
|
|
64
|
+
previewMobile: `https://${cdn}/social-mail/site/templates/preview/${host}/mobile/c2-${currentVersionID}/desktop-preview-1.webp`,
|
|
65
65
|
url: `https://${host}`
|
|
66
66
|
};
|
|
67
67
|
});
|
package/dist/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.tsx"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAM5D,OAAO,oBAAoB,MAAM,0EAA0E,CAAC;AAC5G,OAAO,qBAAqB,MAAM,2EAA2E,CAAC;AAI9G,OAAO,YAAY,MAAM,kEAAkE,CAAC;AAE5F,OAAO,eAAe,MAAM,8DAA8D,CAAC;
|
|
1
|
+
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../../../../../../src/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.tsx"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAM5D,OAAO,oBAAoB,MAAM,0EAA0E,CAAC;AAC5G,OAAO,qBAAqB,MAAM,2EAA2E,CAAC;AAI9G,OAAO,YAAY,MAAM,kEAAkE,CAAC;AAE5F,OAAO,eAAe,MAAM,8DAA8D,CAAC;AAyB3F,MAAM,CAAC,OAAO,MAAO,SAAQ,IAAI;IAG7B,GAAG,EAAE,qBAAqB,CAAC;IAG3B,SAAS,EAAE,oBAAoB,CAAC;IAGhC,YAAY,EAAE,YAAY,CAAC;IAG3B,GAAG,EAAE,eAAe,CAAC;IAGrB,IAAI,MAAC;IAGL,QAAQ,MAAC;IAGT,IAAI,MAAC;IAEC,GAAG;CAwEZ"}
|
package/dist/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.js
CHANGED
|
@@ -73,6 +73,7 @@ import { Route } from "@entity-access/server-pages/dist/core/Route.js";
|
|
|
73
73
|
import CacheService from "../../../../../../../../../server/services/cache/CacheService.js";
|
|
74
74
|
import TimeSpan from "@entity-access/entity-access/dist/types/TimeSpan.js";
|
|
75
75
|
import TempFileService from "../../../../../../../../../server/storage/TempFileService.js";
|
|
76
|
+
import { Retry } from "../../../../../../../../../common/Retry.js";
|
|
76
77
|
let port = globalEnv.puppeteer.port;
|
|
77
78
|
if (/^\d+$/i.test(port)) {
|
|
78
79
|
port = Number(port);
|
|
@@ -119,7 +120,7 @@ export default class default_1 extends Page {
|
|
|
119
120
|
const cf = await this.cacheService.get({
|
|
120
121
|
key,
|
|
121
122
|
ttl: TimeSpan.fromDays(30),
|
|
122
|
-
factory: async (
|
|
123
|
+
factory: (c) => Retry.retry(async () => {
|
|
123
124
|
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
124
125
|
try {
|
|
125
126
|
const _ = __addDisposableResource(env_1, await LockFile.lock("puppeteer-preview-generator"), false);
|
|
@@ -133,6 +134,9 @@ export default class default_1 extends Page {
|
|
|
133
134
|
const r = await fetch(`http://localhost/screen-shot?${query.toString()}`, {
|
|
134
135
|
dispatcher
|
|
135
136
|
});
|
|
137
|
+
if (r.status >= 399) {
|
|
138
|
+
throw new Error(await r.text());
|
|
139
|
+
}
|
|
136
140
|
const buffer = Buffer.from(await r.arrayBuffer());
|
|
137
141
|
const lf = await this.tfs.createTempFile(".webp", "preview.webp", "image/webp");
|
|
138
142
|
await lf.writeAll(buffer);
|
|
@@ -145,7 +149,7 @@ export default class default_1 extends Page {
|
|
|
145
149
|
finally {
|
|
146
150
|
__disposeResources(env_1);
|
|
147
151
|
}
|
|
148
|
-
}
|
|
152
|
+
})
|
|
149
153
|
});
|
|
150
154
|
this.cacheControl = "public, max-age=2592000, immutable";
|
|
151
155
|
return new TempFileResult(cf, {
|
package/dist/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../../../../../../src/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,MAAM,MAAM,4CAA4C,CAAC;AAChE,OAAO,IAAI,MAAM,0CAA0C,CAAC;AAE5D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,6CAA6C,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,gDAAgD,CAAC;AAC3E,OAAO,oBAAoB,MAAM,0EAA0E,CAAC;AAC5G,OAAO,qBAAqB,MAAM,2EAA2E,CAAC;AAC9G,OAAO,gBAAgB,MAAM,qEAAqE,CAAC;AACnG,OAAO,QAAQ,MAAM,uDAAuD,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,gDAAgD,CAAC;AACvE,OAAO,YAAY,MAAM,kEAAkE,CAAC;AAC5F,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,eAAe,MAAM,8DAA8D,CAAC;
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../../../../../../src/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const Retry = {
|
|
2
|
+
|
|
3
|
+
async retry<T>(fx: () => Promise<T>, max = 3) {
|
|
4
|
+
let lastError;
|
|
5
|
+
for(let i=0; i<max;i++) {
|
|
6
|
+
try {
|
|
7
|
+
lastError = null;
|
|
8
|
+
return await fx();
|
|
9
|
+
} catch (error) {
|
|
10
|
+
lastError = error;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
if (lastError) {
|
|
14
|
+
throw lastError;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
};
|
|
@@ -77,8 +77,8 @@ export default class extends Page {
|
|
|
77
77
|
tags: x.webSiteTags?.map((t) => t.tag.name) ?? [],
|
|
78
78
|
name: x.folder.name,
|
|
79
79
|
host,
|
|
80
|
-
preview: `https://${cdn}/social-mail/site/templates/preview/${host}/desktop/
|
|
81
|
-
previewMobile: `https://${cdn}/social-mail/site/templates/preview/${host}/mobile/
|
|
80
|
+
preview: `https://${cdn}/social-mail/site/templates/preview/${host}/desktop/c2-${currentVersionID}/desktop-preview-1.webp`,
|
|
81
|
+
previewMobile: `https://${cdn}/social-mail/site/templates/preview/${host}/mobile/c2-${currentVersionID}/desktop-preview-1.webp`,
|
|
82
82
|
url: `https://${host}`
|
|
83
83
|
};
|
|
84
84
|
});
|
package/src/wwwroot/routes/social-mail/site/templates/preview/[host]/[type]/[cacheKey]/get.tsx
CHANGED
|
@@ -13,6 +13,7 @@ import { Route } from "@entity-access/server-pages/dist/core/Route.js";
|
|
|
13
13
|
import CacheService from "../../../../../../../../../server/services/cache/CacheService.js";
|
|
14
14
|
import TimeSpan from "@entity-access/entity-access/dist/types/TimeSpan.js";
|
|
15
15
|
import TempFileService from "../../../../../../../../../server/storage/TempFileService.js";
|
|
16
|
+
import { Retry } from "../../../../../../../../../common/Retry.js";
|
|
16
17
|
|
|
17
18
|
let port = globalEnv.puppeteer.port as any;
|
|
18
19
|
if (/^\d+$/i.test(port)) {
|
|
@@ -94,7 +95,7 @@ export default class extends Page {
|
|
|
94
95
|
const cf = await this.cacheService.get({
|
|
95
96
|
key,
|
|
96
97
|
ttl: TimeSpan.fromDays(30),
|
|
97
|
-
factory: async (
|
|
98
|
+
factory: (c) => Retry.retry(async () => {
|
|
98
99
|
|
|
99
100
|
using _ = await LockFile.lock("puppeteer-preview-generator");
|
|
100
101
|
|
|
@@ -110,6 +111,10 @@ export default class extends Page {
|
|
|
110
111
|
dispatcher
|
|
111
112
|
});
|
|
112
113
|
|
|
114
|
+
if (r.status >= 399) {
|
|
115
|
+
throw new Error(await r.text());
|
|
116
|
+
}
|
|
117
|
+
|
|
113
118
|
const buffer = Buffer.from( await r.arrayBuffer());
|
|
114
119
|
|
|
115
120
|
const lf = await this.tfs.createTempFile(".webp", "preview.webp", "image/webp");
|
|
@@ -117,7 +122,7 @@ export default class extends Page {
|
|
|
117
122
|
await lf.writeAll(buffer);
|
|
118
123
|
|
|
119
124
|
return lf;
|
|
120
|
-
}
|
|
125
|
+
})
|
|
121
126
|
});
|
|
122
127
|
|
|
123
128
|
this.cacheControl = "public, max-age=2592000, immutable";
|