@dosgato/api 0.0.16 → 0.0.17
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/asset/asset.database.d.ts +6 -0
- package/dist/asset/asset.database.js +32 -5
- package/dist/asset/asset.database.js.map +1 -1
- package/dist/asset/asset.model.d.ts +2 -0
- package/dist/asset/asset.model.js +12 -4
- package/dist/asset/asset.model.js.map +1 -1
- package/dist/asset/asset.routes.d.ts +19 -0
- package/dist/asset/asset.routes.js +119 -40
- package/dist/asset/asset.routes.js.map +1 -1
- package/dist/asset/asset.service.js +22 -4
- package/dist/asset/asset.service.js.map +1 -1
- package/dist/asset/asset.storage.d.ts +10 -2
- package/dist/asset/asset.storage.js +16 -3
- package/dist/asset/asset.storage.js.map +1 -1
- package/dist/assetfolder/assetfolder.database.js +1 -4
- package/dist/assetfolder/assetfolder.database.js.map +1 -1
- package/dist/assetfolder/assetfolder.model.js +5 -5
- package/dist/assetfolder/assetfolder.model.js.map +1 -1
- package/dist/assetfolder/assetfolder.resolver.d.ts +1 -1
- package/dist/assetfolder/assetfolder.resolver.js +6 -5
- package/dist/assetfolder/assetfolder.resolver.js.map +1 -1
- package/dist/assetfolder/assetfolder.service.d.ts +1 -1
- package/dist/assetfolder/assetfolder.service.js +36 -28
- package/dist/assetfolder/assetfolder.service.js.map +1 -1
- package/dist/assetrule/assetrule.database.js.map +1 -1
- package/dist/assetrule/assetrule.model.js.map +1 -1
- package/dist/data/data.database.js.map +1 -1
- package/dist/data/data.service.js +6 -3
- package/dist/data/data.service.js.map +1 -1
- package/dist/datafolder/datafolder.database.js.map +1 -1
- package/dist/datafolder/datafolder.service.js +7 -3
- package/dist/datafolder/datafolder.service.js.map +1 -1
- package/dist/dataroot/dataroot.model.js.map +1 -1
- package/dist/datarule/datarule.database.js.map +1 -1
- package/dist/globalrule/globalrule.database.js.map +1 -1
- package/dist/globalrule/globalrule.service.d.ts +1 -0
- package/dist/globalrule/globalrule.service.js +3 -0
- package/dist/globalrule/globalrule.service.js.map +1 -1
- package/dist/group/group.database.js.map +1 -1
- package/dist/group/group.service.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/migrations.js +10 -0
- package/dist/migrations.js.map +1 -1
- package/dist/page/page.database.js.map +1 -1
- package/dist/page/page.resolver.d.ts +1 -1
- package/dist/page/page.resolver.js +4 -3
- package/dist/page/page.resolver.js.map +1 -1
- package/dist/page/page.service.d.ts +1 -1
- package/dist/page/page.service.js +22 -14
- package/dist/page/page.service.js.map +1 -1
- package/dist/pagerule/pagerule.database.js.map +1 -1
- package/dist/pagerule/pagerule.model.js.map +1 -1
- package/dist/pagetree/pagetree.resolver.js +8 -4
- package/dist/pagetree/pagetree.resolver.js.map +1 -1
- package/dist/role/role.resolver.d.ts +1 -1
- package/dist/role/role.resolver.js +4 -3
- package/dist/role/role.resolver.js.map +1 -1
- package/dist/role/role.service.d.ts +1 -1
- package/dist/role/role.service.js +8 -15
- package/dist/role/role.service.js.map +1 -1
- package/dist/scalars/index.d.ts +1 -0
- package/dist/scalars/index.js +1 -0
- package/dist/scalars/index.js.map +1 -1
- package/dist/scalars/urlsafepath.d.ts +5 -0
- package/dist/scalars/urlsafepath.js +27 -0
- package/dist/scalars/urlsafepath.js.map +1 -0
- package/dist/scalars/urlsafestring.js +1 -3
- package/dist/scalars/urlsafestring.js.map +1 -1
- package/dist/site/site.database.js.map +1 -1
- package/dist/site/site.model.d.ts +0 -5
- package/dist/site/site.model.js +2 -20
- package/dist/site/site.model.js.map +1 -1
- package/dist/site/site.resolver.js +3 -3
- package/dist/site/site.resolver.js.map +1 -1
- package/dist/site/site.service.js +1 -1
- package/dist/site/site.service.js.map +1 -1
- package/dist/siterule/siterule.database.js.map +1 -1
- package/dist/siterule/siterule.model.js.map +1 -1
- package/dist/template/template.service.js.map +1 -1
- package/dist/templaterule/templaterule.database.js.map +1 -1
- package/dist/templaterule/templaterule.model.js.map +1 -1
- package/dist/user/user.service.js.map +1 -1
- package/dist/util/index.js +1 -2
- package/dist/util/index.js.map +1 -1
- package/dist/util/registry.js.map +1 -1
- package/dist/versionedservice/service.d.ts +16 -0
- package/dist/versionedservice/service.js +33 -0
- package/dist/versionedservice/service.js.map +1 -1
- package/package.json +2 -1
|
@@ -8,9 +8,14 @@ export interface AssetInput {
|
|
|
8
8
|
size: number;
|
|
9
9
|
width?: number;
|
|
10
10
|
height?: number;
|
|
11
|
+
modifiedBy?: string;
|
|
12
|
+
modifiedAt?: string;
|
|
11
13
|
}
|
|
12
14
|
export interface CreateAssetInput extends AssetInput {
|
|
13
15
|
folderId: string;
|
|
16
|
+
legacyId?: string;
|
|
17
|
+
createdBy?: string;
|
|
18
|
+
createdAt?: string;
|
|
14
19
|
}
|
|
15
20
|
export interface ReplaceAssetInput extends AssetInput {
|
|
16
21
|
assetId: string;
|
|
@@ -26,5 +31,6 @@ export declare function createAsset(versionedService: VersionedService, userId:
|
|
|
26
31
|
export declare function replaceAsset(versionedService: VersionedService, userId: string, args: ReplaceAssetInput): Promise<Asset>;
|
|
27
32
|
export declare function registerResize(asset: Asset, width: number, shasum: string, mime: string, quality: number, size: number): Promise<number>;
|
|
28
33
|
export declare function moveAsset(id: number, targetFolder: AssetFolder): Promise<number>;
|
|
34
|
+
export declare function cleanupBinaries(checksums: string[]): Promise<void>;
|
|
29
35
|
export declare function deleteAsset(id: number, userInternalId: number): Promise<number>;
|
|
30
36
|
export declare function undeleteAsset(id: number): Promise<number>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import db from 'mysql2-async/db';
|
|
2
|
-
import { isNotNull, pick, stringify } from 'txstate-utils';
|
|
3
|
-
import { Asset, AssetResize, AssetFolder } from '../internal.js';
|
|
2
|
+
import { isNotNull, keyby, pick, stringify } from 'txstate-utils';
|
|
3
|
+
import { Asset, AssetResize, AssetFolder, fileHandler } from '../internal.js';
|
|
4
4
|
import { DateTime } from 'luxon';
|
|
5
5
|
function processFilters(filter) {
|
|
6
6
|
const binds = [];
|
|
@@ -45,6 +45,13 @@ function processFilters(filter) {
|
|
|
45
45
|
if (filter.checksums?.length) {
|
|
46
46
|
where.push(`binaries.shasum IN (${db.in(binds, filter.checksums)})`);
|
|
47
47
|
}
|
|
48
|
+
if (isNotNull(filter.bytes)) {
|
|
49
|
+
if (filter.bytes < 0)
|
|
50
|
+
where.push('binaries.bytes < ?');
|
|
51
|
+
else
|
|
52
|
+
where.push('binaries.bytes > ?');
|
|
53
|
+
binds.push(Math.abs(filter.bytes));
|
|
54
|
+
}
|
|
48
55
|
}
|
|
49
56
|
return { binds, where, joins };
|
|
50
57
|
}
|
|
@@ -93,7 +100,15 @@ export async function getLatestDownload(asset, resizeBinaryIds) {
|
|
|
93
100
|
}
|
|
94
101
|
export async function createAsset(versionedService, userId, args) {
|
|
95
102
|
return await db.transaction(async (db) => {
|
|
96
|
-
const
|
|
103
|
+
const indexes = args.legacyId ? [{ name: 'legacyId', values: [args.legacyId] }] : [];
|
|
104
|
+
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
105
|
+
const createdBy = args.legacyId ? (args.createdBy || args.modifiedBy || userId) : userId; // || is intended - to catch blanks
|
|
106
|
+
const createdAt = args.legacyId ? (args.createdAt ?? args.modifiedAt ?? undefined) : undefined;
|
|
107
|
+
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
108
|
+
const modifiedBy = args.legacyId ? (args.modifiedBy || createdBy || userId) : userId; // || is intended - to catch blanks
|
|
109
|
+
const modifiedAt = args.legacyId ? (args.modifiedAt ?? args.createdAt ?? undefined) : undefined;
|
|
110
|
+
const dataId = await versionedService.create('asset', { legacyId: args.legacyId, shasum: args.checksum }, indexes, createdBy, db);
|
|
111
|
+
await versionedService.setStamps(dataId, { createdAt: createdAt ? new Date(createdAt) : undefined, modifiedAt: modifiedAt ? new Date(modifiedAt) : undefined, modifiedBy: modifiedBy !== userId ? modifiedBy : undefined }, db);
|
|
97
112
|
const folderInternalId = await db.getval('SELECT id FROM assetfolders WHERE guid = ?', [args.folderId]);
|
|
98
113
|
await db.insert(`
|
|
99
114
|
INSERT IGNORE INTO binaries (shasum, mime, meta, bytes)
|
|
@@ -112,7 +127,10 @@ export async function replaceAsset(versionedService, userId, args) {
|
|
|
112
127
|
await db.insert(`
|
|
113
128
|
INSERT IGNORE INTO binaries (shasum, mime, meta, bytes)
|
|
114
129
|
VALUES(?, ?, ?, ?)`, [args.checksum, args.mime, stringify(pick(args, 'width', 'height')), args.size]);
|
|
115
|
-
await versionedService.update(args.assetId, { ...data, shasum: args.checksum }, [], { user: userId }, db);
|
|
130
|
+
await versionedService.update(args.assetId, { ...data.data, shasum: args.checksum }, [], { user: userId }, db);
|
|
131
|
+
const modifiedBy = data.data.legacyId ? (args.modifiedBy ?? userId) : userId;
|
|
132
|
+
const modifiedAt = data.data.legacyId ? (args.modifiedAt ?? undefined) : undefined;
|
|
133
|
+
await versionedService.setStamps(args.assetId, { modifiedAt: modifiedAt ? new Date(modifiedAt) : undefined, modifiedBy: modifiedBy !== userId ? modifiedBy : undefined }, db);
|
|
116
134
|
await db.update('UPDATE assets SET shasum=? WHERE dataId=?', [args.checksum, args.assetId]);
|
|
117
135
|
return (await getAssets({ ids: [args.assetId] }, db))[0];
|
|
118
136
|
});
|
|
@@ -121,7 +139,7 @@ export async function registerResize(asset, width, shasum, mime, quality, size)
|
|
|
121
139
|
const height = asset.box.height * width / asset.box.width;
|
|
122
140
|
return await db.transaction(async (db) => {
|
|
123
141
|
const binaryId = await db.insert(`
|
|
124
|
-
INSERT
|
|
142
|
+
INSERT INTO binaries (shasum, mime, meta, bytes) VALUES (?, ?, ?, ?) ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id)
|
|
125
143
|
`, [shasum, mime, stringify({ width, height }), size]);
|
|
126
144
|
const origBinaryId = await db.getval('SELECT id FROM binaries WHERE shasum=?', [asset.checksum]);
|
|
127
145
|
await db.insert(`
|
|
@@ -140,6 +158,15 @@ export async function moveAsset(id, targetFolder) {
|
|
|
140
158
|
return await db.update('UPDATE assets set folderId = ? WHERE id = ?', [targetFolder.internalId, id]);
|
|
141
159
|
});
|
|
142
160
|
}
|
|
161
|
+
export async function cleanupBinaries(checksums) {
|
|
162
|
+
const binds = [];
|
|
163
|
+
const binaries = await db.getall(`SELECT shasum FROM binaries WHERE shasum IN (${db.in(binds, checksums)})`, binds);
|
|
164
|
+
const hash = keyby(binaries, 'shasum');
|
|
165
|
+
for (const checksum of checksums) {
|
|
166
|
+
if (!hash[checksum])
|
|
167
|
+
await fileHandler.remove(checksum);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
143
170
|
export async function deleteAsset(id, userInternalId) {
|
|
144
171
|
return await db.update('UPDATE assets SET deletedAt = NOW(), deletedBy = ? WHERE id = ?', [userInternalId, id]);
|
|
145
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset.database.js","sourceRoot":"","sources":["../../src/asset/asset.database.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAChC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"asset.database.js","sourceRoot":"","sources":["../../src/asset/asset.database.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,7 @@ export declare class Asset {
|
|
|
28
28
|
export declare class AssetFilter {
|
|
29
29
|
internalIds?: number[];
|
|
30
30
|
ids?: string[];
|
|
31
|
+
legacyIds?: string[];
|
|
31
32
|
siteIds?: string[];
|
|
32
33
|
links?: AssetLinkInput[];
|
|
33
34
|
checksums?: string[];
|
|
@@ -37,6 +38,7 @@ export declare class AssetFilter {
|
|
|
37
38
|
paths?: string[];
|
|
38
39
|
beneath?: string[];
|
|
39
40
|
parentPaths?: string[];
|
|
41
|
+
bytes?: number;
|
|
40
42
|
referenced?: boolean;
|
|
41
43
|
deleted?: boolean;
|
|
42
44
|
}
|
|
@@ -12,7 +12,7 @@ import { isNotBlank, isNotNull } from 'txstate-utils';
|
|
|
12
12
|
import { Field, ID, InputType, Int, ObjectType, registerEnumType } from 'type-graphql';
|
|
13
13
|
import { ValidatedResponse } from '@txstate-mws/graphql-server';
|
|
14
14
|
import { extension } from 'mime-types';
|
|
15
|
-
import { JsonData, UrlSafeString } from '../internal.js';
|
|
15
|
+
import { JsonData, UrlSafePath, UrlSafeString } from '../internal.js';
|
|
16
16
|
const resizeMimeToExt = {
|
|
17
17
|
'image/jpg': 'jpg',
|
|
18
18
|
'image/jpeg': 'jpg',
|
|
@@ -115,6 +115,10 @@ __decorate([
|
|
|
115
115
|
Field(type => [ID], { nullable: true }),
|
|
116
116
|
__metadata("design:type", Array)
|
|
117
117
|
], AssetFilter.prototype, "ids", void 0);
|
|
118
|
+
__decorate([
|
|
119
|
+
Field(type => [ID], { nullable: true }),
|
|
120
|
+
__metadata("design:type", Array)
|
|
121
|
+
], AssetFilter.prototype, "legacyIds", void 0);
|
|
118
122
|
__decorate([
|
|
119
123
|
Field(type => [ID], { nullable: true }),
|
|
120
124
|
__metadata("design:type", Array)
|
|
@@ -132,17 +136,21 @@ __decorate([
|
|
|
132
136
|
__metadata("design:type", Array)
|
|
133
137
|
], AssetFilter.prototype, "folderIds", void 0);
|
|
134
138
|
__decorate([
|
|
135
|
-
Field(type => [
|
|
139
|
+
Field(type => [UrlSafePath], { nullable: true, description: 'Return assets with the given paths.' }),
|
|
136
140
|
__metadata("design:type", Array)
|
|
137
141
|
], AssetFilter.prototype, "paths", void 0);
|
|
138
142
|
__decorate([
|
|
139
|
-
Field(type => [
|
|
143
|
+
Field(type => [UrlSafePath], { nullable: true, description: 'Return assets that descend from any of the given paths.' }),
|
|
140
144
|
__metadata("design:type", Array)
|
|
141
145
|
], AssetFilter.prototype, "beneath", void 0);
|
|
142
146
|
__decorate([
|
|
143
|
-
Field(type => [
|
|
147
|
+
Field(type => [UrlSafePath], { nullable: true, description: 'Return assets that are direct children of any of the given paths.' }),
|
|
144
148
|
__metadata("design:type", Array)
|
|
145
149
|
], AssetFilter.prototype, "parentPaths", void 0);
|
|
150
|
+
__decorate([
|
|
151
|
+
Field(type => Int, { nullable: true, description: 'Return assets with filesize greater than the given size, in bytes. Use a negative number for less than.' }),
|
|
152
|
+
__metadata("design:type", Number)
|
|
153
|
+
], AssetFilter.prototype, "bytes", void 0);
|
|
146
154
|
__decorate([
|
|
147
155
|
Field({ nullable: true, description: 'true -> return assets referenced by any page, false -> return assets not referenced by any page, null -> return all assets' }),
|
|
148
156
|
__metadata("design:type", Boolean)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset.model.js","sourceRoot":"","sources":["../../src/asset/asset.model.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACtF,OAAO,EAAE,iBAAiB,EAAyB,MAAM,6BAA6B,CAAA;AACtF,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"asset.model.js","sourceRoot":"","sources":["../../src/asset/asset.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,26 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
1
2
|
import type { FastifyInstance } from 'fastify';
|
|
2
3
|
import { FastifyRequest } from 'fastify';
|
|
4
|
+
import { Readable } from 'stream';
|
|
5
|
+
export declare function placeFile(readStream: Readable, filename: string, mimeGuess: string): Promise<{
|
|
6
|
+
name: string;
|
|
7
|
+
checksum: string;
|
|
8
|
+
mime: string;
|
|
9
|
+
size: number;
|
|
10
|
+
width: number | undefined;
|
|
11
|
+
height: number | undefined;
|
|
12
|
+
}>;
|
|
13
|
+
export declare function handleURLUpload(url: string, auth?: string): Promise<{
|
|
14
|
+
name: string;
|
|
15
|
+
checksum: string;
|
|
16
|
+
mime: string;
|
|
17
|
+
size: number;
|
|
18
|
+
width: number | undefined;
|
|
19
|
+
height: number | undefined;
|
|
20
|
+
}>;
|
|
3
21
|
export declare function handleUpload(req: FastifyRequest, maxFiles?: number): Promise<{
|
|
4
22
|
files: {
|
|
23
|
+
fieldname: string;
|
|
5
24
|
name: string;
|
|
6
25
|
checksum: string;
|
|
7
26
|
mime: string;
|
|
@@ -5,10 +5,57 @@ import { fileTypeStream } from 'file-type';
|
|
|
5
5
|
import { DateTime } from 'luxon';
|
|
6
6
|
import { lookup } from 'mime-types';
|
|
7
7
|
import probe from 'probe-image-size';
|
|
8
|
-
import { PassThrough } from 'stream';
|
|
9
|
-
import { keyby, pLimit } from 'txstate-utils';
|
|
10
|
-
import { AssetFolderService, AssetFolderServiceInternal, AssetService, AssetServiceInternal, createAsset, fileHandler, makeSafe, replaceAsset, UserServiceInternal, VersionedService } from '../internal.js';
|
|
8
|
+
import { PassThrough, Readable } from 'stream';
|
|
9
|
+
import { keyby, pLimit, randomid } from 'txstate-utils';
|
|
10
|
+
import { AssetFolderService, AssetFolderServiceInternal, AssetService, AssetServiceInternal, createAsset, fileHandler, GlobalRuleService, makeSafe, replaceAsset, UserServiceInternal, VersionedService } from '../internal.js';
|
|
11
11
|
const resizeLimiter = pLimit(2);
|
|
12
|
+
export async function placeFile(readStream, filename, mimeGuess) {
|
|
13
|
+
const fileTypePassthru = await fileTypeStream(readStream);
|
|
14
|
+
const probePassthru = new PassThrough();
|
|
15
|
+
const metadataPromise = probe(probePassthru, true);
|
|
16
|
+
const { checksum, size } = await fileHandler.put(fileTypePassthru.pipe(probePassthru));
|
|
17
|
+
let { mime } = fileTypePassthru.fileType ?? { mime: mimeGuess };
|
|
18
|
+
if (mime === 'application/x-cfb' || mime.startsWith('plain/text'))
|
|
19
|
+
mime = mimeGuess; // npm file-type library not good at distinguishing old MS Office formats
|
|
20
|
+
let name = filename;
|
|
21
|
+
const extFromFileName = name.match(/\.(\w+)$/)?.[1];
|
|
22
|
+
if (extFromFileName && lookup(extFromFileName))
|
|
23
|
+
name = name.replace(new RegExp('\\.' + extFromFileName + '$'), '');
|
|
24
|
+
name = makeSafe(name);
|
|
25
|
+
let metadata;
|
|
26
|
+
let width;
|
|
27
|
+
let height;
|
|
28
|
+
if (mime.startsWith('image/')) {
|
|
29
|
+
try {
|
|
30
|
+
metadata = await metadataPromise;
|
|
31
|
+
width = metadata.width;
|
|
32
|
+
height = metadata.height;
|
|
33
|
+
if ((metadata.orientation ?? 1) > 4) {
|
|
34
|
+
width = height;
|
|
35
|
+
height = metadata.width;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
console.warn('Unable to read metadata for image', name, 'of type', mime, e);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return { name, checksum, mime, size, width, height };
|
|
43
|
+
}
|
|
44
|
+
export async function handleURLUpload(url, auth) {
|
|
45
|
+
const resp = await fetch(url, {
|
|
46
|
+
headers: {
|
|
47
|
+
Authorization: auth ?? ''
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
if ((resp.status ?? 500) >= 400)
|
|
51
|
+
throw new HttpError(resp.status ?? 500, `Target URL returned status ${resp.status}`);
|
|
52
|
+
const filename = url.split('/').slice(-1)[0] ?? randomid();
|
|
53
|
+
const mimeGuess = resp.headers.get('content-type') ?? (lookup(url) || 'application/octet-stream');
|
|
54
|
+
const readStream = resp.body;
|
|
55
|
+
if (!readStream)
|
|
56
|
+
throw new Error('Unable to read from given URL.');
|
|
57
|
+
return await placeFile(Readable.fromWeb(readStream), filename, mimeGuess);
|
|
58
|
+
}
|
|
12
59
|
export async function handleUpload(req, maxFiles = 200) {
|
|
13
60
|
const data = {};
|
|
14
61
|
const files = [];
|
|
@@ -16,34 +63,8 @@ export async function handleUpload(req, maxFiles = 200) {
|
|
|
16
63
|
if ('file' in part) {
|
|
17
64
|
if (files.length >= maxFiles)
|
|
18
65
|
continue;
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
const metadataPromise = probe(probePassthru, true);
|
|
22
|
-
const checksum = await fileHandler.put(fileTypePassthru.pipe(probePassthru));
|
|
23
|
-
const { mime } = fileTypePassthru.fileType ?? { ext: lookup(part.mimetype) || '', mime: part.mimetype };
|
|
24
|
-
let name = part.filename;
|
|
25
|
-
const extFromFileName = name.match(/\.(\w+)$/)?.[1];
|
|
26
|
-
if (extFromFileName && lookup(extFromFileName))
|
|
27
|
-
name = name.replace(new RegExp('\\.' + extFromFileName + '$'), '');
|
|
28
|
-
name = makeSafe(name);
|
|
29
|
-
let metadata;
|
|
30
|
-
let width;
|
|
31
|
-
let height;
|
|
32
|
-
if (mime.startsWith('image/')) {
|
|
33
|
-
try {
|
|
34
|
-
metadata = await metadataPromise;
|
|
35
|
-
width = metadata.width;
|
|
36
|
-
height = metadata.height;
|
|
37
|
-
if ((metadata.orientation ?? 1) > 4) {
|
|
38
|
-
width = height;
|
|
39
|
-
height = metadata.width;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
catch (e) {
|
|
43
|
-
console.warn('Unable to read metadata for image', name, 'of type', mime, e);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
files.push({ name, checksum, mime, size: part.file.bytesRead, width, height });
|
|
66
|
+
const file = await placeFile(part.file, part.filename, part.mimetype);
|
|
67
|
+
files.push({ ...file, fieldname: part.fieldname });
|
|
47
68
|
}
|
|
48
69
|
else {
|
|
49
70
|
data[part.fieldname] = part.value;
|
|
@@ -71,16 +92,50 @@ export async function createAssetRoutes(app) {
|
|
|
71
92
|
throw new HttpError(404, 'Specified folder does not exist.');
|
|
72
93
|
if (!(await ctx.svc(AssetFolderService).mayCreate(folder)))
|
|
73
94
|
throw new HttpError(403, `Current user is not permitted to add assets to folder ${String(folder.name)}.`);
|
|
95
|
+
if (req.body?.legacyId) {
|
|
96
|
+
const asset = (await ctx.svc(AssetServiceInternal).find({ legacyIds: [req.body.legacyId] }))[0];
|
|
97
|
+
if (asset)
|
|
98
|
+
throw new HttpError(403, 'An asset already exists with the given legacy id. Use /assets/replace/:assetid instead.');
|
|
99
|
+
}
|
|
100
|
+
if (req.body?.createdAt || req.body?.createdBy || req.body?.modifiedAt || req.body?.modifiedBy) {
|
|
101
|
+
if (!req.body.legacyId)
|
|
102
|
+
throw new HttpError(400, 'Only assets being imported from another system may override created/modified attributes.');
|
|
103
|
+
if (!await ctx.svc(GlobalRuleService).mayOverrideStamps())
|
|
104
|
+
throw new HttpError(403, 'You are not allowed to set created/modified stamps on new assets.');
|
|
105
|
+
}
|
|
74
106
|
const assetService = ctx.svc(AssetService);
|
|
75
107
|
const versionedService = ctx.svc(VersionedService);
|
|
76
|
-
|
|
77
|
-
|
|
108
|
+
if (req.isMultipart()) {
|
|
109
|
+
const { files, data } = await handleUpload(req);
|
|
110
|
+
for (const file of files) {
|
|
111
|
+
const asset = await createAsset(versionedService, user.id, {
|
|
112
|
+
...file,
|
|
113
|
+
legacyId: data[file.fieldname + '_legacyId'],
|
|
114
|
+
folderId: folder.id,
|
|
115
|
+
createdBy: data.createdBy,
|
|
116
|
+
createdAt: data.createdAt,
|
|
117
|
+
modifiedBy: data.modifiedBy,
|
|
118
|
+
modifiedAt: data.modifiedAt
|
|
119
|
+
});
|
|
120
|
+
resizeLimiter(async () => await assetService.createResizes(asset)).catch(console.error);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
else if (req.body?.url) {
|
|
124
|
+
const file = await handleURLUpload(req.body.url, req.body.auth);
|
|
78
125
|
const asset = await createAsset(versionedService, user.id, {
|
|
79
126
|
...file,
|
|
80
|
-
|
|
127
|
+
legacyId: req.body.legacyId,
|
|
128
|
+
folderId: folder.id,
|
|
129
|
+
createdBy: req.body.createdBy,
|
|
130
|
+
createdAt: req.body.createdAt,
|
|
131
|
+
modifiedBy: req.body.modifiedBy,
|
|
132
|
+
modifiedAt: req.body.modifiedAt
|
|
81
133
|
});
|
|
82
134
|
resizeLimiter(async () => await assetService.createResizes(asset)).catch(console.error);
|
|
83
135
|
}
|
|
136
|
+
else {
|
|
137
|
+
throw new HttpError(400, 'Asset upload must be multipart or specify a URL to download from.');
|
|
138
|
+
}
|
|
84
139
|
return 'Success.';
|
|
85
140
|
});
|
|
86
141
|
app.post('/assets/replace/:assetid', async (req, res) => {
|
|
@@ -89,19 +144,43 @@ export async function createAssetRoutes(app) {
|
|
|
89
144
|
const asset = await ctx.svc(AssetServiceInternal).findById(req.params.assetid);
|
|
90
145
|
if (!asset)
|
|
91
146
|
throw new HttpError(404, 'Specified asset does not exist.');
|
|
92
|
-
if (!(await ctx.svc(AssetService).mayUpdate(asset)))
|
|
93
|
-
throw new HttpError(403, `You are not permitted to update asset ${String(asset.name)}.`);
|
|
94
147
|
const assetService = ctx.svc(AssetService);
|
|
95
148
|
const versionedService = ctx.svc(VersionedService);
|
|
96
|
-
|
|
97
|
-
|
|
149
|
+
if (!(await assetService.mayUpdate(asset)))
|
|
150
|
+
throw new HttpError(403, `You are not permitted to update asset ${String(asset.name)}.`);
|
|
151
|
+
if (req.body?.modifiedAt || req.body?.modifiedBy) {
|
|
152
|
+
const data = await versionedService.get(asset.dataId);
|
|
153
|
+
if (!data?.data.legacyId)
|
|
154
|
+
throw new HttpError(400, 'Only assets that were imported from another system may override modified attributes.');
|
|
155
|
+
if (!await ctx.svc(GlobalRuleService).mayOverrideStamps())
|
|
156
|
+
throw new HttpError(403, 'You are not allowed to set modified stamps when updating assets.');
|
|
157
|
+
}
|
|
158
|
+
if (req.isMultipart()) {
|
|
159
|
+
const { files } = await handleUpload(req, 1);
|
|
160
|
+
for (const file of files) {
|
|
161
|
+
const newAsset = await replaceAsset(versionedService, user.id, {
|
|
162
|
+
...file,
|
|
163
|
+
assetId: asset.id,
|
|
164
|
+
modifiedBy: req.body?.modifiedBy,
|
|
165
|
+
modifiedAt: req.body?.modifiedAt
|
|
166
|
+
});
|
|
167
|
+
ctx.loaders.clear();
|
|
168
|
+
resizeLimiter(async () => await assetService.createResizes(newAsset)).catch(console.error);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
else if (req.body?.url) {
|
|
172
|
+
const file = await handleURLUpload(req.body.url, req.body.auth);
|
|
98
173
|
const newAsset = await replaceAsset(versionedService, user.id, {
|
|
99
174
|
...file,
|
|
100
|
-
assetId: asset.id
|
|
175
|
+
assetId: asset.id,
|
|
176
|
+
modifiedBy: req.body.modifiedBy,
|
|
177
|
+
modifiedAt: req.body.modifiedAt
|
|
101
178
|
});
|
|
102
|
-
ctx.loaders.clear();
|
|
103
179
|
resizeLimiter(async () => await assetService.createResizes(newAsset)).catch(console.error);
|
|
104
180
|
}
|
|
181
|
+
else {
|
|
182
|
+
throw new HttpError(400, 'Asset upload must be multipart or specify a URL to download from.');
|
|
183
|
+
}
|
|
105
184
|
return 'Success.';
|
|
106
185
|
});
|
|
107
186
|
app.get('/resize/:resizeid/:filename', async (req, res) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset.routes.js","sourceRoot":"","sources":["../../src/asset/asset.routes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"asset.routes.js","sourceRoot":"","sources":["../../src/asset/asset.routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BaseService } from '@txstate-mws/graphql-server';
|
|
2
2
|
import { ManyJoinedLoader, OneToManyLoader, PrimaryKeyLoader } from 'dataloader-factory';
|
|
3
3
|
import { intersect, isNotNull, keyby, roundTo, sortby } from 'txstate-utils';
|
|
4
|
-
import { getAssets, AssetFolderService, appendPath, getResizes, SiteService, DosGatoService, getLatestDownload, AssetFolderServiceInternal, AssetResponse, fileHandler, deleteAsset, undeleteAsset, moveAsset, popPath, basename, registerResize, getResizesById } from '../internal.js';
|
|
4
|
+
import { getAssets, AssetFolderService, appendPath, getResizes, SiteService, DosGatoService, getLatestDownload, AssetFolderServiceInternal, AssetResponse, fileHandler, deleteAsset, undeleteAsset, moveAsset, popPath, basename, registerResize, getResizesById, VersionedService, cleanupBinaries } from '../internal.js';
|
|
5
5
|
import { lookup } from 'mime-types';
|
|
6
6
|
const thumbnailMimes = new Set(['image/jpg', 'image/jpeg', 'image/gif', 'image/png']);
|
|
7
7
|
const assetsByIdLoader = new PrimaryKeyLoader({
|
|
@@ -96,21 +96,33 @@ export class AssetServiceInternal extends BaseService {
|
|
|
96
96
|
return appendPath(await this.svc(AssetFolderServiceInternal).getPath(folder), asset.name);
|
|
97
97
|
}
|
|
98
98
|
async processAssetFilters(filter) {
|
|
99
|
+
if (filter?.legacyIds?.length) {
|
|
100
|
+
const ids = await this.svc(VersionedService).find([{ indexName: 'legacyId', in: filter.legacyIds }], 'latest');
|
|
101
|
+
filter.ids = intersect({ skipEmpty: true }, filter.ids, ids);
|
|
102
|
+
if (!filter.ids.length)
|
|
103
|
+
filter.internalIds = [-1];
|
|
104
|
+
}
|
|
99
105
|
if (filter?.paths?.length) {
|
|
100
106
|
const folderidpaths = await this.svc(AssetFolderServiceInternal).convertPathsToIDPaths(filter.paths.map(popPath));
|
|
101
107
|
const folderids = folderidpaths.map(p => +p.split(/\//).slice(-1)[0]);
|
|
102
108
|
filter.folderInternalIds = intersect({ skipEmpty: true }, filter.folderInternalIds, folderids);
|
|
103
109
|
filter.names = filter.paths.map(basename);
|
|
110
|
+
if (!folderidpaths.length)
|
|
111
|
+
filter.internalIds = [-1];
|
|
104
112
|
}
|
|
105
113
|
if (filter?.beneath?.length) {
|
|
106
114
|
const folderidpaths = await this.svc(AssetFolderServiceInternal).convertPathsToIDPaths(filter.beneath);
|
|
107
115
|
const folders = await this.svc(AssetFolderServiceInternal).getChildFoldersByIDPaths(folderidpaths);
|
|
108
116
|
const ids = [...folders.map(f => f.internalId), ...folderidpaths.map(basename).map(Number)];
|
|
109
117
|
filter.folderInternalIds = intersect({ skipEmpty: true }, filter.folderInternalIds, ids);
|
|
118
|
+
if (!folderidpaths.length)
|
|
119
|
+
filter.internalIds = [-1];
|
|
110
120
|
}
|
|
111
121
|
if (filter?.parentPaths?.length) {
|
|
112
122
|
const folderidpaths = await this.svc(AssetFolderServiceInternal).convertPathsToIDPaths(filter.parentPaths);
|
|
113
123
|
filter.folderInternalIds = intersect({ skipEmpty: true }, filter.folderInternalIds, folderidpaths.map(basename).map(Number));
|
|
124
|
+
if (!folderidpaths.length)
|
|
125
|
+
filter.internalIds = [-1];
|
|
114
126
|
}
|
|
115
127
|
if (filter?.links?.length) {
|
|
116
128
|
const assets = await this.findByIds(filter.links.map(l => l.id));
|
|
@@ -277,12 +289,18 @@ export class AssetService extends DosGatoService {
|
|
|
277
289
|
? resized.clone().png({ palette: colors <= 256, compressionLevel: 9, progressive: true })
|
|
278
290
|
: resized.clone().gif({ effort: 10, reoptimize: true, loop: info.loop ?? 0 });
|
|
279
291
|
const { checksum, info: outputinfo } = await fileHandler.sharpWrite(formatted);
|
|
280
|
-
|
|
292
|
+
if (outputinfo.size > asset.size && ['image/jpeg', 'image/png', 'image/gif'].includes(asset.mime)) {
|
|
293
|
+
// we made a resize that's bigger than the original, abort!
|
|
294
|
+
await cleanupBinaries([checksum]);
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
await registerResize(asset, w, checksum, outputmime, outputformat === 'jpg' ? 60 : 0, outputinfo.size);
|
|
298
|
+
}
|
|
281
299
|
}
|
|
282
300
|
if (needwebp) {
|
|
283
|
-
const webp = resized.webp({ quality:
|
|
301
|
+
const webp = resized.webp({ quality: 75, effort: 6, loop: info.loop ?? 0 });
|
|
284
302
|
const { checksum: webpsum, info: webpinfo } = await fileHandler.sharpWrite(webp);
|
|
285
|
-
await registerResize(asset, w, webpsum, 'image/webp',
|
|
303
|
+
await registerResize(asset, w, webpsum, 'image/webp', 75, webpinfo.size);
|
|
286
304
|
}
|
|
287
305
|
}
|
|
288
306
|
}
|