next-tinacms-dos 1.2.0 → 1.3.1
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/handlers.js +53 -33
- package/dist/index.es.js +418 -120
- package/dist/index.js +418 -120
- package/package.json +5 -4
package/dist/handlers.js
CHANGED
|
@@ -4,34 +4,36 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
8
7
|
var __export = (target, all) => {
|
|
9
|
-
__markAsModule(target);
|
|
10
8
|
for (var name in all)
|
|
11
9
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
10
|
};
|
|
13
|
-
var
|
|
14
|
-
if (
|
|
15
|
-
for (let key of __getOwnPropNames(
|
|
16
|
-
if (!__hasOwnProp.call(
|
|
17
|
-
__defProp(
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
16
|
}
|
|
19
|
-
return
|
|
20
|
-
};
|
|
21
|
-
var __toModule = (module2) => {
|
|
22
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
17
|
+
return to;
|
|
23
18
|
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
21
|
+
mod
|
|
22
|
+
));
|
|
23
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
24
24
|
|
|
25
25
|
// src/handlers.ts
|
|
26
|
-
|
|
26
|
+
var handlers_exports = {};
|
|
27
|
+
__export(handlers_exports, {
|
|
27
28
|
createMediaHandler: () => createMediaHandler,
|
|
28
29
|
mediaHandlerConfig: () => mediaHandlerConfig
|
|
29
30
|
});
|
|
30
|
-
|
|
31
|
-
var
|
|
32
|
-
var
|
|
33
|
-
var
|
|
34
|
-
var
|
|
31
|
+
module.exports = __toCommonJS(handlers_exports);
|
|
32
|
+
var import_client_s3 = require("@aws-sdk/client-s3");
|
|
33
|
+
var import_path = __toESM(require("path"));
|
|
34
|
+
var import_fs = __toESM(require("fs"));
|
|
35
|
+
var import_multer = __toESM(require("multer"));
|
|
36
|
+
var import_util = require("util");
|
|
35
37
|
var mediaHandlerConfig = {
|
|
36
38
|
api: {
|
|
37
39
|
bodyParser: false
|
|
@@ -70,16 +72,18 @@ var createMediaHandler = (config, options) => {
|
|
|
70
72
|
};
|
|
71
73
|
};
|
|
72
74
|
async function uploadMedia(req, res, client, bucket, mediaRoot, cdnUrl) {
|
|
73
|
-
const upload = (0, import_util.promisify)(
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
75
|
+
const upload = (0, import_util.promisify)(
|
|
76
|
+
(0, import_multer.default)({
|
|
77
|
+
storage: import_multer.default.diskStorage({
|
|
78
|
+
directory: (req2, file, cb) => {
|
|
79
|
+
cb(null, "/tmp");
|
|
80
|
+
},
|
|
81
|
+
filename: (req2, file, cb) => {
|
|
82
|
+
cb(null, file.originalname);
|
|
83
|
+
}
|
|
84
|
+
})
|
|
85
|
+
}).single("file")
|
|
86
|
+
);
|
|
83
87
|
await upload(req, res);
|
|
84
88
|
const { directory } = req.body;
|
|
85
89
|
let prefix = directory.replace(/^\//, "").replace(/\/$/, "");
|
|
@@ -103,10 +107,16 @@ async function uploadMedia(req, res, client, bucket, mediaRoot, cdnUrl) {
|
|
|
103
107
|
id: prefix + filename,
|
|
104
108
|
filename,
|
|
105
109
|
directory: prefix,
|
|
106
|
-
|
|
110
|
+
thumbnails: {
|
|
111
|
+
"75x75": src,
|
|
112
|
+
"400x400": src,
|
|
113
|
+
"1000x1000": src
|
|
114
|
+
},
|
|
107
115
|
src: cdnUrl + (mediaRoot ? import_path.default.join(mediaRoot, prefix + filename) : prefix + filename)
|
|
108
116
|
});
|
|
109
117
|
} catch (e) {
|
|
118
|
+
console.error("Error uploading media");
|
|
119
|
+
console.error(e);
|
|
110
120
|
res.status(500).send(findErrorMessage(e));
|
|
111
121
|
}
|
|
112
122
|
}
|
|
@@ -158,15 +168,19 @@ async function listMedia(req, res, client, bucket, mediaRoot, cdnUrl) {
|
|
|
158
168
|
directory: import_path.default.dirname(strippedPrefix)
|
|
159
169
|
});
|
|
160
170
|
});
|
|
161
|
-
items.push(
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
171
|
+
items.push(
|
|
172
|
+
...(response.Contents || []).filter((file) => {
|
|
173
|
+
const strippedKey = stripMediaRoot(mediaRoot, file.Key);
|
|
174
|
+
return strippedKey !== prefix;
|
|
175
|
+
}).map(getDOSToTinaFunc(cdnUrl, mediaRoot))
|
|
176
|
+
);
|
|
165
177
|
res.json({
|
|
166
178
|
items,
|
|
167
179
|
offset: response.NextMarker
|
|
168
180
|
});
|
|
169
181
|
} catch (e) {
|
|
182
|
+
console.error("Error listing media");
|
|
183
|
+
console.error(e);
|
|
170
184
|
res.status(500);
|
|
171
185
|
const message = findErrorMessage(e);
|
|
172
186
|
res.json({ e: message });
|
|
@@ -192,6 +206,8 @@ async function deleteAsset(req, res, client, bucket) {
|
|
|
192
206
|
const data = await client.send(new import_client_s3.DeleteObjectCommand(params));
|
|
193
207
|
res.json(data);
|
|
194
208
|
} catch (err) {
|
|
209
|
+
console.error("Error deleting media");
|
|
210
|
+
console.error(err);
|
|
195
211
|
res.status(500).json({
|
|
196
212
|
message: err.message || "Something went wrong"
|
|
197
213
|
});
|
|
@@ -208,7 +224,11 @@ function getDOSToTinaFunc(cdnUrl, mediaRoot) {
|
|
|
208
224
|
filename,
|
|
209
225
|
directory,
|
|
210
226
|
src,
|
|
211
|
-
|
|
227
|
+
thumbnails: {
|
|
228
|
+
"75x75": src,
|
|
229
|
+
"400x400": src,
|
|
230
|
+
"1000x1000": src
|
|
231
|
+
},
|
|
212
232
|
type: "file"
|
|
213
233
|
};
|
|
214
234
|
};
|