@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.
@@ -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, roundTo, sleep, someAsync, stringify } from 'txstate-utils';
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 [resizes, migratedResizes] = await Promise.all([
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 | import("../internal.js").RedactedUser | null | undefined>;
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 | import("../internal.js").RedactedUser | undefined>;
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 | import("../internal.js").RedactedUser | undefined>;
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 ctx.svc(AssetService).getResize(req.params.resizeid);
206
- if (!resize)
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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"}