Files
dashlibstorage/API.manifestattachment.md

5.1 KiB

manifestattachment

This document is auto-generated from the JSDoc comments in src/store by running npm run api-doc.

manifestattachment.add

Source: src/store/manifestattachment/add.js

Attaches a file to an existing manifest.

Parameters

Name Type Description
googleAuthId number The id of the Google auth user.
manifestId number The id of the manifest.
input object The file data.
input.mimetype string The MIME type of the file (e.g. 'application/pdf').
input.name string The file name.
input.content Buffer The file content.
[input.sort] number Optional display sort order.
[input.size] number Optional file size in bytes (defaults to content length).
[input.created] `Date string`
[input.modified] `Date string`
[input.hash] string The file hash (auto-computed SHA-256 if omitted).
[input.thumbavif] Buffer Optional AVIF thumbnail buffer.
[input.thumbx] number Optional thumbnail width.
[input.thumby] number Optional thumbnail height.

Returns

Promise<{id: number, manifestId: number, fileId: number, sort: number, hash: string, mimetype: string, name: string, size: number, created: Date, modified: Date, thumbavif: Buffer|null, thumbx: number|null, thumby: number|null}> — The created attachment record.

Throws

Error — If the manifest is not found or file input is invalid.

Example

const attachment = await store.manifestattachment.add(42, 1, {
  mimetype: 'application/pdf',
  name: 'invoice.pdf',
  content: fileBuffer,
});
// => { id, manifestId, fileId, sort, hash, mimetype, name, size, created, modified, thumbavif, thumbx, thumby }

manifestattachment.getById

Source: src/store/manifestattachment/getById.js

Gets an attachment for a manifest by its attachment ID or file ID, including full file content.

Parameters

Name Type Description
googleAuthId number The id of the Google auth user.
manifestId number The manifest ID.
id number The attachment ID or file ID.

Returns

Promise<{id: number, manifestId: number, fileId: number, sort: number, hash: string, mimetype: string, name: string, size: number, created: Date, modified: Date, content: Buffer, thumbavif: Buffer|null, thumbx: number|null, thumby: number|null}> — The attachment record with binary content.

Throws

Error — If the manifest or attachment is not found, or user is not authorized.

Example

const attachment = await store.manifestattachment.getById(42, 1, 5);
// => { id, manifestId, fileId, sort, hash, mimetype, name, size, created, modified, content, thumbavif, thumbx, thumby }

manifestattachment.listByManifestId

Source: src/store/manifestattachment/listByManifestId.js

Lists all attachments for a given manifest, without loading their full binary content.

Parameters

Name Type Description
googleAuthId number The id of the Google auth user.
manifestId number The manifest ID.

Returns

Promise<Array<{id: number, manifestId: number, fileId: number, sort: number, hash: string, mimetype: string, name: string, size: number, created: Date, modified: Date, thumbavif: Buffer|null, thumbx: number|null, thumby: number|null}>> — A list of attachment metadata objects.

Throws

Error — If the manifest is not found or the user is not authorized.

Example

const attachments = await store.manifestattachment.listByManifestId(42, 1);
// => [{ id, manifestId, fileId, sort, hash, mimetype, name, size, created, modified, thumbavif, thumbx, thumby }]

manifestattachment.order

Source: src/store/manifestattachment/order.js

Reorders the attachments of a manifest.

Parameters

Name Type Description
googleAuthId number The id of the Google auth user.
manifestId number The manifest ID.
input `object Array`
[input.ids] Array<number> The attachment ids in their new order.

Returns

Promise<{ids: Array<number>}> — The applied order.

Throws

Error — If the order is invalid.

Example

const result = await store.manifestattachment.order(42, 1, { ids: [12, 10, 15] });
// => { ids: [12, 10, 15] }

manifestattachment.remove

Source: src/store/manifestattachment/remove.js

Removes a file attachment from a manifest and deletes the underlying file.

Parameters

Name Type Description
googleAuthId number The id of the Google auth user.
manifestId number The manifest ID.
id number The attachment ID or file ID to remove.

Returns

Promise<void>

Throws

Error — If the manifest or attachment is not found, or user is not authorized.

Example

await store.manifestattachment.remove(42, 1, 5);