@social-mail/social-mail-web-server 1.5.214 → 1.5.216
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/content/fonts/roboto/RobotizationMono-Regular.ttf +0 -0
- package/dist/common/StringFormat.d.ts +1 -0
- package/dist/common/StringFormat.d.ts.map +1 -1
- package/dist/common/StringFormat.js +3 -0
- package/dist/common/StringFormat.js.map +1 -1
- package/dist/server/seed/ui/seed-ui.js +1 -1
- package/dist/server/services/convert/FFCommand.d.ts +1 -0
- package/dist/server/services/convert/FFCommand.d.ts.map +1 -1
- package/dist/server/services/convert/FFCommand.js +21 -0
- package/dist/server/services/convert/FFCommand.js.map +1 -1
- package/dist/server/services/convert/FileConversionService.d.ts +1 -0
- package/dist/server/services/convert/FileConversionService.d.ts.map +1 -1
- package/dist/server/services/convert/FileConversionService.js +15 -1
- package/dist/server/services/convert/FileConversionService.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/common/StringFormat.ts +4 -0
- package/src/server/seed/ui/seed-ui.ts +1 -1
- package/src/server/services/convert/FFCommand.ts +27 -0
- package/src/server/services/convert/FileConversionService.ts +18 -1
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringFormat.d.ts","sourceRoot":"","sources":["../../src/common/StringFormat.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,YAAY;IAE7B,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,SAAI;
|
|
1
|
+
{"version":3,"file":"StringFormat.d.ts","sourceRoot":"","sources":["../../src/common/StringFormat.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,YAAY;IAE7B,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,SAAI;IAS/B,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM;CAIpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringFormat.js","sourceRoot":"","sources":["../../src/common/StringFormat.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,YAAY;IAE7B,MAAM,CAAC,KAAK,CAAC,CAAS,EAAE,GAAG,GAAG,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;QAC3B,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACV,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,CAAC,CAAC;IACb,CAAC;CAEJ"}
|
|
1
|
+
{"version":3,"file":"StringFormat.js","sourceRoot":"","sources":["../../src/common/StringFormat.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,YAAY;IAE7B,MAAM,CAAC,KAAK,CAAC,CAAS,EAAE,GAAG,GAAG,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;QAC3B,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACV,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,MAAc;QAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,CAAC;CAEJ"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { UIPackageConfig } from "../../services/DBConfig.js";
|
|
2
2
|
import semver from "semver";
|
|
3
3
|
export default async function seedUI(config) {
|
|
4
|
-
const version = "1.2.
|
|
4
|
+
const version = "1.2.634";
|
|
5
5
|
const existing = await config.getValue(UIPackageConfig, false);
|
|
6
6
|
if (existing) {
|
|
7
7
|
if (semver.gte(existing.version, version)) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { LocalFile } from "@entity-access/server-pages/dist/core/LocalFile.js";
|
|
2
2
|
export default class FFCommand {
|
|
3
3
|
static webm(file: LocalFile, output: LocalFile, args?: string[]): Promise<LocalFile>;
|
|
4
|
+
static webmText(file: LocalFile, text: string, output: LocalFile, args?: string[]): Promise<LocalFile>;
|
|
4
5
|
static thumbnail(file: LocalFile, output: LocalFile, time?: number): Promise<LocalFile>;
|
|
5
6
|
}
|
|
6
7
|
//# sourceMappingURL=FFCommand.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FFCommand.d.ts","sourceRoot":"","sources":["../../../../src/server/services/convert/FFCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oDAAoD,CAAC;
|
|
1
|
+
{"version":3,"file":"FFCommand.d.ts","sourceRoot":"","sources":["../../../../src/server/services/convert/FFCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oDAAoD,CAAC;AAI/E,MAAM,CAAC,OAAO,OAAO,SAAS;WAEb,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,GAAE,MAAM,EAAO;WAwB5D,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,GAAE,MAAM,EAAO;WAyBvE,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,SAAM;CAmB/E"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { spawnPromise } from "../../../common/spawnPromise.js";
|
|
2
|
+
import { contentFolder } from "../../../common/ImagesFolder.js";
|
|
2
3
|
export default class FFCommand {
|
|
3
4
|
static async webm(file, output, args = []) {
|
|
4
5
|
/**
|
|
@@ -21,6 +22,26 @@ export default class FFCommand {
|
|
|
21
22
|
]);
|
|
22
23
|
return output;
|
|
23
24
|
}
|
|
25
|
+
static async webmText(file, text, output, args = []) {
|
|
26
|
+
/**
|
|
27
|
+
* https://stackoverflow.com/questions/6954845/how-to-create-a-webm-video-file
|
|
28
|
+
* */
|
|
29
|
+
const fontFile = contentFolder.file("fonts", "roboto", "RobotizationMono-Regular.ttf");
|
|
30
|
+
const filter = `drawtext=fontfile=${fontFile}:text='${text}':fontcolor=white:fontsize=24:box=1:boxcolor=black@0.5:boxborderw=5:x=(w-text_w)/2:y=h-th-10`;
|
|
31
|
+
await spawnPromise("/ffmpeg/ffmpeg", [
|
|
32
|
+
"-i",
|
|
33
|
+
file.path,
|
|
34
|
+
"-c:v", "libvpx",
|
|
35
|
+
"-crf", "10",
|
|
36
|
+
"-b:v", "1M",
|
|
37
|
+
"-c:a", "libvorbis",
|
|
38
|
+
"-vf", filter,
|
|
39
|
+
...args,
|
|
40
|
+
"-y",
|
|
41
|
+
output.path
|
|
42
|
+
]);
|
|
43
|
+
return output;
|
|
44
|
+
}
|
|
24
45
|
static async thumbnail(file, output, time = 0.5) {
|
|
25
46
|
/**
|
|
26
47
|
* https://stackoverflow.com/questions/27145238/create-thumbnail-from-video-using-ffmpeg
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FFCommand.js","sourceRoot":"","sources":["../../../../src/server/services/convert/FFCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"FFCommand.js","sourceRoot":"","sources":["../../../../src/server/services/convert/FFCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,MAAM,CAAC,OAAO,OAAO,SAAS;IAE1B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAe,EAAE,MAAiB,EAAE,OAAiB,EAAE;QACrE;;aAEK;QACL,MAAM,YAAY,CAAC,gBAAgB,EAAE;YACjC,IAAI;YACJ,IAAI,CAAC,IAAI;YACT,MAAM;YACN,QAAQ;YACR,MAAM;YACN,IAAI;YACJ,MAAM;YACN,IAAI;YACJ,MAAM;YACN,WAAW;YACX,GAAI,IAAI;YACR,IAAI;YACJ,MAAM,CAAC,IAAI;SACd,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAClB,CAAC;IAGD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAe,EAAE,IAAY,EAAE,MAAiB,EAAE,OAAiB,EAAE;QACvF;;aAEK;QAEL,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,8BAA8B,CAAC,CAAC;QAEvF,MAAM,MAAM,GAAG,qBAAqB,QAAQ,UAAU,IAAI,8FAA8F,CAAC;QAEzJ,MAAM,YAAY,CAAC,gBAAgB,EAAE;YACjC,IAAI;YACJ,IAAI,CAAC,IAAI;YACT,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,WAAW;YACnB,KAAK,EAAE,MAAM;YACb,GAAI,IAAI;YACR,IAAI;YACJ,MAAM,CAAC,IAAI;SACd,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAe,EAAE,MAAiB,EAAE,IAAI,GAAG,GAAG;QAExE;;aAEK;QACL,MAAM,YAAY,CAAC,gBAAgB,EAAE;YACjC,IAAI;YACJ,IAAI,CAAC,IAAI;YACT,KAAK;YACL,cAAc;YACd,UAAU;YACV,GAAG;YACH,IAAI;YACJ,MAAM,CAAC,IAAI;SACd,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAClB,CAAC;CAEJ"}
|
|
@@ -15,6 +15,7 @@ export default class FileConversionService {
|
|
|
15
15
|
pdf(file: LocalFile): Promise<LocalFile>;
|
|
16
16
|
html(file: LocalFile): Promise<LocalFile>;
|
|
17
17
|
webm(file: LocalFile): Promise<LocalFile>;
|
|
18
|
+
webmBranded(file: LocalFile): Promise<LocalFile>;
|
|
18
19
|
}
|
|
19
20
|
export {};
|
|
20
21
|
//# sourceMappingURL=FileConversionService.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileConversionService.d.ts","sourceRoot":"","sources":["../../../../src/server/services/convert/FileConversionService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oDAAoD,CAAC;AAI/E,OAAO,OAAO,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"FileConversionService.d.ts","sourceRoot":"","sources":["../../../../src/server/services/convert/FileConversionService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oDAAoD,CAAC;AAI/E,OAAO,OAAO,MAAM,iCAAiC,CAAC;AAQtD,UAAU,sBAAsB;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAGtC,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,YAAY,CAAe;IAE7B,qBAAqB,CAAC,EAAC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,GAA2E,EAAE,EAAE,sBAAsB;IAgCpK,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM;IAe5D,GAAG,CAAC,IAAI,EAAE,SAAS;IAUnB,IAAI,CAAC,IAAI,EAAE,SAAS;IAiCpB,IAAI,CAAC,IAAI,EAAE,SAAS;IAWpB,WAAW,CAAC,IAAI,EAAE,SAAS;CAepC"}
|
|
@@ -16,6 +16,8 @@ import TimeSpan from "@entity-access/entity-access/dist/types/TimeSpan.js";
|
|
|
16
16
|
import CacheService from "../cache/CacheService.js";
|
|
17
17
|
import ImageConverterService from "../image-converter/ImageConverterService.js";
|
|
18
18
|
import SocialMailContext from "../../model/SocialMailContext.js";
|
|
19
|
+
import Page from "@entity-access/server-pages/dist/Page.js";
|
|
20
|
+
import StringFormat from "../../../common/StringFormat.js";
|
|
19
21
|
let FileConversionService = class FileConversionService {
|
|
20
22
|
async downloadConvertedFile({ appFile, fileContentID, type, fileName, key = `/file/${type}/${fileContentID ?? appFile.fileContentID}/${fileName}` }) {
|
|
21
23
|
let file;
|
|
@@ -36,7 +38,7 @@ let FileConversionService = class FileConversionService {
|
|
|
36
38
|
factory: async () => {
|
|
37
39
|
file = await this.downloadFileContent(appFile, fileContentID);
|
|
38
40
|
const ics = this;
|
|
39
|
-
return await ics[
|
|
41
|
+
return await ics[StringFormat.toCamelCase(type)](file, fileName);
|
|
40
42
|
}
|
|
41
43
|
});
|
|
42
44
|
}
|
|
@@ -96,6 +98,18 @@ let FileConversionService = class FileConversionService {
|
|
|
96
98
|
const output = await this.tempFileService.createTempFile(".webm", file.fileName + ".webm", "video/webm");
|
|
97
99
|
return FFCommand.webm(file, output);
|
|
98
100
|
}
|
|
101
|
+
async webmBranded(file) {
|
|
102
|
+
const sp = ServiceProvider.resolve(this, Page);
|
|
103
|
+
const text = "https://" + sp.request.hostName;
|
|
104
|
+
if (!/^(video|audio)\//i.test(file.contentType)) {
|
|
105
|
+
throw new Error("Not an audio or video file");
|
|
106
|
+
}
|
|
107
|
+
if (/\.webm$/i.test(file.fileName)) {
|
|
108
|
+
return file;
|
|
109
|
+
}
|
|
110
|
+
const output = await this.tempFileService.createTempFile(".webm", file.fileName + ".webm", "video/webm");
|
|
111
|
+
return FFCommand.webmText(file, text, output);
|
|
112
|
+
}
|
|
99
113
|
};
|
|
100
114
|
__decorate([
|
|
101
115
|
Inject,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileConversionService.js","sourceRoot":"","sources":["../../../../src/server/services/convert/FileConversionService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,MAAM,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AACrG,OAAO,eAAe,MAAM,kCAAkC,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,qBAAqB,MAAM,6CAA6C,CAAC;AAChF,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"FileConversionService.js","sourceRoot":"","sources":["../../../../src/server/services/convert/FileConversionService.ts"],"names":[],"mappings":"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"}
|