@social-mail/social-mail-web-server 1.7.349 → 1.7.352
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/server/model/SocialMailContext.d.ts +2 -0
- package/dist/server/model/SocialMailContext.d.ts.map +1 -1
- package/dist/server/model/SocialMailContext.js +2 -0
- package/dist/server/model/SocialMailContext.js.map +1 -1
- package/dist/server/model/entities/AppTempFile.d.ts +33 -0
- package/dist/server/model/entities/AppTempFile.d.ts.map +1 -0
- package/dist/server/model/entities/AppTempFile.js +99 -0
- package/dist/server/model/entities/AppTempFile.js.map +1 -0
- package/dist/server/model/entities/FileContent.d.ts +2 -0
- package/dist/server/model/entities/FileContent.d.ts.map +1 -1
- package/dist/server/model/entities/FileContent.js.map +1 -1
- package/dist/server/model/entities/WebSiteChannel.d.ts.map +1 -1
- package/dist/server/model/entities/WebSiteChannel.js +5 -1
- package/dist/server/model/entities/WebSiteChannel.js.map +1 -1
- package/dist/server/model/entities/WebSiteChannelDomain.d.ts.map +1 -1
- package/dist/server/model/entities/WebSiteChannelDomain.js +5 -1
- package/dist/server/model/entities/WebSiteChannelDomain.js.map +1 -1
- package/dist/server/model/events/FileContentEvents.d.ts +2 -0
- package/dist/server/model/events/FileContentEvents.d.ts.map +1 -1
- package/dist/server/model/events/FileContentEvents.js +5 -1
- package/dist/server/model/events/FileContentEvents.js.map +1 -1
- package/dist/server/seed/ui/seed-ui.js +1 -1
- package/dist/server/services/app-temp-file/AppTempFileService.d.ts +27 -0
- package/dist/server/services/app-temp-file/AppTempFileService.d.ts.map +1 -0
- package/dist/server/services/app-temp-file/AppTempFileService.js +259 -0
- package/dist/server/services/app-temp-file/AppTempFileService.js.map +1 -0
- package/dist/server/services/files/WebSiteContentService.d.ts +8 -7
- package/dist/server/services/files/WebSiteContentService.d.ts.map +1 -1
- package/dist/server/services/files/WebSiteContentService.js +4 -3
- package/dist/server/services/files/WebSiteContentService.js.map +1 -1
- package/dist/server/services/files/web-content/WebContentTranspileService.js +1 -1
- package/dist/server/services/files/web-content/WebContentTranspileService.js.map +1 -1
- package/dist/server/workflows/clean-up/CleanupDeletedFilesWorkflow.d.ts.map +1 -1
- package/dist/server/workflows/clean-up/CleanupDeletedFilesWorkflow.js +23 -4
- package/dist/server/workflows/clean-up/CleanupDeletedFilesWorkflow.js.map +1 -1
- package/dist/server/workflows/files/DeleteFileWorkflow.d.ts.map +1 -1
- package/dist/server/workflows/files/DeleteFileWorkflow.js +1 -0
- package/dist/server/workflows/files/DeleteFileWorkflow.js.map +1 -1
- package/dist/server/workflows/site/CopyTemplateWorkflow.d.ts +2 -1
- package/dist/server/workflows/site/CopyTemplateWorkflow.d.ts.map +1 -1
- package/dist/server/workflows/site/CopyTemplateWorkflow.js +64 -65
- package/dist/server/workflows/site/CopyTemplateWorkflow.js.map +1 -1
- package/dist/server/workflows/web-site/DeleteWebSiteWorkflow.d.ts +1 -0
- package/dist/server/workflows/web-site/DeleteWebSiteWorkflow.d.ts.map +1 -1
- package/dist/server/workflows/web-site/DeleteWebSiteWorkflow.js +11 -1
- package/dist/server/workflows/web-site/DeleteWebSiteWorkflow.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/wwwroot/routes/social-mail/site/download/files/get.d.ts.map +1 -1
- package/dist/wwwroot/routes/social-mail/site/download/files/get.js +1 -1
- package/dist/wwwroot/routes/social-mail/site/download/files/get.js.map +1 -1
- package/package.json +1 -1
- package/src/server/model/SocialMailContext.ts +3 -0
- package/src/server/model/entities/AppTempFile.ts +86 -0
- package/src/server/model/entities/FileContent.ts +2 -0
- package/src/server/model/entities/WebSiteChannel.ts +5 -1
- package/src/server/model/entities/WebSiteChannelDomain.ts +5 -1
- package/src/server/model/events/FileContentEvents.ts +7 -1
- package/src/server/seed/ui/seed-ui.ts +1 -1
- package/src/server/services/app-temp-file/AppTempFileService.ts +228 -0
- package/src/server/services/files/WebSiteContentService.ts +11 -9
- package/src/server/services/files/web-content/WebContentTranspileService.ts +1 -1
- package/src/server/workflows/clean-up/CleanupDeletedFilesWorkflow.ts +32 -4
- package/src/server/workflows/files/DeleteFileWorkflow.ts +1 -0
- package/src/server/workflows/site/CopyTemplateWorkflow.ts +57 -45
- package/src/server/workflows/web-site/DeleteWebSiteWorkflow.ts +7 -1
- package/src/wwwroot/routes/social-mail/site/download/files/get.tsx +1 -2
|
@@ -66,6 +66,7 @@ import { JSDOM } from 'jsdom';
|
|
|
66
66
|
import BaseStorage from "../../storage/BaseStorage.js";
|
|
67
67
|
import DateTime from "@entity-access/entity-access/dist/types/DateTime.js";
|
|
68
68
|
import UpdateFolderSize from "../storage/files/UpdateFolderSize.js";
|
|
69
|
+
import AppTempFileService from "../../services/app-temp-file/AppTempFileService.js";
|
|
69
70
|
export default class CopyTemplateWorkflow extends Workflow {
|
|
70
71
|
constructor() {
|
|
71
72
|
super(...arguments);
|
|
@@ -74,7 +75,7 @@ export default class CopyTemplateWorkflow extends Workflow {
|
|
|
74
75
|
async run() {
|
|
75
76
|
await this.copy();
|
|
76
77
|
}
|
|
77
|
-
async copy(db, tfs, storage) {
|
|
78
|
+
async copy(db, tfs, storage, atfs) {
|
|
78
79
|
// delete all files from current folder ..
|
|
79
80
|
const { folderID, templateID } = this.input;
|
|
80
81
|
const currentPath = `${folderID}/%`;
|
|
@@ -85,82 +86,70 @@ export default class CopyTemplateWorkflow extends Workflow {
|
|
|
85
86
|
.first();
|
|
86
87
|
let { remoteUrl } = template;
|
|
87
88
|
if (remoteUrl) {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (remoteUrl.endsWith("/")) {
|
|
91
|
-
remoteUrl = remoteUrl.slice(0, -1);
|
|
92
|
-
}
|
|
93
|
-
const tx = __addDisposableResource(env_1, await db.connection.createTransaction(), true);
|
|
94
|
-
await this.copyRemoteTemplate(db, site, template.remoteUrl);
|
|
95
|
-
await tx.commit();
|
|
96
|
-
}
|
|
97
|
-
catch (e_1) {
|
|
98
|
-
env_1.error = e_1;
|
|
99
|
-
env_1.hasError = true;
|
|
100
|
-
}
|
|
101
|
-
finally {
|
|
102
|
-
const result_1 = __disposeResources(env_1);
|
|
103
|
-
if (result_1)
|
|
104
|
-
await result_1;
|
|
89
|
+
if (remoteUrl.endsWith("/")) {
|
|
90
|
+
remoteUrl = remoteUrl.slice(0, -1);
|
|
105
91
|
}
|
|
92
|
+
// create a temp folder...
|
|
93
|
+
const atf = await atfs.downloadTemplate(remoteUrl, { name: site.title });
|
|
94
|
+
await atfs.copyTo(atf, site.folder, true);
|
|
106
95
|
}
|
|
107
96
|
else {
|
|
108
|
-
const
|
|
97
|
+
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
109
98
|
try {
|
|
110
|
-
const tx = __addDisposableResource(
|
|
99
|
+
const tx = __addDisposableResource(env_1, await db.connection.createTransaction(), true);
|
|
111
100
|
await db.appFiles
|
|
112
101
|
.where({ folderID, currentPath }, (p) => (x) => Sql.text.like(x.path, p.currentPath) && x.appFileID !== p.folderID)
|
|
113
102
|
.update(void 0, (p) => (x) => ({ isDeleted: true }));
|
|
114
103
|
await this.copyFolder(db, folderID, templateID, `${folderID}/`);
|
|
115
104
|
await tx.commit();
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
for (const k of Array.from(e.getAttributeNames())) {
|
|
141
|
-
const v = e.getAttribute(k);
|
|
142
|
-
switch (k) {
|
|
143
|
-
case "data-template-part":
|
|
144
|
-
switch (v) {
|
|
145
|
-
case "name":
|
|
146
|
-
e.removeAttribute(k);
|
|
147
|
-
e.textContent = title;
|
|
148
|
-
modified = true;
|
|
105
|
+
const { title } = site;
|
|
106
|
+
// change template content...
|
|
107
|
+
for (const htmlFile of this.set) {
|
|
108
|
+
const file = await tfs.downloadAppFile(htmlFile);
|
|
109
|
+
const text = await file.readAsText();
|
|
110
|
+
if (!/data\-template\-/.test(text)) {
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
let modified = false;
|
|
114
|
+
// replace template-part...
|
|
115
|
+
const window = new JSDOM(text);
|
|
116
|
+
const document = window.window.document;
|
|
117
|
+
for (const e of document.documentElement.querySelectorAll("*")) {
|
|
118
|
+
for (const k of Array.from(e.getAttributeNames())) {
|
|
119
|
+
const v = e.getAttribute(k);
|
|
120
|
+
switch (k) {
|
|
121
|
+
case "data-template-part":
|
|
122
|
+
switch (v) {
|
|
123
|
+
case "name":
|
|
124
|
+
e.removeAttribute(k);
|
|
125
|
+
e.textContent = title;
|
|
126
|
+
modified = true;
|
|
127
|
+
break;
|
|
128
|
+
}
|
|
149
129
|
break;
|
|
150
130
|
}
|
|
151
|
-
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
if (modified) {
|
|
134
|
+
const savedFile = await tfs.createTempFile(".html", htmlFile.name, htmlFile.contentType);
|
|
135
|
+
let docType = "";
|
|
136
|
+
if (document.doctype.name === "html") {
|
|
137
|
+
docType = "<!DOCTYPE html>\n";
|
|
138
|
+
}
|
|
139
|
+
await savedFile.writeAllText(docType + document.documentElement.outerHTML);
|
|
140
|
+
await storage.updateFile(htmlFile, savedFile);
|
|
141
|
+
await db.appFiles.statements.update({ fileContentID: htmlFile.fileContentID }, { appFileID: htmlFile.appFileID });
|
|
152
142
|
}
|
|
153
143
|
}
|
|
154
144
|
}
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
await db.appFiles.statements.update({ fileContentID: htmlFile.fileContentID }, { appFileID: htmlFile.appFileID });
|
|
145
|
+
catch (e_1) {
|
|
146
|
+
env_1.error = e_1;
|
|
147
|
+
env_1.hasError = true;
|
|
148
|
+
}
|
|
149
|
+
finally {
|
|
150
|
+
const result_1 = __disposeResources(env_1);
|
|
151
|
+
if (result_1)
|
|
152
|
+
await result_1;
|
|
164
153
|
}
|
|
165
154
|
}
|
|
166
155
|
// publish a snapshot...
|
|
@@ -176,7 +165,15 @@ export default class CopyTemplateWorkflow extends Workflow {
|
|
|
176
165
|
await this.context.queue(UpdateFolderSize, folderID);
|
|
177
166
|
}
|
|
178
167
|
async copyRemoteTemplate(db, site, remoteUrl, ...path) {
|
|
179
|
-
|
|
168
|
+
const r = await fetch(remoteUrl + path.join("/"));
|
|
169
|
+
const contentType = r.headers.get("content-type");
|
|
170
|
+
if (/json/i.test(contentType) && r.headers.get("x-content-type") === "folder") {
|
|
171
|
+
const files = await r.json();
|
|
172
|
+
for (const file of files) {
|
|
173
|
+
await this.copyRemoteTemplate(db, site, remoteUrl, ...[...path, file.name]);
|
|
174
|
+
}
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
180
177
|
}
|
|
181
178
|
async copyFolder(db, destFolderID, srcFolderID, parentPath) {
|
|
182
179
|
const children = await db.appFiles
|
|
@@ -238,10 +235,12 @@ __decorate([
|
|
|
238
235
|
__param(0, Inject),
|
|
239
236
|
__param(1, Inject),
|
|
240
237
|
__param(2, Inject),
|
|
238
|
+
__param(3, Inject),
|
|
241
239
|
__metadata("design:type", Function),
|
|
242
240
|
__metadata("design:paramtypes", [SocialMailContext,
|
|
243
241
|
TempFileService,
|
|
244
|
-
BaseStorage
|
|
242
|
+
BaseStorage,
|
|
243
|
+
AppTempFileService]),
|
|
245
244
|
__metadata("design:returntype", Promise)
|
|
246
245
|
], CopyTemplateWorkflow.prototype, "copy", null);
|
|
247
246
|
//# sourceMappingURL=CopyTemplateWorkflow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CopyTemplateWorkflow.js","sourceRoot":"","sources":["../../../../src/server/workflows/site/CopyTemplateWorkflow.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,MAAM,MAAM,4CAA4C,CAAC;AAChE,OAAO,QAAQ,EAAE,EAAE,cAAc,EAAE,MAAM,yDAAyD,CAAC;AACnG,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AACjE,OAAO,GAAG,MAAM,8CAA8C,CAAC;AAE/D,OAAO,eAAe,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"CopyTemplateWorkflow.js","sourceRoot":"","sources":["../../../../src/server/workflows/site/CopyTemplateWorkflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ export default class DeleteWebsiteWorkflow extends Workflow<{
|
|
|
4
4
|
folderID: number;
|
|
5
5
|
}> {
|
|
6
6
|
run(): Promise<void>;
|
|
7
|
+
deleteSiteVersion(db?: SocialMailContext): Promise<void>;
|
|
7
8
|
deleteSite(db?: SocialMailContext): Promise<void>;
|
|
8
9
|
deleteChildren(start: number, db?: SocialMailContext): Promise<{
|
|
9
10
|
start: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeleteWebSiteWorkflow.d.ts","sourceRoot":"","sources":["../../../../src/server/workflows/web-site/DeleteWebSiteWorkflow.ts"],"names":[],"mappings":"AACA,OAAO,QAA4B,MAAM,yDAAyD,CAAC;AACnG,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAIjE,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,QAAQ,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;IAEvE,GAAG;
|
|
1
|
+
{"version":3,"file":"DeleteWebSiteWorkflow.d.ts","sourceRoot":"","sources":["../../../../src/server/workflows/web-site/DeleteWebSiteWorkflow.ts"],"names":[],"mappings":"AACA,OAAO,QAA4B,MAAM,yDAAyD,CAAC;AACnG,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAIjE,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,QAAQ,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;IAEvE,GAAG;IAyBH,iBAAiB,CAAU,EAAE,CAAC,EAAE,iBAAiB;IAKjD,UAAU,CACJ,EAAE,CAAC,EAAE,iBAAiB;IAe5B,cAAc,CAChB,KAAK,EAAE,MAAM,EACL,EAAE,CAAC,EAAE,iBAAiB;;;;CAuBrC"}
|
|
@@ -16,6 +16,7 @@ import SocialMailContext from "../../model/SocialMailContext.js";
|
|
|
16
16
|
import DeleteFileWorkflow from "../files/DeleteFileWorkflow.js";
|
|
17
17
|
export default class DeleteWebsiteWorkflow extends Workflow {
|
|
18
18
|
async run() {
|
|
19
|
+
await this.deleteSiteVersion();
|
|
19
20
|
let start = 0;
|
|
20
21
|
do {
|
|
21
22
|
const { start: startNext, children } = await this.deleteChildren(start);
|
|
@@ -29,8 +30,10 @@ export default class DeleteWebsiteWorkflow extends Workflow {
|
|
|
29
30
|
await this.deleteSite();
|
|
30
31
|
await this.runChild(DeleteFileWorkflow, { fileID: this.input.folderID });
|
|
31
32
|
}
|
|
32
|
-
async
|
|
33
|
+
async deleteSiteVersion(db) {
|
|
33
34
|
await db.websiteFolders.statements.update({ currentVersionID: null }, { folderID: this.input.folderID });
|
|
35
|
+
}
|
|
36
|
+
async deleteSite(db) {
|
|
34
37
|
// delete all hosts..
|
|
35
38
|
await db.websiteFolderHosts.asQuery()
|
|
36
39
|
.delete(this.input, (p) => (x) => x.folderID === p.folderID);
|
|
@@ -55,6 +58,13 @@ export default class DeleteWebsiteWorkflow extends Workflow {
|
|
|
55
58
|
return { start, children };
|
|
56
59
|
}
|
|
57
60
|
}
|
|
61
|
+
__decorate([
|
|
62
|
+
UniqueActivity,
|
|
63
|
+
__param(0, Inject),
|
|
64
|
+
__metadata("design:type", Function),
|
|
65
|
+
__metadata("design:paramtypes", [SocialMailContext]),
|
|
66
|
+
__metadata("design:returntype", Promise)
|
|
67
|
+
], DeleteWebsiteWorkflow.prototype, "deleteSiteVersion", null);
|
|
58
68
|
__decorate([
|
|
59
69
|
UniqueActivity,
|
|
60
70
|
__param(0, Inject),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeleteWebSiteWorkflow.js","sourceRoot":"","sources":["../../../../src/server/workflows/web-site/DeleteWebSiteWorkflow.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,MAAM,MAAM,4CAA4C,CAAC;AAChE,OAAO,QAAQ,EAAE,EAAE,cAAc,EAAE,MAAM,yDAAyD,CAAC;AACnG,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,OAAO,kBAAkB,MAAM,gCAAgC,CAAC;AAEhE,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,QAA8B;IAE7E,KAAK,CAAC,GAAG;QAEL,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,GAAG,CAAC;YACA,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAI,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAEzE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,MAAM;YACV,CAAC;YAED,KAAK,GAAG,SAAS,CAAC;YAClB,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAExB,CAAC,QAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QAE3B,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExB,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE7E,CAAC;IAGK,AAAN,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"DeleteWebSiteWorkflow.js","sourceRoot":"","sources":["../../../../src/server/workflows/web-site/DeleteWebSiteWorkflow.ts"],"names":[],"mappings":"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"}
|