@dosgato/api 0.0.134 → 0.0.136
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 +1 -4
- package/dist/asset/asset.database.js +3 -190
- package/dist/asset/asset.database.js.map +1 -1
- package/dist/asset/asset.resolver.d.ts +3 -3
- package/dist/asset/asset.routes.js +23 -5
- package/dist/asset/asset.routes.js.map +1 -1
- package/dist/asset/asset.storage.d.ts +0 -11
- package/dist/asset/asset.storage.js +0 -20
- package/dist/asset/asset.storage.js.map +1 -1
- package/dist/assetfolder/assetfolder.resolver.d.ts +1 -1
- package/dist/assetrule/assetrule.database.js +7 -0
- package/dist/assetrule/assetrule.database.js.map +1 -1
- package/dist/data/data.resolver.d.ts +3 -3
- package/dist/datafolder/datafolder.resolver.d.ts +1 -1
- package/dist/index.js +1 -2
- package/dist/index.js.map +1 -1
- package/dist/migrations.js +0 -7
- package/dist/migrations.js.map +1 -1
- package/dist/page/page.resolver.d.ts +4 -4
- package/dist/site/site.resolver.d.ts +2 -2
- package/dist/sitecomment/sitecomment.resolver.d.ts +1 -1
- package/dist/user/user.model.d.ts +0 -6
- package/dist/user/user.model.js +2 -2
- package/dist/user/user.model.js.map +1 -1
- package/dist/user/user.resolver.d.ts +1 -1
- package/dist/user/user.service.d.ts +7 -7
- package/dist/user/user.service.js +6 -5
- package/dist/user/user.service.js.map +1 -1
- package/dist/version/version.resolver.d.ts +1 -1
- package/dist/versionedservice/service.js +2 -1
- package/dist/versionedservice/service.js.map +1 -1
- package/package.json +2 -4
|
@@ -20,6 +20,7 @@ export interface CreateAssetInput extends AssetInput {
|
|
|
20
20
|
createdBy?: string;
|
|
21
21
|
createdAt?: string;
|
|
22
22
|
linkId?: string;
|
|
23
|
+
uploadedFilename?: string;
|
|
23
24
|
}
|
|
24
25
|
export interface ReplaceAssetInput extends AssetInput {
|
|
25
26
|
assetId: string;
|
|
@@ -64,7 +65,6 @@ export declare function updateAssetMeta(versionedService: VersionedService, asse
|
|
|
64
65
|
modifiedAt: Date;
|
|
65
66
|
}): Promise<void>;
|
|
66
67
|
export declare function renameAsset(assetId: string, name: string, folderInternalIdPath: string): Promise<void>;
|
|
67
|
-
export declare function registerResize(originalChecksum: string, width: number, height: number, shasum: string, mime: string, quality: number, size: number, lossless: boolean, tdb?: Queryable): Promise<number>;
|
|
68
68
|
export declare function moveAssets(targetFolder: AssetFolder, assets: Asset[], folders: AssetFolder[]): Promise<void>;
|
|
69
69
|
export declare function copyAssets(targetFolder: AssetFolder, assets: Asset[], folders: AssetFolder[], user: string, versionedService: VersionedService): Promise<void>;
|
|
70
70
|
export declare function cleanupBinaries(checksums: string[]): Promise<void>;
|
|
@@ -75,6 +75,3 @@ export declare function requestResizes(asset: Asset, opts?: {
|
|
|
75
75
|
force?: boolean;
|
|
76
76
|
isMigration?: boolean;
|
|
77
77
|
}): Promise<void>;
|
|
78
|
-
export declare const resizeLimit: number;
|
|
79
|
-
export declare function beginProcessingResizes(): Promise<void>;
|
|
80
|
-
export declare function createResizes(shasum: string): Promise<void>;
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { randomInt } from 'crypto';
|
|
2
1
|
import { DateTime } from 'luxon';
|
|
3
|
-
import { lookup } from 'mime-types';
|
|
4
2
|
import db from 'mysql2-async/db';
|
|
5
3
|
import { nanoid } from 'nanoid';
|
|
6
|
-
import { intersect, isBlank, isNotBlank, isNotNull, keyby, pick,
|
|
4
|
+
import { intersect, isBlank, isNotBlank, isNotNull, keyby, pick, stringify } from 'txstate-utils';
|
|
7
5
|
import { Asset, AssetResize, AssetFolder, fileHandler, DownloadRecord, DownloadsResolution, DeleteState, processDeletedFilters, normalizePath, AssetServiceInternal, numerate, NameConflictError } from '../internal.js';
|
|
8
6
|
async function convertPathsToIDPaths(pathstrings) {
|
|
9
7
|
var _a, _b;
|
|
@@ -339,7 +337,7 @@ export async function createAsset(versionedService, userId, args, opts) {
|
|
|
339
337
|
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
340
338
|
const modifiedBy = args.legacyId ? (args.modifiedBy || createdBy || userId) : userId; // || is intended - to catch blanks
|
|
341
339
|
const modifiedAt = args.legacyId ? (args.modifiedAt ?? args.createdAt ?? undefined) : undefined;
|
|
342
|
-
const data = { legacyId: args.legacyId, shasum: args.checksum, uploadedFilename: args.filename, meta: args.meta };
|
|
340
|
+
const data = { legacyId: args.legacyId, shasum: args.checksum, uploadedFilename: args.uploadedFilename ?? args.filename, meta: args.meta };
|
|
343
341
|
const dataId = await versionedService.create('asset', data, getIndexes(data), createdBy, db);
|
|
344
342
|
await versionedService.setStamps(dataId, { createdAt: createdAt ? new Date(createdAt) : undefined, modifiedAt: modifiedAt ? new Date(modifiedAt) : undefined, modifiedBy: modifiedBy !== userId ? modifiedBy : undefined }, db);
|
|
345
343
|
const folder = await db.getrow('SELECT id, pagetreeId, path FROM assetfolders WHERE id = ? FOR UPDATE', [args.folderId]);
|
|
@@ -407,16 +405,6 @@ export async function renameAsset(assetId, name, folderInternalIdPath) {
|
|
|
407
405
|
if (affectedRows === 0)
|
|
408
406
|
throw new Error('Rename failed, likely the name became unavailable.');
|
|
409
407
|
}
|
|
410
|
-
export async function registerResize(originalChecksum, width, height, shasum, mime, quality, size, lossless, tdb = db) {
|
|
411
|
-
const origBinaryId = await tdb.getval('SELECT id FROM binaries WHERE shasum=?', [originalChecksum]);
|
|
412
|
-
const binaryId = await tdb.insert(`
|
|
413
|
-
INSERT INTO binaries (shasum, mime, meta, bytes) VALUES (?, ?, ?, ?) ON DUPLICATE KEY UPDATE id=LAST_INSERT_ID(id)
|
|
414
|
-
`, [shasum, mime, stringify({ width, height }), size]);
|
|
415
|
-
await tdb.insert(`
|
|
416
|
-
INSERT INTO resizes (binaryId, originalBinaryId, width, height, quality, othersettings) VALUES (?, ?, ?, ?, ?, ?) ON DUPLICATE KEY UPDATE binaryId=binaryId
|
|
417
|
-
`, [binaryId, origBinaryId, width, height, quality, stringify({ lossless })]);
|
|
418
|
-
return binaryId;
|
|
419
|
-
}
|
|
420
408
|
export async function moveAssets(targetFolder, assets, folders) {
|
|
421
409
|
await db.transaction(async (db) => {
|
|
422
410
|
// re-pull everything inside the transaction
|
|
@@ -558,16 +546,9 @@ export async function undeleteAsset(id) {
|
|
|
558
546
|
}
|
|
559
547
|
export async function requestResizes(asset, opts) {
|
|
560
548
|
if (!opts?.force) {
|
|
561
|
-
const
|
|
562
|
-
getResizes([asset.internalId]),
|
|
563
|
-
opts?.isMigration ? db.getall('SELECT * FROM migratedresizeinfo WHERE originalChecksum = ?', [asset.checksum]) : []
|
|
564
|
-
]);
|
|
549
|
+
const resizes = await getResizes([asset.internalId]);
|
|
565
550
|
if (resizes.length)
|
|
566
551
|
return;
|
|
567
|
-
if (migratedResizes.length && !await someAsync(migratedResizes, async (r) => !await fileHandler.exists(r.resizedChecksum))) {
|
|
568
|
-
await Promise.all(migratedResizes.map(async (r) => await registerResize(asset.checksum, r.width, r.height, r.resizedChecksum, r.mime, r.quality, r.size, r.lossless)));
|
|
569
|
-
return;
|
|
570
|
-
}
|
|
571
552
|
}
|
|
572
553
|
else {
|
|
573
554
|
await db.delete('DELETE rr FROM requestedresizes rr INNER JOIN binaries b ON b.id=rr.binaryId WHERE b.shasum=? AND (rr.completed IS NOT NULL OR rr.withError=1)', [asset.checksum]);
|
|
@@ -579,172 +560,4 @@ export async function requestResizes(asset, opts) {
|
|
|
579
560
|
ON DUPLICATE KEY UPDATE binaryId=binaryId
|
|
580
561
|
`, [asset.checksum]);
|
|
581
562
|
}
|
|
582
|
-
export const resizeLimit = process.env.RESIZE_LIMIT ? parseInt(process.env.RESIZE_LIMIT) : 2;
|
|
583
|
-
async function processResizesLoop() {
|
|
584
|
-
while (true) {
|
|
585
|
-
let found = false;
|
|
586
|
-
try {
|
|
587
|
-
const row = await db.getrow('SELECT rr.binaryId, b.shasum FROM requestedresizes rr INNER JOIN binaries b ON b.id=rr.binaryId WHERE rr.withError=0 AND rr.completed IS NULL AND (rr.started IS NULL OR rr.started < NOW() - INTERVAL 20 MINUTE) ORDER BY rr.binaryId LIMIT 1');
|
|
588
|
-
if (row) {
|
|
589
|
-
found = true;
|
|
590
|
-
const claimed = await db.update('UPDATE requestedresizes SET started=NOW() WHERE withError=0 AND binaryId=? AND (started IS NULL OR started < NOW() - INTERVAL 20 MINUTE)', [row.binaryId]);
|
|
591
|
-
if (claimed) {
|
|
592
|
-
try {
|
|
593
|
-
await createResizes(row.shasum);
|
|
594
|
-
await db.update('UPDATE requestedresizes SET completed=NOW() WHERE binaryId=?', [row.binaryId]);
|
|
595
|
-
}
|
|
596
|
-
catch (e) {
|
|
597
|
-
if (e.errno !== 1213) {
|
|
598
|
-
// if it was a deadlock we'll allow it to retry in 20 minutes, otherwise we'll set withError=1
|
|
599
|
-
// which will prevent further processing without human intervention
|
|
600
|
-
await db.update('UPDATE requestedresizes SET withError=1 WHERE binaryId=?', [row.binaryId]);
|
|
601
|
-
}
|
|
602
|
-
throw e;
|
|
603
|
-
}
|
|
604
|
-
}
|
|
605
|
-
}
|
|
606
|
-
}
|
|
607
|
-
catch (e) {
|
|
608
|
-
console.error(e);
|
|
609
|
-
}
|
|
610
|
-
if (!found)
|
|
611
|
-
await sleep(resizeLimit * 4 * 1000);
|
|
612
|
-
}
|
|
613
|
-
}
|
|
614
|
-
export async function beginProcessingResizes() {
|
|
615
|
-
for (let i = 0; i < resizeLimit; i++) {
|
|
616
|
-
processResizesLoop().catch(console.error);
|
|
617
|
-
await sleep(400 + randomInt(400));
|
|
618
|
-
}
|
|
619
|
-
}
|
|
620
|
-
const exifToRotation = {
|
|
621
|
-
1: 0,
|
|
622
|
-
2: 0,
|
|
623
|
-
3: 180,
|
|
624
|
-
4: 0,
|
|
625
|
-
5: 270,
|
|
626
|
-
6: 90,
|
|
627
|
-
7: 270,
|
|
628
|
-
8: 270
|
|
629
|
-
};
|
|
630
|
-
const exifToFlip = {
|
|
631
|
-
1: false,
|
|
632
|
-
2: false,
|
|
633
|
-
3: false,
|
|
634
|
-
4: true,
|
|
635
|
-
5: false,
|
|
636
|
-
6: false,
|
|
637
|
-
7: true,
|
|
638
|
-
8: false
|
|
639
|
-
};
|
|
640
|
-
const exifToFlop = {
|
|
641
|
-
1: false,
|
|
642
|
-
2: true,
|
|
643
|
-
3: false,
|
|
644
|
-
4: false,
|
|
645
|
-
5: true,
|
|
646
|
-
6: false,
|
|
647
|
-
7: false,
|
|
648
|
-
8: false
|
|
649
|
-
};
|
|
650
|
-
export async function createResizes(shasum) {
|
|
651
|
-
const binary = await db.getrow('SELECT * from binaries WHERE shasum=?', [shasum]);
|
|
652
|
-
if (!binary)
|
|
653
|
-
return;
|
|
654
|
-
const meta = (typeof binary.meta === 'string' ? JSON.parse(binary.meta) : binary.meta);
|
|
655
|
-
// only process images, excluding SVG and PSD (maybe PSD support could be added in future but sharpjs can't read it)
|
|
656
|
-
if (!meta.width || !binary.mime.startsWith('image/') || ['image/svg+xml', 'image/vnd.adobe.photoshop'].includes(binary.mime))
|
|
657
|
-
return;
|
|
658
|
-
const resizes = [];
|
|
659
|
-
try {
|
|
660
|
-
const info = await fileHandler.sharp(shasum, { limitInputPixels: 50000 * 50000 }).metadata();
|
|
661
|
-
const orientation = info.orientation ?? 1;
|
|
662
|
-
const animated = (info.pages ?? 0) > 0 && info.format !== 'heif';
|
|
663
|
-
const transparency = info.hasAlpha;
|
|
664
|
-
const img = fileHandler.sharp(shasum, { animated, limitInputPixels: 50000 * 50000 });
|
|
665
|
-
let uselossless;
|
|
666
|
-
for (let w = meta.width; w >= 50; w = roundTo(w / 2)) {
|
|
667
|
-
if (w > 10000)
|
|
668
|
-
continue; // sanity check for huge images, note: webp can't save something greater than 16000x16000
|
|
669
|
-
const resized = img.clone().resize(Math.min(6000, w), null, { kernel: 'mitchell' })
|
|
670
|
-
// theoretically one call to .rotate() is supposed to fix orientation, but
|
|
671
|
-
// there seems to be a bug in sharpjs where the rotation doesn't take
|
|
672
|
-
// if there is a later resize to a sufficiently small size
|
|
673
|
-
// this is a workaround to make sure the exif rotation is applied in all cases
|
|
674
|
-
.flip(exifToFlip[orientation])
|
|
675
|
-
.flop(exifToFlop[orientation])
|
|
676
|
-
.rotate(exifToRotation[orientation]);
|
|
677
|
-
let webp, webpsum, webpinfo;
|
|
678
|
-
if (uselossless !== true) {
|
|
679
|
-
webp = resized.clone().webp({ quality: 75, effort: 6, loop: info.loop ?? 0 });
|
|
680
|
-
({ checksum: webpsum, info: webpinfo } = await fileHandler.sharpWrite(webp));
|
|
681
|
-
}
|
|
682
|
-
if (uselossless !== false) {
|
|
683
|
-
// try making a near-lossless version and see whether it's acceptably small
|
|
684
|
-
const lossless = resized.clone().webp({ quality: 75, effort: 6, loop: info.loop ?? 0, nearLossless: true });
|
|
685
|
-
const { checksum: losslesssum, info: losslessinfo } = await fileHandler.sharpWrite(lossless);
|
|
686
|
-
if (uselossless === true || losslessinfo.size < webpinfo.size * 1.2) {
|
|
687
|
-
if (webpsum)
|
|
688
|
-
await cleanupBinaries([webpsum]);
|
|
689
|
-
webp = lossless;
|
|
690
|
-
webpsum = losslesssum;
|
|
691
|
-
webpinfo = losslessinfo;
|
|
692
|
-
uselossless = true;
|
|
693
|
-
}
|
|
694
|
-
else {
|
|
695
|
-
uselossless = false;
|
|
696
|
-
await cleanupBinaries([losslesssum]);
|
|
697
|
-
}
|
|
698
|
-
}
|
|
699
|
-
const outputformat = uselossless || animated || transparency
|
|
700
|
-
? (animated ? 'gif' : 'png')
|
|
701
|
-
: 'jpg';
|
|
702
|
-
const outputmime = lookup(outputformat);
|
|
703
|
-
const formatted = outputformat === 'jpg'
|
|
704
|
-
? resized.clone().jpeg({ quality: 70 })
|
|
705
|
-
: outputformat === 'png'
|
|
706
|
-
? resized.clone().png({ compressionLevel: 9, progressive: true })
|
|
707
|
-
: resized.clone().gif({ effort: 10, reoptimize: true, loop: info.loop ?? 0 });
|
|
708
|
-
const { checksum, info: outputinfo } = await fileHandler.sharpWrite(formatted);
|
|
709
|
-
if (
|
|
710
|
-
// this resize is too big and no more compatible than the original, abort!
|
|
711
|
-
(outputinfo.size > (0.9 * binary.bytes) && ['image/jpeg', 'image/png', 'image/gif'].includes(binary.mime)) ||
|
|
712
|
-
// this resize is somehow nearly as or larger than one of the greater-width resizes we've already made - skip it
|
|
713
|
-
resizes.some(r => outputinfo.size > (0.9 * r.size) && outputmime === r.mime)) {
|
|
714
|
-
await cleanupBinaries([checksum]);
|
|
715
|
-
}
|
|
716
|
-
else {
|
|
717
|
-
// can't use outputinfo.height here because animations return the combined height of all the frames
|
|
718
|
-
resizes.push({ width: outputinfo.width, height: outputinfo.width * (meta.height / meta.width), shasum: checksum, mime: outputmime, quality: outputformat === 'jpg' ? 70 : 0, size: outputinfo.size, lossless: outputformat !== 'jpg' });
|
|
719
|
-
}
|
|
720
|
-
if (resizes.some(r => webpinfo.size > (0.9 * r.size) && webpinfo.width <= r.width)) {
|
|
721
|
-
// we already have a larger (in pixels) resize that somehow is smaller in file size than this - we should skip this
|
|
722
|
-
await cleanupBinaries([webpsum]);
|
|
723
|
-
}
|
|
724
|
-
else {
|
|
725
|
-
// can't use webpinfo!.height here because animations return the combined height of all the frames
|
|
726
|
-
resizes.push({ width: webpinfo.width, height: webpinfo.width * (meta.height / meta.width), shasum: webpsum, mime: 'image/webp', quality: 75, size: webpinfo.size, lossless: uselossless });
|
|
727
|
-
}
|
|
728
|
-
}
|
|
729
|
-
await db.transaction(async (db) => {
|
|
730
|
-
await db.delete('DELETE r FROM resizes r INNER JOIN binaries b ON r.originalBinaryId=b.id WHERE b.shasum=?', [shasum]);
|
|
731
|
-
for (const r of resizes) {
|
|
732
|
-
await registerResize(shasum, r.width, r.height, r.shasum, r.mime, r.quality, r.size, r.lossless, db);
|
|
733
|
-
}
|
|
734
|
-
}, { retries: 3 });
|
|
735
|
-
await db.insert(`
|
|
736
|
-
INSERT INTO migratedresizeinfo (originalChecksum, resizedChecksum, mime, size, quality, lossless, width, height)
|
|
737
|
-
SELECT ob.shasum, b.shasum, b.mime, b.bytes, r.quality, IFNULL(JSON_EXTRACT(r.othersettings, '$.lossless') + 0, 0), r.width, r.height
|
|
738
|
-
FROM resizes r
|
|
739
|
-
INNER JOIN binaries b ON b.id=r.binaryId
|
|
740
|
-
INNER JOIN binaries ob ON ob.id=r.originalBinaryId
|
|
741
|
-
WHERE ob.shasum = ?
|
|
742
|
-
ON DUPLICATE KEY UPDATE originalChecksum=originalChecksum
|
|
743
|
-
`, [shasum]);
|
|
744
|
-
}
|
|
745
|
-
catch (e) {
|
|
746
|
-
await cleanupBinaries(resizes.map(r => r.shasum));
|
|
747
|
-
throw e;
|
|
748
|
-
}
|
|
749
|
-
}
|
|
750
563
|
//# sourceMappingURL=asset.database.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asset.database.js","sourceRoot":"","sources":["../../src/asset/asset.database.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"asset.database.js","sourceRoot":"","sources":["../../src/asset/asset.database.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { DateTime } from 'luxon';
|
|
|
3
3
|
import { AssetFolder, Role, User, ObjectVersion, Asset, AssetFilter, AssetPermission, AssetResize, AssetResponse, DownloadsFilter, DownloadRecord, AssetFolderResponse, Site, Pagetree } from '../internal.js';
|
|
4
4
|
export declare class AssetResolver {
|
|
5
5
|
assets(ctx: Context, filter?: AssetFilter): Promise<Asset[]>;
|
|
6
|
-
deletedBy(ctx: Context, asset: Asset): Promise<User |
|
|
6
|
+
deletedBy(ctx: Context, asset: Asset): Promise<User | null | undefined>;
|
|
7
7
|
folder(ctx: Context, asset: Asset): Promise<AssetFolder | undefined>;
|
|
8
8
|
ancestors(ctx: Context, asset: Asset): Promise<AssetFolder[]>;
|
|
9
9
|
site(ctx: Context, asset: Asset): Promise<Site | undefined>;
|
|
@@ -15,9 +15,9 @@ export declare class AssetResolver {
|
|
|
15
15
|
resizes(ctx: Context, asset: Asset): Promise<AssetResize[]>;
|
|
16
16
|
thumbnail(ctx: Context, asset: Asset): Promise<AssetResize>;
|
|
17
17
|
createdAt(ctx: Context, asset: Asset): Promise<DateTime>;
|
|
18
|
-
createdBy(ctx: Context, asset: Asset): Promise<User |
|
|
18
|
+
createdBy(ctx: Context, asset: Asset): Promise<User | undefined>;
|
|
19
19
|
modifiedAt(ctx: Context, asset: Asset): Promise<DateTime>;
|
|
20
|
-
modifiedBy(ctx: Context, asset: Asset): Promise<User |
|
|
20
|
+
modifiedBy(ctx: Context, asset: Asset): Promise<User | undefined>;
|
|
21
21
|
downloadedAt(ctx: Context, asset: Asset): Promise<DateTime>;
|
|
22
22
|
roles(ctx: Context, asset: Asset, withPermission?: AssetPermission[]): Promise<Role[]>;
|
|
23
23
|
versions(ctx: Context, asset: Asset): Promise<ObjectVersion[]>;
|
|
@@ -10,7 +10,7 @@ import db from 'mysql2-async/db';
|
|
|
10
10
|
import probe from 'probe-image-size';
|
|
11
11
|
import { Readable } from 'node:stream';
|
|
12
12
|
import { groupby, isNotBlank, keyby, randomid } from 'txstate-utils';
|
|
13
|
-
import { AssetFolder, AssetFolderService, AssetFolderServiceInternal, AssetRuleService, AssetService, AssetServiceInternal, createAsset, DeleteState, fileHandler, getEnabledUser, GlobalRuleService, logMutation, makeSafeFilename, recordDownload, replaceAsset, requestResizes, VersionedService, parsePath } from '../internal.js';
|
|
13
|
+
import { AssetFolder, AssetFolderService, AssetFolderServiceInternal, AssetRuleService, AssetService, AssetServiceInternal, createAsset, DeleteState, fileHandler, getEnabledUser, GlobalRuleService, logMutation, makeSafeFilename, recordDownload, replaceAsset, requestResizes, VersionedService, parsePath, deleteAsset } from '../internal.js';
|
|
14
14
|
export async function placeFile(readStream, filename, mimeGuess) {
|
|
15
15
|
const fileTypePassthru = await fileTypeStream(readStream);
|
|
16
16
|
const metadataPromise = probe(fileTypePassthru, true);
|
|
@@ -43,7 +43,7 @@ export async function placeFile(readStream, filename, mimeGuess) {
|
|
|
43
43
|
return { filename, name, checksum, mime, size, width, height };
|
|
44
44
|
}
|
|
45
45
|
export async function handleURLUpload(url, modifiedAt, auth) {
|
|
46
|
-
const filename = url.split('/').slice(-1)[0] ?? randomid();
|
|
46
|
+
const filename = decodeURIComponent(url.split('/').slice(-1)[0] ?? randomid());
|
|
47
47
|
let urlhash;
|
|
48
48
|
if (modifiedAt) { // only try to skip download if modifiedAt was included... otherwise we can't determine that the target hasn't changed
|
|
49
49
|
urlhash = createHash('sha1').update(url + modifiedAt).digest('hex');
|
|
@@ -136,6 +136,7 @@ export async function createAssetRoutes(app) {
|
|
|
136
136
|
const file = await handleURLUpload(req.body.url, req.body.modifiedAt, req.body.auth);
|
|
137
137
|
const asset = await createAsset(versionedService, user.id, {
|
|
138
138
|
...file,
|
|
139
|
+
uploadedFilename: req.body.uploadedFilename,
|
|
139
140
|
legacyId: req.body.legacyId,
|
|
140
141
|
folderId: folder.id,
|
|
141
142
|
createdBy: req.body.createdBy,
|
|
@@ -145,6 +146,8 @@ export async function createAssetRoutes(app) {
|
|
|
145
146
|
linkId: req.body.linkId
|
|
146
147
|
}, { numerate: true });
|
|
147
148
|
ids.push(asset.id);
|
|
149
|
+
if (req.body.markAsDeleted)
|
|
150
|
+
await deleteAsset(asset.internalId, user.internalId);
|
|
148
151
|
await requestResizes(asset, { isMigration: isNotBlank(req.body.legacyId) });
|
|
149
152
|
}
|
|
150
153
|
else {
|
|
@@ -200,10 +203,16 @@ export async function createAssetRoutes(app) {
|
|
|
200
203
|
logMutation(new Date().getTime() - startTime.getTime(), 'replaceAsset', 'mutation uploadReplaceAsset (RESTful)', user.id, { assetid: asset.id }, { success: true }, []).catch(console.error);
|
|
201
204
|
return { success: true };
|
|
202
205
|
});
|
|
203
|
-
app.get('/resize/:resizeid/:filename', async (req, res) => {
|
|
206
|
+
app.get('/assets/:assetid/resize/:resizeid/:filename', async (req, res) => {
|
|
204
207
|
const ctx = new Context(req);
|
|
205
|
-
const resize = await
|
|
206
|
-
|
|
208
|
+
const [asset, resize] = await Promise.all([
|
|
209
|
+
ctx.svc(AssetServiceInternal).findById(req.params.assetid),
|
|
210
|
+
ctx.svc(AssetService).getResize(req.params.resizeid)
|
|
211
|
+
]);
|
|
212
|
+
if (!asset || !resize)
|
|
213
|
+
throw new HttpError(404);
|
|
214
|
+
await ctx.waitForAuth();
|
|
215
|
+
if (!await ctx.svc(AssetService).mayViewIndividual(asset))
|
|
207
216
|
throw new HttpError(404);
|
|
208
217
|
if (!req.query?.admin)
|
|
209
218
|
recordDownload(resize.checksum);
|
|
@@ -223,6 +232,9 @@ export async function createAssetRoutes(app) {
|
|
|
223
232
|
const asset = await ctx.svc(AssetServiceInternal).findById(req.params.assetid);
|
|
224
233
|
if (!asset)
|
|
225
234
|
throw new HttpError(404);
|
|
235
|
+
await ctx.waitForAuth();
|
|
236
|
+
if (!await ctx.svc(AssetService).mayViewIndividual(asset))
|
|
237
|
+
throw new HttpError(404);
|
|
226
238
|
if (!asset.box)
|
|
227
239
|
throw new HttpError(400, 'Asset is not an image - width parameter is not supported.');
|
|
228
240
|
const resizes = await ctx.svc(AssetService).getResizes(asset);
|
|
@@ -260,6 +272,9 @@ export async function createAssetRoutes(app) {
|
|
|
260
272
|
}
|
|
261
273
|
if (!asset)
|
|
262
274
|
throw new HttpError(404);
|
|
275
|
+
await ctx.waitForAuth();
|
|
276
|
+
if (!await ctx.svc(AssetService).mayViewIndividual(asset))
|
|
277
|
+
throw new HttpError(404);
|
|
263
278
|
if (!req.query?.admin)
|
|
264
279
|
recordDownload(asset.checksum);
|
|
265
280
|
const etag = req.headers['if-none-match'];
|
|
@@ -285,6 +300,9 @@ export async function createAssetRoutes(app) {
|
|
|
285
300
|
const folder = await ctx.svc(AssetFolderServiceInternal).findById(req.params.folderId);
|
|
286
301
|
if (!folder)
|
|
287
302
|
throw new HttpError(404);
|
|
303
|
+
await ctx.waitForAuth();
|
|
304
|
+
if (!await ctx.svc(AssetFolderService).mayViewIndividual(folder))
|
|
305
|
+
throw new HttpError(404);
|
|
288
306
|
const [folders, folderPath] = await Promise.all([
|
|
289
307
|
ctx.svc(AssetFolderServiceInternal).getChildFolders(folder, true),
|
|
290
308
|
ctx.svc(AssetFolderServiceInternal).getPath(folder)
|
|
@@ -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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"}
|