@social-mail/social-mail-web-server 1.7.345 → 1.7.347
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/workflows/site/CopyTemplateWorkflow.d.ts +2 -0
- package/dist/server/workflows/site/CopyTemplateWorkflow.d.ts.map +1 -1
- package/dist/server/workflows/site/CopyTemplateWorkflow.js +93 -69
- package/dist/server/workflows/site/CopyTemplateWorkflow.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/wwwroot/routes/index.d.ts.map +1 -1
- package/dist/wwwroot/routes/index.js +14 -1
- package/dist/wwwroot/routes/index.js.map +1 -1
- package/package.json +2 -2
- package/src/server/workflows/site/CopyTemplateWorkflow.ts +21 -6
- package/src/wwwroot/routes/index.tsx +16 -1
|
@@ -3,6 +3,7 @@ import SocialMailContext from "../../model/SocialMailContext.js";
|
|
|
3
3
|
import AppFile from "../../model/entities/AppFile.js";
|
|
4
4
|
import TempFileService from "../../storage/TempFileService.js";
|
|
5
5
|
import BaseStorage from "../../storage/BaseStorage.js";
|
|
6
|
+
import WebSite from "../../model/entities/WebSite.js";
|
|
6
7
|
export default class CopyTemplateWorkflow extends Workflow<{
|
|
7
8
|
folderID: any;
|
|
8
9
|
templateID: any;
|
|
@@ -11,6 +12,7 @@ export default class CopyTemplateWorkflow extends Workflow<{
|
|
|
11
12
|
set: Set<AppFile>;
|
|
12
13
|
run(): Promise<void>;
|
|
13
14
|
copy(db?: SocialMailContext, tfs?: TempFileService, storage?: BaseStorage): Promise<void>;
|
|
15
|
+
copyRemoteTemplate(db: SocialMailContext, site: WebSite, remoteUrl: string): Promise<void>;
|
|
14
16
|
copyFolder(db: SocialMailContext, destFolderID: any, srcFolderID: any, parentPath: string): Promise<void>;
|
|
15
17
|
}
|
|
16
18
|
//# sourceMappingURL=CopyTemplateWorkflow.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CopyTemplateWorkflow.d.ts","sourceRoot":"","sources":["../../../../src/server/workflows/site/CopyTemplateWorkflow.ts"],"names":[],"mappings":"AACA,OAAO,QAA4B,MAAM,yDAAyD,CAAC;AACnG,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,OAAO,OAAO,MAAM,iCAAiC,CAAC;AACtD,OAAO,eAAe,MAAM,kCAAkC,CAAC;AAE/D,OAAO,WAAW,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"CopyTemplateWorkflow.d.ts","sourceRoot":"","sources":["../../../../src/server/workflows/site/CopyTemplateWorkflow.ts"],"names":[],"mappings":"AACA,OAAO,QAA4B,MAAM,yDAAyD,CAAC;AACnG,OAAO,iBAAiB,MAAM,kCAAkC,CAAC;AAEjE,OAAO,OAAO,MAAM,iCAAiC,CAAC;AACtD,OAAO,eAAe,MAAM,kCAAkC,CAAC;AAE/D,OAAO,WAAW,MAAM,8BAA8B,CAAC;AAGvD,OAAO,OAAO,MAAM,iCAAiC,CAAC;AAGtD,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,QAAQ,CAAC;IAAE,QAAQ,MAAC;IAAC,UAAU,MAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;IAEnG,GAAG,eAAsB;IAEnB,GAAG;IAKH,IAAI,CACE,EAAE,CAAC,EAAE,iBAAiB,EACtB,GAAG,CAAC,EAAE,eAAe,EACrB,OAAO,CAAC,EAAE,WAAW;IAkG3B,kBAAkB,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM;IAI1E,UAAU,CAAC,EAAE,EAAE,iBAAiB,EAAE,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM;CA+DlG"}
|
|
@@ -75,80 +75,104 @@ export default class CopyTemplateWorkflow extends Workflow {
|
|
|
75
75
|
await this.copy();
|
|
76
76
|
}
|
|
77
77
|
async copy(db, tfs, storage) {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
78
|
+
// delete all files from current folder ..
|
|
79
|
+
const { folderID, templateID } = this.input;
|
|
80
|
+
const currentPath = `${folderID}/%`;
|
|
81
|
+
const site = await db.websiteFolders.where(this.input, (p) => (x) => x.folderID === p.folderID)
|
|
82
|
+
.include((x) => x.folder)
|
|
83
|
+
.first();
|
|
84
|
+
const template = await db.websiteFolders.where(this.input, (p) => (x) => x.folderID === p.templateID)
|
|
85
|
+
.first();
|
|
86
|
+
if (template.remoteUrl) {
|
|
87
|
+
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
88
|
+
try {
|
|
89
|
+
const tx = __addDisposableResource(env_1, await db.connection.createTransaction(), true);
|
|
90
|
+
await this.copyRemoteTemplate(db, site, template.remoteUrl);
|
|
91
|
+
await tx.commit();
|
|
92
|
+
}
|
|
93
|
+
catch (e_1) {
|
|
94
|
+
env_1.error = e_1;
|
|
95
|
+
env_1.hasError = true;
|
|
96
|
+
}
|
|
97
|
+
finally {
|
|
98
|
+
const result_1 = __disposeResources(env_1);
|
|
99
|
+
if (result_1)
|
|
100
|
+
await result_1;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
const env_2 = { stack: [], error: void 0, hasError: false };
|
|
105
|
+
try {
|
|
106
|
+
const tx = __addDisposableResource(env_2, await db.connection.createTransaction(), true);
|
|
107
|
+
await db.appFiles
|
|
108
|
+
.where({ folderID, currentPath }, (p) => (x) => Sql.text.like(x.path, p.currentPath) && x.appFileID !== p.folderID)
|
|
109
|
+
.update(void 0, (p) => (x) => ({ isDeleted: true }));
|
|
110
|
+
await this.copyFolder(db, folderID, templateID, `${folderID}/`);
|
|
111
|
+
await tx.commit();
|
|
112
|
+
}
|
|
113
|
+
catch (e_2) {
|
|
114
|
+
env_2.error = e_2;
|
|
115
|
+
env_2.hasError = true;
|
|
116
|
+
}
|
|
117
|
+
finally {
|
|
118
|
+
const result_2 = __disposeResources(env_2);
|
|
119
|
+
if (result_2)
|
|
120
|
+
await result_2;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
const { title } = site;
|
|
124
|
+
// change template content...
|
|
125
|
+
for (const htmlFile of this.set) {
|
|
126
|
+
const file = await tfs.downloadAppFile(htmlFile);
|
|
127
|
+
const text = await file.readAsText();
|
|
128
|
+
if (!/data\-template\-/.test(text)) {
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
let modified = false;
|
|
132
|
+
// replace template-part...
|
|
133
|
+
const window = new JSDOM(text);
|
|
134
|
+
const document = window.window.document;
|
|
135
|
+
for (const e of document.documentElement.querySelectorAll("*")) {
|
|
136
|
+
for (const k of Array.from(e.getAttributeNames())) {
|
|
137
|
+
const v = e.getAttribute(k);
|
|
138
|
+
switch (k) {
|
|
139
|
+
case "data-template-part":
|
|
140
|
+
switch (v) {
|
|
141
|
+
case "name":
|
|
142
|
+
e.removeAttribute(k);
|
|
143
|
+
e.textContent = title;
|
|
144
|
+
modified = true;
|
|
145
|
+
break;
|
|
146
|
+
}
|
|
147
|
+
break;
|
|
118
148
|
}
|
|
119
149
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
await savedFile.writeAllText(docType + document.documentElement.outerHTML);
|
|
127
|
-
await storage.updateFile(htmlFile, savedFile);
|
|
128
|
-
await db.appFiles.statements.update({ fileContentID: htmlFile.fileContentID }, { appFileID: htmlFile.appFileID });
|
|
150
|
+
}
|
|
151
|
+
if (modified) {
|
|
152
|
+
const savedFile = await tfs.createTempFile(".html", htmlFile.name, htmlFile.contentType);
|
|
153
|
+
let docType = "";
|
|
154
|
+
if (document.doctype.name === "html") {
|
|
155
|
+
docType = "<!DOCTYPE html>\n";
|
|
129
156
|
}
|
|
157
|
+
await savedFile.writeAllText(docType + document.documentElement.outerHTML);
|
|
158
|
+
await storage.updateFile(htmlFile, savedFile);
|
|
159
|
+
await db.appFiles.statements.update({ fileContentID: htmlFile.fileContentID }, { appFileID: htmlFile.appFileID });
|
|
130
160
|
}
|
|
131
|
-
// publish a snapshot...
|
|
132
|
-
db.websiteVersions.add({
|
|
133
|
-
folderID,
|
|
134
|
-
publish: true,
|
|
135
|
-
authorID: site.folder.creatorID,
|
|
136
|
-
dateCreated: DateTime.now,
|
|
137
|
-
name: "1.0.1",
|
|
138
|
-
versionType: "patch"
|
|
139
|
-
});
|
|
140
|
-
await db.saveChanges();
|
|
141
|
-
await this.context.queue(UpdateFolderSize, folderID);
|
|
142
|
-
}
|
|
143
|
-
catch (e_1) {
|
|
144
|
-
env_1.error = e_1;
|
|
145
|
-
env_1.hasError = true;
|
|
146
|
-
}
|
|
147
|
-
finally {
|
|
148
|
-
const result_1 = __disposeResources(env_1);
|
|
149
|
-
if (result_1)
|
|
150
|
-
await result_1;
|
|
151
161
|
}
|
|
162
|
+
// publish a snapshot...
|
|
163
|
+
db.websiteVersions.add({
|
|
164
|
+
folderID,
|
|
165
|
+
publish: true,
|
|
166
|
+
authorID: site.folder.creatorID,
|
|
167
|
+
dateCreated: DateTime.now,
|
|
168
|
+
name: "1.0.1",
|
|
169
|
+
versionType: "patch"
|
|
170
|
+
});
|
|
171
|
+
await db.saveChanges();
|
|
172
|
+
await this.context.queue(UpdateFolderSize, folderID);
|
|
173
|
+
}
|
|
174
|
+
async copyRemoteTemplate(db, site, remoteUrl) {
|
|
175
|
+
// do nothing...
|
|
152
176
|
}
|
|
153
177
|
async copyFolder(db, destFolderID, srcFolderID, parentPath) {
|
|
154
178
|
const children = await db.appFiles
|
|
@@ -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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"}
|